TDME2  1.9.200
GUIVerticalScrollbarInternalController.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <tdme/tdme.h>
8 
14 using tdme::gui::nodes::GUIVerticalScrollbarInternalController_State;
16 
17 /**
18  * GUI vertical scroll bar internal controller
19  * @author Andreas Drewke
20  */
22  : public GUINodeController
23 {
25 public:
27 
28 private:
29  GUILayoutNode* contentNode { nullptr };
34 
35  // forbid class copy
37 
38  /**
39  * Private constructor
40  * @param node node
41  */
43 
44 public:
45  // overridden methods
46  bool isDisabled() override;
47  void setDisabled(bool disabled) override;
48  void initialize() override;
49  void dispose() override;
50  void postLayout() override;
51  void handleMouseEvent(GUINode* node, GUIMouseEvent* event) override;
52  void handleKeyboardEvent(GUIKeyboardEvent* event) override;
53  void tick() override;
54  void onFocusGained() override;
55  void onFocusLost() override;
56  bool hasValue() override;
57  const MutableString& getValue() override;
58  void setValue(const MutableString& value) override;
59  void onSubTreeChange() override;
60 
61  /**
62  * @return state
63  */
64  virtual State getState();
65 
66 private:
67 
68  /**
69  * @return bar height
70  */
71  virtual float getBarHeight();
72 
73  /**
74  * @return bar top
75  */
76  virtual float getBarTop();
77 
78  /**
79  * Set dragged y
80  * @param draggedY dragged y
81  */
82  virtual void setDraggedY(float draggedY);
83 
84 };
GUI node controller base class.
GUI node base class.
Definition: GUINode.h:64
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.
Mutable utf8 aware string class.
Definition: MutableString.h:23
#define FORBID_CLASS_COPY(CLASS)
Definition: tdme.h:6