UFO: Alien Invasion
Loading...
Searching...
No Matches
ui_node_vscrollbar.cpp File Reference
#include "../ui_nodes.h"
#include "../ui_behaviour.h"
#include "../ui_parse.h"
#include "../ui_timer.h"
#include "../ui_actions.h"
#include "../ui_input.h"
#include "../ui_render.h"
#include "../ui_lua.h"
#include "ui_node_abstractnode.h"
#include "ui_node_abstractscrollbar.h"
#include "ui_node_vscrollbar.h"
#include "../../input/cl_input.h"
#include "../../input/cl_keys.h"
#include "../../../common/scripts_lua.h"
Include dependency graph for ui_node_vscrollbar.cpp:

Go to the source code of this file.

Macros

#define EXTRADATA(node)

Functions

static void UI_VScrollbarNodeGetElementSize (uiNode_t *node, int description[5])
 Return size of all elements of the scrollbar.
static int UI_VScrollbarNodeGetElement (uiNode_t *node, int description[5], int x, int y)
 Get an element of the scrollbar at a position.
static void UI_VScrollbarNodeDiff (uiNode_t *node, int value)
 Translate the position to a value.
static void UI_VScrollbarNodeAction (uiNode_t *node, int hoveredElement, bool allowCapture)
static void UI_VScrollbarNodeRepeat (uiNode_t *node, uiTimer_t *timer)
void UI_RegisterVScrollbarNode (uiBehaviour_t *behaviour)

Variables

static const int TILE_WIDTH = 32
static const int TILE_HEIGHT = 18
static const int ELEMENT_WIDTH = 19
static const int ELEMENT_HEIGHT = 16
static int oldPos
static int oldMouseY
static uiTimer_tcapturedTimer
static int capturedElement

Detailed Description

Todo

implement disabled

robustness

Definition in file ui_node_vscrollbar.cpp.

Macro Definition Documentation

◆ EXTRADATA

#define EXTRADATA ( node)
Value:
extradata for scrollbar widget
#define UI_EXTRADATA(NODE, TYPE)
Definition ui_nodes.h:185

Definition at line 55 of file ui_node_vscrollbar.cpp.

Referenced by UI_VScrollbarNodeAction(), UI_VScrollbarNodeDiff(), and UI_VScrollbarNodeGetElementSize().

Function Documentation

◆ UI_RegisterVScrollbarNode()

◆ UI_VScrollbarNodeAction()

void UI_VScrollbarNodeAction ( uiNode_t * node,
int hoveredElement,
bool allowCapture )
inlinestatic
Parameters
[in]nodeOur scrollbar
[in]hoveredElementbeginarrow, mid, scroll, mid, endarrow
[in]allowCaptureidk

Definition at line 115 of file ui_node_vscrollbar.cpp.

References capturedElement, capturedTimer, EXTRADATA, mousePosY, oldMouseY, oldPos, UI_AllocTimer(), UI_SetMouseCapture(), UI_TimerStart(), UI_VScrollbarNodeDiff(), and UI_VScrollbarNodeRepeat().

Referenced by uiVScrollbarNode::onMouseDown(), and UI_VScrollbarNodeRepeat().

◆ UI_VScrollbarNodeDiff()

void UI_VScrollbarNodeDiff ( uiNode_t * node,
int value )
inlinestatic

Translate the position to a value.

Definition at line 95 of file ui_node_vscrollbar.cpp.

References EXTRADATA, and UI_AbstractScrollbarNodeSet().

Referenced by UI_VScrollbarNodeAction().

◆ UI_VScrollbarNodeGetElement()

int UI_VScrollbarNodeGetElement ( uiNode_t * node,
int description[5],
int x,
int y )
static

Get an element of the scrollbar at a position.

Parameters
[in]nodeAbsolute position y
[in]descriptionSize of each scroll bar elements (beginarrow, mid, scroll, mid, endarrow)
[in]x,yAbsolute position

Definition at line 80 of file ui_node_vscrollbar.cpp.

References i, and UI_NodeAbsoluteToRelativePos().

Referenced by uiVScrollbarNode::draw(), and uiVScrollbarNode::onMouseDown().

◆ UI_VScrollbarNodeGetElementSize()

void UI_VScrollbarNodeGetElementSize ( uiNode_t * node,
int description[5] )
static

Return size of all elements of the scrollbar.

Definition at line 60 of file ui_node_vscrollbar.cpp.

References uiNode_t::box, ELEMENT_HEIGHT, EXTRADATA, and uiBox_t::size.

Referenced by uiVScrollbarNode::draw(), and uiVScrollbarNode::onMouseDown().

◆ UI_VScrollbarNodeRepeat()

void UI_VScrollbarNodeRepeat ( uiNode_t * node,
uiTimer_t * timer )
static

Definition at line 102 of file ui_node_vscrollbar.cpp.

References capturedElement, and UI_VScrollbarNodeAction().

Referenced by UI_VScrollbarNodeAction().

Variable Documentation

◆ capturedElement

◆ capturedTimer

uiTimer_t* capturedTimer
static

Definition at line 52 of file ui_node_vscrollbar.cpp.

◆ ELEMENT_HEIGHT

◆ ELEMENT_WIDTH

const int ELEMENT_WIDTH = 19
static

Definition at line 47 of file ui_node_vscrollbar.cpp.

Referenced by uiVScrollbarNode::draw().

◆ oldMouseY

int oldMouseY
static

Definition at line 51 of file ui_node_vscrollbar.cpp.

◆ oldPos

◆ TILE_HEIGHT

const int TILE_HEIGHT = 18
static

Definition at line 46 of file ui_node_vscrollbar.cpp.

◆ TILE_WIDTH

const int TILE_WIDTH = 32
static

Definition at line 45 of file ui_node_vscrollbar.cpp.