Jump to content
target_practice

Dialog controls documentation?

Recommended Posts

I've started to get into GUI editing and I get the gist of how to do things, but a problem I've been having is working out what all of the controls do.

The BIKI documentation on the subject (here) is rather hit and miss, and when I test some of the less well described controls (like CT_USER) most of them don't seem to do anything.

Are there any tutorials or documentation elsewhere which make up for the BIKI's gaps? (Aside from KK's blog which I've already gone through.)

Share this post


Link to post
Share on other sites

There is one neat dialog with most of the important control types. Just run this code from the debug console:

createDialog "RscTestControlTypes";

And for control styles:

createDialog "RscTestControlStyles";

The config is inside: a3\addons\ui_f\config.bin (Types: line 81512; Styles: line 83350)

The config needs to be extracted from the pbo and unbinarized. There are some tutorials how to do it around here.

Tip: Get Notepad++ and collapse to the first level (ALT+1). The program will need a few seconds to load this massive file.

The scripts which are called upon loading the dialog are here: a3\addons\ui_f\scripts\gui\rsctestcontrolXXX.sqf

XXX for types and styles respectively.

I'd like to post them here but the lenghth of the configs kills my browser.

 

And some other useful links:

https://community.bistudio.com/wiki/Category:Command_Group:_GUI_Control

https://community.bistudio.com/wiki/User_Interface_Event_Handlers

https://community.bistudio.com/wiki/Category:Dialogs

 

  • Thanks 2

Share this post


Link to post
Share on other sites

Well that certainly helps a lot, but out of interest, what is the difference between CT_BUTTON and CT_SHORTCUTBUTTON; and what do the controls CT_CONTEXT_MENU, CT_MENU, CT_USER and CT_XKEY do? (If anyone knows).

Share this post


Link to post
Share on other sites
On 3/29/2019 at 10:50 AM, target_practice said:

difference between CT_BUTTON and CT_SHORTCUTBUTTON

CT_SHORTCUTBUTTON is a more modern version of a button. You can modify more properties to your liking like the background texture (animTexture...). Also it accepts structured text. Most, if not all, buttons in arma are based on the RscButtonMenu, which itself is based on the RscShortcutButton. RscShortcutButton itself looks like it is from ArmA2 while the modern version is RscButtonMenu.

 

On 3/29/2019 at 10:50 AM, target_practice said:

CT_MENU

I don't have that one in my defines which were created with BIS_fnc_exportGUIBaseClasses. But if it is defined as 46 then it is the right click menu from 3den which could be quite an interesting control type. Also there is an extensive amount of commands related to a control which is called "menu": https://community.bistudio.com/wiki/menuAdd under "See also". They were introduced with the 3den update so it might be possible to create a right click menu on your own...

Can you post the value of CT_MENU? I haven't got it in my defines so I don't know the value.

 

On 3/29/2019 at 10:50 AM, target_practice said:

CT_CONTEXT_MENU, CT_USER

No idea. Haven't found them in the game files and have never used them.

 

On 3/29/2019 at 10:50 AM, target_practice said:

CT_XKEY

Haven't got that in my defines, but I have CT_XKEYDESC. Still, absolutely no idea. Even creating a dialog with the example code doesn't do anything. Maybe it is some remnant from a console port?

 

Also, more information about controls and dialogs: https://sqf.bisimulations.com/display/SQF/VBS+Dialogs

VBS is similar to arma and has some good documentation.

 

 

  • Thanks 1

Share this post


Link to post
Share on other sites

I've run into this issue many times in the past. The best thing to do is test everything and see what works, remember it, update the wiki. I have updated the wiki many times with things I've found. Just be thorough, people will come after you to correct you lol

  • Like 1

Share this post


Link to post
Share on other sites

Looks like I was right with the CT_XKEY control. The IDC defines for the 3den editor contain a list of defines which correspond with the XBOX controller:

// Xbox buttons
#define KEY_XINPUT                0x00050000

#define KEY_XBOX_A                KEY_XINPUT + 0
#define KEY_XBOX_B                KEY_XINPUT + 1
#define KEY_XBOX_X                KEY_XINPUT + 2
#define KEY_XBOX_Y                KEY_XINPUT + 3
#define KEY_XBOX_Up               KEY_XINPUT + 4
// etc etc until +23

The same attribute can be found in the BIKI's example config:

class RscXKey
{
 type = 40;
 idc = -1;
 style = ST_LEFT;
 h = 0.06;
 size = "( 21 / 408 )";
 shadow = 0;
 key = "0x00050000 + 1"; //<--- Right here
 class Attributes
 {
  font = "Zeppelin32";
  color = "#E5E5E5";
  align = "left";
 };
 class AttributesImage
 {
  color = "#E5E5E5";
 };
};

 

Share this post


Link to post
Share on other sites
On 3/30/2019 at 1:18 PM, 7erra said:

Can you post the value of CT_MENU? I haven't got it in my defines so I don't know the value.

The biki lists it as type 46, if that's what you mean: https://community.bistudio.com/wiki/DialogControls-Menu

 

Since you said it's from the eden editor, I had a look through the configs to see if I could find it in use anywhere but I didn't see anything of the sort. Would you know where to look?

 

EDIT: Nevermind I wasn't looking hard enough, I found it in the form of "ctrlMenu".

I'll have to test it later and add any findings I have to the BIKI.

Share this post


Link to post
Share on other sites

While this thread is still open, does anyone know how the class ControlsBackground differs from Controls?

And finally, where can I find the config for the display used by the EG spectator mode?

Share this post


Link to post
Share on other sites
5 hours ago, target_practice said:

EDIT: Nevermind I wasn't looking hard enough, I found it in the form of "ctrlMenu".

I'll have to test it later and add any findings I have to the BIKI.

I was doing the same thing. I'll send you a PN.

 

29 minutes ago, target_practice said:

While this thread is still open, does anyone know how the class ControlsBackground differs from Controls?

controlsBackground will always be in the background. Normally the controls which are listed last are the ones which are in the foreground. This order can change if you select a control which accepts input. Therefore it is good practice to put the non-interactable controls under controlsBackground so they don't block the interaction from the user.

 

33 minutes ago, target_practice said:

And finally, where can I find the config for the display used by the EG spectator mode?

a3\ui_f\config.bin

Again, needs to be depboed and debinarized. Then it is line 55045 to 56145. Search for  "RscDisplayEGSpectator".

 

Depending on how often you want to explore the game files and how much storage you got left on your drive you can extract all of the game's data unpboed and debinarzied. Just run the ArmA3 Tools from Steam and select "Project Drive Management".

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×