CT MENU STRIP: Difference between revisions
m (Text replacement - "{{CT|intro" to "Category: Control Types {{CT|intro ") |
m (Text replacement - "{{Inline code|" to "{{ic|") |
||
Line 482: | Line 482: | ||
}; | }; | ||
|description=List of entries ordered in subclasses. The {{ | |description=List of entries ordered in subclasses. The {{ic|Default}} class needs to be defined. | ||
}} | }} | ||
Revision as of 18:09, 27 February 2021
Control Types / MACRO (TYPE VALUE) | |
---|---|
Text/Image/Video |
CT_STATIC (0) | CT_EDIT (2) | CT_HTML (9) | CT_STRUCTURED_TEXT (13) |
Buttons |
CT_BUTTON (1) | CT_ACTIVETEXT (11) | CT_SHORTCUTBUTTON (16) | CT_CHECKBOX (77) | CT_XBUTTON (41) |
Lists |
CT_COMBO (4) | CT_TOOLBOX (6) | CT_CHECKBOXES (7) | CT_TREE (12) | CT_CONTROLS_TABLE (19) | CT_XCOMBO (44) | CT_LISTBOX (5) | CT_LISTNBOX (102) | CT_LISTNBOX_CHECKABLE (104) | CT_XLISTBOX (45) |
3D Objects |
CT_OBJECT (80) | CT_OBJECT_ZOOM (81) | CT_OBJECT_CONTAINER (82) | CT_OBJECT_CONT_ANIM (83) |
Maps |
CT_MAP (100) | CT_MAP_MAIN (101) |
Meta |
CT_SLIDER (3) | CT_XSLIDER (43) | CT_PROGRESS (8) | CT_CONTROLS_GROUP (15) | CT_WEBBROWSER (106) | CT_EXTENSION (107) |
Menu |
CT_CONTEXT_MENU (14) | CT_MENU (46) | CT_MENU_STRIP (47) |
Unknown |
CT_STATIC_SKEW (10) | CT_HITZONES (17) | CT_VEHICLETOGGLES (18) | CT_XKEYDESC (40) | CT_ANIMATED_TEXTURE (45) | CT_LINEBREAK (98) | CT_USER (99) | CT_ITEMSLOT (103) | CT_VEHICLE_DIRECTION (105) |
Introduction
Control with expandable sublists. The top bar in 3den uses this CT.
Related commands & functions
Related User Interface Eventhandlers
Alphabetical Order
#define CT_MENU_STRIP 47
A
arrow
- Type
- String
- Description
- n/a
arrow = "\a3\3DEN\Data\Controls\ctrlMenu\arrow_ca.paa";
C
colorBorder
- Type
- Array
- Description
- n/a
colorBorder[] = {0,0,0,0};
colorPicture
- Type
- Array
- Description
- n/a
colorPicture[] = {1,1,1,1};
colorPictureDisabled
- Type
- Array
- Description
- n/a
colorPictureDisabled[] = {1,1,1,0.5};
colorPictureSelect
- Type
- Array
- Description
- n/a
colorPictureSelect[] = {0,0,0,1};
colorSelect
- Type
- Array
- Description
- n/a
colorSelect[] = {0,0,0,1};
colorSelectBackground
- Type
- Array
- Description
- n/a
colorSelectBackground[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.77])","(profilenamespace getvariable ['GUI_BCG_RGB_G',0.51])","(profilenamespace getvariable ['GUI_BCG_RGB_B',0.08])",1};
colorStripBackground
- Type
- Array
- Description
- n/a
colorStripBackground[] = {0,0,0,0};
colorStripDisabled
- Type
- Array
- Description
- n/a
colorStripDisabled[] = {1,1,1,0.25};
colorStripSelect
- Type
- Array
- Description
- n/a
colorStripSelect[] = {0,0,0,1};
colorStripSelectBackground
- Type
- Array
- Description
- n/a
colorStripSelectBackground[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.77])","(profilenamespace getvariable ['GUI_BCG_RGB_G',0.51])","(profilenamespace getvariable ['GUI_BCG_RGB_B',0.08])",1};
colorStripText
- Type
- Array
- Description
- n/a
colorStripText[] = {1,1,1,1};
I
Items
- Type
- Class
- Description
- List of entries ordered in subclasses. The
Default
class needs to be defined.
class Items
{
items[] = {"File","Edit","View","Attributes","Tools","Options","Preview","Help"};
class File
{
text = "Scenario";
items[] = {"MissionNew","MissionOpen","MissionSave","MissionSaveAs","Separator","MissionPublishSteam","MissionExport","MissionMerge","Separator","MissionStats","MissionAddons","MissionFolder","LogFolder","Separator","Exit"};
data = "test1";
value = 1;
};
class MissionNew
{
text = "New";
data = "MissionNew";
shortcuts[] = {"512 + 0x31"};
picture = "\a3\3DEN\Data\Displays\Display3DEN\ToolBar\new_ca.paa";
opensNewWindow = 1;
};
class MissionOpen
{
text = "Open";
data = "MissionLoad";
shortcuts[] = {"512 + 0x18"};
picture = "\a3\3DEN\Data\Displays\Display3DEN\ToolBar\open_ca.paa";
opensNewWindow = 1;
};
class MissionSave
{
text = "Save";
data = "MissionSave";
shortcuts[] = {"512 + 0x1F"};
picture = "\a3\3DEN\Data\Displays\Display3DEN\ToolBar\save_ca.paa";
};
class MissionSaveAs
{
text = "Save As";
data = "MissionSaveAs";
shortcuts[] = {"512 + 1024 + 0x1F"};
picture = "\a3\3DEN\Data\Displays\Display3DEN\ToolBar\saveas_ca.paa";
opensNewWindow = 1;
};
class MissionPublishSteam
{
text = "Publish to Steam Workshop";
data = "MissionPublishSteam";
enable = 1;
action = "do3DENAction 'OpenSteamPublishDialog';";
picture = "\a3\3DEN\Data\Displays\Display3DEN\ToolBar\steam_ca.paa";
};
class MissionExport
{
text = "Export";
items[] = {"MissionExportSP","MissionExportMP","MissionTerrainBuilder","MissionExportSQF"};
};
class MissionExportSP
{
text = "Export to Singleplayer";
data = "MissionExportSP";
};
class MissionExportMP
{
text = "Export to Multiplayer";
data = "MissionExportMP";
};
class MissionTerrainBuilder
{
text = "Export to Terrain Builder";
data = "MissionExportTerrainBuilder";
action = "[] spawn bis_fnc_3DENExportTerrainBuilder;";
};
class MissionExportSQF
{
text = "Export to SQF";
action = "[] call bis_fnc_3DENExportSQF;";
};
class MissionMerge
{
text = "Merge";
data = "MissionMerge";
shortcuts[] = {"512 + 0x32"};
};
class MissionFolder
{
text = "Open Scenario Folder";
data = "FolderMission";
};
class MissionAddons
{
text = "Show Required Addons";
data = "OpenRequiredAddons";
};
class MissionStats
{
text = "Statistics";
action = "[] call bis_fnc_3DENMissionStats;";
};
class LogFolder
{
text = "Open Log Folder";
data = "FolderLog";
};
class Exit
{
text = "Exit";
data = "Exit3DEN";
};
class Edit
{
text = "Edit";
items[] = {"Undo","Redo","Separator","EntitySelectScreen","Separator","Widget","Grid","Vertical","SurfaceSnapToggle","WaypointSnapToggle","Separator","Space","Mode"};
};
class Undo
{
text = "Undo";
data = "Undo";
shortcuts[] = {"512 + 0x2C"};
picture = "\a3\3DEN\Data\Displays\Display3DEN\ToolBar\undo_ca.paa";
};
class Redo
{
text = "Redo";
data = "Redo";
shortcuts[] = {"512 + 0x15","512 + 1024 + 0x2C"};
picture = "\a3\3DEN\Data\Displays\Display3DEN\ToolBar\redo_ca.paa";
};
class EntitySelectScreen
{
text = "Select All on Screen";
data = "SelectAllOnScreen";
shortcuts[] = {"512 + 0x1E"};
};
class EntityCut
{
text = "Cut";
data = "CutUnit";
shortcuts[] = {"512 + 0x2D"};
};
class EntityCopy
{
text = "Copy";
data = "CopyUnit";
shortcuts[] = {"512 + 0x2E"};
};
class EntityPaste
{
text = "Paste";
data = "PasteUnit";
shortcuts[] = {"512 + 0x2F"};
};
class EntityPasteOrig
{
text = "Paste on Original Position";
data = "PasteUnitOrig";
shortcuts[] = {"512 + 1024 + 0x2F"};
};
class EntitySimulation
{
xtext = "Preview Simulation";
data = "SimulateUnit";
shortcuts[] = {"512 + 0x19"};
enable = 0;
};
class Widget
{
text = "Transformation Widget";
items[] = {"WidgetToggle","WidgetNone","WidgetTranslation","WidgetRotation","WidgetScaling","WidgetArea"};
};
class WidgetToggle
{
text = "Toggle Widget";
data = "WidgetToggle";
shortcuts[] = {57};
};
class WidgetNone
{
text = "No Widget";
data = "WidgetNone";
picture = "\a3\3DEN\Data\Displays\Display3DEN\ToolBar\widget_none_off_ca.paa";
shortcuts[] = {2};
};
class WidgetTranslation
{
text = "Translation Widget";
data = "WidgetTranslation";
picture = "\a3\3DEN\Data\Displays\Display3DEN\ToolBar\widget_translation_off_ca.paa";
shortcuts[] = {3};
};
class WidgetRotation
{
text = "Rotation Widget";
data = "WidgetRotation";
picture = "\a3\3DEN\Data\Displays\Display3DEN\ToolBar\widget_rotation_off_ca.paa";
shortcuts[] = {4};
};
class WidgetScaling
{
text = "Area Scaling Widget";
data = "WidgetScale";
picture = "\a3\3DEN\Data\Displays\Display3DEN\ToolBar\widget_scaling_off_ca.paa";
shortcuts[] = {5};
};
class WidgetArea
{
text = "Area Widget";
data = "WidgetArea";
picture = "\a3\3DEN\Data\Displays\Display3DEN\ToolBar\widget_area_off_ca.paa";
shortcuts[] = {6};
};
class WidgetSpace
{
text = "Toggle Widget Coordinate Space";
data = "WidgetSpace";
shortcuts[] = {34};
enable = 0;
};
class WidgetSpaceWorld
{
text = "World";
data = "WidgetSpaceWorld";
enable = 0;
};
class WidgetSpaceLocal
{
text = "Selected Entity";
data = "WidgetSpaceLocal";
enable = 0;
};
class WidgetPosition
{
xtext = "Toggle Position";
data = "WidgetPosition";
shortcuts[] = {34};
enable = 0;
};
class WidgetPositionEntity
{
xtext = "Selected Entity";
data = "WidgetPositionEntity";
enable = 0;
};
class WidgetPositionMean
{
xtext = "Mean Position";
data = "WidgetPositionMean";
enable = 0;
};
class Grid
{
text = "Grid";
items[] = {"GridTranslationToggle","GridRotationToggle","GridScalingToggle","GridDecrease","GridIncrease"};
};
class GridTranslationToggle
{
text = "Toggle Translation Grid";
data = "MoveGridToggle";
shortcuts[] = {39};
type = "CheckBox";
default = "false";
};
class GridRotationToggle
{
text = "Toggle Rotation Grid";
data = "RotateGridToggle";
type = "CheckBox";
default = "false";
};
class GridScalingToggle
{
text = "Toggle Area Scaling Grid";
data = "ScaleGridToggle";
type = "CheckBox";
default = "false";
};
class GridDecrease
{
text = "Decrease Grid Size";
data = "GridDecrease";
shortcuts[] = {26};
action = "['decrease'] call bis_fnc_3DENGrid;";
};
class GridIncrease
{
text = "Increase Grid Size";
data = "GridIncrease";
shortcuts[] = {27};
action = "['increase'] call bis_fnc_3DENGrid;";
};
class Vertical
{
text = "Vertical Mode";
items[] = {"VerticalToggle","VerticalATL","VerticalASL"};
};
class VerticalToggle
{
text = "Toggle Vertical Mode";
data = "VerticalToggle";
shortcuts[] = {40};
};
class VerticalATL
{
text = "Above Terrain Level (ATL)";
data = "VerticalATL";
};
class VerticalASL
{
text = "Above Sea Level (ASL)";
data = "VerticalASL";
};
class SurfaceSnapToggle
{
text = "Toggle Surface Snapping";
data = "SurfaceSnapToggle";
type = "CheckBox";
default = "true";
shortcuts[] = {43};
};
class WaypointSnapToggle
{
text = "Toggle Waypoint Snapping";
data = "WaypointSnapToggle";
type = "CheckBox";
default = "true";
shortcuts[] = {53};
};
class Space
{
text = "Phase";
items[] = {"SpaceMission","SpaceIntro","SpaceOutroWin","SpaceOutroLose"};
};
class SpaceMission
{
text = "Scenario";
data = "MissionPartMission";
};
class SpaceIntro
{
text = "Intro";
data = "MissionPartIntro";
};
class SpaceOutroWin
{
text = "Outro - Win";
data = "MissionPartOutroWin";
};
class SpaceOutroLose
{
text = "Outro - Lose";
data = "MissionPartOutroLoose";
};
class Mode
{
text = "Asset Type";
items[] = {"ModeObject","ModeGroup","ModeTrigger","ModeWaypoint","ModeLogic","ModeMarker","ModeFavorite","SubmodeToggle"};
};
class ModeObject
{
text = "Objects";
data = "SelectObjectMode";
shortcuts[] = {59};
};
class ModeGroup
{
text = "Compositions";
data = "SelectGroupMode";
shortcuts[] = {60};
};
class ModeTrigger
{
text = "Triggers";
data = "SelectTriggerMode";
shortcuts[] = {61};
};
class ModeWaypoint
{
text = "Waypoints";
data = "SelectWaypointMode";
shortcuts[] = {62};
};
itemSpacingH
- Type
- Number
- Description
- Vertical distance between two entries.
itemSpacingH = 0.01;
itemSpacingW
- Type
- Number
- Description
- Horizontal distance between two entries.
itemSpacingW = 0.01;
P
pictureCheckboxDisabled
- Type
- String
- Description
- n/a
pictureCheckboxDisabled = "#(argb,8,8,3)color(0,0,0,0)";
pictureCheckboxEnabled
- Type
- String
- Description
- n/a
pictureCheckboxEnabled = "\a3\3DEN\Data\Controls\CtrlMenu\pictureCheckboxEnabled_ca.paa";
pictureRadioDisabled
- Type
- String
- Description
- n/a
pictureRadioDisabled = "#(argb,8,8,3)color(0,0,0,0)";
pictureRadioEnabled
- Type
- String
- Description
- n/a
pictureRadioEnabled = "\a3\3DEN\Data\Controls\CtrlMenu\pictureRadioEnabled_ca.paa";
R
rowHeight
- Type
- Number
- Description
- n/a
rowHeight = 0;
Default Classes
None
Other Examples
class MenuStrip
{
idc=120;
type=CT_MENU_STRIP;
colorStripBackground[]={0,0,0,1};
colorStripText[]={1,1,1,1};
colorStripSelect[]={0,0,0,1};
colorStripSelectBackground[]=
{
"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.77])",
"(profilenamespace getvariable ['GUI_BCG_RGB_G',0.51])",
"(profilenamespace getvariable ['GUI_BCG_RGB_B',0.08])",
1
};
colorStripDisabled[]={1,1,1,0.25};
x="safezoneX";
y="safezoneY";
w="safezoneW - 5 * (pixelW * pixelGrid * 0.50)";
h="5 * (pixelH * pixelGrid * 0.50)";
colorStripBackground[]={0,0,0,0};
colorBackground[]={0.1,0.1,0.1,1};
font="RobotoCondensedLight";
colorBorder[]={0,0,0,0};
colorText[]={1,1,1,1};
colorSelect[]={0,0,0,1};
colorSelectBackground[]=
{
"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.77])",
"(profilenamespace getvariable ['GUI_BCG_RGB_G',0.51])",
"(profilenamespace getvariable ['GUI_BCG_RGB_B',0.08])",
1
};
colorDisabled[]={1,1,1,0.25};
colorPicture[]={1,1,1,1};
colorPictureSelect[]={0,0,0,1};
colorPictureDisabled[]={1,1,1,0.5};
arrow="\a3\3DEN\Data\Controls\ctrlMenu\arrow_ca.paa";
rowHeight=0;
itemSpacingW=0.0099999998;
itemSpacingH=0.0099999998;
pictureCheckboxEnabled="\a3\3DEN\Data\Controls\CtrlMenu\pictureCheckboxEnabled_ca.paa";
pictureCheckboxDisabled="#(argb,8,8,3)color(0,0,0,0)";
pictureRadioEnabled="\a3\3DEN\Data\Controls\CtrlMenu\pictureRadioEnabled_ca.paa";
pictureRadioDisabled="#(argb,8,8,3)color(0,0,0,0)";
class Items
{
items[]=
{
"entry1",
"entry2",
"entry3",
};
class entry1
{
text="First Entry";
items[]=
{
"sub1_1",
"sub1_2"
};
};
class sub1_1
{
text="First Sub Entry";
action= systemchat ""Sub entry one."";";
};
class sub1_2
{
text="Second Sub Entry";
};
class entry2
{
text="Entry 2, no sub menu";
action="systemchat ""Entry 2."";";
};
class entry3
{
text="Fancy entry 3";
action ="systemchat ""Entry 3."";";
data="CustomData";
shortcuts[]=
{
"512 + 0x31" // STRG+N
};
picture="\a3\3DEN\Data\Displays\Display3DEN\ToolBar\new_ca.paa";
};
};
};
class RscMenuStrip
{
idd = -1;
movingEnable = true;
enableSimulation = true;
onLoad = "";
onUnload = "";
class Controls
{
class MenuStrip: ctrlMenuStrip
{
idc = 1000;
x = safeZoneX;
y = (safeZoneY + (safezoneH * 0.132));
w = safezoneW;
h = (safezoneH * 0.03);
class Items
{
items[] = //First Level Entries, when editing an existing menu strip, one can use the += operator to add new entries without overwriting the old ones
{
"Menu1",
"Menu2"
};
class Menu1
{
text = "Menu 1";
items[] = //Second Level Entries
{
"WebLink"
};
};
class Menu2
{
text = "Menu 2";
items[] = //Second Level Entries
{
"SayHello",
"PlayMusic"
};
};
class WebLink
{
text = "Go to Arma 3 Webpage"; //Display name of menu entry
picture = "\A3\Ui_f\data\Logos\arma3_white_ca.paa"; //Picture shown in front of text
weblink = "https://arma3.com/"; //Opens a web page in default webbrowser
opensNewWindow = 1; //Adds ... after text, indicating that this menu entry will open a new display
};
class SayHello
{
text = "Say Hello";
action = "systemChat 'Hello World!'"; //Code executed when entry is clicked
};
class PlayMusic
{
text = "Play Music";
picture = "\a3\Modules_F_Curator\Data\portraitMusic_ca.paa";
action = "playMusic 'Track15_MainTheme'";
};
class Default //Default entries, otherwise error is shown upon creation of the display (Needs further investigation)
{
text = "Default";
};
};
};
};
};