TDME2  1.9.200
GUIHorizontalScrollbarInternalController.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <tdme/tdme.h>
9 
12 using tdme::gui::nodes::GUIHorizontalScrollbarInternalController_State;
17 
18 /**
19  * GUI scroll bar controller
20  * @author Andreas Drewke
21  */
23  : public GUINodeController
24 {
26 public:
28 
29 private:
30  GUILayoutNode* contentNode { nullptr };
31  float contentWidth;
35 
36  /**
37  * @return bar width
38  */
39  virtual float getBarWidth();
40 
41  /**
42  * @return bar left
43  */
44  virtual float getBarLeft();
45 
46  /**
47  * Set dragged x
48  * @param draggedX dragged x
49  */
50  virtual void setDraggedX(float draggedX);
51 
52 protected:
53  // forbid class copy
55 
56  /**
57  * Constructor
58  * @param node node
59  */
61 
62 public:
63  /**
64  * @return state
65  */
66  virtual State getState();
67 
68  // overridden methods
69  bool isDisabled() override;
70  void setDisabled(bool disabled) override;
71  void initialize() override;
72  void dispose() override;
73  void postLayout() override;
74  void handleMouseEvent(GUINode* node, GUIMouseEvent* event) override;
75  void handleKeyboardEvent(GUIKeyboardEvent* event) override;
76  void tick() override;
77  void onFocusGained() override;
78  void onFocusLost() override;
79  bool hasValue() override;
80  const MutableString& getValue() override;
81  void setValue(const MutableString& value) override;
82  void onSubTreeChange() override;
83 
84 };
void initialize() override
Initialize controller after element has been created.
void handleKeyboardEvent(GUIKeyboardEvent *event) override
Handle keyboard event.
void handleMouseEvent(GUINode *node, GUIMouseEvent *event) override
Handle mouse event.
void tick() override
Tick method will be executed once per frame.
GUI node controller base class.
GUI node base class.
Definition: GUINode.h:64
Mutable utf8 aware string class.
Definition: MutableString.h:23
#define FORBID_CLASS_COPY(CLASS)
Definition: tdme.h:6