UFO: Alien Invasion
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
ui_node_video.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 "../../cinematic/cl_cinematic.h"
29 
30 class uiVideoNode : public uiLocatedNode {
31  void initNode(uiNode_t* node) override;
32  void draw(uiNode_t* node) override;
33  void drawOverWindow(uiNode_t* node) override;
34  void onWindowOpened(uiNode_t* node, linkedList_t* params) override;
35  void onWindowClosed(uiNode_t* node) override;
36 };
37 
38 void UI_RegisterVideoNode(uiBehaviour_t* behaviour);
39 
40 #define UI_VIDEOEXTRADATA_TYPE videoExtraData_t
41 #define UI_VIDEOEXTRADATA(node) UI_EXTRADATA(node, UI_VIDEOEXTRADATA_TYPE)
42 #define UI_VIDEOEXTRADATACONST(node) UI_EXTRADATACONST(node, UI_VIDEOEXTRADATA_TYPE)
43 
44 struct uiAction_s;
45 
46 typedef struct {
47  const char* source;
49  bool nosound;
50  struct uiAction_s* onEnd;
53 
54 void UI_Video_SetSource (uiNode_t* node, const char* name);
void initNode(uiNode_t *node) override
void onWindowClosed(uiNode_t *node) override
int LUA_EVENT
holds a reference to a lua event handler
Definition: scripts_lua.h:49
const char * source
Definition: ui_node_video.h:47
LUA_EVENT lua_onEnd
Definition: ui_node_video.h:51
void UI_RegisterVideoNode(uiBehaviour_t *behaviour)
void drawOverWindow(uiNode_t *node) override
struct uiAction_s * onEnd
Definition: ui_node_video.h:50
void draw(uiNode_t *node) override
cinematic_t cin
Definition: ui_node_video.h:48
Atomic structure used to define most of the UI.
Definition: ui_nodes.h:80
node behaviour, how a node work
Definition: ui_behaviour.h:39
void UI_Video_SetSource(uiNode_t *node, const char *name)
QGL_EXTERN GLuint GLsizei GLsizei GLint GLenum GLchar * name
Definition: r_gl.h:110
void onWindowOpened(uiNode_t *node, linkedList_t *params) override
Atomic element to store UI scripts The parser use this atom to translate script action into many tree...
Definition: ui_actions.h:144