DialogControls-EditBox: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (category)
mNo edit summary
Line 81: Line 81:
{
{
idd = -1;
idd = -1;
 
class Controls
class controls
{
{
class Enabled: MyEdit
class Enabled: MyEdit

Revision as of 01:23, 19 February 2020

TokenNames common to most controls, such as x, y, w, h, text, idc... are not listed here.

CT_EDIT=2

A text box, which allows the user to either enter text himself or to select and copy its content.

Properties
Name Type Remark
autocomplete string "" or "scripting" (entered text will automatically be completed with matching script command)
canModify boolean Optional. Default: true. When false, only LEFT/RIGHT/HOME/END, CTRL + C, SHIFT + LEFT/RIGHT/HOME/END keys are allowed
maxChars integer Optional. Default: 2147483647. The limit for how many characters could be displayed or entered, counting new line characters too
forceDrawCaret boolean Optional. Default: false. When true, the caret will be drawn even when control has no focus or is disabled
colorSelection color The text selection highlight color
colorText color The color of the text, caret and border
colorDisabled color The color of the text, caret and border when control is disabled
colorBackground color The color of the edit box background
font string Font name
sizeEx float Font size


Example output
  • Example Config:
class MyEdit
{
	idc = -1;
	type = 2;
	style = "16 + 512"; // multi line + no border
	x = 0;
	y = 0;
	h = 0.2;
	w = 1;
	font = "PuristaMedium";
	sizeEx = 0.04;
	autocomplete = "";
	canModify = true; 
	maxChars = 100; 
	forceDrawCaret = false;
	colorSelection[] = {0,1,0,1};
	colorText[] = {0,0,1,1};
	colorDisabled[] = {1,0,0,1}; 
	colorBackground[] = {0,0,0,0.5}; 
	text = __EVAL("Line 1" + endl + "Line 2" + endl + "Line 3"); // how to output multiline
};

class MyDialog
{
	idd = -1;
	class Controls
	{
		class Enabled: MyEdit
		{
			style = 16;
			colorBackground[] = {0,0,0,0};
		};

		class Disabled: MyEdit
		{
			onLoad = "_this select 0 ctrlEnable false";
			y = 0.3;
			maxChars = 18;
			forceDrawCaret = true;
		};
	};
};

createDialog "MyDialog";