DialogControls-ControlsGroup: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "#redirect " to "#REDIRECT ")
 
(14 intermediate revisions by 4 users not shown)
Line 1: Line 1:
==CT_CONTROLS_GROUP=15==
#REDIRECT [[CT_CONTROLS_GROUP]]
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
<br>If the height and / or width of the child control are greater than the parent control then scrollbars will be seen
<br>This allows the creation of scrollable active text controls etc
<br>The entire child class needs to be defined in the parents subclass class Controls {};
{| border="1" align="left" cellpadding="3" cellspacing="0" |
! colspan="3" bgcolor="#bbbbff" | Properties
|-
! bgcolor="#ddddff" | Name
! bgcolor="#ddddff" | Type
! bgcolor="#ddddff" | Remark
|-
| '''VScrollbar'''
| class
|
|-
| '''HScrollbar'''
| class
|
|-
| '''ScrollBar'''
| class
|
|-
| '''Controls'''
| class
|
|-
|}<br clear="all">
 
===classes===
====VScrollbar====
 
{| border="1" align="left" cellpadding="3" cellspacing="0" |
! colspan="3" bgcolor="#bbbbff" | Properties
|-
! bgcolor="#ddddff" | Name
! bgcolor="#ddddff" | Type
! bgcolor="#ddddff" | Remark
|-
| '''width'''
| float
|
|-
| '''autoScrollSpeed'
| integer
| typically -1
|-
| '''autoScrollDelay'''
| integer
| in seconds
|-
| '''autoScrollRewind'
| boolean
|
|-
| '''shadow'''
| integer
|
|-
|}<br clear="all">
====HScrollbar====
{| border="1" align="left" cellpadding="3" cellspacing="0" |
! colspan="3" bgcolor="#bbbbff" | Properties
|-
! bgcolor="#ddddff" | Name
! bgcolor="#ddddff" | Type
! bgcolor="#ddddff" | Remark
|-
| '''height'''
| float
|
|-
| '''shadow'''
| integer
|
|-
|}<br clear="all">
====Scrollbar====
{| border="1" align="left" cellpadding="3" cellspacing="0" |
! colspan="3" bgcolor="#bbbbff" | Properties
|-
! bgcolor="#ddddff" | Name
! bgcolor="#ddddff" | Type
! bgcolor="#ddddff" | 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)";
|-
|}<br clear="all">
====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
<code><nowiki>
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
  };
    };
  };
};
</nowiki></code>
[[Category: Dialogs]]

Latest revision as of 08:36, 30 December 2020

Redirect to: