28 GUITabsHeaderController::GUITabsHeaderController(
GUINode* node)
48 GUIElementController::initialize();
57 GUIElementController::dispose();
89 auto tabElementNodeController = tabElementNode->
getController();
92 if (tabElementNodeController == tabController) {
102 vector<GUINode*> childControllerNodes;
104 required_dynamic_cast<GUIParentNode*>(
node)->getChildControllerNodes(childControllerNodes);
105 for (
auto i = 0; i < childControllerNodes.size(); i++) {
106 auto childControllerNode = childControllerNodes[i];
107 auto childController = childControllerNode->getController();
109 auto guiTabController = required_dynamic_cast<GUITabController*>(childController);
110 if (
static_cast<GUINode*
>(guiTabController->getNode()->getParentControllerNode()) !=
node)
160 GUIElementController::handleMouseEvent(
node, event);
162 event->setProcessed(
true);
163 if (event->
getType() == GUIMouseEvent::MOUSEEVENT_RELEASED) {
171 GUIElementController::handleKeyboardEvent(event);
173 case GUIKeyboardEvent::KEYCODE_LEFT: {
174 event->setProcessed(
true);
175 if (event->
getType() == GUIKeyboardEvent::KEYBOARDEVENT_KEY_PRESSED) {
180 case GUIKeyboardEvent::KEYCODE_RIGHT: {
181 event->setProcessed(
true);
182 if (event->
getType() == GUIKeyboardEvent::KEYBOARDEVENT_KEY_PRESSED) {
192 GUIElementController::tick();
void setFoccussedNode(GUIElementNode *newFoccussedNode)
Set focussed node.
int32_t getKeyCode() const
GUIKeyboardEventType getType() const
GUIMouseEventType getType() const
bool isEventBelongingToNode(GUIMouseEvent *event, Vector2 &nodeCoordinate)
Is event belonging to node.
GUINodeController * getController()
GUIParentNode * getParentControllerNode()
GUIScreenNode * getScreenNode()
GUI parent node base class thats supporting child nodes.
GUI screen node that represents a screen that can be rendered via GUI system.
Mutable utf8 aware string class.