DialogControls-ControlsGroup
CT_CONTROLS_GROUP=15
TokenNames common to all controls, such as x,y,z,h,text... are not listed here.
The x and y coords of the child control are relative to the parent class, the height and width are not
If the height and / or width of the child control are greater than the parent control then scrollbars will be seen
This allows the creation of scrollable active text controls etc
The entire child class needs to be defined in the parents subclass class Controls {};
Properties | ||
---|---|---|
Name | Type | Remark |
VScrollbar | class | |
HScrollbar | class | |
ScrollBar | class | |
Controls | class |
classes
VScrollbar
Properties | ||
---|---|---|
Name | Type | Remark |
width | float | |
autoScrollSpeed' | integer | typically -1 |
autoScrollDelay | integer | in seconds |
autoScrollRewind' | boolean | |
shadow | integer |
HScrollbar
Properties | ||
---|---|---|
Name | Type | Remark |
height | float | |
shadow | integer |
Scrollbar
Properties | ||
---|---|---|
Name | Type | Remark |
color | color array | |
colorActive | color array | |
colorDisabled | color array | |
thumb | string | path to texture or "#(argb,8,8,3)color(1,1,1,1)"; |
arrowEmpty/Full | string | path to texture or "#(argb,8,8,3)color(1,1,1,1)"; |
border | string | path to texture or "#(argb,8,8,3)color(1,1,1,1)"; |
Controls
additional user added controls of any type can be added in a derived class. the base is empty because the engine looks for it regardless.
- Example:
In this example, the child control My_RscStructuredText is higher (h value) than the parent control, so a vertical scrollbar is automatically created, which allows scrolling the entire length of the structured text display
class RscControlsGroup
{
type = CT_CONTROLS_GROUP;
idc = -1;
style = ST_MULTI;
x = 0; y = 0; w = 1; h = 1;
shadow=0;
class VScrollbar
{
width = 0.021;
autoScrollSpeed = -1;
autoScrollDelay = 5;
autoScrollRewind = 0;
shadow=0;
};
class HScrollbar
{
height = 0.028;
shadow=0;
};
class ScrollBar
{
color[] = {1,1,1,0.6};
colorActive[] = {1,1,1,1};
colorDisabled[] = {1,1,1,0.3};
thumb = "#(argb,8,8,3)color(1,1,1,1)";
arrowEmpty = "#(argb,8,8,3)color(1,1,1,1)";
arrowFull = "#(argb,8,8,3)color(1,1,1,1)";
border = "#(argb,8,8,3)color(1,1,1,1)";
};
class Controls{};// an empty class telling the engine, no custom, additional controls
};
class dialog
{
class controls
{
class MyControls:RscControlsGroup
{
x = (safeZoneX + (SafezoneW * 0.0363)); // scalability code which resizes correctly no matter what gui size or screen dimensions is used
y = (safeZoneY + (SafezoneH * 0.132)); // scalability code which resizes correctly no matter what gui size or screen dimensions is used
w = (SafezoneW * 0.31); // scalability code which resizes correctly no matter what gui size or screen dimensions is used
h = (SafezoneH * 0.752); // scalability code which resizes correctly no matter what gui size or screen dimensions is used
class Controls
{
...class whatever additional controls you want
};
};
};
};