UFO: Alien Invasion
Toggle main menu visibility
Loading...
Searching...
No Matches
ui_node_baseinventory.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_container.h
"
28
#include "
ui_node_abstractscrollable.h
"
29
30
class
uiBaseInventoryNode
:
public
uiContainerNode
{
31
public
:
32
void
initNode
(
uiNode_t
* node)
override
;
33
void
draw
(
uiNode_t
* node)
override
;
34
void
drawTooltip
(
const
uiNode_t
* node,
int
x,
int
y)
const override
;
35
36
void
onMouseDown
(
uiNode_t
* node,
int
x,
int
y,
int
button)
override
;
37
void
onMouseUp
(
uiNode_t
* node,
int
x,
int
y,
int
button)
override
;
38
bool
onScroll
(
uiNode_t
* node,
int
deltaX,
int
deltaY)
override
;
39
void
onCapturedMouseMove
(
uiNode_t
* node,
int
x,
int
y)
override
;
40
void
onWindowOpened
(
uiNode_t
* node,
linkedList_t
* params)
override
;
41
void
onLoading
(
uiNode_t
* node)
override
;
42
void
onLoaded
(
uiNode_t
* node)
override
;
43
bool
onDndEnter
(
uiNode_t
* node)
override
;
44
bool
onDndMove
(
uiNode_t
* node,
int
x,
int
y)
override
;
45
void
onDndLeave
(
uiNode_t
* node)
override
;
46
};
47
48
/* prototypes */
49
struct
uiBehaviour_t
;
50
51
typedef
struct
baseInventoryExtraData_s {
52
containerExtraData_t
super
;
53
55
int
filterEquipType
;
56
57
int
columns
;
58
bool
displayWeapon
;
59
bool
displayAmmo
;
60
bool
displayImplant
;
61
bool
displayUnavailableItem
;
62
bool
displayAmmoOfWeapon
;
63
bool
displayUnavailableAmmoOfWeapon
;
64
bool
displayAvailableOnTop
;
65
66
/* scroll status */
67
uiScroll_t
scrollY
;
68
/* scroll callback when the status change */
69
struct
uiAction_s*
onViewChange
;
70
LUA_EVENT
lua_onViewChange
;
71
72
}
baseInventoryExtraData_t
;
73
77
CASSERT
(offsetof(
baseInventoryExtraData_t
, super) == 0);
78
79
void
UI_RegisterBaseInventoryNode
(
uiBehaviour_t
* behaviour);
uiBaseInventoryNode
Definition
ui_node_baseinventory.h:30
uiBaseInventoryNode::drawTooltip
void drawTooltip(const uiNode_t *node, int x, int y) const override
Custom tooltip for container node.
Definition
ui_node_baseinventory.cpp:604
uiBaseInventoryNode::onCapturedMouseMove
void onCapturedMouseMove(uiNode_t *node, int x, int y) override
Definition
ui_node_baseinventory.cpp:659
uiBaseInventoryNode::onMouseDown
void onMouseDown(uiNode_t *node, int x, int y, int button) override
Definition
ui_node_baseinventory.cpp:668
uiBaseInventoryNode::onDndMove
bool onDndMove(uiNode_t *node, int x, int y) override
Call into the target when the DND hover it.
Definition
ui_node_baseinventory.cpp:752
uiBaseInventoryNode::onDndEnter
bool onDndEnter(uiNode_t *node) override
Call when a DND enter into the node.
Definition
ui_node_baseinventory.cpp:739
uiBaseInventoryNode::draw
void draw(uiNode_t *node) override
Main function to draw a container node.
Definition
ui_node_baseinventory.cpp:451
uiBaseInventoryNode::onDndLeave
void onDndLeave(uiNode_t *node) override
Call when a DND enter into the node.
Definition
ui_node_baseinventory.cpp:760
uiBaseInventoryNode::onScroll
bool onScroll(uiNode_t *node, int deltaX, int deltaY) override
Definition
ui_node_baseinventory.cpp:717
uiBaseInventoryNode::initNode
void initNode(uiNode_t *node) override
Definition
ui_node_baseinventory.cpp:443
uiBaseInventoryNode::onLoaded
void onLoaded(uiNode_t *node) override
Calculates the size of a container node and links the container into the node (uses the invDef_t shap...
Definition
ui_node_baseinventory.cpp:233
uiBaseInventoryNode::onMouseUp
void onMouseUp(uiNode_t *node, int x, int y, int button) override
Definition
ui_node_baseinventory.cpp:705
uiBaseInventoryNode::onLoading
void onLoading(uiNode_t *node) override
Definition
ui_node_baseinventory.cpp:729
uiBaseInventoryNode::onWindowOpened
void onWindowOpened(uiNode_t *node, linkedList_t *params) override
Call when we open the window containing the node.
Definition
ui_node_baseinventory.cpp:767
uiContainerNode
Definition
ui_node_container.h:35
LUA_EVENT
int LUA_EVENT
holds a reference to a lua event handler
Definition
scripts_lua.h:49
CASSERT
#define CASSERT(x)
Definition
shared.h:107
baseInventoryExtraData_t
Definition
ui_node_baseinventory.h:51
baseInventoryExtraData_t::onViewChange
struct uiAction_s * onViewChange
Definition
ui_node_baseinventory.h:69
baseInventoryExtraData_t::super
containerExtraData_t super
Definition
ui_node_baseinventory.h:52
baseInventoryExtraData_t::filterEquipType
int filterEquipType
Definition
ui_node_baseinventory.h:55
baseInventoryExtraData_t::lua_onViewChange
LUA_EVENT lua_onViewChange
Definition
ui_node_baseinventory.h:70
baseInventoryExtraData_t::displayAmmo
bool displayAmmo
Definition
ui_node_baseinventory.h:59
baseInventoryExtraData_t::displayUnavailableItem
bool displayUnavailableItem
Definition
ui_node_baseinventory.h:61
baseInventoryExtraData_t::displayUnavailableAmmoOfWeapon
bool displayUnavailableAmmoOfWeapon
Definition
ui_node_baseinventory.h:63
baseInventoryExtraData_t::displayImplant
bool displayImplant
Definition
ui_node_baseinventory.h:60
baseInventoryExtraData_t::scrollY
uiScroll_t scrollY
Definition
ui_node_baseinventory.h:67
baseInventoryExtraData_t::displayAvailableOnTop
bool displayAvailableOnTop
Definition
ui_node_baseinventory.h:64
baseInventoryExtraData_t::displayWeapon
bool displayWeapon
Definition
ui_node_baseinventory.h:58
baseInventoryExtraData_t::columns
int columns
Definition
ui_node_baseinventory.h:57
baseInventoryExtraData_t::displayAmmoOfWeapon
bool displayAmmoOfWeapon
Definition
ui_node_baseinventory.h:62
containerExtraData_t
extradata for container widget
Definition
ui_node_container.h:64
linkedList_t
Definition
list.h:30
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
uiScroll_t
Scroll representation.
Definition
ui_node_abstractscrollable.h:58
ui_node_abstractscrollable.h
base code for scrollable node
UI_RegisterBaseInventoryNode
void UI_RegisterBaseInventoryNode(uiBehaviour_t *behaviour)
Definition
ui_node_baseinventory.cpp:771
ui_node_container.h
src
client
ui
node
ui_node_baseinventory.h
Generated on __DATE__ __TIME__ for UFO: Alien Invasion by
1.17.0