UFO: Alien Invasion
Toggle main menu visibility
Loading...
Searching...
No Matches
ui_dragndrop.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 "
../../shared/ufotypes.h
"
28
29
struct
uiNode_t
;
30
class
Item
;
31
32
typedef
enum
{
33
DND_NOTHING
,
34
DND_SOMETHING
,
35
DND_ITEM
36
}
uiDNDType_t
;
37
38
/* management */
39
void
UI_DrawDragAndDrop
(
int
mousePosX
,
int
mousePosY
);
40
41
/* command */
42
void
UI_DNDDragItem
(
uiNode_t
* node,
const
Item
* item);
43
void
UI_DNDDrop
(
void
);
44
void
UI_DNDAbort
(
void
);
45
46
/* getter */
47
bool
UI_DNDIsDragging
(
void
);
48
bool
UI_DNDIsTargetNode
(
uiNode_t
* node);
49
bool
UI_DNDIsSourceNode
(
uiNode_t
* node);
50
uiNode_t
*
UI_DNDGetTargetNode
(
void
);
51
uiNode_t
*
UI_DNDGetSourceNode
(
void
);
52
int
UI_DNDGetType
(
void
);
53
Item
*
UI_DNDGetItem
(
void
);
mousePosY
int mousePosY
Definition
cl_input.cpp:76
mousePosX
int mousePosX
Definition
cl_input.cpp:76
Item
item instance data, with linked list capability
Definition
inv_shared.h:402
uiNode_t
Atomic structure used to define most of the UI.
Definition
ui_nodes.h:80
ufotypes.h
Cross-platform type definitions.
UI_DNDIsDragging
bool UI_DNDIsDragging(void)
Return true if we are dragging something.
Definition
ui_dragndrop.cpp:52
UI_DNDDrop
void UI_DNDDrop(void)
Drop the object at the current position.
Definition
ui_dragndrop.cpp:167
UI_DNDIsTargetNode
bool UI_DNDIsTargetNode(uiNode_t *node)
Return true if the requested node is the current target of the DND.
Definition
ui_dragndrop.cpp:60
UI_DNDGetItem
Item * UI_DNDGetItem(void)
Definition
ui_dragndrop.cpp:190
uiDNDType_t
uiDNDType_t
Definition
ui_dragndrop.h:32
DND_ITEM
@ DND_ITEM
Definition
ui_dragndrop.h:35
DND_NOTHING
@ DND_NOTHING
Definition
ui_dragndrop.h:33
DND_SOMETHING
@ DND_SOMETHING
Definition
ui_dragndrop.h:34
UI_DNDGetTargetNode
uiNode_t * UI_DNDGetTargetNode(void)
Return target of the DND.
Definition
ui_dragndrop.cpp:88
UI_DNDAbort
void UI_DNDAbort(void)
Drop the object at the current position.
Definition
ui_dragndrop.cpp:147
UI_DNDDragItem
void UI_DNDDragItem(uiNode_t *node, const Item *item)
Start to drag an item.
Definition
ui_dragndrop.cpp:124
UI_DNDGetType
int UI_DNDGetType(void)
Return the current type of the dragging object, else DND_NOTHING.
Definition
ui_dragndrop.cpp:80
UI_DNDIsSourceNode
bool UI_DNDIsSourceNode(uiNode_t *node)
Return true if the requested node is the source of the DND.
Definition
ui_dragndrop.cpp:70
UI_DNDGetSourceNode
uiNode_t * UI_DNDGetSourceNode(void)
Return source of the DND.
Definition
ui_dragndrop.cpp:97
UI_DrawDragAndDrop
void UI_DrawDragAndDrop(int mousePosX, int mousePosY)
Draw to dragging object and catch mouse move event.
Definition
ui_dragndrop.cpp:230
src
client
ui
ui_dragndrop.h
Generated on __DATE__ __TIME__ for UFO: Alien Invasion by
1.17.0