|
|
(6 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 ===
| |
| * [[:Category: Commands Group: GUI Control - Tree View]]
| |
| [[Category: Dialogs|Tree]]
| |