225 static const int KEY_NONE = 0, KEY_BACKSPACE = 1, KEY_LEFT = 2, KEY_RIGHT = 4, KEY_DELETE = 8, KEY_ENTER = 16, KEY_UP = 32, KEY_DOWN = 64;
228 int cursorposx, cursorposy, cursorposchar, cursorposutf;
230 int cursorshowcounter, cursorshowcounterlimit, cursorshowlimit;
232 std::vector<short> letterlength;
233 std::vector<int> letterpos;
235 int keypresstime, keypresstimelimit1, keypresstimelimit2;
237 int firstchar, firstutf, firstposx;
241 std::vector<int> clickTextbox(
int x,
int y);
242 std::vector<int> calculateClickPosition(
int x,
int y);
243 std::vector<int> calculateClickPositionMultiline(
int x,
int y);
244 std::vector<int> calculateCursorPositionMultiline(
int x,
int y);
245 void calculateLinePositionMultiline(
int x,
int y);
246 std::vector<int> calculateLetterPosition(
int letterCharNo);
247 std::vector<int> calculateAllLetterPositions();
248 void calculateLines();
249 int calculateLastUtf();
250 int calculateCharNoFromUtf(
int letterUtfNo);
251 int calculateCharNum(std::string str);
252 int findFirstSpace(
int lineend);
253 void startSelection();
254 std::vector<short> readString(
const std::string& str);
255 bool isLetter(
char c);
256 bool isNumber(
char c);
257 void findCursorPosition();
258 void findCursorPositionPassword();
259 void calculateLineCount();
261 int selectionposchar1, selectionposchar2;
262 int selectionposx1, selectionposx2;
263 int selectionposutf1, selectionposutf2;
264 int selectionboxx1, selectionboxx2, selectionboxw;
265 bool shiftpressed, ctrlpressed, commandpressed;
266 bool ctrlcpressed, ctrlvpressed, ctrlxpressed, ctrlapressed, ctrlzpressed;
267 bool commandcpressed, commandvpressed, commandxpressed, commandapressed, commandzpressed;
269 long clicktime, previousclicktime, firstclicktime, clicktimediff;
270 bool isdoubleclicked, istripleclicked;
276 bool rowsnumexceeded;
277 int currentline, linecount, lastdrawnline;
280 std::vector<std::string> lines;
281 std::vector<int> lineendchar;
282 int leftlimit, rightlimit, toplimit, bottomlimit;
286 bool isbackgroundenabled;
289 bool boxshrinked, boxexpanded;
290 bool arrowkeypressed;
294 int textalignmentamount;
300 int widthAdjusmentDelay;
303 std::stack<std::string> undostack;
304 std::stack<int> cursorposxstack, cursorposystack, cursorposcharstack, cursorposutfstack;
305 std::stack<int> firstutfstack, firstcharstack, firstposxstack;
306 std::stack<int> currentlinestack, lastdrawnlinestack,linecountstack;
Definition gGUITextbox.h:46
void setSize(int width, int height)
int getCursor(int x, int y)
void setLineCount(int linecount)
virtual void set(gBaseApp *root, gBaseGUIObject *topParentGUIObject, gBaseGUIObject *parentGUIObject, int parentSlotLineNo, int parentSlotColumnNo, int x, int y, int w, int h)
void setEditMode(bool editMode)
void setDisabled(bool isDisabled)
bool isBackgroundEnabled()
void mouseReleased(int x, int y, int button)
void mouseDragged(int x, int y, int button)
void setLineTopMargin(int linetopmargin)
int calculateContentHeight()
void keyReleased(int key)
void setPassword(bool isPassword)
void setText(const std::string &text)
void mousePressed(int x, int y, int button)
void setNumeric(bool isNumeric)
void setEditable(bool isEditable)
void setTextFont(gFont *textFont)
void setTextAlignment(int textAlignment, float cellW, int initX)
void enableBackground(bool isEnabled)
void addLeftMargin(int left)
void setTextColor(gColor *textColor)
void charPressed(unsigned int codepoint)
void enableVerticalMargin(bool isAligned)
void setFirstY(int firsty)
void setFirstX(int firstx)
void addTopMargin(int top)
void setCursorPosX(int cursorPosX, int length)