UFO: Alien Invasion
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
ui_node_textentry.h
Go to the documentation of this file.
1 
5 /*
6 Copyright (C) 2002-2020 UFO: Alien Invasion.
7 
8 This program is free software; you can redistribute it and/or
9 modify it under the terms of the GNU General Public License
10 as published by the Free Software Foundation; either version 2
11 of the License, or (at your option) any later version.
12 
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16 
17 See the GNU General Public License for more details.
18 
19 You should have received a copy of the GNU General Public License
20 along with this program; if not, write to the Free Software
21 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
22 
23 */
24 
25 #pragma once
26 
27 #include "../ui_nodes.h"
28 #include "../ui_actions.h"
29 
31  void onLoading(uiNode_t* node) override;
32  void onLeftClick(uiNode_t* node, int x, int y) override;
33  void draw(uiNode_t* node) override;
34  void onFocusGained(uiNode_t* node) override;
35  void onFocusLost(uiNode_t* node) override;
36  bool onKeyPressed(uiNode_t* node, unsigned int key, unsigned short unicode) override;
37 };
38 
42 typedef struct textEntryExtraData_s {
43  bool isPassword;
50 
51 void UI_TextEntryNodeFocus(uiNode_t* node, const uiCallContext_t* context);
52 void UI_TextEntryNodeUnFocus(uiNode_t* node, const uiCallContext_t* context);
53 
55 void UI_TextEntry_SetBackgroundByName (uiNode_t* node, const char* name);
void UI_RegisterTextEntryNode(uiBehaviour_t *behaviour)
void onLoading(uiNode_t *node) override
Call before the script initialization of the node.
uiSprite_t * background
int LUA_EVENT
holds a reference to a lua event handler
Definition: scripts_lua.h:49
bool isPassword
void onFocusGained(uiNode_t *node) override
Called when the node got the focus.
LUA_EVENT lua_onTextEntryAbort
void UI_TextEntryNodeUnFocus(uiNode_t *node, const uiCallContext_t *context)
force exit the edit mode of a textentry node
unsigned short unicode
Definition: cl_input.cpp:69
extradata for the textentry, to custom draw and behaviour
void draw(uiNode_t *node) override
void UI_TextEntry_SetBackgroundByName(uiNode_t *node, const char *name)
set background sprite
struct textEntryExtraData_s textEntryExtraData_t
extradata for the textentry, to custom draw and behaviour
unsigned int key
Definition: cl_input.cpp:68
bool clickOutAbort
Atomic structure used to define most of the UI.
Definition: ui_nodes.h:80
Contain the context of the calling of a function.
Definition: ui_actions.h:208
void UI_TextEntryNodeFocus(uiNode_t *node, const uiCallContext_t *context)
force edition of a textentry node
struct uiAction_s * onAbort
node behaviour, how a node work
Definition: ui_behaviour.h:39
void onFocusLost(uiNode_t *node) override
Called when the node lost the focus.
QGL_EXTERN GLuint GLsizei GLsizei GLint GLenum GLchar * name
Definition: r_gl.h:110
int cursorPosition
bool onKeyPressed(uiNode_t *node, unsigned int key, unsigned short unicode) override
Called when we press a key when the node got the focus.
void onLeftClick(uiNode_t *node, int x, int y) override
Called when the user click with the right mouse button.
Atomic element to store UI scripts The parser use this atom to translate script action into many tree...
Definition: ui_actions.h:144