TDME2
1.9.200
src
tdme
gui
elements
GUITabsHeaderController.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <vector>
4
5
#include <
tdme/tdme.h
>
6
#include <
tdme/gui/elements/fwd-tdme.h
>
7
#include <
tdme/gui/events/fwd-tdme.h
>
8
#include <
tdme/gui/nodes/fwd-tdme.h
>
9
#include <
tdme/gui/nodes/GUIElementController.h
>
10
#include <
tdme/utilities/MutableString.h
>
11
12
using
std::vector;
13
14
using
tdme::gui::events::GUIKeyboardEvent
;
15
using
tdme::gui::events::GUIMouseEvent
;
16
using
tdme::gui::nodes::GUIElementController
;
17
using
tdme::gui::nodes::GUIElementNode
;
18
using
tdme::gui::nodes::GUINode
;
19
using
tdme::utilities::MutableString
;
20
21
/**
22
* GUI tabs header controller
23
* @author Andreas Drewke
24
*/
25
class
tdme::gui::elements::GUITabsHeaderController
final
26
:
public
GUIElementController
27
{
28
friend
class
GUITabsHeader
;
29
friend
class
GUITabController
;
30
31
private
:
32
GUINode
*
tabsNode
{
nullptr
};
33
vector<GUITabController*>
tabControllers
;
34
int
tabControllerIdx
{ -1 };
35
bool
focus
;
36
MutableString
value
;
37
38
// forbid class copy
39
FORBID_CLASS_COPY
(
GUITabsHeaderController
)
40
41
/**
42
* Private constructor
43
* @param node node
44
*/
45
GUITabsHeaderController
(
GUINode
*
node
);
46
47
/**
48
* @return has focus
49
*/
50
bool
hasFocus
();
51
52
/**
53
* Determine select box option controllers
54
*/
55
void
determineTabControllers
();
56
57
/**
58
* Select next node
59
*/
60
void
selectNext
();
61
62
/**
63
* Select previous
64
*/
65
void
selectPrevious
();
66
67
/**
68
* Select current
69
*/
70
void
selectCurrent
();
71
72
public
:
73
/**
74
* Unselect selected tab
75
*/
76
void
unselect
();
77
78
/**
79
* Select selected tab
80
*/
81
void
select
();
82
83
/**
84
* Select tab by index
85
* @param idx index
86
*/
87
void
select
(
int
idx);
88
89
/**
90
* Select tab by index
91
* @param tabElementNode tab element node
92
*/
93
void
select
(
GUIElementNode
* tabElementNode);
94
95
// overridden methods
96
bool
isDisabled
()
override
;
97
void
setDisabled
(
bool
disabled
)
override
;
98
void
initialize
()
override
;
99
void
dispose
()
override
;
100
void
postLayout
()
override
;
101
void
handleMouseEvent
(
GUINode
*
node
,
GUIMouseEvent
* event)
override
;
102
void
handleKeyboardEvent
(
GUIKeyboardEvent
* event)
override
;
103
void
tick
()
override
;
104
void
onFocusGained
()
override
;
105
void
onFocusLost
()
override
;
106
bool
hasValue
()
override
;
107
const
MutableString
&
getValue
()
override
;
108
void
setValue
(
const
MutableString
&
value
)
override
;
109
void
onSubTreeChange
()
override
;
110
111
};
GUIElementController.h
MutableString.h
tdme::gui::elements::GUITabController
GUI tab controller.
Definition:
GUITabController.h:28
tdme::gui::elements::GUITabsHeaderController
GUI tabs header controller.
Definition:
GUITabsHeaderController.h:27
tdme::gui::elements::GUITabsHeaderController::selectCurrent
void selectCurrent()
Select current.
Definition:
GUITabsHeaderController.cpp:145
tdme::gui::elements::GUITabsHeaderController::onFocusGained
void onFocusGained() override
On focus gained.
Definition:
GUITabsHeaderController.cpp:195
tdme::gui::elements::GUITabsHeaderController::dispose
void dispose() override
Dispose controller.
Definition:
GUITabsHeaderController.cpp:55
tdme::gui::elements::GUITabsHeaderController::postLayout
void postLayout() override
Post layout event.
Definition:
GUITabsHeaderController.cpp:60
tdme::gui::elements::GUITabsHeaderController::initialize
void initialize() override
Initialize controller after element has been created.
Definition:
GUITabsHeaderController.cpp:43
tdme::gui::elements::GUITabsHeaderController::handleKeyboardEvent
void handleKeyboardEvent(GUIKeyboardEvent *event) override
Handle keyboard event.
Definition:
GUITabsHeaderController.cpp:169
tdme::gui::elements::GUITabsHeaderController::selectNext
void selectNext()
Select next node.
Definition:
GUITabsHeaderController.cpp:117
tdme::gui::elements::GUITabsHeaderController::onFocusLost
void onFocusLost() override
On focus lost.
Definition:
GUITabsHeaderController.cpp:201
tdme::gui::elements::GUITabsHeaderController::setValue
void setValue(const MutableString &value) override
Set value.
Definition:
GUITabsHeaderController.cpp:217
tdme::gui::elements::GUITabsHeaderController::handleMouseEvent
void handleMouseEvent(GUINode *node, GUIMouseEvent *event) override
Handle mouse event.
Definition:
GUITabsHeaderController.cpp:158
tdme::gui::elements::GUITabsHeaderController::GUITabsHeaderController
GUITabsHeaderController(GUINode *node)
Private constructor.
Definition:
GUITabsHeaderController.cpp:28
tdme::gui::elements::GUITabsHeaderController::tick
void tick() override
Tick method will be executed once per frame.
Definition:
GUITabsHeaderController.cpp:190
tdme::gui::elements::GUITabsHeaderController::unselect
void unselect()
Unselect selected tab.
Definition:
GUITabsHeaderController.cpp:69
tdme::gui::elements::GUITabsHeaderController::tabsNode
GUINode * tabsNode
Definition:
GUITabsHeaderController.h:32
tdme::gui::elements::GUITabsHeaderController::tabControllers
vector< GUITabController * > tabControllers
Definition:
GUITabsHeaderController.h:33
tdme::gui::elements::GUITabsHeaderController::setDisabled
void setDisabled(bool disabled) override
Set disabled.
Definition:
GUITabsHeaderController.cpp:39
tdme::gui::elements::GUITabsHeaderController::value
MutableString value
Definition:
GUITabsHeaderController.h:36
tdme::gui::elements::GUITabsHeaderController::getValue
const MutableString & getValue() override
Definition:
GUITabsHeaderController.cpp:212
tdme::gui::elements::GUITabsHeaderController::determineTabControllers
void determineTabControllers()
Determine select box option controllers.
Definition:
GUITabsHeaderController.cpp:100
tdme::gui::elements::GUITabsHeaderController::focus
bool focus
Definition:
GUITabsHeaderController.h:35
tdme::gui::elements::GUITabsHeaderController::isDisabled
bool isDisabled() override
Definition:
GUITabsHeaderController.cpp:34
tdme::gui::elements::GUITabsHeaderController::onSubTreeChange
void onSubTreeChange() override
On sub tree change.
Definition:
GUITabsHeaderController.cpp:221
tdme::gui::elements::GUITabsHeaderController::hasFocus
bool hasFocus()
Definition:
GUITabsHeaderController.cpp:64
tdme::gui::elements::GUITabsHeaderController::hasValue
bool hasValue() override
Definition:
GUITabsHeaderController.cpp:207
tdme::gui::elements::GUITabsHeaderController::select
void select()
Select selected tab.
Definition:
GUITabsHeaderController.cpp:75
tdme::gui::elements::GUITabsHeaderController::tabControllerIdx
int tabControllerIdx
Definition:
GUITabsHeaderController.h:34
tdme::gui::elements::GUITabsHeaderController::selectPrevious
void selectPrevious()
Select previous.
Definition:
GUITabsHeaderController.cpp:131
tdme::gui::elements::GUITabsHeader
GUI tabs header element.
Definition:
GUITabsHeader.h:27
tdme::gui::events::GUIKeyboardEvent
GUI keyboard event.
Definition:
GUIKeyboardEvent.h:12
tdme::gui::events::GUIMouseEvent
GUI mouse event.
Definition:
GUIMouseEvent.h:12
tdme::gui::nodes::GUIElementController
GUI element controller.
Definition:
GUIElementController.h:25
tdme::gui::nodes::GUIElementController::disabled
bool disabled
Definition:
GUIElementController.h:31
tdme::gui::nodes::GUIElementNode
GUI element node.
Definition:
GUIElementNode.h:37
tdme::gui::nodes::GUINodeController::node
GUINode * node
Definition:
GUINodeController.h:20
tdme::gui::nodes::GUINode
GUI node base class.
Definition:
GUINode.h:64
tdme::utilities::MutableString
Mutable utf8 aware string class.
Definition:
MutableString.h:23
fwd-tdme.h
fwd-tdme.h
fwd-tdme.h
tdme.h
FORBID_CLASS_COPY
#define FORBID_CLASS_COPY(CLASS)
Definition:
tdme.h:6
Generated by
1.9.1