Minetest  5.4.0
intlGUIEditBox.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2013 Nikolaus Gebhardt
2 // This file is part of the "Irrlicht Engine".
3 // For conditions of distribution and use, see copyright notice in irrlicht.h
4 
5 #pragma once
6 
7 #include "IrrCompileConfig.h"
8 //#ifdef _IRR_COMPILE_WITH_GUI_
9 
10 #include "guiEditBox.h"
11 #include "irrArray.h"
12 #include "IOSOperator.h"
13 
14 namespace irr
15 {
16 namespace gui
17 {
18  class intlGUIEditBox : public GUIEditBox
19  {
20  public:
21 
23  intlGUIEditBox(const wchar_t* text, bool border, IGUIEnvironment* environment,
24  IGUIElement* parent, s32 id, const core::rect<s32>& rectangle,
25  bool writable = true, bool has_vscrollbar = false);
26 
28  virtual ~intlGUIEditBox() {}
29 
31  virtual void setDrawBackground(bool draw);
32 
33  virtual bool isDrawBackgroundEnabled() const { return true; }
34 
36  virtual void draw();
37 
39  virtual void updateAbsolutePosition();
40 
41  virtual void setCursorChar(const wchar_t cursorChar) {}
42 
43  virtual wchar_t getCursorChar() const { return L'|'; }
44 
45  virtual void setCursorBlinkTime(u32 timeMs) {}
46 
47  virtual u32 getCursorBlinkTime() const { return 500; }
48 
49  protected:
51  virtual void breakText();
53  virtual void setTextRect(s32 line);
54 
56  void calculateScrollPos();
57 
58  s32 getCursorPos(s32 x, s32 y);
59 
61  void createVScrollBar();
62  };
63 
64 
65 } // end namespace gui
66 } // end namespace irr
67 
68 //#endif // _IRR_COMPILE_WITH_GUI_
Definition: guiEditBox.h:32
Definition: intlGUIEditBox.h:19
virtual void setDrawBackground(bool draw)
Sets whether to draw the background.
Definition: intlGUIEditBox.cpp:106
virtual void breakText()
Breaks the single text line.
Definition: intlGUIEditBox.cpp:362
virtual wchar_t getCursorChar() const
Definition: intlGUIEditBox.h:43
virtual bool isDrawBackgroundEnabled() const
Definition: intlGUIEditBox.h:33
virtual void setCursorChar(const wchar_t cursorChar)
Definition: intlGUIEditBox.h:41
virtual void draw()
draws the element and its children
Definition: intlGUIEditBox.cpp:122
void calculateScrollPos()
calculates the current scroll position
Definition: intlGUIEditBox.cpp:547
virtual void updateAbsolutePosition()
Updates the absolute position, splits text if required.
Definition: intlGUIEditBox.cpp:110
virtual void setTextRect(s32 line)
sets the area of the given line
Definition: intlGUIEditBox.cpp:474
void createVScrollBar()
Create a vertical scrollbar.
Definition: intlGUIEditBox.cpp:601
intlGUIEditBox(const wchar_t *text, bool border, IGUIEnvironment *environment, IGUIElement *parent, s32 id, const core::rect< s32 > &rectangle, bool writable=true, bool has_vscrollbar=false)
constructor
Definition: intlGUIEditBox.cpp:59
virtual u32 getCursorBlinkTime() const
Definition: intlGUIEditBox.h:47
virtual void setCursorBlinkTime(u32 timeMs)
Definition: intlGUIEditBox.h:45
s32 getCursorPos(s32 x, s32 y)
Definition: intlGUIEditBox.cpp:319
virtual ~intlGUIEditBox()
destructor
Definition: intlGUIEditBox.h:28
Definition: clouds.h:32