DialogControls-Tree: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (added image with search control)
m (fixed redirect)
Tag: New redirect
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
__TOC__
#REDIRECT [[CT_TREE]]
==CT_TREE Type=12==
The CT_TREE, also referred to as tree view (tv), is a control with similar functionality as the [[CT_LISTBOX]]. In addition to that it supports multiple levels of entries as well as a search functionality.
{{Important|The engine driven search is very slow. Searching a tree view with many entries can freeze the game.}}
 
=== Properties ===
{{Informative|TokenNames common to most controls, such as x, y, w, h, text, idc... can be found [[Arma:_GUI_Configuration#Common_Properties|'''here''']].}}
{|class="wikitable" border="1" align="left" cellpadding="3" cellspacing="0" |
! colspan="3" bgcolor="#bbbbff" | Properties
|-
! bgcolor="#ddddff" | Name
! bgcolor="#ddddff" | Type
! bgcolor="#ddddff" | Remark
|-
| '''borderSize'''
| [[Boolean]]
| Shows a border around the control
|-
| '''colorBorder'''
| [[Color]]
| With borderSize = 1 determines the color of that border
|-
| '''colorArrow'''
| [[Color]]
| Has no effect but without it an error is thrown
|-
| '''colorLines'''
| [[Color]]
| These lines connect the different entries for better clarity
|-
| '''colorMarked'''
| [[Color]]
| Background color of all subsequently selected entries when multiselectEnabled = 1;
|-
| '''colorMarkedSelected'''
| [[Color]]
| Background color of the first selected entry with multiselectEnabled = 1;
|-
| '''colorMarkedText'''
| [[Color]]
| Text color of secondarly selected entries with multiselectEnabled = 1;
|-
| '''colorPicture'''
| [[Color]]
| Left picture color of an unselected entry
|-
| '''colorPictureDisabled'''
| [[Color]]
| Left picture color when control is disabled
|-
| '''colorPictureRight'''
| [[Color]]
| Right picture color of an unselected entry
|-
| '''colorPictureRightDisabled'''
| [[Color]]
| Right picture color when control is disabled
|-
| '''colorPictureRightSelected'''
| [[Color]]
| Right picture color of an selected entry
|-
| '''colorPictureSelected'''
| [[Color]]
| Left picture color of an selected entry
|-
| '''colorSearch'''
| [[Color]]
| Color of then entries that fit the search of the idcSearch listbox
|-
| '''colorSelect'''
| [[Color]]
| Entry's background when multiselectEnabled = 0;
|-
| '''colorSelectBackground'''
| [[Color]]
| Not used?
|-
| '''colorSelectText'''
| [[Color]]
| Text color of a selected entry with multiselectEnabled = 0;
|-
| '''expandedTexture'''
| [[Color]]
| "Arrow" texture on the left side, if non is given ("") a minus with box will be displayed
|-
| '''hiddenTexture'''
| [[String]]
| "Arrow" texture on the left side, if non is given ("") a plus with box will be displayed
|-
| '''expandOnDoubleclick'''
| [[Boolean]]
| Enable/disable expanding and collapsing with double-click
|-
| '''idcSearch'''
| [[Integer]]
| idc of a CT_EDIT control which functions as the search input
|-
| '''maxHistoryDelay'''
| [[Number]]
| Time since last keyboard type search to reset it
|-
| '''multiselectEnabled'''
| [[Boolean]]
| Enable/disable multi selection with CTRL or SHIFT to select all entries up to the first selected entry
|-
| '''rowHeight'''
| [[Boolean]]?
| Not used?
|}<br clear="all">
 
=== Example config ===
[[File:CT TREE.png|thumb|A CT_TREE in A3 1.96.]]
[[File:CT TREE SEARCH.jpg|thumb|A CT_TREE with search in A3 1.96.]]
 
<syntaxhighlight lang="cpp">class Dialog
{
idd = -1;
class Controls
{
class _CT_EDIT
{
idc = 100;
type = 2;
style = "512";
x = GUI_GRID_CENTER_X + 10 * GUI_GRID_CENTER_W;
y = GUI_GRID_CENTER_Y + 0 * GUI_GRID_CENTER_H;
w = 20 * GUI_GRID_CENTER_W;
h = 2 * GUI_GRID_CENTER_H;
font = "PuristaMedium";
sizeEx = 0.04;
autocomplete = "";
canModify = true;
maxChars = 100;
forceDrawCaret = false;
colorSelection[] = {0,1,0,1};
colorText[] = {1,1,1,1};
colorDisabled[] = {1,0,0,1};
colorBackground[] = {0,0,0,0.8};
text = "";
tooltip = "Type to search";
};
class _CT_TREE
{
/* Common properties */
idc = 200;
            /* Add some entries */
onLoad = "params ['_tv'];\
_classes = 'true' configClasses (configFile >> 'CfgVehicles');\
for '_i' from 0 to 10 do\
{\
_tv tvAdd [[], configName selectRandom _classes];\
for '_j' from 0 to 10 do\
{\
_tv tvAdd [[_i], configName selectRandom _classes];\
for '_k' from 0 to 10 do\
{\
_tv tvAdd [[_i, _j], configName selectRandom _classes];\
};\
};\
};";
moving = 0;
type = CT_TREE;
style = ST_LEFT;
x = GUI_GRID_CENTER_X + 10 * GUI_GRID_CENTER_W;
y = GUI_GRID_CENTER_Y + 3 * GUI_GRID_CENTER_H;
w = 20 * GUI_GRID_CENTER_W;
h = 23 * GUI_GRID_CENTER_H;
sizeEx = GUI_TEXT_SIZE_MEDIUM;
font = "RobotoCondensed";
colorText[] = {1,1,1,1};
colorBackground[] = {0,0,0,0.8};
colorDisabled[] = {1,1,1,0.25};
shadow = 0;
access = 0;
 
/* CT_TREE specific properties */
idcSearch = 100;
colorSelect[] = {1,1,1,0.7};
colorSelectText[] = {0,0,0,1};
colorBorder[] = {0,0,0,0};
colorSearch[] =
{
"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.13])",
"(profilenamespace getvariable ['GUI_BCG_RGB_G',0.54])",
"(profilenamespace getvariable ['GUI_BCG_RGB_B',0.21])",
"(profilenamespace getvariable ['GUI_BCG_RGB_A',0.8])"
};
colorMarked[] = {0.2,0.3,0.7,1};
colorMarkedText[] = {0,0,0,1};
colorMarkedSelected[] = {0,0.5,0.5,1};
multiselectEnabled = 0;
colorPicture[] = {1,1,1,1};
colorPictureSelected[] = {0,0,0,1};
colorPictureDisabled[] = {1,1,1,0.25};
colorPictureRight[] = {1,1,1,1};
colorPictureRightSelected[] = {0,0,0,1};
colorPictureRightDisabled[] = {1,1,1,0.25};
colorArrow[] = {1,1,1,1};
maxHistoryDelay = 1;
colorSelectBackground[] = {0,0,0,0.5};
colorLines[] = {0,0,0,0};
class ScrollBar: ScrollBar
{
};
expandedTexture = "A3\ui_f\data\gui\rsccommon\rsctree\expandedTexture_ca.paa";
hiddenTexture = "A3\ui_f\data\gui\rsccommon\rsctree\hiddenTexture_ca.paa";
rowHeight = 0.0439091;
borderSize = 0;
expandOnDoubleclick = 1;
 
/* CT_TREE user interface eventhandlers */
onTreeSelChanged = "systemChat str ['onTreeSelChanged',_this]; false";
onTreeLButtonDown = "systemChat str ['onTreeLButtonDown',_this]; false";
onTreeDblClick = "systemChat str ['onTreeDblClick',_this]; false";
onTreeExpanded = "systemChat str ['onTreeExpanded',_this]; false";
onTreeCollapsed = "systemChat str ['onTreeCollapsed',_this]; false";
onTreeMouseMove = "systemChat str ['onTreeMouseMove',_this]; false";
onTreeMouseHold = "systemChat str ['onTreeMouseHold',_this]; false";
onTreeMouseExit = "systemChat str ['onTreeMouseExit',_this]; false";
};
};
};</syntaxhighlight>
 
=== Commands ===
<div style="columns: 3">
*[[tvAdd]]
*[[tvCollapse]]
*[[tvCollapseAll]]
*[[tvCount]]
*[[tvCurSel]]
*[[tvData]]
*[[tvDelete]]
*[[tvExpand]]
*[[tvExpandAll]]
*[[tvPicture]]
*[[tvSetColor]]
*[[tvSetCurSel]]
*[[tvSetData]]
*[[tvSetPicture]]
*[[tvSetPictureColor]]
*[[tvSetPictureColorDisabled]]
*[[tvSetPictureColorSelected]]
*[[tvSetPictureRight]]
*[[tvSetPictureRightColor]]
*[[tvSetPictureRightColorDisabled]]
*[[tvSetPictureRightColorSelected]]
*[[tvSetText]]
*[[tvSetTooltip]]
*[[tvSetValue]]
*[[tvSort]]
*[[tvSortByValue]]
*[[tvText]]
*[[tvTooltip]]
*[[tvValue]]
</div>
[[Category: Dialogs|Tree]]

Latest revision as of 14:05, 29 November 2020

Redirect to: