Polyphase Game Engine
Loading...
Searching...
No Matches
ScrollContainer_Lua.h
Go to the documentation of this file.
1#pragma once
2
3#include "EngineTypes.h"
4#include "Log.h"
5
7
9
10#if LUA_ENABLED
11
12#define SCROLL_CONTAINER_LUA_NAME "ScrollContainer"
13#define SCROLL_CONTAINER_LUA_FLAG "cfScrollContainer"
14#define CHECK_SCROLL_CONTAINER(L, arg) (ScrollContainer*)CheckNodeLuaType(L, arg, SCROLL_CONTAINER_LUA_NAME, SCROLL_CONTAINER_LUA_FLAG);
15
16struct ScrollContainer_Lua
17{
18 // Scroll Position
19 static int SetScrollOffset(lua_State* L);
20 static int GetScrollOffset(lua_State* L);
21 static int SetScrollOffsetX(lua_State* L);
22 static int SetScrollOffsetY(lua_State* L);
23 static int ScrollToTop(lua_State* L);
24 static int ScrollToBottom(lua_State* L);
25 static int ScrollToLeft(lua_State* L);
26 static int ScrollToRight(lua_State* L);
27
28 // Size Mode
29 static int SetScrollSizeMode(lua_State* L);
30 static int GetScrollSizeMode(lua_State* L);
31
32 // Scrollbar Mode
33 static int SetHorizontalScrollbarMode(lua_State* L);
34 static int GetHorizontalScrollbarMode(lua_State* L);
35 static int SetVerticalScrollbarMode(lua_State* L);
36 static int GetVerticalScrollbarMode(lua_State* L);
37 static int SetScrollbarWidth(lua_State* L);
38 static int GetScrollbarWidth(lua_State* L);
39
40 // Scroll Behavior
41 static int SetScrollSpeed(lua_State* L);
42 static int GetScrollSpeed(lua_State* L);
43 static int SetMomentumEnabled(lua_State* L);
44 static int IsMomentumEnabled(lua_State* L);
45 static int SetMomentumFriction(lua_State* L);
46 static int GetMomentumFriction(lua_State* L);
47
48 // Query
49 static int CanScrollHorizontally(lua_State* L);
50 static int CanScrollVertically(lua_State* L);
51 static int GetContentSize(lua_State* L);
52 static int GetMaxScrollOffset(lua_State* L);
53 static int IsDragging(lua_State* L);
54 static int IsScrolling(lua_State* L);
55 static int GetContentWidget(lua_State* L);
56
57 // Child Input Priority
58 static int SetChildInputPriority(lua_State* L);
59 static int GetChildInputPriority(lua_State* L);
60
61 // Colors
62 static int SetScrollbarColor(lua_State* L);
63 static int GetScrollbarColor(lua_State* L);
64 static int SetScrollbarHoveredColor(lua_State* L);
65 static int GetScrollbarHoveredColor(lua_State* L);
66 static int SetScrollbarTrackColor(lua_State* L);
67 static int GetScrollbarTrackColor(lua_State* L);
68
69 // Textures
70 static int SetScrollbarTexture(lua_State* L);
71 static int GetScrollbarTexture(lua_State* L);
72 static int SetTrackTexture(lua_State* L);
73 static int GetTrackTexture(lua_State* L);
74
75 // Scroll Buttons
76 static int SetShowScrollButtons(lua_State* L);
77 static int GetShowScrollButtons(lua_State* L);
78 static int SetButtonSize(lua_State* L);
79 static int GetButtonSize(lua_State* L);
80 static int SetUpButtonTexture(lua_State* L);
81 static int GetUpButtonTexture(lua_State* L);
82 static int SetDownButtonTexture(lua_State* L);
83 static int GetDownButtonTexture(lua_State* L);
84 static int SetLeftButtonTexture(lua_State* L);
85 static int GetLeftButtonTexture(lua_State* L);
86 static int SetRightButtonTexture(lua_State* L);
87 static int GetRightButtonTexture(lua_State* L);
88 static int SetButtonColor(lua_State* L);
89 static int GetButtonColor(lua_State* L);
90
91 // Access internal widgets
92 static int GetHScrollbar(lua_State* L);
93 static int GetVScrollbar(lua_State* L);
94 static int GetHTrack(lua_State* L);
95 static int GetVTrack(lua_State* L);
96 static int GetUpButton(lua_State* L);
97 static int GetDownButton(lua_State* L);
98 static int GetLeftButton(lua_State* L);
99 static int GetRightButton(lua_State* L);
100
101 static void Bind();
102};
103
104#endif