UFO: Alien Invasion
Toggle main menu visibility
Loading...
Searching...
No Matches
ui_node_spinner.h
Go to the documentation of this file.
1
4
5
/*
6
Copyright (C) 2002-2025 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_node_abstractvalue.h
"
28
29
enum
spinnerMode_t
{
34
SPINNER_NORMAL
,
38
SPINNER_ONLY_INCREASE
,
42
SPINNER_ONLY_DECREASE
43
};
44
45
class
uiSpinnerNode
:
public
uiAbstractValueNode
{
46
void
draw
(
uiNode_t
* node)
override
;
47
void
onLoading
(
uiNode_t
* node)
override
;
48
void
onMouseDown
(
uiNode_t
* node,
int
x,
int
y,
int
button)
override
;
49
void
onMouseUp
(
uiNode_t
* node,
int
x,
int
y,
int
button)
override
;
50
void
onCapturedMouseLost
(
uiNode_t
* node)
override
;
51
bool
onScroll
(
uiNode_t
* node,
int
deltaX,
int
deltaY)
override
;
52
public
:
53
void
repeat
(
uiNode_t
* node,
struct
uiTimer_s*
timer
);
54
protected
:
55
bool
isPositionIncrease
(
uiNode_t
* node,
int
x,
int
y);
56
bool
step
(
uiNode_t
* node,
bool
down
);
57
};
58
59
struct
spinnerExtraData_t
{
60
abstractValueExtraData_s
super
;
61
62
uiSprite_t
*
background
;
63
uiSprite_t
*
bottomIcon
;
64
uiSprite_t
*
topIcon
;
65
int
mode
;
66
bool
horizontal
;
67
bool
inverted
;
68
};
69
70
void
UI_RegisterSpinnerNode
(
uiBehaviour_t
* behaviour);
71
72
void
UI_Spinner_SetBackgroundByName
(
uiNode_t
* node,
const
char
*
name
);
73
void
UI_Spinner_SetBottomIconByName
(
uiNode_t
* node,
const
char
*
name
);
74
void
UI_Spinner_SetTopIconByName
(
uiNode_t
* node,
const
char
*
name
);
75
down
int down
Definition
cl_input.cpp:66
uiAbstractValueNode
Definition
ui_node_abstractvalue.h:29
uiSpinnerNode
Definition
ui_node_spinner.h:45
uiSpinnerNode::isPositionIncrease
bool isPositionIncrease(uiNode_t *node, int x, int y)
Check a position relative to the node to check action is can produce.
Definition
ui_node_spinner.cpp:85
uiSpinnerNode::onCapturedMouseLost
void onCapturedMouseLost(uiNode_t *node) override
Called when the node have lost the captured node We clean cached data.
Definition
ui_node_spinner.cpp:130
uiSpinnerNode::step
bool step(uiNode_t *node, bool down)
change the value of the spinner of one step
Definition
ui_node_spinner.cpp:55
uiSpinnerNode::onMouseUp
void onMouseUp(uiNode_t *node, int x, int y, int button) override
Definition
ui_node_spinner.cpp:119
uiSpinnerNode::onMouseDown
void onMouseDown(uiNode_t *node, int x, int y, int button) override
Definition
ui_node_spinner.cpp:101
uiSpinnerNode::repeat
void repeat(uiNode_t *node, struct uiTimer_s *timer)
Definition
ui_node_spinner.cpp:62
uiSpinnerNode::onScroll
bool onScroll(uiNode_t *node, int deltaX, int deltaY) override
Definition
ui_node_spinner.cpp:141
uiSpinnerNode::draw
void draw(uiNode_t *node) override
Definition
ui_node_spinner.cpp:152
uiSpinnerNode::onLoading
void onLoading(uiNode_t *node) override
Definition
ui_node_spinner.cpp:219
name
QGL_EXTERN GLuint GLsizei GLsizei GLint GLenum GLchar * name
Definition
r_gl.h:110
spinnerExtraData_t
Definition
ui_node_spinner.h:59
spinnerExtraData_t::horizontal
bool horizontal
Definition
ui_node_spinner.h:66
spinnerExtraData_t::topIcon
uiSprite_t * topIcon
Definition
ui_node_spinner.h:64
spinnerExtraData_t::super
abstractValueExtraData_s super
Definition
ui_node_spinner.h:60
spinnerExtraData_t::bottomIcon
uiSprite_t * bottomIcon
Definition
ui_node_spinner.h:63
spinnerExtraData_t::inverted
bool inverted
Definition
ui_node_spinner.h:67
spinnerExtraData_t::mode
int mode
Definition
ui_node_spinner.h:65
spinnerExtraData_t::background
uiSprite_t * background
Definition
ui_node_spinner.h:62
timer
Definition
common.cpp:81
uiBehaviour_t
node behaviour, how a node work
Definition
ui_behaviour.h:39
uiNode_t
Atomic structure used to define most of the UI.
Definition
ui_nodes.h:80
uiSprite_t
Definition
ui_sprite.h:41
ui_node_abstractvalue.h
Define common thing for GUI controls which allow to edit a value (scroolbar, spinner,...
UI_Spinner_SetBottomIconByName
void UI_Spinner_SetBottomIconByName(uiNode_t *node, const char *name)
Definition
ui_node_spinner.cpp:229
spinnerMode_t
spinnerMode_t
Definition
ui_node_spinner.h:29
SPINNER_ONLY_DECREASE
@ SPINNER_ONLY_DECREASE
Definition
ui_node_spinner.h:42
SPINNER_ONLY_INCREASE
@ SPINNER_ONLY_INCREASE
Definition
ui_node_spinner.h:38
SPINNER_NORMAL
@ SPINNER_NORMAL
Definition
ui_node_spinner.h:34
UI_Spinner_SetTopIconByName
void UI_Spinner_SetTopIconByName(uiNode_t *node, const char *name)
Definition
ui_node_spinner.cpp:234
UI_RegisterSpinnerNode
void UI_RegisterSpinnerNode(uiBehaviour_t *behaviour)
Definition
ui_node_spinner.cpp:240
UI_Spinner_SetBackgroundByName
void UI_Spinner_SetBackgroundByName(uiNode_t *node, const char *name)
Definition
ui_node_spinner.cpp:224
src
client
ui
node
ui_node_spinner.h
Generated on __DATE__ __TIME__ for UFO: Alien Invasion by
1.17.0