<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.multitheftauto.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=XLive</id>
	<title>Multi Theft Auto: Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.multitheftauto.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=XLive"/>
	<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/wiki/Special:Contributions/XLive"/>
	<updated>2026-04-07T07:07:46Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Resource:DGS&amp;diff=81974</id>
		<title>Resource:DGS</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Resource:DGS&amp;diff=81974"/>
		<updated>2025-05-01T09:42:30Z</updated>

		<summary type="html">&lt;p&gt;XLive: Remove outdated examples&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pageclass class=&amp;quot;resource&amp;quot; subcaption=&amp;quot;Resource&amp;quot;&amp;gt;&amp;lt;/pageclass&amp;gt;&lt;br /&gt;
[[Image:DGS_Logo.png|400px|thumb|right|DGS Logo By [[User:Allerek|Allerek]]]]&lt;br /&gt;
This resource is designed to allow you to create directX GUI's as an alternative to the original MTA:SA GUI functions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#DD2222;text-shadow:black 0em 0em 0.3em;&amp;quot;&amp;gt;This wiki is always for the latest DGS version!&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding:10px; border-radius:2px;font-size:14px;&amp;quot;&amp;gt;&lt;br /&gt;
'''Full Name''': Thisdp's DirectX Graphical User Interface System (DxGUI Lib)&lt;br /&gt;
&lt;br /&gt;
'''State''': &amp;lt;span style=&amp;quot;color:#FFFFFF;text-shadow:black 0em 0em 0.3em;&amp;quot;&amp;gt;OpenSource&amp;lt;/span&amp;gt; &amp;amp; &amp;lt;span style=&amp;quot;color:#55FF55;text-shadow:black 0em 0em 0.3em;&amp;quot;&amp;gt;Work in progress&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Github Repo''': https://github.com/thisdp/dgs&lt;br /&gt;
&lt;br /&gt;
'''Resource Download''': [https://github.com/thisdp/dgs/releases/latest/download/dgs.zip dgs.zip]&lt;br /&gt;
&lt;br /&gt;
'''Server Discord''': https://discord.gg/QEs8q6W&lt;br /&gt;
&lt;br /&gt;
'''Current Version''': 3.522&lt;br /&gt;
&lt;br /&gt;
'''Update Log''': [https://github.com/thisdp/dgs/releases/tag/3.522 Changes and Updates Log]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Auto Completion &amp;amp; Syntax  Highlight'''&lt;br /&gt;
&lt;br /&gt;
Official:&lt;br /&gt;
&lt;br /&gt;
'''Latest VSCode Snippets:''' [https://raw.githubusercontent.com/Armisael2k/mtasa-wiki-scrapper/master/functions.json VSCode Snippets (Last Update: Auto every month) By '''motar2k''']&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Use the following command in server console to crawl and generate the latest auto completion (Only support NotePad++/Sublime/VSCode).&lt;br /&gt;
*'''g2d -crawl npp/sublime/vscode'''&lt;br /&gt;
Or you can use the following link to download completed files instead of crawling by yourself.&lt;br /&gt;
*[https://drive.google.com/file/d/1H_PiG2gmEz1AyXqZN4956IVgtZOjgMi6/view?usp=sharing NotePad++]&lt;br /&gt;
*[https://drive.google.com/file/d/1_07WBEWjriTTucrNGI7jT-4SknALKG6B/view?usp=sharing Sublime]&lt;br /&gt;
*[https://drive.google.com/file/d/1J4qoSjzmXZz7yxHUZ2fExBu3zvCwRESn/view?usp=sharing VSCode (Old)]&lt;br /&gt;
&lt;br /&gt;
3rd Party Auto Completion:&lt;br /&gt;
*1. [http://www.mediafire.com/file/m6dm7815d5dihax/lua.zip NotePad++ By '''Ahmed Ly''']&lt;br /&gt;
*2. [https://marketplace.visualstudio.com/items?itemName=ERAGON.mtasa-dgs-lua Visual Studio Code By '''BW~ERAGON &amp;gt;''' ]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Features=&lt;br /&gt;
&lt;br /&gt;
[[Image:DGSNetStatus.png|300px|thumb|right|DGS Network Monitor]]&lt;br /&gt;
&lt;br /&gt;
[[Image:DGSS.png|400px|thumb|right|]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''How does it work?'''&lt;br /&gt;
*DGS is based on [[element]] system, which just likes the cegui system. To make everything easy to use and understand, DGS has almost the same usage as CEGUI.&lt;br /&gt;
*DGS supports OOP syntax, if you don't like POP, then use OOP instead. But you should know that OOP is slower than POP.&lt;br /&gt;
*DGS elements are rendered in the event &amp;quot;onClientRender&amp;quot;. When &amp;quot;onClientRender&amp;quot; is called, every DGS elements will be looped and calculated.&lt;br /&gt;
Examples can be found in the [https://github.com/thisdp/dgs/blob/master/test.lua test.lua] file inside DGS folder.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''What's different from cegui?'''&lt;br /&gt;
*This resource is based on dx* functions, so its style will be more flexible than cegui, which means you can define the style by yourself.&lt;br /&gt;
*The latest '''Style System''' enables developer to define their own style such as changing color, loading images and even loading shaders with dgs elements on the server instead of using a lot of [[dgsSetProperty]]/[[dgsSetProperties]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Update System'''&lt;br /&gt;
*It have an update system that can inform you of keeping your DGS latest.&lt;br /&gt;
*When a newer version has been released, it will detecte the version changing periodically and then notice you.&lt;br /&gt;
*Execute command &amp;quot;'''updatedgs'''&amp;quot; to check the least version and update your DGS.&lt;br /&gt;
*Also, you can check the version of DGS by inputting the command &amp;quot;dgsver&amp;quot; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''You Should Know'''&lt;br /&gt;
*This project was started from 2014.&lt;br /&gt;
*Some of DGS elements use '''Render Target''', which means if you don't have enough video memory, '''Render Target won't be created''', and therefore those dgs elements won't be shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:Dx_7.PNG|400px|thumb|right|Example DGS Cmd]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Debug'''&lt;br /&gt;
* You can enter the debug mode by executing the command &amp;quot;'''debugdgs'''&amp;quot;.&lt;br /&gt;
* &amp;quot;'''debugdgs'''&amp;quot;: Simple debug mode. For basic information.&lt;br /&gt;
* &amp;quot;'''debugdgs 2 '''&amp;quot;: Render debug mode. To see dgs elements' scale with a rainbow border&lt;br /&gt;
* &amp;quot;'''debugdgs 3 '''&amp;quot;: Tracing debug mode. To trace something for example where the dgs elements' were created, and the tracing mode of some functions will be enabled to show the detail.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Notice'''&lt;br /&gt;
*It is recommended to change the resource name to 'dgs'.&lt;br /&gt;
*This is a resource, if you want to use the functions exported by this resource,  you should use an exported function prefix ('''exports.dgs:''') call in your code, such as&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
label = exports.dgs:dgsCreateLabel(0, 0, 0.5, 0.1, &amp;quot;text&amp;quot;, true)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*Here is a feasible way to shorten the name of an exported function:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs --shorten the export function prefix&lt;br /&gt;
label = DGS:dgsCreateLabel(0,0,0.5,0.1,&amp;quot;text&amp;quot;,true) --create a label&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*From the latest version, it no longer needs '''exports.dgs:''', instead we can do&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportFunction())()-- load functions&lt;br /&gt;
label = dgsCreateLabel(0,0,0.5,0.1,&amp;quot;text&amp;quot;,true) --create a label&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
'''Object Oriented Programming'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportOOPClass(true))()-- load OOP class&lt;br /&gt;
window = dgsWindow(0,0,0.5,0.1,&amp;quot;test&amp;quot;,true) --create a window with oop&lt;br /&gt;
label = window:dgsLabel(0,0,1,1,&amp;quot;label&amp;quot;,true) --create a label inside the window&lt;br /&gt;
label.text = &amp;quot;DGS OOP Test&amp;quot; --set text&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Special thanks to the following for their help (Respect the contributors)''':&lt;br /&gt;
* Axel, Senpai, ZoNe&lt;br /&gt;
* DiGiTal, #Dv^, maksam07&lt;br /&gt;
* Scorpyo, Kingleonide, Bullet(.el3tar)&lt;br /&gt;
* Allerek, Deihim007, OmarSwaitti(HankVoight)&lt;br /&gt;
* FlyingFork, Lettify, Ahmed Ly&lt;br /&gt;
* ᴛᴇᴍᴏɪꜱ, Shady&lt;br /&gt;
&lt;br /&gt;
='''DGS Tips'''=&lt;br /&gt;
*[[DGS Events and GUI Events]]&lt;br /&gt;
*[[DGS Functions and GUI Functions]]&lt;br /&gt;
*[[DGS Grid List]]&lt;br /&gt;
*[[DGS OOP Class]]&lt;br /&gt;
*[[DGS Custom Plugin]]&lt;br /&gt;
*[[DGS Style System]]&lt;br /&gt;
*[[G2D|DGS GUI To DGS]]&lt;br /&gt;
&lt;br /&gt;
='''DGS Element Properties'''=&lt;br /&gt;
{{DGSPROPERTIES}}&lt;br /&gt;
&lt;br /&gt;
='''Client Functions'''=&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;br /&gt;
&lt;br /&gt;
=Client Events=&lt;br /&gt;
{{DGSEVENTS}}&lt;br /&gt;
&lt;br /&gt;
=Last=&lt;br /&gt;
'''Everyone is welcome to make suggestions, test the script, help make adjustments/finish the wiki, etc.'''&lt;br /&gt;
[[Category:Resource]]&lt;br /&gt;
&lt;br /&gt;
[[ar:Resource:Dgs]]&lt;br /&gt;
[[ZH-CN:Resource:Dgs]]&lt;br /&gt;
[[PL:Resource:Dgs]]&lt;br /&gt;
[[TR:Resource:Dgs]]&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsImageSetImage&amp;diff=81444</id>
		<title>DgsImageSetImage</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsImageSetImage&amp;diff=81444"/>
		<updated>2024-12-02T18:00:53Z</updated>

		<summary type="html">&lt;p&gt;XLive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This function allows you to change the image in DGS image element to another one.&lt;br /&gt;
&lt;br /&gt;
'''Note:'''&lt;br /&gt;
*If you pass '''path''' into this function, path will be converted into '''texture element''' handled by dgs. &lt;br /&gt;
*If you want to control the '''texture''' by yourself, please pass a '''texture element''' into this function.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool dgsImageSetImage ( element theElement, element/string texture )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''theElement:''' The image element to be changed.&lt;br /&gt;
*'''texture:''' A texture/shader/render target/screen source/image path that you want to set.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the image in the image element was successfully changed, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
local texture = dxCreateTexture(&amp;quot;text.png&amp;quot;)  -- You need to add a texture yourself.&lt;br /&gt;
local myImage = DGS:dgsCreateImage ( 0.45, 0.48, 0.2, 0.5, _, true )&lt;br /&gt;
setTimer ( DGS:dgsImageSetImage, 10000, 1, myImage, texture )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsComboBoxSetItemBackGroundColor&amp;diff=78579</id>
		<title>DgsComboBoxSetItemBackGroundColor</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsComboBoxSetItemBackGroundColor&amp;diff=78579"/>
		<updated>2023-11-14T13:54:23Z</updated>

		<summary type="html">&lt;p&gt;XLive: typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
&lt;br /&gt;
This function sets the background color of a specific item of the combo box.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool dgsComboBoxSetItemBackGroundColor( element comboBox, int itemIndex, int imageDefault, int imageHoving, int imageSelected )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''comboBox:''' the combo box that you want to operate.&lt;br /&gt;
*'''itemIndex:''' An integer of the item index.&lt;br /&gt;
*'''colorDefault:''' An integer of the color of the item (Default State).&lt;br /&gt;
*'''colorHoving:''' An integer of the color of the item (Hoving State).&lt;br /&gt;
*'''colorSelected:''' An integer of the color of the item (Selected State).&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns '''true''' if set successfully, ''false'' if one of the arguments was invalid.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
&lt;br /&gt;
combobox = DGS:dgsCreateComboBox(200,50,600,50,false)&lt;br /&gt;
for i=1,30 do&lt;br /&gt;
	DGS:dgsComboBoxAddItem(combobox,randomLetter(10)..tostring(i)..&amp;quot; Test DGS&amp;quot;)&lt;br /&gt;
	DGS:dgsComboBoxSetItemBackGroundColor(combobox,i,tocolor(255,255,255,255),tocolor(0,0,255,255),tocolor(255,0,0,255))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=IsElementStreamedIn&amp;diff=77642</id>
		<title>IsElementStreamedIn</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=IsElementStreamedIn&amp;diff=77642"/>
		<updated>2023-09-17T19:30:19Z</updated>

		<summary type="html">&lt;p&gt;XLive: OOP&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Client function}}&lt;br /&gt;
This function checks whether an [[element]] is currently streamed in (not virtualized) and are actual GTA objects in the world. You can force an element to be streamed in using [[setElementStreamable]].&amp;lt;br&amp;gt;&lt;br /&gt;
{{Deprecated feature|3|1.0|&lt;br /&gt;
DP2 can return true even if this element is not fully streamed in. This can happen during the period when the vehicle/object model is loading while the element is not actually fully created yet.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool isElementStreamedIn ( element theElement )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
{{OOP||[[element]]:isStreamedIn|streamedIn}}&lt;br /&gt;
&lt;br /&gt;
===Required Arguments===&lt;br /&gt;
* '''theElement''': The [[element]] to check whether is streamed in or not.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the passed element is currently streamed in, ''false'' if it is virtualized.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This command shows you how many objects you have streamed in.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function checkTheObjects ( cmd )&lt;br /&gt;
	local amount = 0 -- When starting the command, we don't have any objects looped.&lt;br /&gt;
	for k,v in ipairs ( getElementsByType ( &amp;quot;object&amp;quot; ) ) do -- Looping all the objects in the server&lt;br /&gt;
		if isElementStreamedIn ( v ) then -- If the object is streamed in&lt;br /&gt;
			amount = amount + 1 -- It's an object more streamed in&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	outputChatBox ( &amp;quot;You have currently &amp;quot; ..amount.. &amp;quot; objects streamed in.&amp;quot; ) -- Send the player the amount of objects that are streamed in&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;checkobjects&amp;quot;, checkTheObjects )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Note: Objects can already stream from a very long distance, so even when you can't see some objects, they can still be returned.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Client element functions}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:DGSEVENTS&amp;diff=77615</id>
		<title>Template:DGSEVENTS</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:DGSEVENTS&amp;diff=77615"/>
		<updated>2023-09-08T22:25:38Z</updated>

		<summary type="html">&lt;p&gt;XLive: typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;General&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS Events/General}}&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Check Box&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS Events/Check Box}}&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Combo Box&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS Events/Combo Box}}&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Drag'N Drop&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS Events/DragNDrop}}&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Edit&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS Events/Edit}}&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Grid List&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS Events/GridList}}&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Menu&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS Events/Menu}}&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Selector&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS Events/Selector}}&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Mouse&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS Events/Mouse}}&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Radio Button&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS Events/Radio Button}}&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Switch Button&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS Events/Switch Button}}&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Tab&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS Events/Tab}}&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Animation&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS Events/Animation}}&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Plugin&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Media&amp;lt;/span&amp;gt;===&lt;br /&gt;
{{DGS Events/Plugin/Media Browser}}&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Color Picker&amp;lt;/span&amp;gt;===&lt;br /&gt;
{{DGS Events/Plugin/Color Picker}}&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;QRCode&amp;lt;/span&amp;gt;===&lt;br /&gt;
{{DGS Events/Plugin/QRCode}}&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;Remote Image&amp;lt;/span&amp;gt;===&lt;br /&gt;
{{DGS Events/Plugin/Remote Image}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Resource:DGS&amp;diff=77171</id>
		<title>Resource:DGS</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Resource:DGS&amp;diff=77171"/>
		<updated>2023-07-16T19:38:15Z</updated>

		<summary type="html">&lt;p&gt;XLive: download link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pageclass class=&amp;quot;resource&amp;quot; subcaption=&amp;quot;Resource&amp;quot;&amp;gt;&amp;lt;/pageclass&amp;gt;&lt;br /&gt;
[[Image:DGS_Logo.png|400px|thumb|right|DGS Logo By [[User:Allerek|Allerek]]]]&lt;br /&gt;
This resource is designed to allow you to create directX GUI's as an alternative to the original MTA:SA GUI functions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#DD2222;text-shadow:black 0em 0em 0.3em;&amp;quot;&amp;gt;This wiki is always for the latest DGS version!&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding:10px; border-radius:2px;font-size:14px;&amp;quot;&amp;gt;&lt;br /&gt;
'''Full Name''': Thisdp's DirectX Graphical User Interface System (DxGUI Lib)&lt;br /&gt;
&lt;br /&gt;
'''State''': &amp;lt;span style=&amp;quot;color:#FFFFFF;text-shadow:black 0em 0em 0.3em;&amp;quot;&amp;gt;OpenSource&amp;lt;/span&amp;gt; &amp;amp; &amp;lt;span style=&amp;quot;color:#55FF55;text-shadow:black 0em 0em 0.3em;&amp;quot;&amp;gt;Work in progress&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Source code''': https://github.com/thisdp/dgs&lt;br /&gt;
&lt;br /&gt;
'''Download''': [https://github.com/thisdp/dgs/releases/latest/download/dgs.zip GitHub]&lt;br /&gt;
&lt;br /&gt;
'''Server Discord''': https://discord.gg/QEs8q6W&lt;br /&gt;
&lt;br /&gt;
'''Current Version''': 3.521&lt;br /&gt;
&lt;br /&gt;
'''Update Log''': [[DGS Updates Log|Changes and Updates Log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Auto Completion &amp;amp; Syntax  Highlight'''&lt;br /&gt;
&lt;br /&gt;
Official:&lt;br /&gt;
&lt;br /&gt;
'''Latest VSCode Snippets:''' [https://raw.githubusercontent.com/Armisael2k/mtasa-wiki-scrapper/master/functions.json VSCode Snippets (Last Update: 06/02/2023) By '''motar2k''']&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Use the following command in server console to crawl and generate the latest auto completion (Only support NotePad++/Sublime/VSCode).&lt;br /&gt;
*'''g2d -crawl npp/sublime/vscode'''&lt;br /&gt;
Or you can use the following link to download completed files instead of crawling by yourself.&lt;br /&gt;
*[https://drive.google.com/file/d/1H_PiG2gmEz1AyXqZN4956IVgtZOjgMi6/view?usp=sharing NotePad++]&lt;br /&gt;
*[https://drive.google.com/file/d/1_07WBEWjriTTucrNGI7jT-4SknALKG6B/view?usp=sharing Sublime]&lt;br /&gt;
*[https://drive.google.com/file/d/1J4qoSjzmXZz7yxHUZ2fExBu3zvCwRESn/view?usp=sharing VSCode (Old)]&lt;br /&gt;
&lt;br /&gt;
3rd Party Auto Completion:&lt;br /&gt;
*1. [http://www.mediafire.com/file/m6dm7815d5dihax/lua.zip NotePad++ By '''Ahmed Ly''']&lt;br /&gt;
*2. [https://marketplace.visualstudio.com/items?itemName=ERAGON.mtasa-dgs-lua Visual Studio Code By '''BW~ERAGON &amp;gt;''' ]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Features=&lt;br /&gt;
&lt;br /&gt;
[[Image:DGSNetStatus.png|300px|thumb|right|DGS Network Monitor]]&lt;br /&gt;
&lt;br /&gt;
[[Image:DGSS.png|400px|thumb|right|]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''How does it work?'''&lt;br /&gt;
*DGS is based on [[element]] system, which just likes the cegui system. To make DGS easier to use and understand, I choose to follow the usage of cegui's.&lt;br /&gt;
*DGS supports OOP syntax, if you don't like POP, then use OOP instead. But you should know that OOP is slower than POP.&lt;br /&gt;
*DGS elements are rendered in the event &amp;quot;onClientRender&amp;quot;. When &amp;quot;onClientRender&amp;quot; is called, every DGS elements will be looped and calculated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''What's different from cegui?'''&lt;br /&gt;
*This resource is based on dx* functions, so its style will be more flexible than cegui, which means you can define the style by yourself.&lt;br /&gt;
*The latest '''Style System''' enables developer to define their own style such as changing color, loading images and even loading shaders with dgs elements on the server instead of using a lot of [[dgsSetProperty]]/[[dgsSetProperties]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Update System'''&lt;br /&gt;
*It have an update system that can inform you of keeping your DGS latest.&lt;br /&gt;
*When a newer version has been released, it will detecte the version changing periodically and then notice you.&lt;br /&gt;
*Execute command &amp;quot;'''updatedgs'''&amp;quot; to check the least version and update your DGS.&lt;br /&gt;
*Also, you can check the version of DGS by inputting the command &amp;quot;dgsver&amp;quot; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''You Should Know'''&lt;br /&gt;
*This project was started from 2014.&lt;br /&gt;
*Some of DGS elements use '''Render Target''', which means if you don't have enough video memory, '''Render Target won't be created''', and therefore those dgs elements won't be shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:Dx_7.PNG|400px|thumb|right|Example DGS Cmd]] &lt;br /&gt;
&lt;br /&gt;
'''Examples scripts'''&lt;br /&gt;
*1.https://community.multitheftauto.com/index.php?p=resources&amp;amp;s=details&amp;amp;id=14757 By ([[User:Ahmed Ly|Ahmed Ly]] ,Mahmod Algeriany)&lt;br /&gt;
*2. Also File test.lua its have more Examples You can See it .&lt;br /&gt;
*3. This Video show you how to play a video by using Dgs https://www.youtube.com/watch?v=ZIq24zS5byI&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Debug'''&lt;br /&gt;
* You can enter the debug mode by executing the command &amp;quot;'''debugdgs'''&amp;quot;.&lt;br /&gt;
* &amp;quot;'''debugdgs'''&amp;quot;: Simple debug mode. For basic information.&lt;br /&gt;
* &amp;quot;'''debugdgs 2 '''&amp;quot;: Render debug mode. To see dgs elements' scale with a rainbow border&lt;br /&gt;
* &amp;quot;'''debugdgs 3 '''&amp;quot;: Tracing debug mode. To trace something for example where the dgs elements' were created, and the tracing mode of some functions will be enabled to show the detail.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Notice'''&lt;br /&gt;
*It is recommended to change the resource name to 'dgs'.&lt;br /&gt;
*This is a resource, if you want to use the functions exported by this resource,  you should use an exported function prefix ('''exports.dgs:''') call in your code, such as&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
label = exports.dgs:dgsCreateLabel(0, 0, 0.5, 0.1, &amp;quot;text&amp;quot;, true)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*Here is a feasible way to shorten the name of an exported function:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs --shorten the export function prefix&lt;br /&gt;
label = DGS:dgsCreateLabel(0,0,0.5,0.1,&amp;quot;text&amp;quot;,true) --create a label&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*From the latest version, it no longer needs '''exports.dgs:''', instead we can do&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportFunction())()-- load functions&lt;br /&gt;
label = dgsCreateLabel(0,0,0.5,0.1,&amp;quot;text&amp;quot;,true) --create a label&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
'''Object Oriented Programming'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportOOPClass(true))()-- load OOP class&lt;br /&gt;
window = dgsWindow(0,0,0.5,0.1,&amp;quot;test&amp;quot;,true) --create a window with oop&lt;br /&gt;
label = window:dgsLabel(0,0,1,1,&amp;quot;label&amp;quot;,true) --create a label inside the window&lt;br /&gt;
label.text = &amp;quot;DGS OOP Test&amp;quot; --set text&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Special thanks to the following for their help (Respect the contributors)''':&lt;br /&gt;
* Axel, Senpai, ZoNe&lt;br /&gt;
* DiGiTal, #Dv^, maksam07&lt;br /&gt;
* Scorpyo, Kingleonide, Bullet(.el3tar)&lt;br /&gt;
* Allerek, Deihim007, OmarSwaitti(HankVoight)&lt;br /&gt;
* FlyingFork, Lettify, Ahmed Ly&lt;br /&gt;
* ᴛᴇᴍᴏɪꜱ, Shady1&lt;br /&gt;
&lt;br /&gt;
='''DGS Tips'''=&lt;br /&gt;
*[[DGS Events and GUI Events]]&lt;br /&gt;
*[[DGS Functions and GUI Functions]]&lt;br /&gt;
*[[DGS Grid List]]&lt;br /&gt;
*[[DGS OOP Class]]&lt;br /&gt;
*[[DGS Custom Plugin]]&lt;br /&gt;
*[[DGS Style System]]&lt;br /&gt;
*[[G2D|DGS GUI To DGS]]&lt;br /&gt;
&lt;br /&gt;
='''DGS Element Properties'''=&lt;br /&gt;
{{DGSPROPERTIES}}&lt;br /&gt;
&lt;br /&gt;
='''Client Functions'''=&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;br /&gt;
&lt;br /&gt;
=Client Events=&lt;br /&gt;
{{DGSEVENTS}}&lt;br /&gt;
&lt;br /&gt;
=Last=&lt;br /&gt;
'''Everyone is welcome to make suggestions, test the script, help make adjustments/finish the wiki, etc.'''&lt;br /&gt;
[[Category:Resource]]&lt;br /&gt;
&lt;br /&gt;
[[ar:Resource:Dgs]]&lt;br /&gt;
[[ZH-CN:Resource:Dgs]]&lt;br /&gt;
[[PL:Resource:Dgs]]&lt;br /&gt;
[[TR:Resource:Dgs]]&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsCreateCanvas&amp;diff=77138</id>
		<title>DgsCreateCanvas</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsCreateCanvas&amp;diff=77138"/>
		<updated>2023-06-29T10:34:38Z</updated>

		<summary type="html">&lt;p&gt;XLive: Remove unused color&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Client function}}&lt;br /&gt;
&lt;br /&gt;
This function creates a canvas that is used to draw multiple shaders.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
element dgsCreateCanvas( element renderSource, int width, int height )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments===&lt;br /&gt;
*'''renderSource:''' The source to draw on the canvas, can be material such as texture, render target, shader etc.&lt;br /&gt;
*'''width:''' An integer indicates the width of canvas.&lt;br /&gt;
*'''height:''' An integer indicates the height of canvas.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns a dgs-dxcanvas element (DGS Plugin Type)[ render target (Element Type) ] if succeed, ''false'' otherwise&lt;br /&gt;
&lt;br /&gt;
==Example 1== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs --get exported functions from dgs&lt;br /&gt;
&lt;br /&gt;
local QRCode = DGS:dgsRequestQRCode(&amp;quot;https://wiki.multitheftauto.com/wiki/Resource:Dgs&amp;quot;) --Source Texture&lt;br /&gt;
local mask1 = DGS:dgsCreateMask(QRCode,&amp;quot;circle&amp;quot;) --Apply Source Texture to Mask 1&lt;br /&gt;
local canvas = DGS:dgsCreateCanvas(mask1,200,200) --Draw Mask 1 in Canvas&lt;br /&gt;
local mask2 = DGS:dgsCreateMask(canvas ,&amp;quot;backgroundFilter&amp;quot;) --Apply Canvas to Mask 2&lt;br /&gt;
local image = DGS:dgsCreateImage(300,300,200,200,mask2 ,false) --Draw Mask 2&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Dgs-dxgridlist&amp;diff=76923</id>
		<title>Dgs-dxgridlist</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Dgs-dxgridlist&amp;diff=76923"/>
		<updated>2023-06-11T14:12:14Z</updated>

		<summary type="html">&lt;p&gt;XLive: Moved to mouseButtons property&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Dgs|DGS]] Properties is always used to change the gui style and make it more fantastic.&lt;br /&gt;
&lt;br /&gt;
This page shows the properties of dgs-dxgridlist that you could use.&lt;br /&gt;
&lt;br /&gt;
==Main Functions==&lt;br /&gt;
*[[dgsSetProperty]]&lt;br /&gt;
*[[dgsGetProperty]]&lt;br /&gt;
&lt;br /&gt;
==Properties==&lt;br /&gt;
===autoSort===&lt;br /&gt;
This property determines whether auto sort is enabled. ''See [[dgsGridListSetAutoSortEnabled]]/[[dgsGridListGetAutoSortEnabled]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;autoSort&amp;quot;,autoSort)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''autoSort:''' A bool of auto sort state.&lt;br /&gt;
&lt;br /&gt;
===backgroundOffset===&lt;br /&gt;
This property determines the offset between the left border and row background.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;backgroundOffset&amp;quot;,backgroundOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''backgroundOffset:''' An integer of the offset between the left border and row background.&lt;br /&gt;
&lt;br /&gt;
===bgColor===&lt;br /&gt;
This property determines the background color of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;bgColor&amp;quot;,bgColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''bgColor:''' An integer of the color that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
===bgImage===&lt;br /&gt;
This property determines the background image of the grid list. To adjust the color of the image, use property '''bgColor'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;bgImage&amp;quot;,bgImage)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''bgImage:''' A material element that serves as the background image of the grid list (texture/shader/screen source/renderTarget).&lt;br /&gt;
&lt;br /&gt;
===clip===&lt;br /&gt;
Whether the clip property is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;clip&amp;quot;,clip)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''clip:''' If set to true, the parts of the text that don't fit within the bounding box will be cut off.&lt;br /&gt;
&lt;br /&gt;
===columnColor===&lt;br /&gt;
This property determines the background color of the column of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnColor&amp;quot;,columnColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnColor:''' An integer of the color that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
===columnData===&lt;br /&gt;
This property stores column data.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnData&amp;quot;,columnData)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnData:''' A table stores all column data.&lt;br /&gt;
'''Data Structure'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	{ text, Width, AllWidthFront, Alignment, color, colorcoded, sizeX, sizeY, font },&lt;br /&gt;
	{ text, Width, AllWidthFront, Alignment, color, colorcoded, sizeX, sizeY, font },&lt;br /&gt;
	{ text, Width, AllWidthFront, Alignment, color, colorcoded, sizeX, sizeY, font },&lt;br /&gt;
	...&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===columnHeight===&lt;br /&gt;
This property determines the column height of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnHeight&amp;quot;,columnHeight)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnHeight:''' An integer of column height of the grid list.&lt;br /&gt;
&lt;br /&gt;
===columnImage===&lt;br /&gt;
This property determines the background image of the column of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnImage&amp;quot;,columnImage)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnImage:''' A material element that serves as the background image of the column of the grid list (texture/shader/screen source/renderTarget).&lt;br /&gt;
&lt;br /&gt;
===columnMoveOffset===&lt;br /&gt;
This property stores the move offset of column that is used to render.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnMoveOffset&amp;quot;,columnMoveOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnMoveOffset:''' A float stores the move offset of column that is used to render.&lt;br /&gt;
&lt;br /&gt;
===columnOffset===&lt;br /&gt;
This property determines the global offset between the left border and column text.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnOffset&amp;quot;,columnOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnOffset:''' An integer of offset of the column.&lt;br /&gt;
&lt;br /&gt;
===columnRelative===&lt;br /&gt;
This property determines whether the column length is relative or not. ''See [[dgsGridListSetColumnRelative]]/[[dgsGridListGetColumnRelative]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnRelative&amp;quot;,columnRelative)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnRelative:''' A bool of the relative state of the column length.&lt;br /&gt;
&lt;br /&gt;
===columnShadow===&lt;br /&gt;
The shadow text of the column.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnShadow&amp;quot;,{offsetX,offsetY,color})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the shadow text of the column.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the shadow text of the column.&lt;br /&gt;
*'''color:''' An integer of the color of the shadow text of the column.&lt;br /&gt;
&lt;br /&gt;
===columnTextColor===&lt;br /&gt;
This property determines the color of the column text of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnTextColor&amp;quot;,columnTextColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnTextColor:''' An integer of the color that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
===columnTextPosOffset===&lt;br /&gt;
This property adjusts the offset of the text of the column, which can solve text misplacing caused by font.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnTextPosOffset&amp;quot;,{offsetX,offsetY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the text of the column.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the text of the column.&lt;br /&gt;
&lt;br /&gt;
===columnTextSize===&lt;br /&gt;
This property determines the scale of the column text of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnTextSize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX:''' A float of the 2D X scale of the text of the column.&lt;br /&gt;
*'''scaleY:''' A float of the 2D Y scale of the text of the column.&lt;br /&gt;
&lt;br /&gt;
===columnWordBreak===&lt;br /&gt;
This property determines whether word break property for column is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnWordBreak&amp;quot;,columnWordBreak)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnWordBreak:''' A bool indicates whether the word break is enabled.&lt;br /&gt;
&lt;br /&gt;
===colorCoded===&lt;br /&gt;
Whether the color code is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;colorCoded&amp;quot;,colorCoded)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorCoded:''' Set to true to enable embedded #FFFFFF color codes.&lt;br /&gt;
&lt;br /&gt;
===defaultColumnOffset===&lt;br /&gt;
This property determines offset of normal row column (is different from but works with columnOffset). ''See [[dgsGridListSetRowAsSection]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;defaultColumnOffset&amp;quot;,defaultColumnOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''defaultColumnOffset:''' An integer of the offset of normal row column.&lt;br /&gt;
&lt;br /&gt;
===defaultSortFunctions===&lt;br /&gt;
This property determines the default sort function of grid list when clicking column.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;defaultSortFunctions&amp;quot;,{lowerSortFunction,upperSortFunction})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''lowerSortFunction:''' A string of the lower sort function name.&lt;br /&gt;
*'''upperSortFunction:''' A string of the upper sort function name.&lt;br /&gt;
Here are three groups can be use:&lt;br /&gt;
*'''greaterLower'''/'''greaterUpper''': Sorting directly with string.&lt;br /&gt;
*'''numGreaterLowerNumFirst'''/'''numGreaterUpperNumFirst''': Sorting support number order with number first.&lt;br /&gt;
*'''numGreaterLowerStrFirst'''/'''numGreaterUpperStrFirst''': Sorting support number order with string first.&lt;br /&gt;
*'''longerLower'''/'''longerUpper''': Sorting according to the utf8 length of the string.&lt;br /&gt;
&lt;br /&gt;
===defaultSortIcons===&lt;br /&gt;
This property determines the icons of the default sort function.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;defaultSortIcons&amp;quot;,{iconA,iconB})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''iconA:''' A string of the lower sort icon ('''▲''' By default).&lt;br /&gt;
*'''iconB:''' A string of the upper sort icon ('''▼''' By default).&lt;br /&gt;
&lt;br /&gt;
===font===&lt;br /&gt;
This is equivalent to [[dgsSetFont]]/[[dgsGetFont]]. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;font&amp;quot;,font)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''font:''' A [[Element/DX_font|dx font element]] of the default text font of the gridlist.&lt;br /&gt;
&lt;br /&gt;
===leading===&lt;br /&gt;
This property determines the space between rows.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;leading&amp;quot;,leading)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''leading:''' How many pixels between rows&lt;br /&gt;
&lt;br /&gt;
===multiSelection===&lt;br /&gt;
This property determines whether multi selection is enabled or not. ''See [[dgsGridListSetMultiSelectionEnabled]]/[[dgsGridListGetMultiSelectionEnabled]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;multiSelection&amp;quot;,multiSelection)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''multiSelection:''' A bool of the state of the multi selection.&lt;br /&gt;
&lt;br /&gt;
===mode===&lt;br /&gt;
This property determines the render mode of grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;mode&amp;quot;,mode)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''mode:''' A bool of the state of render mode. Detail:&lt;br /&gt;
**'''true:''' No render target mode (Crappy and have a lot of bugs but doesn't take video memory)&lt;br /&gt;
**'''false:''' Render target mode (Great quality but takes video memory)&lt;br /&gt;
&lt;br /&gt;
===moveHardness===&lt;br /&gt;
This property determines how hard will the grid list moves when scrolling.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;moveHardness&amp;quot;,{scrollHardness,dragHardness})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scrollHardness:''' A float determins how hard will the grid list moves when scrolling with wheel ( should be larger than 0, lower than 1 ).&lt;br /&gt;
*'''dragHardness:''' A float determins how hard will the grid list moves when dragging with mouse ( should be larger than 0, lower than 1 ).&lt;br /&gt;
&lt;br /&gt;
===preSelect===&lt;br /&gt;
This property stores the item id the cursor is hovering on.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;preSelect&amp;quot;,{rowIndex,columnIndex})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowIndex:''' Row Index&lt;br /&gt;
*'''columnIndex:''' Column Index&lt;br /&gt;
&lt;br /&gt;
===rowColor===&lt;br /&gt;
This property determines the default 3 states' colors of row. ''See [[dgsGridListSetRowBackGroundColor]]/[[dgsGridListGetRowBackGroundColor]]''. Note that this property does not affect rows that were created before the property was changed.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowColor&amp;quot;,{colorDefault,colorHoving,colorSelected})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorDefault:''' An integer of the color of the row (Default State).&lt;br /&gt;
*'''colorHoving:''' An integer of the color of the row (Hoving State).&lt;br /&gt;
*'''colorSelected:''' An integer of the color of the row (Selected State).&lt;br /&gt;
&lt;br /&gt;
===rowData===&lt;br /&gt;
This property stores row data.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowData&amp;quot;,rowData)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowData:''' A table stores all row data.&lt;br /&gt;
'''Data Structure'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
&lt;br /&gt;
	[1] = {&lt;br /&gt;
		[-4] = columnOffset,				--column offset&lt;br /&gt;
		[-3] = {normal,hovering,selected},		--background image&lt;br /&gt;
		[-2] = true/false,				--selectable&lt;br /&gt;
		[-1] = true/false,				--clickable&lt;br /&gt;
		[0] = {normal,hovering,selected},		--background color&lt;br /&gt;
		[1] = {text,color,colorcoded,scalex,scaley,font,{image,color,imagex,imagey,imagew,imageh},unselectable,unclickable},	--Column 1&lt;br /&gt;
		[2] = {text,color,colorcoded,scalex,scaley,font,{image,color,imagex,imagey,imagew,imageh},unselectable,unclickable},	--Column 2&lt;br /&gt;
		...&lt;br /&gt;
	},		--Row 1&lt;br /&gt;
	[2] = {&lt;br /&gt;
		[-4] = columnOffset,				--column offset&lt;br /&gt;
		[-3] = {normal,hovering,selected},		--background image&lt;br /&gt;
		[-2] = true/false,				--selectable&lt;br /&gt;
		[-1] = true/false,				--clickable&lt;br /&gt;
		[0] = {normal,hovering,selected},		--background color&lt;br /&gt;
		[1] = {text,color,colorcoded,scalex,scaley,font,{image,color,imagex,imagey,imagew,imageh},unselectable,unclickable},	--Column 1&lt;br /&gt;
		[2] = {text,color,colorcoded,scalex,scaley,font,{image,color,imagex,imagey,imagew,imageh},unselectable,unclickable},	--Column 2&lt;br /&gt;
		...&lt;br /&gt;
	},		--Row 2&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===rowHeight===&lt;br /&gt;
This property determines the row height of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowHeight&amp;quot;,rowHeight)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowHeight:''' An integer of row height of the grid list.&lt;br /&gt;
&lt;br /&gt;
===rowImage===&lt;br /&gt;
This property determines the default 3 states' background image of row. ''See [[dgsGridListGetRowBackGroundImage]]/[[dgsGridListSetRowBackGroundImage]]''. Note that this property does not affect rows that were created before the property was changed.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowImage&amp;quot;,{normalImage,hoveringImage,selectedImage})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalImage:''' A texture of the image of the row (Normal State).&lt;br /&gt;
*'''hoveringImage:''' A texture of the image of the row (Hoving State).&lt;br /&gt;
*'''selectedImage:''' A texture of the image of the row (Selected State).&lt;br /&gt;
&lt;br /&gt;
===rowImageStyle===&lt;br /&gt;
This property determines the style of row background image.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowImageStyle&amp;quot;,style)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''style:''' An integer of the style of row background image. Available values are as follows:&lt;br /&gt;
**'''1:''' Every item uses a complete background image.&lt;br /&gt;
**'''2:''' Every row uses a complete background image.&lt;br /&gt;
**'''3:''' Only the visible area of every row uses a complete background image.&lt;br /&gt;
&lt;br /&gt;
===rowMoveOffset===&lt;br /&gt;
This property stores the move offset of row that is used to render.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowMoveOffset&amp;quot;,rowMoveOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowMoveOffset:''' A float stores the move offset of row that is used to render.&lt;br /&gt;
&lt;br /&gt;
===rowSelect===&lt;br /&gt;
This property stores the selected rows.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowSelect&amp;quot;,data)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''data:''' the data.&lt;br /&gt;
'''Data Structure'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	[Column1] = {&lt;br /&gt;
		Row1,&lt;br /&gt;
		Row2,&lt;br /&gt;
		...&lt;br /&gt;
	},&lt;br /&gt;
	[Column2] = {&lt;br /&gt;
		Row1,&lt;br /&gt;
		Row2,&lt;br /&gt;
		...&lt;br /&gt;
	},&lt;br /&gt;
	...&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===rowShadow===&lt;br /&gt;
The shadow text of the row.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowShadow&amp;quot;,{offsetX,offsetY,color})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the shadow text of the row.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the shadow text of the row.&lt;br /&gt;
*'''color:''' An integer of the color of the shadow text of the row.&lt;br /&gt;
&lt;br /&gt;
===rowShowUnclippedOnly===&lt;br /&gt;
This property will force the grid list only show those unclipped row&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowShowUnclippedOnly&amp;quot;,rowShowUnclippedOnly)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowShowUnclippedOnly:''' A bool indicates if the only the unclipped rows will be shown in grid list.&lt;br /&gt;
&lt;br /&gt;
===rowTextColor===&lt;br /&gt;
This property determines the default color of the row text of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowTextColor&amp;quot;,rowTextColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowTextColor:''' An integer of the color of the row text that can be converted by [[tocolor]]. Note that this property does not affect rows that were created before the property was changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowTextColor&amp;quot;,{normalColor,hoveringColor,selectedColor})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalColor:''' A integer of the color of the row text that can be converted by [[tocolor]](Normal State).&lt;br /&gt;
*'''hoveringColor:''' A integer of the color of the row text that can be converted by [[tocolor]](Hoving State).&lt;br /&gt;
*'''selectedColor:''' A integer of the color of the row text that can be converted by [[tocolor]](Selected State).&lt;br /&gt;
&lt;br /&gt;
===rowTextPosOffset===&lt;br /&gt;
This property adjusts the offset of the text of the row, which can solve text misplacing caused by font.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowTextPosOffset&amp;quot;,{offsetX,offsetY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the text of the row.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the text of the row.&lt;br /&gt;
&lt;br /&gt;
===rowTextSize===&lt;br /&gt;
This property determines the default scale of the row text of the grid list. Note that this property does not affect rows that were created before the property was changed.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowTextSize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX:''' A float of the 2D X scale of the text of the row.&lt;br /&gt;
*'''scaleY:''' A float of the 2D Y scale of the text of the row.&lt;br /&gt;
&lt;br /&gt;
===rowWordBreak===&lt;br /&gt;
This property determines whether word break property for row is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowWordBreak&amp;quot;,rowWordBreak)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowWordBreak:''' A bool indicates whether the word break is enabled.&lt;br /&gt;
&lt;br /&gt;
===scrollBarAlignment===&lt;br /&gt;
This property sets the alignment of the scroll bars in the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist, &amp;quot;scrollBarAlignment&amp;quot;,{vertical})&amp;lt;/syntaxhighlight&amp;gt;  &amp;lt;!--,horizontal})&amp;lt;/syntaxhighlight&amp;gt; !--&amp;gt;&lt;br /&gt;
*'''vertical:''' Specifies the alignment of the vertical scroll bar, which can be set to:&lt;br /&gt;
**'''left:''' Aligns the vertical scroll bar to the left of the grid list.&lt;br /&gt;
**'''right:''' Aligns the vertical scroll bar to the right of the grid list.&lt;br /&gt;
&amp;lt;!--*'''horizontal:''' Specifies the alignment of the horizontal scroll bar, which can be set to:&lt;br /&gt;
**'''top:''' Aligns the horizontal scroll bar to the top of the grid list.&lt;br /&gt;
**'''bottom:''' Aligns the horizontal scroll bar to the bottom of the grid list.!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===scrollBarState===&lt;br /&gt;
This property forces the visibility of scroll bar. ''See [[dgsGridListSetScrollBarState]]/[[dgsGridListGetScrollBarState]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;scrollBarState&amp;quot;,{vertical,horizontal})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''vertical:''' A bool of the state of the vertical scroll bar.&lt;br /&gt;
*'''horizontal:''' A bool of the state of the horizontal scroll bar.&lt;br /&gt;
**'''true:''' Force to be visible&lt;br /&gt;
**'''false:''' Force to be invisible&lt;br /&gt;
**'''nil:''' Auto&lt;br /&gt;
&lt;br /&gt;
===scrollBarThick===&lt;br /&gt;
This property determines the thickness of scroll bar.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;scrollBarThick&amp;quot;,scrollBarThick)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scrollBarThick:''' An integer of the thickness of scroll bar.&lt;br /&gt;
&lt;br /&gt;
===sectionColumnOffset===&lt;br /&gt;
This property determines offset of section row column (is different from but works with columnOffset). ''See [[dgsGridListSetRowAsSection]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;sectionColumnOffset&amp;quot;,sectionColumnOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''sectionColumnOffset:''' An integer of the offset of section row column.&lt;br /&gt;
&lt;br /&gt;
===sectionFont===&lt;br /&gt;
This property determines the font of the text of which row is in section mode. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;sectionFont&amp;quot;,sectionFont)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''sectionFont:''' A [[Element/DX_font|dx font element]] of the text of which row is in section mode.&lt;br /&gt;
&lt;br /&gt;
===selectionMode===&lt;br /&gt;
This property stores current selection mode of grid list. ''See [[dgsGridListSetSelectionMode]]/[[dgsGridListGetSelectionMode]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;selectionMode&amp;quot;,selectionMode)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''selectionMode:''' The mode of the selection.  Can be the following values:&lt;br /&gt;
**'''1:''' row selection&lt;br /&gt;
**'''2:''' column selection&lt;br /&gt;
**'''3:''' cell selection&lt;br /&gt;
&lt;br /&gt;
===selectedColumn===&lt;br /&gt;
This property stores the index of which column the cursor is hovering. ''See [[dgsGridListGetEnterColumn]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;selectedColumn&amp;quot;,selectedColumn)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnHeight:''' Column Index.&lt;br /&gt;
&lt;br /&gt;
===sortColumn===&lt;br /&gt;
This property determines target sort column. ''See [[dgsGridListSetSortColumn]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;sortColumn&amp;quot;,sortColumn)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''sortColumn:''' An integer of the specific column to be sorted by.&lt;br /&gt;
&lt;br /&gt;
===sortEnabled===&lt;br /&gt;
This property determines whether sort is enabled. ''See [[dgsGridListSetSortEnabled]]/[[dgsGridListGetSortEnabled]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;sortEnabled&amp;quot;,sortEnabled)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''sortEnabled:''' A bool of sort state.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSPROPERTIES}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Dgs-dxswitchbutton&amp;diff=76922</id>
		<title>Dgs-dxswitchbutton</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Dgs-dxswitchbutton&amp;diff=76922"/>
		<updated>2023-06-11T14:11:01Z</updated>

		<summary type="html">&lt;p&gt;XLive: Moved to mouseButtons property&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Dgs|DGS]] Properties is always used to change the gui style and make it more fantastic.&lt;br /&gt;
&lt;br /&gt;
This page shows the properties of dgs-dxswitchbutton that you could use.&lt;br /&gt;
&lt;br /&gt;
==Main Functions==&lt;br /&gt;
*[[dgsSetProperty]]&lt;br /&gt;
*[[dgsGetProperty]]&lt;br /&gt;
&lt;br /&gt;
==Properties==&lt;br /&gt;
===clip===&lt;br /&gt;
Whether the clip property is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;clip&amp;quot;,clip)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''clip:''' If set to true, the parts of the text that don't fit within the bounding box will be cut off.&lt;br /&gt;
&lt;br /&gt;
===cursorMoveSpeed===&lt;br /&gt;
This property determines the cursor moving speed when switch button changes state.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;cursorMoveSpeed&amp;quot;,cursorMoveSpeed)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''cursorMoveSpeed:''' A float of the cursor moving speed when switch button changes state.&lt;br /&gt;
&lt;br /&gt;
===cursorWidth===&lt;br /&gt;
This property determines the cursor width of switch button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;cursorWidth&amp;quot;,cursorWidth)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''cursorWidth:''' A float of the cursor width of switch button.&lt;br /&gt;
&lt;br /&gt;
===cursorLength===&lt;br /&gt;
This property determines the cursor length of switch button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;cursorLength&amp;quot;,cursorLength)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''cursorLength:''' A float of the cursor length of switch button.&lt;br /&gt;
&lt;br /&gt;
===colorcoded===&lt;br /&gt;
Whether the color code is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;colorcoded&amp;quot;,colorcoded)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorcoded:''' Set to true to enable embedded #FFFFFF color codes.&lt;br /&gt;
&lt;br /&gt;
===colorOn===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the background color when the switch button turns on.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;colorOn&amp;quot;,{normalColor,hoverColor,clickColor})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalColor:''' A integer of background color of turned on switch button.&lt;br /&gt;
*'''hoverColor:''' A integer of background color of turned on switch button when the mouse is hovering on it.&lt;br /&gt;
*'''clickColor:''' A integer of background color of turned on switch button when the mouse is clicked on it.&lt;br /&gt;
&lt;br /&gt;
===colorOff===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the background color when the switch button turns off.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;colorOff&amp;quot;,{normalColor,hoverColor,clickColor})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalColor:''' A integer of background color of turned off switch button.&lt;br /&gt;
*'''hoverColor:''' A integer of background color of turned off switch button when the mouse is hovering on it.&lt;br /&gt;
*'''clickColor:''' A integer of background color of turned off switch button when the mouse is clicked on it.&lt;br /&gt;
&lt;br /&gt;
===cursorColor===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the cursor color.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;cursorColor&amp;quot;,{normalColor,hoverColor,clickColor})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalColor:''' A integer of cursor color of the switch button.&lt;br /&gt;
*'''hoverColor:''' A integer of cursor color of the switch button when the mouse is hovering on it.&lt;br /&gt;
*'''clickColor:''' A integer of cursor color of the switch button when the mouse is clicked on it.&lt;br /&gt;
&lt;br /&gt;
===cursorImage===&lt;br /&gt;
The cursor image of switch button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;cursorImage&amp;quot;,{normalColor,hoverColor,clickColor})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalImage:''' A material of cursor image of the switch button.&lt;br /&gt;
*'''hoverImage:''' A material of cursor image of the switch button when the mouse is hovering on it.&lt;br /&gt;
*'''clickImage:''' A material of cursor image of the switch button when the mouse is clicked on it.&lt;br /&gt;
&lt;br /&gt;
===font===&lt;br /&gt;
This is equivalent to [[dgsSetFont]]/[[dgsGetFont]]. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;font&amp;quot;,font)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''font:''' A string or a [[Element/DX_font|dx font element]] of the text font of the switch button.&lt;br /&gt;
&lt;br /&gt;
===imageOn===&lt;br /&gt;
The background image of switch button when the state is on.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;imageOn&amp;quot;,{normalImage,hoverImage,clickImage})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalImage:''' A material of background image of turned on switch button.&lt;br /&gt;
*'''hoverImage:''' A material of background image of turned on switch button when the mouse is hovering on it.&lt;br /&gt;
*'''clickImage:''' A material of background image of turned on switch button when the mouse is clicked on it.&lt;br /&gt;
&lt;br /&gt;
===imageOff===&lt;br /&gt;
The background image of switch button when the state is off.(&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;imageOff&amp;quot;,{normalImage,hoverImage,clickImage})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalImage:''' A material of background image of turned off switch button.&lt;br /&gt;
*'''hoverImage:''' A material of background image of turned off switch button when the mouse is hovering on it.&lt;br /&gt;
*'''clickImage:''' A material of background image of turned off switch button when the mouse is clicked on it.&lt;br /&gt;
&lt;br /&gt;
===shadow===&lt;br /&gt;
The shadow text of the switch button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;shadow&amp;quot;,{offsetX,offsetY,color,outline})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the shadow text of the switch button.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the shadow text of the switch button.&lt;br /&gt;
*'''color:''' An integer of the color of the shadow text of the switch button.&lt;br /&gt;
*'''outline:''' A bool of the outline state of the shadow text.&lt;br /&gt;
&lt;br /&gt;
===state===&lt;br /&gt;
This property indicates the state of switch button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;state&amp;quot;,state)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''state:''' A bool indicates the state of switch button.&lt;br /&gt;
**'''true:''' Turns on&lt;br /&gt;
**'''false:''' Turns off&lt;br /&gt;
&lt;br /&gt;
===stateAnim===&lt;br /&gt;
This stores the progress of cursor animation, which is not recommend to modify.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;stateAnim&amp;quot;,stateAnim)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''stateAnim:''' A float of the cursor animation progress.&lt;br /&gt;
&lt;br /&gt;
===style===&lt;br /&gt;
This property determines the state of switch button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;style&amp;quot;,style)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''style:''' Mixed, available values are as follows:&lt;br /&gt;
**'''false:''' Default, a switch button with fading color when changing state.&lt;br /&gt;
**'''1:''' Split background color for turned on and off ( also split images ).&lt;br /&gt;
**'''2:''' Split background color for turned on and off ( not split images ).&lt;br /&gt;
**'''3:''' Do not split background color. Just switch gradually.&lt;br /&gt;
**'''4:''' No cursor. Just switch gradually.&lt;br /&gt;
&lt;br /&gt;
===textOn===&lt;br /&gt;
This property stores the text to be shown when the switch button turns on.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;textOn&amp;quot;,textOn)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''textOn:''' A string of the text of the switch button.&lt;br /&gt;
&lt;br /&gt;
===textOff===&lt;br /&gt;
This property stores the text to be shown when the switch button turns off.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;textOff&amp;quot;,textOff)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''textOff:''' A string of the text of the switch button.&lt;br /&gt;
&lt;br /&gt;
===textColorOn===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the text when the switch button turns on.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;textColor_t&amp;quot;,textColor_t)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''textColor_t:''' An integer of the color of the text when the switch button turns on.&lt;br /&gt;
&lt;br /&gt;
===textColorOff===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the text when the switch button turns off.(State=false)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;textColor_f&amp;quot;,textColor_f)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''textColor_f:''' An integer of the color of the text when the switch button turns off.&lt;br /&gt;
&lt;br /&gt;
===textSize===&lt;br /&gt;
The scale of the text of the switch button. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;textSize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX:''' A float of the 2D X scale of the text of the switch button.&lt;br /&gt;
*'''scaleY:''' A float of the 2D Y scale of the text of the switch button.&lt;br /&gt;
&lt;br /&gt;
===troughWidth===&lt;br /&gt;
This property determines trough length of switch button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;troughWidth&amp;quot;,troughWidth)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''troughWidth:''' A float of the trough length of switch button.&lt;br /&gt;
&lt;br /&gt;
===wordBreak===&lt;br /&gt;
Whether the word-break is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(switchButton,&amp;quot;wordBreak&amp;quot;,wordBreak)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''wordBreak:''' If set to true, the text will wrap to a new line whenever it reaches the right side of the bounding box. If false, the text will always be completely on one line.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSPROPERTIES}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=PL/Dgs-dxbutton&amp;diff=76920</id>
		<title>PL/Dgs-dxbutton</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=PL/Dgs-dxbutton&amp;diff=76920"/>
		<updated>2023-06-11T14:10:35Z</updated>

		<summary type="html">&lt;p&gt;XLive: Moved to mouseButtons property&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Właściwości [[Dgs|DGS]] są używane by zmieniać styl GUI i zrobić go lepszym!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ta strona pokazuje właściwości dgs-dxbutton które możesz użyć.&lt;br /&gt;
&lt;br /&gt;
==Główne funkcje==&lt;br /&gt;
*[[dgsSetProperty]]&lt;br /&gt;
*[[dgsGetProperty]]&lt;br /&gt;
&lt;br /&gt;
==Właściwości==&lt;br /&gt;
===image===&lt;br /&gt;
Wymaga [texture/shader] który może być użyty jako tło przycisku.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;image&amp;quot;,{defimg,hovimg,cliimg})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''defimg:''' Tekstura/shader tła przycisku (nie wybrany ani wciśnięty). (Możesz wpisać nil by wyłączyć ten obrazek).&lt;br /&gt;
*'''hovimg:''' Tekstura/shader tła przycisku który jest wybrany.(Możesz wpisać nil by wyłączyć ten obrazek).&lt;br /&gt;
*'''cliimg:''' Tekstura/shadert ła przycisku który wciśnięty. Możesz wpisać nil by wyłączyć ten obrazek).&lt;br /&gt;
&lt;br /&gt;
===color===&lt;br /&gt;
Kolor tła przycisku który może być przetłumaczony przez [[tocolor]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;color&amp;quot;,{defcolor,hovcolor,clicolor})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''defcolor:''' Zmienna koloru tła przycisku (nie wybrany ani wciśnięty).&lt;br /&gt;
*'''hovcolor:''' Zmienna koloru tła przycisku wybranego.&lt;br /&gt;
*'''clicolor:''' Zmienna koloru tła przycisku wciśniętego.&lt;br /&gt;
&lt;br /&gt;
===text===&lt;br /&gt;
To samo co [[dgsSetText]]/[[dgsGetText]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;text&amp;quot;,text)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''text''' : String napisu na przycisku.&lt;br /&gt;
&lt;br /&gt;
===textcolor===&lt;br /&gt;
Kolor napisu, może być przetłumaczony przez [[tocolor]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;textcolor&amp;quot;,textcolor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''textcolor''' : Zmienna koloru napisu na przycisku.&lt;br /&gt;
&lt;br /&gt;
===textsize===&lt;br /&gt;
Wielkość tekstu na przycisku. ''Zobacz więcej w: [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;textsize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX''' : Płaszczyzna 2D X wielkości tekstu na przycisku..&lt;br /&gt;
*'''scaleY''' : Płaszczyzna 2D Y wielkości tekstu na przycisku..&lt;br /&gt;
&lt;br /&gt;
===shadow===&lt;br /&gt;
Cień napisu na przycisku&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;shadow&amp;quot;,{offsetX,offsetY,color})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX''' : Płaszczyzna 2D X przesunięcia cienia napisu na przycisku.&lt;br /&gt;
*'''offsetY''' : Płaszczyzna 2D Y przesunięcia cienia napisu na przycisku.&lt;br /&gt;
*'''color''' : Zmienna koloru cienia.&lt;br /&gt;
&lt;br /&gt;
===font===&lt;br /&gt;
To samo co [[dgsSetFont]]/[[dgsGetFont]]. ''Zobacz więcej w: [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;font&amp;quot;,font)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*'''font''' : [[Element/DX_font|dx font element]] napisu na przycisku&lt;br /&gt;
&lt;br /&gt;
===clickoffset===&lt;br /&gt;
Przesunięcie zaznacza o ile tekst przycisku ma się przesunąć kiedy jest klikany.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;clickoffset&amp;quot;,{offsetX,offsetY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX''' : Płaszczyzna 2D X przesunięcia relatywnego względem pozycji przycisku.&lt;br /&gt;
*'''offsetY''' : Płaszczyzna 2D Y przesunięcia relatywnego względem pozycji przycisku.&lt;br /&gt;
&lt;br /&gt;
===wordbreak===&lt;br /&gt;
Oznacza czy word-break jest włączony czy nie. ''Więcej w: [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;wordbreak&amp;quot;,wordbreak)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*'''wordbreak''' : Jeśli 'true', text zawija się do kolejnej lini kiedy dotyka prawej strony obramowania przycisku. Jeśli false, tekst będzie w jednej lini zawsze.&lt;br /&gt;
&lt;br /&gt;
===colorcoded===&lt;br /&gt;
Oznacza czy Kolorowanie Kodem jest włączone czy nie. ''Więcej w: [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;colorcoded&amp;quot;,colorcoded)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorcoded''' : Ustaw 'true' by włączyć kolory HTML(#000000)&lt;br /&gt;
&lt;br /&gt;
===rightbottom===&lt;br /&gt;
Wyrównanie tekstu w przycisku&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;rightbottom&amp;quot;,{alignX,alignY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''alignX''' : Horyzontalne wyrównanie tekstu w przycisku. Dostępne: &amp;quot;left&amp;quot;, &amp;quot;center&amp;quot; lub &amp;quot;right&amp;quot;.&lt;br /&gt;
*'''alignY''' : Wertykalne wyrównanie tekstu w przycisku. Dostępne: &amp;quot;top&amp;quot;, &amp;quot;center&amp;quot; lub &amp;quot;bottom&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Zobacz też==&lt;br /&gt;
{{DGSPROPERTIES_PL}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Dgs-dxbutton&amp;diff=76919</id>
		<title>Dgs-dxbutton</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Dgs-dxbutton&amp;diff=76919"/>
		<updated>2023-06-11T14:10:11Z</updated>

		<summary type="html">&lt;p&gt;XLive: Moved to mouseButtons property&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Dgs|DGS]] Properties is always used to change the gui style and make it more fantastic.&lt;br /&gt;
&lt;br /&gt;
This page shows the properties of dgs-dxbutton that you could use.&lt;br /&gt;
&lt;br /&gt;
==Main Functions==&lt;br /&gt;
*[[dgsSetProperty]]&lt;br /&gt;
*[[dgsGetProperty]]&lt;br /&gt;
&lt;br /&gt;
==Properties==&lt;br /&gt;
===alignment===&lt;br /&gt;
Alignment of the text within the button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;alignment&amp;quot;,{alignX,alignY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''alignX:''' Horizontal alignment of the text within the button. Can be &amp;quot;left&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;right&amp;quot;.&lt;br /&gt;
*'''alignY:''' Vertical alignment of the text within the button. Can be &amp;quot;top&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;bottom&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===clickOffset===&lt;br /&gt;
The offset indicates that how much the text of the button will shift when it is clicked.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;clickOffset&amp;quot;,{offsetX,offsetY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX''' : A float of the 2D X offset relative to the position of the button.&lt;br /&gt;
*'''offsetY''' : A float of the 2D Y offset relative to the position of the button.&lt;br /&gt;
&lt;br /&gt;
===color===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the background of the button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;color&amp;quot;,{normalColor,hoveringColor,clickedColor})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalColor:''' An integer of the color of the background of the button ( neither selected nor clicked by mouse ).&lt;br /&gt;
*'''hoveringColor:''' An integer of the color of the background of the button which is selected.&lt;br /&gt;
*'''clickedColor:''' An integer of the color of the background of the button which is clicked.&lt;br /&gt;
&lt;br /&gt;
===colorCoded===&lt;br /&gt;
Whether the color code is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;colorCoded&amp;quot;,colorCoded)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorCoded''' : Set to true to enable embedded #FFFFFF color codes.&lt;br /&gt;
&lt;br /&gt;
===colorTransitionPeriod===&lt;br /&gt;
This property sets the transition period among colors (normal, hovering, clicked).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;colorTransitionPeriod&amp;quot;,colorTransitionPeriod)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorTransitionPeriod''' : An integer indicates the transition time in miliseconds. ( Set to 0 to disable )&lt;br /&gt;
&lt;br /&gt;
===font===&lt;br /&gt;
This is equivalent to [[dgsSetFont]]/[[dgsGetFont]]. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;font&amp;quot;,font)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''font''' : A [[Element/DX_font|dx font element]] of the text font of the button.&lt;br /&gt;
&lt;br /&gt;
===iconAlignment===&lt;br /&gt;
Alignment of the icon within the button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;iconAlignment&amp;quot;,{alignX,alignY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''alignX:''' Horizontal alignment of the icon within the button. Can be &amp;quot;left&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;right&amp;quot;.&lt;br /&gt;
*'''alignY:''' Vertical alignment of the icon within the button. Can be &amp;quot;top&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;bottom&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===iconColor===&lt;br /&gt;
This property enables you to change the icon color (Work with '''iconImage''').&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;iconColor&amp;quot;,{normalColor,hoveringColor,clickedColor})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalColor:''' An integer of the color of the icon image of the button ( neither selected nor clicked by mouse ).&lt;br /&gt;
*'''hoveringColor:''' An integer of the color of the icon image of the button which is selected.&lt;br /&gt;
*'''clickedColor:''' An integer of the color of the icon image of the button which is clicked.&lt;br /&gt;
&lt;br /&gt;
===iconImage===&lt;br /&gt;
Require [texture/shader] that can be used as the icon image of button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;iconImage&amp;quot;,{normalImage,hoveringImage,clickedImage})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalImage:''' A texture/shader element of the icon image of the button ( neither selected nor clicked by mouse ). ( You can pass a nil value to disable this option )&lt;br /&gt;
*'''hoveringImage:''' A texture/shader element of the  icon image of the button which is selected. ( You can pass a nil value to disable this option )&lt;br /&gt;
*'''clickedImage:''' A texture/shader element of the  icon image of the button which is clicked. ( You can pass a nil value to disable this option )&lt;br /&gt;
&lt;br /&gt;
===iconOffset===&lt;br /&gt;
This property enables you to change the offset of the icon from the text (Work with '''iconImage''').&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;iconOffset&amp;quot;,{iconOffsetX,iconOffsetY,relative})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''iconOffsetX''' : An integer of the 2D X offset in pixels to the position of the icon.&lt;br /&gt;
*'''iconOffsetY''' : An integer of the 2D Y offset in pixels to the position of the icon.&lt;br /&gt;
*'''relative''' : A bool of whether the iconOffset is relative to the height of text or absolute pixels.&lt;br /&gt;
&lt;br /&gt;
===iconRelative===&lt;br /&gt;
This property determines whether the icon is relative to the text or button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;iconRelative&amp;quot;,iconRelative)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''iconRelative:''' A bool  determines whether the icon is relative to the text or button.&lt;br /&gt;
&lt;br /&gt;
===iconShadow===&lt;br /&gt;
The shadow icon image of the button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;iconShadow&amp;quot;,{offsetX,offsetY,color})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX''' : A float of the 2D X offset of the shadow icon of the button.&lt;br /&gt;
*'''offsetY''' : A float of the 2D Y offset of the shadow icon of the button.&lt;br /&gt;
*'''color''' : An integer of the color of the shadow icon of the button.&lt;br /&gt;
&lt;br /&gt;
===iconSize===&lt;br /&gt;
This property enables you to change the icon size (Work with '''iconImage''').&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;iconSize&amp;quot;,{iconSizeX,iconSizeY,relative})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''iconSizeX''' : An integer of the 2D X scale to the position of the icon image.&lt;br /&gt;
*'''iconSizeY''' : An integer of the 2D Y scale to the position of the icon image.&lt;br /&gt;
*'''relative''' : A bool of whether the iconSize is relative to the height of text or absolute pixels.&lt;br /&gt;
&lt;br /&gt;
===image===&lt;br /&gt;
Require [texture/shader] that can be used as the background of button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;image&amp;quot;,image)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''image:''' A texture/shader element of the background of the button&lt;br /&gt;
Or&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;image&amp;quot;,{normalImage,hoveringImage,ClickedImage})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalImage:''' A texture/shader element of the background of the button ( neither selected nor clicked by mouse ). ( You can pass a nil value to disable this image option )&lt;br /&gt;
*'''hoveringImage:''' A texture/shader element of the background of the button which is selected. ( You can pass a nil value to disable this image option )&lt;br /&gt;
*'''clickedImage:''' A texture/shader element of the background of the button which is clicked. ( You can pass a nil value to disable this image option )&lt;br /&gt;
&lt;br /&gt;
===text===&lt;br /&gt;
This is equivalent to [[dgsSetText]]/[[dgsGetText]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;text&amp;quot;,text)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''text''' : A string of the text of the button.&lt;br /&gt;
&lt;br /&gt;
===textColor===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the text of the button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;textColor&amp;quot;,textColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''textColor''' : An integer of the color of the text of the button.&lt;br /&gt;
&lt;br /&gt;
===textOffset===&lt;br /&gt;
The offset of the text on button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;textOffset&amp;quot;,{offsetX,offsetY,relative})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX''' : A float of the 2D X offset relative to the position of the button, depends on '''relative'''.&lt;br /&gt;
*'''offsetY''' : A float of the 2D Y offset relative to the position of the button, depends on '''relative'''.&lt;br /&gt;
*'''relative''' : A bool of whether the offset is relative or absolute.&lt;br /&gt;
&lt;br /&gt;
===textSize===&lt;br /&gt;
The scale of the text of the button. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;textSize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX''' : A float of the 2D X scale of the text of the button.&lt;br /&gt;
*'''scaleY''' : A float of the 2D Y scale of the text of the button.&lt;br /&gt;
&lt;br /&gt;
===shadow===&lt;br /&gt;
The shadow text of the button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;shadow&amp;quot;,{offsetX,offsetY,color})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX''' : A float of the 2D X offset of the shadow text of the button.&lt;br /&gt;
*'''offsetY''' : A float of the 2D Y offset of the shadow text of the button.&lt;br /&gt;
*'''color''' : An integer of the color of the shadow text of the button.&lt;br /&gt;
&lt;br /&gt;
===wordBreak===&lt;br /&gt;
Whether the word-break is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;wordBreak&amp;quot;,wordBreak)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''wordBreak''' : If set to true, the text will wrap to a new line whenever it reaches the right side of the bounding box. If false, the text will always be completely on one line.&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSPROPERTIES}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DGS_General_Basic_Properties&amp;diff=76918</id>
		<title>DGS General Basic Properties</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DGS_General_Basic_Properties&amp;diff=76918"/>
		<updated>2023-06-11T13:57:28Z</updated>

		<summary type="html">&lt;p&gt;XLive: Add mouseButtons property&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Dgs|DGS]] Properties is always used to change the gui style and make it more fantastic.&lt;br /&gt;
&lt;br /&gt;
This page shows the general properties of all dgs elements that you could use.&lt;br /&gt;
&lt;br /&gt;
==Main Functions==&lt;br /&gt;
*[[dgsSetProperty]]&lt;br /&gt;
*[[dgsGetProperty]]&lt;br /&gt;
&lt;br /&gt;
==Properties==&lt;br /&gt;
===alpha===&lt;br /&gt;
Require a number ranges from 0 to 1. This is equivalent to [[dgsSetAlpha]]/[[dgsGetAlpha]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(dgsElement,&amp;quot;alpha&amp;quot;,alpha = 1)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''alpha:''' The visibility/transparency of the DGS element. Ranges from 0 (fully transparent) to 1 (fully opaque). Default value is 0.80.&lt;br /&gt;
&lt;br /&gt;
===clickCoolDown===&lt;br /&gt;
This property is used to limit the click frequency to a specific dgs element&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(dgsElement,&amp;quot;clickCoolDown&amp;quot;,clickCoolDown = false)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''clickCoolDown:''' A number indicates how long you want to limit the click (ms). Set to ''false'' to disable this.&lt;br /&gt;
&lt;br /&gt;
===changeOrder===&lt;br /&gt;
Require a bool indicates whether the layer will be changed when being brought to front ( or clicked ).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(dgsElement,&amp;quot;changeOrder&amp;quot;,changeOrder = true)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''changeOrder:''' A bool indicates whether the layer will be changed when being brought to front ( or clicked ).&lt;br /&gt;
&lt;br /&gt;
===debugTrace===&lt;br /&gt;
This property stores the &amp;quot;debug tracing data&amp;quot; includes in which lua '''file''' and '''line''' the specific dgs element created (Only available using '''loadstring(exports.dgs:dgsImportFunction())()'''.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(dgsElement,&amp;quot;debugTrace&amp;quot;,debugTrace)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''debugTrace:''' A table stores creation data. Structure is as follows:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	file=filePath,&lt;br /&gt;
	line=lineNum,&lt;br /&gt;
	fncName=functionName,&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===enabled===&lt;br /&gt;
Requires a bool value. This is equivalent to [[dgsSetEnabled]]/[[dgsGetEnabled]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(dgsElement,&amp;quot;enabled&amp;quot;,enabled)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''enabled:''' The state.&lt;br /&gt;
&lt;br /&gt;
===enableFullEnterLeaveCheck===&lt;br /&gt;
Requires a bool value. This determines if target dgs element will have full check of mouse enter/leave. And you should use [[onDgsElementEnter]]/[[onDgsElementLeave]] instead of [[onDgsMouseEnter]]/[[onDgsMouseLeave]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(dgsElement,&amp;quot;enableFullEnterLeaveCheck&amp;quot;,enableFullEnterLeaveCheck)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''enableFullEnterLeaveCheck:''' The state.&lt;br /&gt;
&lt;br /&gt;
===functionRunBefore===&lt;br /&gt;
Requires a bool value. Set whether the function runs before rendering or after rendering (see property '''functions''').&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(dgsElement,&amp;quot;functionRunBefore&amp;quot;,functionRunBefore)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''functionRunBefore:''' Set to true, and the function will run before rendering. Set to false, and the function will run after rendering.&lt;br /&gt;
&lt;br /&gt;
===functions===&lt;br /&gt;
Requires a string at the 3rd argument. This property runs a function while rendering.&lt;br /&gt;
&lt;br /&gt;
'''Predefine Variable'''&lt;br /&gt;
*'''self:''' The DGS Element itself.&lt;br /&gt;
&lt;br /&gt;
See example in [[dgsSetProperty]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(dgsElement,&amp;quot;functions&amp;quot;,fncString,arg1,arg2,...)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''fncString:''' The string of function to be loaded.&lt;br /&gt;
*'''arg1:''' argument 1&lt;br /&gt;
*'''arg2:''' argument 2&lt;br /&gt;
*'''...:''' other arguments&lt;br /&gt;
&lt;br /&gt;
===childOutsideHit===&lt;br /&gt;
Requires a bool value. Set whether children elements are clickable when they are outside of their parent element.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(dgsElement,&amp;quot;childOutsideHit&amp;quot;,childOutsideHit = false)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''childOutsideHit:''' If set to true, the dgsElement's child elements are clickable even though they are not inside the bounding box of dgsElement.&lt;br /&gt;
&lt;br /&gt;
===ignoreParentTitle===&lt;br /&gt;
Requires a bool value. Set whether to ignore the title of dgs-dxwindow.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(dgsElement,&amp;quot;ignoreParentTitle&amp;quot;,ignoreParentTitle = false)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''ignoreParentTitle:''' Set to true to ignore the title of dgs-dxwindow if its parent is a dgs-dxwindow . Set to false to disable it, which means the y position of dgsElement in dgs-dxwindow will start to be calculated under the title.&lt;br /&gt;
&lt;br /&gt;
===mouseButtons===&lt;br /&gt;
This property defines the specific mouse buttons that can be used to click on the element.&lt;br /&gt;
Syntax:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(dgsElement, &amp;quot;mouseButtons&amp;quot;, {bool left, bool right, bool middle})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''left''': Set this true to enable clicking with the left mouse button. Set it to false to disable clicking with the left mouse button.&lt;br /&gt;
*'''right''': Set this to true to enable clicking with the right mouse button. Set it to false to disable clicking with the right mouse button.&lt;br /&gt;
*'''middle''': Set this value to true to enable clicking with the middle mouse button. Set it to false to disable clicking with the middle mouse button.&lt;br /&gt;
&lt;br /&gt;
===outline===&lt;br /&gt;
The border line of the bounding box of dgs element.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(dgsElement,&amp;quot;outline&amp;quot;,{side,width,color,left,right,top,bottom})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''side''' : A string indicates which side the outline will attach to. The available values are as follows:&lt;br /&gt;
**'''in'''&lt;br /&gt;
**'''center'''&lt;br /&gt;
**'''out'''&lt;br /&gt;
*'''width''': The width of the outline.&lt;br /&gt;
*'''color''': The color of the outline, which can be transformed by [[tocolor]].&lt;br /&gt;
*'''left''': Set '''true''' to show outline in the left, and '''false''' to hide it. (Default is '''true''' if not set)&lt;br /&gt;
*'''right''': Set '''true''' to show the outline in the right, and '''false''' to hide it. (Default is '''true''' if not set)&lt;br /&gt;
*'''top''': Set '''true''' to show the outline at the top, and '''false''' to hide it. (Default is '''true''' if not set)&lt;br /&gt;
*'''bottom''': Set '''true''' to show the outline at the bottom, and '''false''' to hide it. (Default is '''true''' if not set)&lt;br /&gt;
&lt;br /&gt;
===renderEventCall===&lt;br /&gt;
Requires a bool value. Set whether [[onDgsElementRender]] is triggered when rendering. (Don't always enable this, or it will cause severely performance decrease)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(dgsElement,&amp;quot;renderEventCall&amp;quot;,renderEventCall = false)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''renderEventCall:''' Set to true to enable, and false to disable.&lt;br /&gt;
&lt;br /&gt;
===postGUI===&lt;br /&gt;
Requires a bool value. Set whether the dgs element is post gui when render settings &amp;quot;postGUI&amp;quot; is ''nil''(automatic).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(dgsElement,&amp;quot;postGUI&amp;quot;,postGUI)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''postGUI:''' Set to true to enable post gui, or it wil under gui.&lt;br /&gt;
&lt;br /&gt;
===visible===&lt;br /&gt;
This property change the visibility of a dgs element. This is equivalent to [[dgsSetVisible]]/[[dgsGetVisible]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(dgsElement,&amp;quot;visible&amp;quot;,visible)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''visible:''' A bool indicates whether the dgs element is visible or not.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSPROPERTIES}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Dgs-dxedit&amp;diff=76818</id>
		<title>Dgs-dxedit</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Dgs-dxedit&amp;diff=76818"/>
		<updated>2023-05-18T17:14:50Z</updated>

		<summary type="html">&lt;p&gt;XLive: Add placeHolderTextSize&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Dgs|DGS]] Properties is always used to change the gui style and make it more fantastic.&lt;br /&gt;
&lt;br /&gt;
This page shows the properties of dgs-dxedit that you could use.&lt;br /&gt;
&lt;br /&gt;
==Main Functions==&lt;br /&gt;
*[[dgsSetProperty]]&lt;br /&gt;
*[[dgsGetProperty]]&lt;br /&gt;
&lt;br /&gt;
==Properties==&lt;br /&gt;
===alignment===&lt;br /&gt;
Alignment of the text within the edit.&lt;br /&gt;
&lt;br /&gt;
The functions as follows are basic on this property.&lt;br /&gt;
&lt;br /&gt;
[[dgsEditSetHorizontalAlign]]/[[dgsEditGetHorizontalAlign]]&lt;br /&gt;
&lt;br /&gt;
[[dgsEditSetVerticalAlign]]/[[dgsEditGetVerticalAlign]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;alignment&amp;quot;,{alignX,alignY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''alignX''' : Horizontal alignment of the text within the edit. Can be &amp;quot;left&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;right&amp;quot;.&lt;br /&gt;
*'''alignY''' : Vertical alignment of the text within the edit. Can be &amp;quot;top&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;bottom&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===allowCopy===&lt;br /&gt;
This propertry determines whether the text can be copyed ( ctrl+c ) or cut ( ctrl+x )&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;allowCopy&amp;quot;,allowCopy)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''allowCopy''' : A bool indicates whether the text can be copyed ( ctrl+c ) or cut ( ctrl+x )&lt;br /&gt;
&lt;br /&gt;
===autoComplete===&lt;br /&gt;
This propertry allows auto complete for edit. ''See'' [[dgsEditAddAutoComplete]]\[[dgsEditRemoveAutoComplete]]\[[dgsEditSetAutoComplete]]\[[dgsEditGetAutoComplete]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;autoComplete&amp;quot;,autoComplete)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''autoComplete''' : The auto complete table. Structure is as follows:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
autoComplete = {&lt;br /&gt;
	name1 = isSensitive,&lt;br /&gt;
	name2 = isSensitive,&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===autoCompleteSkip===&lt;br /&gt;
This propertry allows skip auto complete detect.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;autoCompleteSkip&amp;quot;,autoCompleteSkip)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''autoCompleteSkip''' : A bool if whether disabling auto complete check&lt;br /&gt;
&lt;br /&gt;
===autoCompleteShow===&lt;br /&gt;
This propertry stores current showing auto complete item.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;autoCompleteShow&amp;quot;,autoCompleteShow)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''autoCompleteShow''' : A table stores the showing data. Structure is as follows:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
autoCompleteShow = {matchedAutoCompletion,showingAutoCompletion}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
'''matchedAutoCompletion''' may be different from '''showingAutoCompletion''' because of case sensitivity.&lt;br /&gt;
&lt;br /&gt;
===bgColor===&lt;br /&gt;
This property determines the background color of the edit.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;bgColor&amp;quot;,bgColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''bgColor''' : An integer of the color that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
===bgColorBlur===&lt;br /&gt;
This property determines the background color of the edit when it is blurred.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;bgColorBlur&amp;quot;,bgColorBlur)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''bgColorBlur:'''  An integer of the color that can be converted by [[tocolor]], leave to nil to use bgImage.&lt;br /&gt;
&lt;br /&gt;
===bgImage===&lt;br /&gt;
This property determines the background image of the edit.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;bgImage&amp;quot;,bgImage)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''bgImage''' : A material element that serves as the background image of the edit (texture/shader/screen source/renderTarget).&lt;br /&gt;
&lt;br /&gt;
===bgImageBlur===&lt;br /&gt;
This property determines the background image of the edit when it is blurred.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;bgImageBlur&amp;quot;,bgImageBlur)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''bgImageBlur:'''  A material element that serves as the background image of the edit(texture/shader/screen source/renderTarget), leave to nil to use bgImage.&lt;br /&gt;
&lt;br /&gt;
===caretColor===&lt;br /&gt;
This property determines the color of the caret&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;caretColor&amp;quot;,caretColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''caretColor''' : An integer of the color that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
===caretHeight===&lt;br /&gt;
This property determines what's the height of the caret.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;caretHeight&amp;quot;,caretHeight)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''caretHeight''' : A float indicates what's the height of the caret.&lt;br /&gt;
&lt;br /&gt;
===caretOffset===&lt;br /&gt;
The offset of the caret of the edit.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;caretOffset&amp;quot;,offset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offset''' : A float of the offset of the caret of the edit.&lt;br /&gt;
&lt;br /&gt;
===caretPos===&lt;br /&gt;
The position where the caret stays.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;caretPos&amp;quot;,index)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''index''' : An integer of the index of the text that the caret stays.&lt;br /&gt;
&lt;br /&gt;
===clearSelection===&lt;br /&gt;
This property determines whether the text selection will be cleared when the edit blurs.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;clearSelection&amp;quot;,clearSelection)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''clearSelection''' : A bool indicates whether the text selection will be cleared when the edit blurs.&lt;br /&gt;
&lt;br /&gt;
===caretStyle===&lt;br /&gt;
This is equivalent to [[dgsEditSetCaretStyle]]/[[dgsEditGetCaretStyle]].&lt;br /&gt;
&lt;br /&gt;
This property allows us to change the style of caret of the edit. ( 0 is &amp;quot;|&amp;quot;; 1 is &amp;quot;_&amp;quot; )&lt;br /&gt;
&lt;br /&gt;
Example(0):&lt;br /&gt;
&lt;br /&gt;
This is Text|&lt;br /&gt;
&lt;br /&gt;
Example(1):&lt;br /&gt;
&lt;br /&gt;
This is Text_&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;caretStyle&amp;quot;,caretStyle)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''caretStyle''' : An integer of the caret style of the edit.&lt;br /&gt;
&lt;br /&gt;
===caretThick===&lt;br /&gt;
This property allows us to change the thickness of caret of the edit.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;caretThick&amp;quot;,caretThick)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''caretThick''' : An integer of the thickness of the caret of the edit.&lt;br /&gt;
&lt;br /&gt;
===caretWidth===&lt;br /&gt;
This property allows us to change the caret width in caretStyle '''&amp;quot;1&amp;quot;'''.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;caretWidth&amp;quot;,{caretWidth,caretDefaultWidth,relative})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''caretWidth''' : A float of the width of the caret of the edit. If '''relative''' is ''true'', this will refer to font width of a character.&lt;br /&gt;
*'''caretDefaultWidth''' : A float of the width of the caret of the edit when there is no text to refer. If '''relative''' is '''true''', this will refer to '''textSize'''.&lt;br /&gt;
*'''relative''' : A bool indicates whether caret width is relative or absolute.&lt;br /&gt;
&lt;br /&gt;
===edit===&lt;br /&gt;
This property stores a gui-edit which is used to input characters.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;edit&amp;quot;,gedit)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''gedit''' : A gui-edit.&lt;br /&gt;
&lt;br /&gt;
===enableTabSwitch===&lt;br /&gt;
This property determines whether we can use the key &amp;quot;tab&amp;quot; to switch to another edit.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;enableTabSwitch&amp;quot;,enableTabSwitch)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''enableTabSwitch''' : A bool indicates whether we can use the key ''tab'' to switch to another edit.&lt;br /&gt;
&lt;br /&gt;
===font===&lt;br /&gt;
This is equivalent to [[dgsSetFont]]/[[dgsGetFont]]. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;font&amp;quot;,font)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''font''' : A [[Element/DX_font|dx font element]] of the text font of the edit.&lt;br /&gt;
&lt;br /&gt;
===masked===&lt;br /&gt;
This is equivalent to [[dgsEditSetMasked]]/[[dgsEditGetMasked]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;masked&amp;quot;,masked)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''masked''' : A boolean value indicating whether masking is to be enabled or disabled.&lt;br /&gt;
&lt;br /&gt;
===maskText===&lt;br /&gt;
This property determines what the masked text will be, and the default is &amp;quot;*&amp;quot;.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;maskText&amp;quot;,maskText)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''maskText''' : A string that the masked text will be.&lt;br /&gt;
&lt;br /&gt;
===maxLength===&lt;br /&gt;
This is equivalent to [[dgsEditGetMaxLength]]/[[dgsEditSetMaxLength]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;maxLength&amp;quot;,maxLength)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''maxLength''' : An integer indicating the maximum number of characters that can be typed into the edit box.&lt;br /&gt;
&lt;br /&gt;
===padding===&lt;br /&gt;
This property determines the padding of the text.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;padding&amp;quot;,{paddingX,paddingY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''paddingX''' : An integer of 2D x padding value.&lt;br /&gt;
*'''paddingY''' : An integer of 2D y padding value.&lt;br /&gt;
&lt;br /&gt;
===placeHolder===&lt;br /&gt;
This is equivalent to [[dgsEditSetPlaceHolder]]//[[dgsEditGetPlaceHolder]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;placeHolder&amp;quot;,placeHolder)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''placeHolder''' : A string of the place holder text of dgs edit ( This text will show when there is no text in a blurred dgs edit ).&lt;br /&gt;
&lt;br /&gt;
===placeHolderColor===&lt;br /&gt;
This property determines the color of the place holder text. The color which can be translated by [[tocolor]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;placeHolderColor&amp;quot;,placeHolderColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''placeHolderColor''' : An integer of the color of the place holder text of the edit.&lt;br /&gt;
&lt;br /&gt;
===placeHolderColorcoded===&lt;br /&gt;
This property determines whether the place holder supports color code.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;placeHolderColorcoded&amp;quot;,placeHolderColorcoded)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''placeHolderColorcoded''' : A bool indicates whether the place holder supports color code.&lt;br /&gt;
&lt;br /&gt;
===placeHolderFont===&lt;br /&gt;
This property changes the font of place holder.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;placeHolderFont&amp;quot;,placeHolderFont)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''placeHolderFont''' : A string/dx-font element of the font of the place holder.&lt;br /&gt;
&lt;br /&gt;
===placeHolderIgnoreRenderTarget===&lt;br /&gt;
This property determines whether the place holder isn't restricted by render target.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;placeHolderIgnoreRenderTarget&amp;quot;,placeHolderIgnoreRenderTarget)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''placeHolderIgnoreRenderTarget''' : A bool indicates whether the place holder isn't restricted by render target.&lt;br /&gt;
&lt;br /&gt;
===placeHolderOffset===&lt;br /&gt;
This property allows place holder has offsets relative to its original position.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;placeHolderOffset&amp;quot;,{ xOffset, yOffset })&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''xOffset''' : An integer of 2D x offset.&lt;br /&gt;
*'''yOffset''' : An integer of 2D y offset.&lt;br /&gt;
&lt;br /&gt;
===placeHolderVisibleWhenFocus===&lt;br /&gt;
This property allows place holder to be visible even when edit is focused.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;placeHolderVisibleWhenFocus&amp;quot;,placeHolderVisibleWhenFocus)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''placeHolderVisibleWhenFocus''' : A bool indicates whether the place holder when the edit is focused.&lt;br /&gt;
&lt;br /&gt;
===placeHolderTextSize===&lt;br /&gt;
The scale of the place holder of the edit. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;textSize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX''' : A float of the 2D X scale of the place holder of the edit.&lt;br /&gt;
*'''scaleY''' : A float of the 2D Y scale of the place holder of the edit.&lt;br /&gt;
&lt;br /&gt;
===readOnly===&lt;br /&gt;
This is equivalent to [[dgsEditSetReadOnly]]/[[dgsEditGetReadOnly]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;readOnly&amp;quot;,readOnly)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''readOnly''' : A bool indicates whether the edit is only readable.&lt;br /&gt;
&lt;br /&gt;
===readOnlyCaretShow===&lt;br /&gt;
Whether the caret of edit will show/hide under read-only mode.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;readOnlyCaretShow&amp;quot;,readOnlyCaretShow)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''readOnlyCaretShow''' : A bool indicates whether the caret is shown or hidden when the edit is read-only.&lt;br /&gt;
&lt;br /&gt;
===renderTarget===&lt;br /&gt;
This property stores a render target of the edit.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;renderTarget&amp;quot;,renderTarget)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''renderTarget''' : A render target that is used to render the text.&lt;br /&gt;
&lt;br /&gt;
===selectColorBlur===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the rectangle of text selection of the edit when blurred.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;selectColorBlur&amp;quot;,selectColorBlur)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''selectColorBlur''' : An integer of the color of the rectangle of text selection of the edit when blurred.&lt;br /&gt;
&lt;br /&gt;
===selectColor===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the rectangle of text selection of the edit.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;selectColor&amp;quot;,selectColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''selectColor''' : An integer of the color of the rectangle of text selection of the edit.&lt;br /&gt;
&lt;br /&gt;
===selectFrom===&lt;br /&gt;
The position from which the text is selected.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;selectFrom&amp;quot;,{index,line})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''index''' : An integer of the index of the text that selected from.&lt;br /&gt;
&lt;br /&gt;
===shadow===&lt;br /&gt;
The shadow text of the edit.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;shadow&amp;quot;,{offsetX,offsetY,color,outline})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the shadow text of the edit.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the shadow text of the edit.&lt;br /&gt;
*'''color:''' An integer of the color of the shadow text of the edit.&lt;br /&gt;
*'''outline:''' An integer of the outline style of the shadow text.&lt;br /&gt;
&lt;br /&gt;
===showPos===&lt;br /&gt;
The min value of the x position of the text of the edit starts to show in the render target. ( I don't know how to explain it. XD )&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;showPos&amp;quot;,posX)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''posX''' : An integer indicates how many pixels of the text are moved to left.&lt;br /&gt;
&lt;br /&gt;
===text===&lt;br /&gt;
This is equivalent to [[dgsSetText]]/[[dgsGetText]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;text&amp;quot;,text)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''text''' : A ''table'' of the text of the edit.( Because of multi lines, I use table instead of string )&lt;br /&gt;
&lt;br /&gt;
===textColor===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the text of the edit.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;textColor&amp;quot;,textColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''textColor''' : An integer of the color of the text of the edit.&lt;br /&gt;
&lt;br /&gt;
===textSize===&lt;br /&gt;
The scale of the text of the edit. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;textSize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX''' : A float of the 2D X scale of the text of the edit.&lt;br /&gt;
*'''scaleY''' : A float of the 2D Y scale of the text of the edit.&lt;br /&gt;
&lt;br /&gt;
===typingSound===&lt;br /&gt;
Typing sound, nil for disabled. This is equivalent to [[dgsEditSetTypingSound]]/[[dgsEditGetTypingSound]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;typingSound&amp;quot;,typingSound)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''typingSound:'''  A string of the path/url of typing sound.&lt;br /&gt;
&lt;br /&gt;
===typingSoundVolume===&lt;br /&gt;
Typing sound, nil for disabled. This is equivalent to [[dgsEditSetTypingSoundVolume]]/[[dgsEditGetTypingSoundVolume]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(edit,&amp;quot;typingSoundVolume&amp;quot;,typingSoundVolume)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''typingSoundVolume:'''  A float of the volume of the typing sound. Range is from 0.0 to 1.0. This can go above 1.0 for amplification.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSPROPERTIES}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Dgs-dxgridlist&amp;diff=76750</id>
		<title>Dgs-dxgridlist</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Dgs-dxgridlist&amp;diff=76750"/>
		<updated>2023-04-26T12:16:25Z</updated>

		<summary type="html">&lt;p&gt;XLive: added a note to the default values&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Dgs|DGS]] Properties is always used to change the gui style and make it more fantastic.&lt;br /&gt;
&lt;br /&gt;
This page shows the properties of dgs-dxgridlist that you could use.&lt;br /&gt;
&lt;br /&gt;
==Main Functions==&lt;br /&gt;
*[[dgsSetProperty]]&lt;br /&gt;
*[[dgsGetProperty]]&lt;br /&gt;
&lt;br /&gt;
==Properties==&lt;br /&gt;
===autoSort===&lt;br /&gt;
This property determines whether auto sort is enabled. ''See [[dgsGridListSetAutoSortEnabled]]/[[dgsGridListGetAutoSortEnabled]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;autoSort&amp;quot;,autoSort)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''autoSort:''' A bool of auto sort state.&lt;br /&gt;
&lt;br /&gt;
===backgroundOffset===&lt;br /&gt;
This property determines the offset between the left border and row background.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;backgroundOffset&amp;quot;,backgroundOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''backgroundOffset:''' An integer of the offset between the left border and row background.&lt;br /&gt;
&lt;br /&gt;
===bgColor===&lt;br /&gt;
This property determines the background color of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;bgColor&amp;quot;,bgColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''bgColor:''' An integer of the color that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
===bgImage===&lt;br /&gt;
This property determines the background image of the grid list. To adjust the color of the image, use property '''bgColor'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;bgImage&amp;quot;,bgImage)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''bgImage:''' A material element that serves as the background image of the grid list (texture/shader/screen source/renderTarget).&lt;br /&gt;
&lt;br /&gt;
===clip===&lt;br /&gt;
Whether the clip property is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;clip&amp;quot;,clip)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''clip:''' If set to true, the parts of the text that don't fit within the bounding box will be cut off.&lt;br /&gt;
&lt;br /&gt;
===columnColor===&lt;br /&gt;
This property determines the background color of the column of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnColor&amp;quot;,columnColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnColor:''' An integer of the color that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
===columnData===&lt;br /&gt;
This property stores column data.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnData&amp;quot;,columnData)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnData:''' A table stores all column data.&lt;br /&gt;
'''Data Structure'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	{ text, Width, AllWidthFront, Alignment, color, colorcoded, sizeX, sizeY, font },&lt;br /&gt;
	{ text, Width, AllWidthFront, Alignment, color, colorcoded, sizeX, sizeY, font },&lt;br /&gt;
	{ text, Width, AllWidthFront, Alignment, color, colorcoded, sizeX, sizeY, font },&lt;br /&gt;
	...&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===columnHeight===&lt;br /&gt;
This property determines the column height of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnHeight&amp;quot;,columnHeight)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnHeight:''' An integer of column height of the grid list.&lt;br /&gt;
&lt;br /&gt;
===columnImage===&lt;br /&gt;
This property determines the background image of the column of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnImage&amp;quot;,columnImage)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnImage:''' A material element that serves as the background image of the column of the grid list (texture/shader/screen source/renderTarget).&lt;br /&gt;
&lt;br /&gt;
===columnMoveOffset===&lt;br /&gt;
This property stores the move offset of column that is used to render.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnMoveOffset&amp;quot;,columnMoveOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnMoveOffset:''' A float stores the move offset of column that is used to render.&lt;br /&gt;
&lt;br /&gt;
===columnOffset===&lt;br /&gt;
This property determines the global offset between the left border and column text.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnOffset&amp;quot;,columnOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnOffset:''' An integer of offset of the column.&lt;br /&gt;
&lt;br /&gt;
===columnRelative===&lt;br /&gt;
This property determines whether the column length is relative or not. ''See [[dgsGridListSetColumnRelative]]/[[dgsGridListGetColumnRelative]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnRelative&amp;quot;,columnRelative)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnRelative:''' A bool of the relative state of the column length.&lt;br /&gt;
&lt;br /&gt;
===columnShadow===&lt;br /&gt;
The shadow text of the column.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnShadow&amp;quot;,{offsetX,offsetY,color})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the shadow text of the column.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the shadow text of the column.&lt;br /&gt;
*'''color:''' An integer of the color of the shadow text of the column.&lt;br /&gt;
&lt;br /&gt;
===columnTextColor===&lt;br /&gt;
This property determines the color of the column text of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnTextColor&amp;quot;,columnTextColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnTextColor:''' An integer of the color that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
===columnTextPosOffset===&lt;br /&gt;
This property adjusts the offset of the text of the column, which can solve text misplacing caused by font.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnTextPosOffset&amp;quot;,{offsetX,offsetY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the text of the column.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the text of the column.&lt;br /&gt;
&lt;br /&gt;
===columnTextSize===&lt;br /&gt;
This property determines the scale of the column text of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnTextSize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX:''' A float of the 2D X scale of the text of the column.&lt;br /&gt;
*'''scaleY:''' A float of the 2D Y scale of the text of the column.&lt;br /&gt;
&lt;br /&gt;
===columnWordBreak===&lt;br /&gt;
This property determines whether word break property for column is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnWordBreak&amp;quot;,columnWordBreak)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnWordBreak:''' A bool indicates whether the word break is enabled.&lt;br /&gt;
&lt;br /&gt;
===colorCoded===&lt;br /&gt;
Whether the color code is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;colorCoded&amp;quot;,colorCoded)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorCoded:''' Set to true to enable embedded #FFFFFF color codes.&lt;br /&gt;
&lt;br /&gt;
===defaultColumnOffset===&lt;br /&gt;
This property determines offset of normal row column (is different from but works with columnOffset). ''See [[dgsGridListSetRowAsSection]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;defaultColumnOffset&amp;quot;,defaultColumnOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''defaultColumnOffset:''' An integer of the offset of normal row column.&lt;br /&gt;
&lt;br /&gt;
===defaultSortFunctions===&lt;br /&gt;
This property determines the default sort function of grid list when clicking column.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;defaultSortFunctions&amp;quot;,{lowerSortFunction,upperSortFunction})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''lowerSortFunction:''' A string of the lower sort function name.&lt;br /&gt;
*'''upperSortFunction:''' A string of the upper sort function name.&lt;br /&gt;
Here are three groups can be use:&lt;br /&gt;
*'''greaterLower'''/'''greaterUpper''': Sorting directly with string.&lt;br /&gt;
*'''numGreaterLowerNumFirst'''/'''numGreaterUpperNumFirst''': Sorting support number order with number first.&lt;br /&gt;
*'''numGreaterLowerStrFirst'''/'''numGreaterUpperStrFirst''': Sorting support number order with string first.&lt;br /&gt;
*'''longerLower'''/'''longerUpper''': Sorting according to the utf8 length of the string.&lt;br /&gt;
&lt;br /&gt;
===defaultSortIcons===&lt;br /&gt;
This property determines the icons of the default sort function.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;defaultSortIcons&amp;quot;,{iconA,iconB})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''iconA:''' A string of the lower sort icon ('''▲''' By default).&lt;br /&gt;
*'''iconB:''' A string of the upper sort icon ('''▼''' By default).&lt;br /&gt;
&lt;br /&gt;
===font===&lt;br /&gt;
This is equivalent to [[dgsSetFont]]/[[dgsGetFont]]. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;font&amp;quot;,font)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''font:''' A [[Element/DX_font|dx font element]] of the default text font of the gridlist.&lt;br /&gt;
&lt;br /&gt;
===leading===&lt;br /&gt;
This property determines the space between rows.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;leading&amp;quot;,leading)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''leading:''' How many pixels between rows&lt;br /&gt;
&lt;br /&gt;
===multiSelection===&lt;br /&gt;
This property determines whether multi selection is enabled or not. ''See [[dgsGridListSetMultiSelectionEnabled]]/[[dgsGridListGetMultiSelectionEnabled]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;multiSelection&amp;quot;,multiSelection)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''multiSelection:''' A bool of the state of the multi selection.&lt;br /&gt;
&lt;br /&gt;
===mode===&lt;br /&gt;
This property determines the render mode of grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;mode&amp;quot;,mode)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''mode:''' A bool of the state of render mode. Detail:&lt;br /&gt;
**'''true:''' No render target mode (Crappy and have a lot of bugs but doesn't take video memory)&lt;br /&gt;
**'''false:''' Render target mode (Great quality but takes video memory)&lt;br /&gt;
&lt;br /&gt;
===mouseSelectButton ===&lt;br /&gt;
This property allows which button on the mouse can select items of grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;mouseSelectButton&amp;quot;,{canLeftButton,canMiddleButton,canRightButton})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''canLeftButton:''' A bool of whether left mouse button can select the grid list (default is true)&lt;br /&gt;
*'''canMiddleButton:''' A bool of whether middle mouse button can select the grid list (default is false)&lt;br /&gt;
*'''canRightButton:''' A bool of whether right mouse button can select the grid list (default is false)&lt;br /&gt;
&lt;br /&gt;
===moveHardness===&lt;br /&gt;
This property determines how hard will the grid list moves when scrolling.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;moveHardness&amp;quot;,{scrollHardness,dragHardness})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scrollHardness:''' A float determins how hard will the grid list moves when scrolling with wheel ( should be larger than 0, lower than 1 ).&lt;br /&gt;
*'''dragHardness:''' A float determins how hard will the grid list moves when dragging with mouse ( should be larger than 0, lower than 1 ).&lt;br /&gt;
&lt;br /&gt;
===preSelect===&lt;br /&gt;
This property stores the item id the cursor is hovering on.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;preSelect&amp;quot;,{rowIndex,columnIndex})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowIndex:''' Row Index&lt;br /&gt;
*'''columnIndex:''' Column Index&lt;br /&gt;
&lt;br /&gt;
===rowColor===&lt;br /&gt;
This property determines the default 3 states' colors of row. ''See [[dgsGridListSetRowBackGroundColor]]/[[dgsGridListGetRowBackGroundColor]]''. Note that this property does not affect rows that were created before the property was changed.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowColor&amp;quot;,{colorDefault,colorHoving,colorSelected})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorDefault:''' An integer of the color of the row (Default State).&lt;br /&gt;
*'''colorHoving:''' An integer of the color of the row (Hoving State).&lt;br /&gt;
*'''colorSelected:''' An integer of the color of the row (Selected State).&lt;br /&gt;
&lt;br /&gt;
===rowData===&lt;br /&gt;
This property stores row data.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowData&amp;quot;,rowData)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowData:''' A table stores all row data.&lt;br /&gt;
'''Data Structure'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
&lt;br /&gt;
	[1] = {&lt;br /&gt;
		[-4] = columnOffset,				--column offset&lt;br /&gt;
		[-3] = {normal,hovering,selected},		--background image&lt;br /&gt;
		[-2] = true/false,				--selectable&lt;br /&gt;
		[-1] = true/false,				--clickable&lt;br /&gt;
		[0] = {normal,hovering,selected},		--background color&lt;br /&gt;
		[1] = {text,color,colorcoded,scalex,scaley,font,{image,color,imagex,imagey,imagew,imageh},unselectable,unclickable},	--Column 1&lt;br /&gt;
		[2] = {text,color,colorcoded,scalex,scaley,font,{image,color,imagex,imagey,imagew,imageh},unselectable,unclickable},	--Column 2&lt;br /&gt;
		...&lt;br /&gt;
	},		--Row 1&lt;br /&gt;
	[2] = {&lt;br /&gt;
		[-4] = columnOffset,				--column offset&lt;br /&gt;
		[-3] = {normal,hovering,selected},		--background image&lt;br /&gt;
		[-2] = true/false,				--selectable&lt;br /&gt;
		[-1] = true/false,				--clickable&lt;br /&gt;
		[0] = {normal,hovering,selected},		--background color&lt;br /&gt;
		[1] = {text,color,colorcoded,scalex,scaley,font,{image,color,imagex,imagey,imagew,imageh},unselectable,unclickable},	--Column 1&lt;br /&gt;
		[2] = {text,color,colorcoded,scalex,scaley,font,{image,color,imagex,imagey,imagew,imageh},unselectable,unclickable},	--Column 2&lt;br /&gt;
		...&lt;br /&gt;
	},		--Row 2&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===rowHeight===&lt;br /&gt;
This property determines the row height of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowHeight&amp;quot;,rowHeight)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowHeight:''' An integer of row height of the grid list.&lt;br /&gt;
&lt;br /&gt;
===rowImage===&lt;br /&gt;
This property determines the default 3 states' background image of row. ''See [[dgsGridListGetRowBackGroundImage]]/[[dgsGridListSetRowBackGroundImage]]''. Note that this property does not affect rows that were created before the property was changed.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowImage&amp;quot;,{normalImage,hoveringImage,selectedImage})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalImage:''' A texture of the image of the row (Normal State).&lt;br /&gt;
*'''hoveringImage:''' A texture of the image of the row (Hoving State).&lt;br /&gt;
*'''selectedImage:''' A texture of the image of the row (Selected State).&lt;br /&gt;
&lt;br /&gt;
===rowImageStyle===&lt;br /&gt;
This property determines the style of row background image.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowImageStyle&amp;quot;,style)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''style:''' An integer of the style of row background image. Available values are as follows:&lt;br /&gt;
**'''1:''' Every item uses a complete background image.&lt;br /&gt;
**'''2:''' Every row uses a complete background image.&lt;br /&gt;
**'''3:''' Only the visible area of every row uses a complete background image.&lt;br /&gt;
&lt;br /&gt;
===rowMoveOffset===&lt;br /&gt;
This property stores the move offset of row that is used to render.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowMoveOffset&amp;quot;,rowMoveOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowMoveOffset:''' A float stores the move offset of row that is used to render.&lt;br /&gt;
&lt;br /&gt;
===rowSelect===&lt;br /&gt;
This property stores the selected rows.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowSelect&amp;quot;,data)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''data:''' the data.&lt;br /&gt;
'''Data Structure'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	[Column1] = {&lt;br /&gt;
		Row1,&lt;br /&gt;
		Row2,&lt;br /&gt;
		...&lt;br /&gt;
	},&lt;br /&gt;
	[Column2] = {&lt;br /&gt;
		Row1,&lt;br /&gt;
		Row2,&lt;br /&gt;
		...&lt;br /&gt;
	},&lt;br /&gt;
	...&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===rowShadow===&lt;br /&gt;
The shadow text of the row.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowShadow&amp;quot;,{offsetX,offsetY,color})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the shadow text of the row.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the shadow text of the row.&lt;br /&gt;
*'''color:''' An integer of the color of the shadow text of the row.&lt;br /&gt;
&lt;br /&gt;
===rowShowUnclippedOnly===&lt;br /&gt;
This property will force the grid list only show those unclipped row&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowShowUnclippedOnly&amp;quot;,rowShowUnclippedOnly)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowShowUnclippedOnly:''' A bool indicates if the only the unclipped rows will be shown in grid list.&lt;br /&gt;
&lt;br /&gt;
===rowTextColor===&lt;br /&gt;
This property determines the default color of the row text of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowTextColor&amp;quot;,rowTextColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowTextColor:''' An integer of the color of the row text that can be converted by [[tocolor]]. Note that this property does not affect rows that were created before the property was changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowTextColor&amp;quot;,{normalColor,hoveringColor,selectedColor})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalColor:''' A integer of the color of the row text that can be converted by [[tocolor]](Normal State).&lt;br /&gt;
*'''hoveringColor:''' A integer of the color of the row text that can be converted by [[tocolor]](Hoving State).&lt;br /&gt;
*'''selectedColor:''' A integer of the color of the row text that can be converted by [[tocolor]](Selected State).&lt;br /&gt;
&lt;br /&gt;
===rowTextPosOffset===&lt;br /&gt;
This property adjusts the offset of the text of the row, which can solve text misplacing caused by font.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowTextPosOffset&amp;quot;,{offsetX,offsetY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the text of the row.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the text of the row.&lt;br /&gt;
&lt;br /&gt;
===rowTextSize===&lt;br /&gt;
This property determines the default scale of the row text of the grid list. Note that this property does not affect rows that were created before the property was changed.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowTextSize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX:''' A float of the 2D X scale of the text of the row.&lt;br /&gt;
*'''scaleY:''' A float of the 2D Y scale of the text of the row.&lt;br /&gt;
&lt;br /&gt;
===rowWordBreak===&lt;br /&gt;
This property determines whether word break property for row is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowWordBreak&amp;quot;,rowWordBreak)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowWordBreak:''' A bool indicates whether the word break is enabled.&lt;br /&gt;
&lt;br /&gt;
===scrollBarAlignment===&lt;br /&gt;
This property sets the alignment of the scroll bars in the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist, &amp;quot;scrollBarAlignment&amp;quot;,{vertical})&amp;lt;/syntaxhighlight&amp;gt;  &amp;lt;!--,horizontal})&amp;lt;/syntaxhighlight&amp;gt; !--&amp;gt;&lt;br /&gt;
*'''vertical:''' Specifies the alignment of the vertical scroll bar, which can be set to:&lt;br /&gt;
**'''left:''' Aligns the vertical scroll bar to the left of the grid list.&lt;br /&gt;
**'''right:''' Aligns the vertical scroll bar to the right of the grid list.&lt;br /&gt;
&amp;lt;!--*'''horizontal:''' Specifies the alignment of the horizontal scroll bar, which can be set to:&lt;br /&gt;
**'''top:''' Aligns the horizontal scroll bar to the top of the grid list.&lt;br /&gt;
**'''bottom:''' Aligns the horizontal scroll bar to the bottom of the grid list.!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===scrollBarState===&lt;br /&gt;
This property forces the visibility of scroll bar. ''See [[dgsGridListSetScrollBarState]]/[[dgsGridListGetScrollBarState]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;scrollBarState&amp;quot;,{vertical,horizontal})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''vertical:''' A bool of the state of the vertical scroll bar.&lt;br /&gt;
*'''horizontal:''' A bool of the state of the horizontal scroll bar.&lt;br /&gt;
**'''true:''' Force to be visible&lt;br /&gt;
**'''false:''' Force to be invisible&lt;br /&gt;
**'''nil:''' Auto&lt;br /&gt;
&lt;br /&gt;
===scrollBarThick===&lt;br /&gt;
This property determines the thickness of scroll bar.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;scrollBarThick&amp;quot;,scrollBarThick)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scrollBarThick:''' An integer of the thickness of scroll bar.&lt;br /&gt;
&lt;br /&gt;
===sectionColumnOffset===&lt;br /&gt;
This property determines offset of section row column (is different from but works with columnOffset). ''See [[dgsGridListSetRowAsSection]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;sectionColumnOffset&amp;quot;,sectionColumnOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''sectionColumnOffset:''' An integer of the offset of section row column.&lt;br /&gt;
&lt;br /&gt;
===sectionFont===&lt;br /&gt;
This property determines the font of the text of which row is in section mode. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;sectionFont&amp;quot;,sectionFont)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''sectionFont:''' A [[Element/DX_font|dx font element]] of the text of which row is in section mode.&lt;br /&gt;
&lt;br /&gt;
===selectionMode===&lt;br /&gt;
This property stores current selection mode of grid list. ''See [[dgsGridListSetSelectionMode]]/[[dgsGridListGetSelectionMode]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;selectionMode&amp;quot;,selectionMode)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''selectionMode:''' The mode of the selection.  Can be the following values:&lt;br /&gt;
**'''1:''' row selection&lt;br /&gt;
**'''2:''' column selection&lt;br /&gt;
**'''3:''' cell selection&lt;br /&gt;
&lt;br /&gt;
===selectedColumn===&lt;br /&gt;
This property stores the index of which column the cursor is hovering. ''See [[dgsGridListGetEnterColumn]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;selectedColumn&amp;quot;,selectedColumn)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnHeight:''' Column Index.&lt;br /&gt;
&lt;br /&gt;
===sortColumn===&lt;br /&gt;
This property determines target sort column. ''See [[dgsGridListSetSortColumn]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;sortColumn&amp;quot;,sortColumn)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''sortColumn:''' An integer of the specific column to be sorted by.&lt;br /&gt;
&lt;br /&gt;
===sortEnabled===&lt;br /&gt;
This property determines whether sort is enabled. ''See [[dgsGridListSetSortEnabled]]/[[dgsGridListGetSortEnabled]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;sortEnabled&amp;quot;,sortEnabled)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''sortEnabled:''' A bool of sort state.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSPROPERTIES}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsGridListGetSelectedItem&amp;diff=76736</id>
		<title>DgsGridListGetSelectedItem</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsGridListGetSelectedItem&amp;diff=76736"/>
		<updated>2023-04-21T23:47:04Z</updated>

		<summary type="html">&lt;p&gt;XLive: fix a typo in the example&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
&lt;br /&gt;
This function returns the row and colum indexes of the selected item in a grid list.&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
int, int dgsGridListGetSelectedItem ( element gridList )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''gridList:''' the grid list you want to know the selected row index of&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns two integers of the row and column of the selected item if the specified grid list is valid and has a selected item, ''-1''  if nothing is selected, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
{{Client function}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
&lt;br /&gt;
local gridlist = DGS:dgsCreateGridList ( 0.80, 0.10, 0.15, 0.60, true )&lt;br /&gt;
local column = DGS:dgsGridListAddColumn ( gridlist, &amp;quot;test&amp;quot;, 0.85 )&lt;br /&gt;
local row = DGS:dgsGridListAddRow ( gridlist )&lt;br /&gt;
DGS:dgsGridListSetItemText ( gridlist, row, column, &amp;quot;1&amp;quot; )&lt;br /&gt;
&lt;br /&gt;
addEventHandler ( &amp;quot;onDgsMouseClick&amp;quot;, root, function ( button, state  )&lt;br /&gt;
	if source == gridlist then &lt;br /&gt;
		local selectedRow, selectedColumn = DGS:dgsGridListGetSelectedItem ( gridlist )&lt;br /&gt;
		if selectedRow ~= -1 then &lt;br /&gt;
			local output = DGS:dgsGridListGetItemText( gridlist, selectedRow, selectedColumn )&lt;br /&gt;
			outputChatBox ( output, 255, 0, 0 )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
end )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsGridListGetScrollBar&amp;diff=76706</id>
		<title>DgsGridListGetScrollBar</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsGridListGetScrollBar&amp;diff=76706"/>
		<updated>2023-04-15T13:34:21Z</updated>

		<summary type="html">&lt;p&gt;XLive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
This function retrieves the scroll bars of a DGS grid list.&lt;br /&gt;
 &lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
table dgsGridListGetScrollBar( element gridList )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
    &lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''gridList:''' The DGS grid list element to retrieve the scroll bars from.&lt;br /&gt;
    &lt;br /&gt;
===Returns===&lt;br /&gt;
This function returns a table containing the vertical and horizontal scroll bars of the specified DGS grid list. ''false'' otherwise.&lt;br /&gt;
    &lt;br /&gt;
==Example== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportFunction())()&lt;br /&gt;
    &lt;br /&gt;
function clientsideResourceStart ()&lt;br /&gt;
    -- Create the grid list element&lt;br /&gt;
    local testList = dgsCreateGridList ( 0.45, 0.45, 0.15, 0.15, true ) &lt;br /&gt;
    -- Force scroll bars to be visible&lt;br /&gt;
    dgsGridListSetScrollBarState ( testList, true, true )&lt;br /&gt;
    -- Get the scorllbars of the grid list&lt;br /&gt;
    local scrollBars = dgsGridListGetScrollBar ( testList )&lt;br /&gt;
    -- Lock the vertical scroll bar&lt;br /&gt;
    dgsScrollBarSetLocked( scrollBars[1], true )&lt;br /&gt;
    -- Lock the horizontal scroll bar&lt;br /&gt;
    dgsScrollBarSetLocked( scrollBars[2], true )&lt;br /&gt;
end&lt;br /&gt;
addEventHandler ( &amp;quot;onClientResourceStart&amp;quot;, resourceRoot, clientsideResourceStart )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsGridListGetScrollBar&amp;diff=76705</id>
		<title>DgsGridListGetScrollBar</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsGridListGetScrollBar&amp;diff=76705"/>
		<updated>2023-04-15T13:33:21Z</updated>

		<summary type="html">&lt;p&gt;XLive: Rewrite the example&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
This function retrieves the scroll bars of a DGS grid list.&lt;br /&gt;
 &lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
table dgsGridListGetScrollBar( element gridList )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
    &lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''gridList:''' The DGS grid list element to retrieve the scroll bars from.&lt;br /&gt;
    &lt;br /&gt;
===Returns===&lt;br /&gt;
This function returns a table containing the vertical and horizontal scroll bars of the specified DGS grid list. ''false'' otherwise.&lt;br /&gt;
    &lt;br /&gt;
==Example== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportFunction())()&lt;br /&gt;
    &lt;br /&gt;
function clientsideResourceStart ()&lt;br /&gt;
    -- Create the grid list element&lt;br /&gt;
    local testList = dgsCreateGridList ( 0.45, 0.45, 0.15, 0.15, true ) &lt;br /&gt;
    -- Force scroll bars to be visible&lt;br /&gt;
    dgsGridListSetScrollBarState ( testList, true, true )&lt;br /&gt;
    -- Lock the vertical scroll bar&lt;br /&gt;
    dgsScrollBarSetLocked( dgsGridListGetScrollBar ( testList )[1], true )&lt;br /&gt;
    -- Lock the horizontal scroll bar&lt;br /&gt;
    dgsScrollBarSetLocked( dgsGridListGetScrollBar ( testList )[2], true )&lt;br /&gt;
end&lt;br /&gt;
addEventHandler ( &amp;quot;onClientResourceStart&amp;quot;, resourceRoot, clientsideResourceStart )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsSetAlpha&amp;diff=76283</id>
		<title>DgsSetAlpha</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsSetAlpha&amp;diff=76283"/>
		<updated>2023-03-12T15:14:06Z</updated>

		<summary type="html">&lt;p&gt;XLive: fix type in the syntax&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This changes the alpha level (the visibleness/transparency) of a DGS element&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;!-- NOTE: don't use 'special' names for variable names, e.g. you shouldn't be writing things like 'player player, vehicle vehicle', instead write something like 'player thePlayer, vehicle vehicleToGetInto'. This is less confusing and prevents the syntax highlighting being odd --&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool dgsSetAlpha ( element theElement, float alpha )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
{{DGS/OOP|&lt;br /&gt;
    Note = DGSElement:setAlpha|&lt;br /&gt;
    Variable = alpha|&lt;br /&gt;
    Counterpart = dgsGetAlpha&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''guiElement:''' the DGS element whose visibility is to be changed&lt;br /&gt;
*'''alpha:''' The visibility/transparency of the DGS element. Ranges from 0 (fully transparent) to 1 (fully opaque). Default value is 1.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the dgs element's alpha was successfully changed, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
This creates a DGS window and allows a player to change it's alpha (the visibleness/transparency) value with a command.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
myWindow = DGS:dgsCreateWindow ( 0.30, 0.10, 0.5, 0.60, &amp;quot;DGS window title&amp;quot;, true )&lt;br /&gt;
&lt;br /&gt;
--Add a command handler to change the alpha of the DGS window.&lt;br /&gt;
--Usage example: '/alpha 0.8', where 0.8 is stored as alphaAmount&lt;br /&gt;
function changeAlpha ( commandName, alphaAmount )&lt;br /&gt;
	alphaAmount = tonumber(alphaAmount)&lt;br /&gt;
	DGS:dgsSetAlpha ( myWindow, alphaAmount )&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;alpha&amp;quot;, changeAlpha )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=See Also=&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;General Functions&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS General Functions}}&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;General Events&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS Events/General}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsGridListSetSelectedItem&amp;diff=76248</id>
		<title>DgsGridListSetSelectedItem</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsGridListSetSelectedItem&amp;diff=76248"/>
		<updated>2023-03-02T19:56:45Z</updated>

		<summary type="html">&lt;p&gt;XLive: add scrollTo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
&lt;br /&gt;
This function selects an item from a grid list.&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
int dgsGridListSetSelectedItem ( element gridList, int rowID, bool scrollTo )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''gridList:''' The grid list you want to set the selected row index to.&lt;br /&gt;
*'''rowID:''' The row index you want to set.&lt;br /&gt;
*'''scrollTo:''' Determines whether to scroll to the selected row or not.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns true if succeeded, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
{{Client function}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
showCursor(true)&lt;br /&gt;
local GridList = DGS:dgsCreateGridList ( 0.80, 0.10, 0.15, 0.60, true )&lt;br /&gt;
local column = DGS:dgsGridListAddColumn( GridList, &amp;quot;test&amp;quot;, 0.85 )&lt;br /&gt;
for i=1,10 do&lt;br /&gt;
	local row = DGS:dgsGridListAddRow ( GridList )&lt;br /&gt;
	DGS:dgsGridListSetItemText ( GridList, row, column, tostring(i) )&lt;br /&gt;
end&lt;br /&gt;
DGS:dgsGridListSetSelectedItem( GridList, 1 )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsMoveTo&amp;diff=76246</id>
		<title>DgsMoveTo</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsMoveTo&amp;diff=76246"/>
		<updated>2023-03-02T17:05:56Z</updated>

		<summary type="html">&lt;p&gt;XLive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Client function}}&lt;br /&gt;
This function allow us to add animation to dgs elements.&lt;br /&gt;
&lt;br /&gt;
Change position of dgs elements with animation effect.&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
number/table dgsMoveTo ( element/table dgsElement, float x, float y, bool relative, string easing = &amp;quot;Linear&amp;quot;, float duration [, int delay = 0 ])&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''dgsElement:''' The DGS element or a list of DGS elements to set animation to.&lt;br /&gt;
*'''x:''' Position over the X axis.&lt;br /&gt;
*'''y:''' Position over the Y axis.&lt;br /&gt;
*'''relative:''' Bool that indicates if the x/y positions are relative to the screen size.&lt;br /&gt;
*'''easing:''' The easing function to use for the interpolation (For More Detail :[[Easing]]), or your own easing function created by [[dgsAddEasingFunction]].&lt;br /&gt;
*'''duration:''' An integer of the time(ms) to finish the animation.&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments===&lt;br /&gt;
*'''delay:''' The delay time before the animation starts, can decrease the using of timer.&lt;br /&gt;
*'''settings:''' A table will be passed to your own easing function.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns an ''integer''/''table'' indicates the animation ID or a list of animation IDs if succeed, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportFunction())()&lt;br /&gt;
&lt;br /&gt;
parent = dgsCreateWindow(200,100,400,400,&amp;quot;DGS Parent Window&amp;quot;,false)	--Create a window&lt;br /&gt;
&lt;br /&gt;
dgsMoveTo(parent,400,200,false,&amp;quot;OutQuad&amp;quot;,2000) --Set Animation&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsSizeTo&amp;diff=76245</id>
		<title>DgsSizeTo</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsSizeTo&amp;diff=76245"/>
		<updated>2023-03-02T17:05:41Z</updated>

		<summary type="html">&lt;p&gt;XLive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Client function}}&lt;br /&gt;
This function allow us to add animation to dgs elements.&lt;br /&gt;
&lt;br /&gt;
Change size of dgs elements with animation effect.&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
number/table dgsSizeTo ( element/table dgsElement, float w, float h, bool relative, string easing = &amp;quot;Linear&amp;quot;, float duration [, int delay = 0 ])&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''dgsElement:''' The DGS element or a list of DGS elements to set animation to.&lt;br /&gt;
*'''w:''' Target Width.&lt;br /&gt;
*'''h:''' Target Height.&lt;br /&gt;
*'''relative:''' Bool that indicates if the w/h are relative to the screen size.&lt;br /&gt;
*'''easing:''' The easing function to use for the interpolation (For More Detail :[[Easing]]), or your own easing function created by [[dgsAddEasingFunction]].&lt;br /&gt;
*'''duration:''' An integer of the time(ms) to finish the animation.&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments===&lt;br /&gt;
*'''delay:''' The delay time before the animation start, can decrease the using of timer.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns an ''integer''/''table'' indicates the animation ID or a list of animation IDs if succeed, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
&lt;br /&gt;
parent = DGS:dgsCreateWindow(200,100,400,400,&amp;quot;DGS Parent Window&amp;quot;,false)	--Create a window&lt;br /&gt;
&lt;br /&gt;
DGS:dgsSizeTo(parent,400,200,false,&amp;quot;OutQuad&amp;quot;,2000)  --Set Animation&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsAlphaTo&amp;diff=76244</id>
		<title>DgsAlphaTo</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsAlphaTo&amp;diff=76244"/>
		<updated>2023-03-02T17:05:26Z</updated>

		<summary type="html">&lt;p&gt;XLive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Client function}}&lt;br /&gt;
This function allow us to add animation to dgs elements.&lt;br /&gt;
&lt;br /&gt;
Change alpha of dgs elements with animation effect.&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
number/table dgsAlphaTo ( element/table dgsElement, float targetAlpha, string easing = &amp;quot;Linear&amp;quot;, float duration [, int delay = 0 ] )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''dgsElement:''' The DGS element or a list of DGS elements to set animation to.&lt;br /&gt;
*'''targetAlpha:''' Target alpha of dgs element.&lt;br /&gt;
*'''easing:''' The easing function to use for the interpolation (For More Detail :[[Easing]]), or your own easing function created by [[dgsAddEasingFunction]].&lt;br /&gt;
*'''duration:''' An integer of the time(ms) to finish the animation.&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments===&lt;br /&gt;
*'''delay:''' The delay time before the animation start, can decrease the using of timer.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns an ''integer''/''table'' indicates the animation ID or a list of animation IDs if succeed, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
&lt;br /&gt;
parent = DGS:dgsCreateWindow(200,100,400,400,&amp;quot;DGS Parent Window&amp;quot;,false)	--Create a window&lt;br /&gt;
DGS:dgsSetAlpha(parent,0)&lt;br /&gt;
DGS:dgsAlphaTo(parent,1,&amp;quot;OutQuad&amp;quot;,2000)  --set alpha with animation effect.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsSizeTo&amp;diff=76243</id>
		<title>DgsSizeTo</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsSizeTo&amp;diff=76243"/>
		<updated>2023-03-02T17:04:37Z</updated>

		<summary type="html">&lt;p&gt;XLive: dgsElement can receive a table&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Client function}}&lt;br /&gt;
This function allow us to add animation to dgs elements.&lt;br /&gt;
&lt;br /&gt;
Change size of dgs elements with animation effect.&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
number/table dgsSizeTo ( table/element dgsElement, float w, float h, bool relative, string easing = &amp;quot;Linear&amp;quot;, float duration [, int delay = 0 ])&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''dgsElement:''' The DGS element or a list of DGS elements to set animation to.&lt;br /&gt;
*'''w:''' Target Width.&lt;br /&gt;
*'''h:''' Target Height.&lt;br /&gt;
*'''relative:''' Bool that indicates if the w/h are relative to the screen size.&lt;br /&gt;
*'''easing:''' The easing function to use for the interpolation (For More Detail :[[Easing]]), or your own easing function created by [[dgsAddEasingFunction]].&lt;br /&gt;
*'''duration:''' An integer of the time(ms) to finish the animation.&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments===&lt;br /&gt;
*'''delay:''' The delay time before the animation start, can decrease the using of timer.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns an ''integer''/''table'' indicates the animation ID or a list of animation IDs if succeed, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
&lt;br /&gt;
parent = DGS:dgsCreateWindow(200,100,400,400,&amp;quot;DGS Parent Window&amp;quot;,false)	--Create a window&lt;br /&gt;
&lt;br /&gt;
DGS:dgsSizeTo(parent,400,200,false,&amp;quot;OutQuad&amp;quot;,2000)  --Set Animation&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsMoveTo&amp;diff=76242</id>
		<title>DgsMoveTo</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsMoveTo&amp;diff=76242"/>
		<updated>2023-03-02T17:04:21Z</updated>

		<summary type="html">&lt;p&gt;XLive: dgsElement can receive a table&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Client function}}&lt;br /&gt;
This function allow us to add animation to dgs elements.&lt;br /&gt;
&lt;br /&gt;
Change position of dgs elements with animation effect.&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
number/table dgsMoveTo ( table/element dgsElement, float x, float y, bool relative, string easing = &amp;quot;Linear&amp;quot;, float duration [, int delay = 0 ])&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''dgsElement:''' The DGS element or a list of DGS elements to set animation to.&lt;br /&gt;
*'''x:''' Position over the X axis.&lt;br /&gt;
*'''y:''' Position over the Y axis.&lt;br /&gt;
*'''relative:''' Bool that indicates if the x/y positions are relative to the screen size.&lt;br /&gt;
*'''easing:''' The easing function to use for the interpolation (For More Detail :[[Easing]]), or your own easing function created by [[dgsAddEasingFunction]].&lt;br /&gt;
*'''duration:''' An integer of the time(ms) to finish the animation.&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments===&lt;br /&gt;
*'''delay:''' The delay time before the animation starts, can decrease the using of timer.&lt;br /&gt;
*'''settings:''' A table will be passed to your own easing function.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns an ''integer''/''table'' indicates the animation ID or a list of animation IDs if succeed, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportFunction())()&lt;br /&gt;
&lt;br /&gt;
parent = dgsCreateWindow(200,100,400,400,&amp;quot;DGS Parent Window&amp;quot;,false)	--Create a window&lt;br /&gt;
&lt;br /&gt;
dgsMoveTo(parent,400,200,false,&amp;quot;OutQuad&amp;quot;,2000) --Set Animation&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsAlphaTo&amp;diff=76241</id>
		<title>DgsAlphaTo</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsAlphaTo&amp;diff=76241"/>
		<updated>2023-03-02T17:03:22Z</updated>

		<summary type="html">&lt;p&gt;XLive: dgsElement can receive a table&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Client function}}&lt;br /&gt;
This function allow us to add animation to dgs elements.&lt;br /&gt;
&lt;br /&gt;
Change alpha of dgs elements with animation effect.&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
number/table dgsAlphaTo ( table/element dgsElement, float targetAlpha, string easing = &amp;quot;Linear&amp;quot;, float duration [, int delay = 0 ] )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''dgsElement:''' The DGS element or a list of DGS elements to set animation to.&lt;br /&gt;
*'''targetAlpha:''' Target alpha of dgs element.&lt;br /&gt;
*'''easing:''' The easing function to use for the interpolation (For More Detail :[[Easing]]), or your own easing function created by [[dgsAddEasingFunction]].&lt;br /&gt;
*'''duration:''' An integer of the time(ms) to finish the animation.&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments===&lt;br /&gt;
*'''delay:''' The delay time before the animation start, can decrease the using of timer.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns an ''integer''/''table'' indicates the animation ID or a list of animation IDs if succeed, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
&lt;br /&gt;
parent = DGS:dgsCreateWindow(200,100,400,400,&amp;quot;DGS Parent Window&amp;quot;,false)	--Create a window&lt;br /&gt;
DGS:dgsSetAlpha(parent,0)&lt;br /&gt;
DGS:dgsAlphaTo(parent,1,&amp;quot;OutQuad&amp;quot;,2000)  --set alpha with animation effect.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Dgs-dxgridlist&amp;diff=76226</id>
		<title>Dgs-dxgridlist</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Dgs-dxgridlist&amp;diff=76226"/>
		<updated>2023-02-28T11:50:16Z</updated>

		<summary type="html">&lt;p&gt;XLive: Add scrollBarAlignment&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Dgs|DGS]] Properties is always used to change the gui style and make it more fantastic.&lt;br /&gt;
&lt;br /&gt;
This page shows the properties of dgs-dxgridlist that you could use.&lt;br /&gt;
&lt;br /&gt;
==Main Functions==&lt;br /&gt;
*[[dgsSetProperty]]&lt;br /&gt;
*[[dgsGetProperty]]&lt;br /&gt;
&lt;br /&gt;
==Properties==&lt;br /&gt;
===autoSort===&lt;br /&gt;
This property determines whether auto sort is enabled. ''See [[dgsGridListSetAutoSortEnabled]]/[[dgsGridListGetAutoSortEnabled]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;autoSort&amp;quot;,autoSort)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''autoSort:''' A bool of auto sort state.&lt;br /&gt;
&lt;br /&gt;
===backgroundOffset===&lt;br /&gt;
This property determines the offset between the left border and row background.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;backgroundOffset&amp;quot;,backgroundOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''backgroundOffset:''' An integer of the offset between the left border and row background.&lt;br /&gt;
&lt;br /&gt;
===bgColor===&lt;br /&gt;
This property determines the background color of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;bgColor&amp;quot;,bgColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''bgColor:''' An integer of the color that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
===bgImage===&lt;br /&gt;
This property determines the background image of the grid list. To adjust the color of the image, use property '''bgColor'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;bgImage&amp;quot;,bgImage)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''bgImage:''' A material element that serves as the background image of the grid list (texture/shader/screen source/renderTarget).&lt;br /&gt;
&lt;br /&gt;
===clip===&lt;br /&gt;
Whether the clip property is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;clip&amp;quot;,clip)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''clip:''' If set to true, the parts of the text that don't fit within the bounding box will be cut off.&lt;br /&gt;
&lt;br /&gt;
===columnColor===&lt;br /&gt;
This property determines the background color of the column of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnColor&amp;quot;,columnColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnColor:''' An integer of the color that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
===columnData===&lt;br /&gt;
This property stores column data.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnData&amp;quot;,columnData)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnData:''' A table stores all column data.&lt;br /&gt;
'''Data Structure'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	{ text, Width, AllWidthFront, Alignment, color, colorcoded, sizeX, sizeY, font },&lt;br /&gt;
	{ text, Width, AllWidthFront, Alignment, color, colorcoded, sizeX, sizeY, font },&lt;br /&gt;
	{ text, Width, AllWidthFront, Alignment, color, colorcoded, sizeX, sizeY, font },&lt;br /&gt;
	...&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===columnHeight===&lt;br /&gt;
This property determines the column height of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnHeight&amp;quot;,columnHeight)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnHeight:''' An integer of column height of the grid list.&lt;br /&gt;
&lt;br /&gt;
===columnImage===&lt;br /&gt;
This property determines the background image of the column of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnImage&amp;quot;,columnImage)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnImage:''' A material element that serves as the background image of the column of the grid list (texture/shader/screen source/renderTarget).&lt;br /&gt;
&lt;br /&gt;
===columnMoveOffset===&lt;br /&gt;
This property stores the move offset of column that is used to render.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnMoveOffset&amp;quot;,columnMoveOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnMoveOffset:''' A float stores the move offset of column that is used to render.&lt;br /&gt;
&lt;br /&gt;
===columnOffset===&lt;br /&gt;
This property determines the global offset between the left border and column text.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnOffset&amp;quot;,columnOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnOffset:''' An integer of offset of the column.&lt;br /&gt;
&lt;br /&gt;
===columnRelative===&lt;br /&gt;
This property determines whether the column length is relative or not. ''See [[dgsGridListSetColumnRelative]]/[[dgsGridListGetColumnRelative]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnRelative&amp;quot;,columnRelative)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnRelative:''' A bool of the relative state of the column length.&lt;br /&gt;
&lt;br /&gt;
===columnShadow===&lt;br /&gt;
The shadow text of the column.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnShadow&amp;quot;,{offsetX,offsetY,color})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the shadow text of the column.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the shadow text of the column.&lt;br /&gt;
*'''color:''' An integer of the color of the shadow text of the column.&lt;br /&gt;
&lt;br /&gt;
===columnTextColor===&lt;br /&gt;
This property determines the color of the column text of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnTextColor&amp;quot;,columnTextColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnTextColor:''' An integer of the color that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
===columnTextPosOffset===&lt;br /&gt;
This property adjusts the offset of the text of the column, which can solve text misplacing caused by font.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnTextPosOffset&amp;quot;,{offsetX,offsetY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the text of the column.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the text of the column.&lt;br /&gt;
&lt;br /&gt;
===columnTextSize===&lt;br /&gt;
This property determines the scale of the column text of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnTextSize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX:''' A float of the 2D X scale of the text of the column.&lt;br /&gt;
*'''scaleY:''' A float of the 2D Y scale of the text of the column.&lt;br /&gt;
&lt;br /&gt;
===columnWordBreak===&lt;br /&gt;
This property determines whether word break property for column is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;columnWordBreak&amp;quot;,columnWordBreak)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnWordBreak:''' A bool indicates whether the word break is enabled.&lt;br /&gt;
&lt;br /&gt;
===colorCoded===&lt;br /&gt;
Whether the color code is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;colorCoded&amp;quot;,colorCoded)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorCoded:''' Set to true to enable embedded #FFFFFF color codes.&lt;br /&gt;
&lt;br /&gt;
===defaultColumnOffset===&lt;br /&gt;
This property determines offset of normal row column (is different from but works with columnOffset). ''See [[dgsGridListSetRowAsSection]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;defaultColumnOffset&amp;quot;,defaultColumnOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''defaultColumnOffset:''' An integer of the offset of normal row column.&lt;br /&gt;
&lt;br /&gt;
===defaultSortFunctions===&lt;br /&gt;
This property determines the default sort function of grid list when clicking column.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;defaultSortFunctions&amp;quot;,{lowerSortFunction,upperSortFunction})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''lowerSortFunction:''' A string of the lower sort function name.&lt;br /&gt;
*'''upperSortFunction:''' A string of the upper sort function name.&lt;br /&gt;
Here are three groups can be use:&lt;br /&gt;
*'''greaterLower'''/'''greaterUpper''': Sorting directly with string.&lt;br /&gt;
*'''numGreaterLowerNumFirst'''/'''numGreaterUpperNumFirst''': Sorting support number order with number first.&lt;br /&gt;
*'''numGreaterLowerStrFirst'''/'''numGreaterUpperStrFirst''': Sorting support number order with string first.&lt;br /&gt;
*'''longerLower'''/'''longerUpper''': Sorting according to the utf8 length of the string.&lt;br /&gt;
&lt;br /&gt;
===defaultSortIcons===&lt;br /&gt;
This property determines the icons of the default sort function.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;defaultSortIcons&amp;quot;,{iconA,iconB})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''iconA:''' A string of the lower sort icon ('''▲''' By default).&lt;br /&gt;
*'''iconB:''' A string of the upper sort icon ('''▼''' By default).&lt;br /&gt;
&lt;br /&gt;
===font===&lt;br /&gt;
This is equivalent to [[dgsSetFont]]/[[dgsGetFont]]. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;font&amp;quot;,font)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''font:''' A [[Element/DX_font|dx font element]] of the default text font of the gridlist.&lt;br /&gt;
&lt;br /&gt;
===leading===&lt;br /&gt;
This property determines the space between rows.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;leading&amp;quot;,leading)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''leading:''' How many pixels between rows&lt;br /&gt;
&lt;br /&gt;
===multiSelection===&lt;br /&gt;
This property determines whether multi selection is enabled or not. ''See [[dgsGridListSetMultiSelectionEnabled]]/[[dgsGridListGetMultiSelectionEnabled]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;multiSelection&amp;quot;,multiSelection)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''multiSelection:''' A bool of the state of the multi selection.&lt;br /&gt;
&lt;br /&gt;
===mode===&lt;br /&gt;
This property determines the render mode of grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;mode&amp;quot;,mode)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''mode:''' A bool of the state of render mode. Detail:&lt;br /&gt;
**'''true:''' No render target mode (Crappy and have a lot of bugs but doesn't take video memory)&lt;br /&gt;
**'''false:''' Render target mode (Great quality but takes video memory)&lt;br /&gt;
&lt;br /&gt;
===mouseSelectButton ===&lt;br /&gt;
This property allows which button on the mouse can select items of grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;mouseSelectButton&amp;quot;,{canLeftButton,canMiddleButton,canRightButton})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''canLeftButton:''' A bool of whether left mouse button can select the grid list (default is true)&lt;br /&gt;
*'''canMiddleButton:''' A bool of whether middle mouse button can select the grid list (default is false)&lt;br /&gt;
*'''canRightButton:''' A bool of whether right mouse button can select the grid list (default is false)&lt;br /&gt;
&lt;br /&gt;
===moveHardness===&lt;br /&gt;
This property determines how hard will the grid list moves when scrolling.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;moveHardness&amp;quot;,{scrollHardness,dragHardness})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scrollHardness:''' A float determins how hard will the grid list moves when scrolling with wheel ( should be larger than 0, lower than 1 ).&lt;br /&gt;
*'''dragHardness:''' A float determins how hard will the grid list moves when dragging with mouse ( should be larger than 0, lower than 1 ).&lt;br /&gt;
&lt;br /&gt;
===preSelect===&lt;br /&gt;
This property stores the item id the cursor is hovering on.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;preSelect&amp;quot;,{rowIndex,columnIndex})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowIndex:''' Row Index&lt;br /&gt;
*'''columnIndex:''' Column Index&lt;br /&gt;
&lt;br /&gt;
===rowColor===&lt;br /&gt;
This property determines the default 3 states' colors of row. ''See [[dgsGridListSetRowBackGroundColor]]/[[dgsGridListGetRowBackGroundColor]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowColor&amp;quot;,{colorDefault,colorHoving,colorSelected})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorDefault:''' An integer of the color of the row (Default State).&lt;br /&gt;
*'''colorHoving:''' An integer of the color of the row (Hoving State).&lt;br /&gt;
*'''colorSelected:''' An integer of the color of the row (Selected State).&lt;br /&gt;
&lt;br /&gt;
===rowData===&lt;br /&gt;
This property stores row data.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowData&amp;quot;,rowData)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowData:''' A table stores all row data.&lt;br /&gt;
'''Data Structure'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
&lt;br /&gt;
	[1] = {&lt;br /&gt;
		[-4] = columnOffset,				--column offset&lt;br /&gt;
		[-3] = {normal,hovering,selected},		--background image&lt;br /&gt;
		[-2] = true/false,				--selectable&lt;br /&gt;
		[-1] = true/false,				--clickable&lt;br /&gt;
		[0] = {normal,hovering,selected},		--background color&lt;br /&gt;
		[1] = {text,color,colorcoded,scalex,scaley,font,{image,color,imagex,imagey,imagew,imageh},unselectable,unclickable},	--Column 1&lt;br /&gt;
		[2] = {text,color,colorcoded,scalex,scaley,font,{image,color,imagex,imagey,imagew,imageh},unselectable,unclickable},	--Column 2&lt;br /&gt;
		...&lt;br /&gt;
	},		--Row 1&lt;br /&gt;
	[2] = {&lt;br /&gt;
		[-4] = columnOffset,				--column offset&lt;br /&gt;
		[-3] = {normal,hovering,selected},		--background image&lt;br /&gt;
		[-2] = true/false,				--selectable&lt;br /&gt;
		[-1] = true/false,				--clickable&lt;br /&gt;
		[0] = {normal,hovering,selected},		--background color&lt;br /&gt;
		[1] = {text,color,colorcoded,scalex,scaley,font,{image,color,imagex,imagey,imagew,imageh},unselectable,unclickable},	--Column 1&lt;br /&gt;
		[2] = {text,color,colorcoded,scalex,scaley,font,{image,color,imagex,imagey,imagew,imageh},unselectable,unclickable},	--Column 2&lt;br /&gt;
		...&lt;br /&gt;
	},		--Row 2&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===rowHeight===&lt;br /&gt;
This property determines the row height of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowHeight&amp;quot;,rowHeight)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowHeight:''' An integer of row height of the grid list.&lt;br /&gt;
&lt;br /&gt;
===rowImage===&lt;br /&gt;
This property determines the default 3 states' background image of row. ''See [[dgsGridListGetRowBackGroundImage]]/[[dgsGridListSetRowBackGroundImage]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowImage&amp;quot;,{normalImage,hoveringImage,selectedImage})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalImage:''' A texture of the image of the row (Normal State).&lt;br /&gt;
*'''hoveringImage:''' A texture of the image of the row (Hoving State).&lt;br /&gt;
*'''selectedImage:''' A texture of the image of the row (Selected State).&lt;br /&gt;
&lt;br /&gt;
===rowImageStyle===&lt;br /&gt;
This property determines the style of row background image.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowImageStyle&amp;quot;,style)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''style:''' An integer of the style of row background image. Available values are as follows:&lt;br /&gt;
**'''1:''' Every item uses a complete background image.&lt;br /&gt;
**'''2:''' Every row uses a complete background image.&lt;br /&gt;
**'''3:''' Only the visible area of every row uses a complete background image.&lt;br /&gt;
&lt;br /&gt;
===rowMoveOffset===&lt;br /&gt;
This property stores the move offset of row that is used to render.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowMoveOffset&amp;quot;,rowMoveOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowMoveOffset:''' A float stores the move offset of row that is used to render.&lt;br /&gt;
&lt;br /&gt;
===rowSelect===&lt;br /&gt;
This property stores the selected rows.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowSelect&amp;quot;,data)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''data:''' the data.&lt;br /&gt;
'''Data Structure'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	[Column1] = {&lt;br /&gt;
		Row1,&lt;br /&gt;
		Row2,&lt;br /&gt;
		...&lt;br /&gt;
	},&lt;br /&gt;
	[Column2] = {&lt;br /&gt;
		Row1,&lt;br /&gt;
		Row2,&lt;br /&gt;
		...&lt;br /&gt;
	},&lt;br /&gt;
	...&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===rowShadow===&lt;br /&gt;
The shadow text of the row.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowShadow&amp;quot;,{offsetX,offsetY,color})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the shadow text of the row.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the shadow text of the row.&lt;br /&gt;
*'''color:''' An integer of the color of the shadow text of the row.&lt;br /&gt;
&lt;br /&gt;
===rowShowUnclippedOnly===&lt;br /&gt;
This property will force the grid list only show those unclipped row&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowShowUnclippedOnly&amp;quot;,rowShowUnclippedOnly)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowShowUnclippedOnly:''' A bool indicates if the only the unclipped rows will be shown in grid list.&lt;br /&gt;
&lt;br /&gt;
===rowTextColor===&lt;br /&gt;
This property determines the default color of the row text of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowTextColor&amp;quot;,rowTextColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowTextColor:''' An integer of the color of the row text that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowTextColor&amp;quot;,{normalColor,hoveringColor,selectedColor})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalColor:''' A integer of the color of the row text that can be converted by [[tocolor]](Normal State).&lt;br /&gt;
*'''hoveringColor:''' A integer of the color of the row text that can be converted by [[tocolor]](Hoving State).&lt;br /&gt;
*'''selectedColor:''' A integer of the color of the row text that can be converted by [[tocolor]](Selected State).&lt;br /&gt;
&lt;br /&gt;
===rowTextPosOffset===&lt;br /&gt;
This property adjusts the offset of the text of the row, which can solve text misplacing caused by font.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowTextPosOffset&amp;quot;,{offsetX,offsetY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the text of the row.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the text of the row.&lt;br /&gt;
&lt;br /&gt;
===rowTextSize===&lt;br /&gt;
This property determines the default scale of the row text of the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowTextSize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX:''' A float of the 2D X scale of the text of the row.&lt;br /&gt;
*'''scaleY:''' A float of the 2D Y scale of the text of the row.&lt;br /&gt;
&lt;br /&gt;
===rowWordBreak===&lt;br /&gt;
This property determines whether word break property for row is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;rowWordBreak&amp;quot;,rowWordBreak)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''rowWordBreak:''' A bool indicates whether the word break is enabled.&lt;br /&gt;
&lt;br /&gt;
===scrollBarAlignment===&lt;br /&gt;
This property sets the alignment of the scroll bars in the grid list.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist, &amp;quot;scrollBarAlignment&amp;quot;,{vertical})&amp;lt;/syntaxhighlight&amp;gt;  &amp;lt;!--,horizontal})&amp;lt;/syntaxhighlight&amp;gt; !--&amp;gt;&lt;br /&gt;
*'''vertical:''' Specifies the alignment of the vertical scroll bar, which can be set to:&lt;br /&gt;
**'''left:''' Aligns the vertical scroll bar to the left of the grid list.&lt;br /&gt;
**'''right:''' Aligns the vertical scroll bar to the right of the grid list.&lt;br /&gt;
&amp;lt;!--*'''horizontal:''' Specifies the alignment of the horizontal scroll bar, which can be set to:&lt;br /&gt;
**'''top:''' Aligns the horizontal scroll bar to the top of the grid list.&lt;br /&gt;
**'''bottom:''' Aligns the horizontal scroll bar to the bottom of the grid list.!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===scrollBarState===&lt;br /&gt;
This property forces the visibility of scroll bar. ''See [[dgsGridListSetScrollBarState]]/[[dgsGridListGetScrollBarState]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;scrollBarState&amp;quot;,{vertical,horizontal})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''vertical:''' A bool of the state of the vertical scroll bar.&lt;br /&gt;
*'''horizontal:''' A bool of the state of the horizontal scroll bar.&lt;br /&gt;
**'''true:''' Force to be visible&lt;br /&gt;
**'''false:''' Force to be invisible&lt;br /&gt;
**'''nil:''' Auto&lt;br /&gt;
&lt;br /&gt;
===scrollBarThick===&lt;br /&gt;
This property determines the thickness of scroll bar.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;scrollBarThick&amp;quot;,scrollBarThick)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scrollBarThick:''' An integer of the thickness of scroll bar.&lt;br /&gt;
&lt;br /&gt;
===sectionColumnOffset===&lt;br /&gt;
This property determines offset of section row column (is different from but works with columnOffset). ''See [[dgsGridListSetRowAsSection]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;sectionColumnOffset&amp;quot;,sectionColumnOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''sectionColumnOffset:''' An integer of the offset of section row column.&lt;br /&gt;
&lt;br /&gt;
===sectionFont===&lt;br /&gt;
This property determines the font of the text of which row is in section mode. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;sectionFont&amp;quot;,sectionFont)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''sectionFont:''' A [[Element/DX_font|dx font element]] of the text of which row is in section mode.&lt;br /&gt;
&lt;br /&gt;
===selectionMode===&lt;br /&gt;
This property stores current selection mode of grid list. ''See [[dgsGridListSetSelectionMode]]/[[dgsGridListGetSelectionMode]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;selectionMode&amp;quot;,selectionMode)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''selectionMode:''' The mode of the selection.  Can be the following values:&lt;br /&gt;
**'''1:''' row selection&lt;br /&gt;
**'''2:''' column selection&lt;br /&gt;
**'''3:''' cell selection&lt;br /&gt;
&lt;br /&gt;
===selectedColumn===&lt;br /&gt;
This property stores the index of which column the cursor is hovering. ''See [[dgsGridListGetEnterColumn]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;selectedColumn&amp;quot;,selectedColumn)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnHeight:''' Column Index.&lt;br /&gt;
&lt;br /&gt;
===sortColumn===&lt;br /&gt;
This property determines target sort column. ''See [[dgsGridListSetSortColumn]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;sortColumn&amp;quot;,sortColumn)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''sortColumn:''' An integer of the specific column to be sorted by.&lt;br /&gt;
&lt;br /&gt;
===sortEnabled===&lt;br /&gt;
This property determines whether sort is enabled. ''See [[dgsGridListSetSortEnabled]]/[[dgsGridListGetSortEnabled]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;sortEnabled&amp;quot;,sortEnabled)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''sortEnabled:''' A bool of sort state.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSPROPERTIES}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsSelectorClear&amp;diff=76220</id>
		<title>DgsSelectorClear</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsSelectorClear&amp;diff=76220"/>
		<updated>2023-02-18T20:16:15Z</updated>

		<summary type="html">&lt;p&gt;XLive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This function removes all the items from a dgs selector.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool dgsSelectorClear ( element selector )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''selector:''' The dgs selector element to be cleared&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the dgs selector element is valid and has been cleared successfully, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This example creates a selector with all server vehicles on it, with a command to clear the selector.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
&lt;br /&gt;
addEventHandler ( &amp;quot;onClientResourceStart&amp;quot;, resourceRoot,&lt;br /&gt;
function ( )&lt;br /&gt;
	selector = dgsCreateSelector(400,500,100,20,false)&lt;br /&gt;
	for index, vehicle in ipairs ( getElementsByType ( &amp;quot;vehicle&amp;quot; ) ) do -- We loop through all vehicles.&lt;br /&gt;
		DGS:dgsSelectorAddItem ( selector, getVehicleName ( vehicle ) ) -- We add the vehicle name to our selector.&lt;br /&gt;
	end&lt;br /&gt;
end)&lt;br /&gt;
&lt;br /&gt;
addCommandHandler ( &amp;quot;clear&amp;quot;,&lt;br /&gt;
function ( )&lt;br /&gt;
	DGS:dgsSelectorClear ( selector ) -- We clear our selector items.&lt;br /&gt;
end)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Modules/MTA-MySQL&amp;diff=76186</id>
		<title>Modules/MTA-MySQL</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Modules/MTA-MySQL&amp;diff=76186"/>
		<updated>2023-02-08T10:08:47Z</updated>

		<summary type="html">&lt;p&gt;XLive: the font size is intentional&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pageclass class=&amp;quot;#AA7592&amp;quot; subcaption=&amp;quot;MTA-MySQL Module&amp;quot;&amp;gt;&amp;lt;/pageclass&amp;gt;&lt;br /&gt;
&amp;lt;!-- The font size is intentional, do not modify !--&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size: 4em; line-height: 1em;&amp;quot;&amp;gt;{{Warning|We don't provide any support for this module!}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size: 10em; line-height: 1em;&amp;quot;&amp;gt;{{Warning|This module is too old, please use [[dbConnect]] instead.}}&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Module_Info|&lt;br /&gt;
  name           = MTA MySQL |&lt;br /&gt;
  version        = 0.5 |&lt;br /&gt;
  author         = [[User:ryden|Alberto Alonso (ryden)]] |&lt;br /&gt;
  author2         = [[User:ryden|Alberto Alonso (ryden)]] |&lt;br /&gt;
  module_website = [http://code.google.com/p/multitheftauto-modules Here] |&lt;br /&gt;
  download_link  = [https://nightly.mtasa.com/files/modules/32/mta_mysql.dll Windows 32 bit]&amp;lt;br/&amp;gt;[https://nightly.mtasa.com/files/modules/64/mta_mysql.dll Windows  64 bit]&lt;br /&gt;
[https://nightly.mtasa.com/files/modules/32/mta_mysql.so Linux 32 bit]&amp;lt;br/&amp;gt;[https://nightly.mtasa.com/files/modules/64/mta_mysql.so Linux 64 bit] |&lt;br /&gt;
  license        = [http://www.opensource.org/licenses/bsd-license.php BSD] |&lt;br /&gt;
  written_in     = C++ |&lt;br /&gt;
  operating_system = Cross-platform |&lt;br /&gt;
  compatible_with = DP2.x &amp;amp; 1.X |&lt;br /&gt;
}}&lt;br /&gt;
MTA MySQL is an alternative to the default [[Modules/MySQL|ml_mysql]] module provided by the MTA team.&lt;br /&gt;
It is available for Windows and GNU/Linux and provides the source code.&lt;br /&gt;
&lt;br /&gt;
''Note: From version 0.4 it supports both DP2.3 and 1.0 servers.''&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
===Windows===&lt;br /&gt;
'''32 bit:''' Copy 32 bit mta_mysql.dll into the '''MTA San Andreas\server\mods\deathmatch\modules\''' directory.&amp;lt;br/&amp;gt;&lt;br /&gt;
''(You might also need to install [https://nightly.mtasa.com/files/vcredist_2013_x86.exe 32 bit VS2013 Runtime Redist])''&lt;br /&gt;
&lt;br /&gt;
'''64 bit:''' Copy 64 bit mta_mysql.dll into the '''MTA San Andreas\server\x64\modules\''' directory.&amp;lt;br/&amp;gt;&lt;br /&gt;
''(You might also need to install [https://nightly.mtasa.com/files/vcredist_2013_x64.exe 64 bit VS2013 Runtime Redist])''&lt;br /&gt;
&lt;br /&gt;
Then, add the following line in mtaserver.conf:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;module src=&amp;quot;mta_mysql.dll&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===GNU/Linux===&lt;br /&gt;
'''32 bit:''' Copy 32 bit mta_mysql.so into the '''mods/deathmatch/modules/''' directory.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''64 bit:''' Copy 64 bit mta_mysql.so into the '''x64/modules/''' directory.&lt;br /&gt;
&lt;br /&gt;
Then, add the following line in mtaserver.conf:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;module src=&amp;quot;mta_mysql.so&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To fix '''MODULE: Unable to find modules/mta_mysql.so (libmysqlclient.so.16: cannot open shared object file: No such file or directory)!''' copy ''libmysqlclient.so.16'' into '''/usr/lib''' ([https://nightly.mtasa.com/files/modules/32/libmysqlclient.so.16 32 bit], [https://nightly.mtasa.com/files/modules/64/libmysqlclient.so.16 64 bit])&lt;br /&gt;
&lt;br /&gt;
'''If you experience an error on Unix systems:'''&lt;br /&gt;
Try to add port and socket parameters to your mysql_connect.&lt;br /&gt;
&lt;br /&gt;
==Handler functions==&lt;br /&gt;
{{Modules/MTA-MySQL/Handler_functions}}&lt;br /&gt;
&lt;br /&gt;
==Result managing functions==&lt;br /&gt;
{{Modules/MTA-MySQL/Result_functions}}&lt;br /&gt;
&lt;br /&gt;
==Version 0.5 calling method==&lt;br /&gt;
From version 0.5 onwards you can call all this module functions, except mysql_connect and mysql_null, as if they are methods of an object.&lt;br /&gt;
&lt;br /&gt;
For example, having a valid MySQL handler, you can do handler:query ( &amp;quot;SELECT * FROM table&amp;quot; ) instead of mysql_query ( handler, &amp;quot;SELECT * FROM table&amp;quot; ).&lt;br /&gt;
&lt;br /&gt;
===Function aliases===&lt;br /&gt;
A function alias is a second name for a function, which makes calling any of the original name or the alias have the same result. The new aliases introduced in version 0.5 are:&lt;br /&gt;
* result:num_rows() is the same as result:numrows()&lt;br /&gt;
* result:num_fields() is the same as result:numfields()&lt;br /&gt;
* result:free_result() is the same as result:free()&lt;br /&gt;
&lt;br /&gt;
[[Category:Modules]]&lt;br /&gt;
&lt;br /&gt;
[[ru:Modules/MTA-MySQL]]&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsSetVisible&amp;diff=76023</id>
		<title>DgsSetVisible</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsSetVisible&amp;diff=76023"/>
		<updated>2023-01-13T17:51:05Z</updated>

		<summary type="html">&lt;p&gt;XLive: table syntax&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This function changes the visibility state of a DGS element.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool dgsSetVisible ( element/table dgsElement, bool state )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
{{DGS/OOP|&lt;br /&gt;
    Method = DGSElement:setVisible|&lt;br /&gt;
    Variable = visible|&lt;br /&gt;
    Counterpart = dgsGetVisible&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''dgsElement:''' the DGS element whose visibility is to be changed&lt;br /&gt;
*'''state:''' the new visibility state&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the element's visibility could be changed, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
This example creates a dgs window and changes its visibility every 2 seconds, infinite times.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
&lt;br /&gt;
function changeVisibility ( )&lt;br /&gt;
	-- we check if the dgs element is visible&lt;br /&gt;
	DGS:dgsSetVisible (myWindow, not DGS:dgsGetVisible ( myWindow ) )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--Create a dgs window called 'myWindow'&lt;br /&gt;
myWindow = DGS:dgsCreateWindow ( 0.3, 0.3, 0.5, 0.60, &amp;quot;DGS window title&amp;quot;, true )&lt;br /&gt;
--Set a timer to change the window's visibility every 2 seconds, infinite times&lt;br /&gt;
setTimer ( changeVisibility, 2000, 0 )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example creates a dgs window with yes and no buttons and make it visible/invisible with the bindkey 'x'.&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;	 &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
&lt;br /&gt;
newdgs = { button = {}, wind= {} }&lt;br /&gt;
&lt;br /&gt;
addEventHandler(&amp;quot;onClientResourceStart&amp;quot;, resourceRoot,function()&lt;br /&gt;
	newdgs.wind[1] = DGS:dgsDxCreateWindow(434, 304, 280, 123, &amp;quot;New Window&amp;quot;, false)&lt;br /&gt;
	DGS:dgsDxWindowSetSizable(newdgs.wind[1], false)&lt;br /&gt;
	newdgs.button[1] = DGS:dgsDxCreateButton(35, 46, 87, 40, &amp;quot;yes&amp;quot;, false, newdgs.wind[1])&lt;br /&gt;
	newdgs.button[2] = DGS:dgsDxCreateButton(166, 49, 92, 37, &amp;quot;no&amp;quot;, false, newdgs.wind[1])    &lt;br /&gt;
end)&lt;br /&gt;
&lt;br /&gt;
bindKey ( &amp;quot;x&amp;quot;, &amp;quot;down&amp;quot;, function ( )&lt;br /&gt;
		local state = ( not DGS:dgsGetVisible( newdgs.wind[1] ) )&lt;br /&gt;
		DGS:dgsSetVisible( newdgs.wind[1], state )&lt;br /&gt;
		showCursor ( state )&lt;br /&gt;
	end)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=See Also=&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;General Functions&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS General Functions}}&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;&amp;quot;&amp;gt;General Events&amp;lt;/span&amp;gt;==&lt;br /&gt;
{{DGS Events/General}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsGridListSetColumnTextColor&amp;diff=75696</id>
		<title>DgsGridListSetColumnTextColor</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsGridListSetColumnTextColor&amp;diff=75696"/>
		<updated>2022-11-27T10:50:54Z</updated>

		<summary type="html">&lt;p&gt;XLive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This function changes the color of a gridlist column title.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool dgsGridListSetItemColor ( element gridList, int columnIndex, int color )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''gridList:''' The dgs grid list element.&lt;br /&gt;
*'''columnIndex:''' Column index.&lt;br /&gt;
*'''color:'''  The color of the text.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool dgsGridListSetItemColor ( element gridList, int columnIndex, int r, int g, int b [, int a = 255 ] )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''gridList:''' The dgs grid list element.&lt;br /&gt;
*'''columnIndex:''' Column index.&lt;br /&gt;
*'''r:'''  The amount of red in the color (0-255).&lt;br /&gt;
*'''g:'''  The amount of green in the color (0-255).&lt;br /&gt;
*'''b:'''  The amount of blue in the color (0-255).&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments===&lt;br /&gt;
*'''a:'''  The amount of alpha in the color (0-255).&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the title color was set successfully, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
'''example 1'''&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportFunction())()&lt;br /&gt;
function createGridList()&lt;br /&gt;
    local gridlist = dgsCreateGridList(0.3, 0.3, 0.4, 0.4, true)&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 1&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 1, tocolor(255, 0, 0))&lt;br /&gt;
&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 2&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 2, tocolor(0, 255, 0))&lt;br /&gt;
&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 3&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 3, tocolor(0, 0, 255))&lt;br /&gt;
&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 4&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 4, tocolor(255, 255, 0))&lt;br /&gt;
&lt;br /&gt;
    for i = 1, 100 do&lt;br /&gt;
        local row = dgsGridListAddRow(gridlist)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 1, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 2, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 3, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 4, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
createGridList()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
'''example 2'''&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportFunction())()&lt;br /&gt;
function createGridList()&lt;br /&gt;
    -- create 3 columns and change their colors. then create 100 rows&lt;br /&gt;
    local gridlist = dgsCreateGridList(0.3, 0.3, 0.4, 0.4, true)&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 1&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 1, 255, 0, 0)&lt;br /&gt;
&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 2&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 2, 0, 255, 0)&lt;br /&gt;
&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 3&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 3, 0, 0, 255)&lt;br /&gt;
&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 4&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 4, 255, 255, 0, 180)&lt;br /&gt;
&lt;br /&gt;
    for i = 1, 100 do&lt;br /&gt;
        local row = dgsGridListAddRow(gridlist)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 1, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 2, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 3, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 4, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
createGridList()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsGridListSetColumnTextColor&amp;diff=75695</id>
		<title>DgsGridListSetColumnTextColor</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsGridListSetColumnTextColor&amp;diff=75695"/>
		<updated>2022-11-27T10:50:14Z</updated>

		<summary type="html">&lt;p&gt;XLive: Created page with &amp;quot;{{Client function}} __NOTOC__ This function changes the color of a gridlist column title.  ==Syntax==  &amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt; bool dgsGridListSetItemColor ( element gridList, int columnIndex, int/table color ) &amp;lt;/syntaxhighlight&amp;gt;   ===Required Arguments===  *'''gridList:''' The dgs grid list element. *'''columnIndex:''' Column index. *'''color:'''  The color of the text.  ==Syntax==  &amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt; bool dgsGridListSetItemColor ( element gridList, int c...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This function changes the color of a gridlist column title.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool dgsGridListSetItemColor ( element gridList, int columnIndex, int/table color )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''gridList:''' The dgs grid list element.&lt;br /&gt;
*'''columnIndex:''' Column index.&lt;br /&gt;
*'''color:'''  The color of the text.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool dgsGridListSetItemColor ( element gridList, int columnIndex, int r, int g, int b [, int a = 255 ] )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''gridList:''' The dgs grid list element.&lt;br /&gt;
*'''columnIndex:''' Column index.&lt;br /&gt;
*'''r:'''  The amount of red in the color (0-255).&lt;br /&gt;
*'''g:'''  The amount of green in the color (0-255).&lt;br /&gt;
*'''b:'''  The amount of blue in the color (0-255).&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments===&lt;br /&gt;
*'''a:'''  The amount of alpha in the color (0-255).&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the title color was set successfully, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
'''example 1'''&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportFunction())()&lt;br /&gt;
function createGridList()&lt;br /&gt;
    local gridlist = dgsCreateGridList(0.3, 0.3, 0.4, 0.4, true)&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 1&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 1, tocolor(255, 0, 0))&lt;br /&gt;
&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 2&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 2, tocolor(0, 255, 0))&lt;br /&gt;
&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 3&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 3, tocolor(0, 0, 255))&lt;br /&gt;
&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 4&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 4, tocolor(255, 255, 0))&lt;br /&gt;
&lt;br /&gt;
    for i = 1, 100 do&lt;br /&gt;
        local row = dgsGridListAddRow(gridlist)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 1, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 2, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 3, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 4, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
createGridList()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
'''example 2'''&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportFunction())()&lt;br /&gt;
function createGridList()&lt;br /&gt;
    -- create 3 columns and change their colors. then create 100 rows&lt;br /&gt;
    local gridlist = dgsCreateGridList(0.3, 0.3, 0.4, 0.4, true)&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 1&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 1, 255, 0, 0)&lt;br /&gt;
&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 2&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 2, 0, 255, 0)&lt;br /&gt;
&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 3&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 3, 0, 0, 255)&lt;br /&gt;
&lt;br /&gt;
    dgsGridListAddColumn(gridlist, &amp;quot;Column 4&amp;quot;, 0.25)&lt;br /&gt;
    dgsGridListSetColumnTextColor(gridlist, 4, 255, 255, 0, 180)&lt;br /&gt;
&lt;br /&gt;
    for i = 1, 100 do&lt;br /&gt;
        local row = dgsGridListAddRow(gridlist)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 1, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 2, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 3, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
        dgsGridListSetItemText(gridlist, row, 4, &amp;quot;Row &amp;quot; .. i)&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
createGridList()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:DGS_GridList_Functions&amp;diff=75694</id>
		<title>Template:DGS GridList Functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:DGS_GridList_Functions&amp;diff=75694"/>
		<updated>2022-11-27T10:30:24Z</updated>

		<summary type="html">&lt;p&gt;XLive: column text color&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*[[dgsCreateGridList]]&lt;br /&gt;
*[[dgsGridListClear]]&lt;br /&gt;
*[[dgsGridListGetScrollBar]]&lt;br /&gt;
*[[dgsGridListSetScrollPosition]]&lt;br /&gt;
*[[dgsGridListGetScrollPosition]]&lt;br /&gt;
*[[dgsGridListScrollTo]]&lt;br /&gt;
*[[dgsGridListSetHorizontalScrollPosition]]&lt;br /&gt;
*[[dgsGridListGetHorizontalScrollPosition]]&lt;br /&gt;
*[[dgsGridListSetVerticalScrollPosition]]&lt;br /&gt;
*[[dgsGridListGetVerticalScrollPosition]]&lt;br /&gt;
*[[dgsGridListResetScrollBarPosition]]&lt;br /&gt;
*[[dgsGridListSetColumnRelative]]&lt;br /&gt;
*[[dgsGridListGetColumnRelative]]&lt;br /&gt;
*[[dgsGridListAddColumn]]&lt;br /&gt;
*[[dgsGridListRemoveColumn]]&lt;br /&gt;
*[[dgsGridListClearColumn]]&lt;br /&gt;
*[[dgsGridListGetColumnCount]]&lt;br /&gt;
*[[dgsGridListGetColumnAllWidth]]&lt;br /&gt;
*[[dgsGridListGetColumnHeight]]&lt;br /&gt;
*[[dgsGridListSetColumnHeight]]&lt;br /&gt;
*[[dgsGridListGetColumnWidth]]&lt;br /&gt;
*[[dgsGridListSetColumnWidth]]&lt;br /&gt;
*[[dgsGridListAutoSizeColumn]]&lt;br /&gt;
*[[dgsGridListGetColumnTextSize]]&lt;br /&gt;
*[[dgsGridListSetColumnTextSize]]&lt;br /&gt;
*[[dgsGridListGetColumnTitle]]&lt;br /&gt;
*[[dgsGridListSetColumnTitle]]&lt;br /&gt;
*[[dgsGridListGetColumnFont]]&lt;br /&gt;
*[[dgsGridListSetColumnFont]]&lt;br /&gt;
*[[dgsGridListGetColumnAlignment]]&lt;br /&gt;
*[[dgsGridListSetColumnAlignment]]&lt;br /&gt;
*[[dgsGridListSetColumnTextColor]]&lt;br /&gt;
*[[dgsGridListGetColumnTextColor]]&lt;br /&gt;
*[[dgsGridListSetSortColumn]]&lt;br /&gt;
*[[dgsGridListGetSortColumn]]&lt;br /&gt;
*[[dgsGridListGetEnterColumn]]&lt;br /&gt;
*[[dgsGridListAddRow]]&lt;br /&gt;
*[[dgsGridListAddRows]]&lt;br /&gt;
*[[dgsGridListRemoveRow]]&lt;br /&gt;
*[[dgsGridListClearRow]]&lt;br /&gt;
*[[dgsGridListGetRowCount]]&lt;br /&gt;
*[[dgsGridListGetRowBackGroundImage]]&lt;br /&gt;
*[[dgsGridListSetRowBackGroundImage]]&lt;br /&gt;
*[[dgsGridListSetRowBackGroundColor]]&lt;br /&gt;
*[[dgsGridListGetRowBackGroundColor]]&lt;br /&gt;
*[[dgsGridListSetRowAsSection]]&lt;br /&gt;
*[[dgsGridListGetRowSelectable]]&lt;br /&gt;
*[[dgsGridListSetRowSelectable]]&lt;br /&gt;
*[[dgsGridListGetRowHoverable]]&lt;br /&gt;
*[[dgsGridListSetRowHoverable]]&lt;br /&gt;
*[[dgsGridListGetItemAlignment]]&lt;br /&gt;
*[[dgsGridListSetItemAlignment]]&lt;br /&gt;
*[[dgsGridListSetItemTextSize]]&lt;br /&gt;
*[[dgsGridListGetItemTextSize]]&lt;br /&gt;
*[[dgsGridListSetItemColor]]&lt;br /&gt;
*[[dgsGridListGetItemColor]]&lt;br /&gt;
*[[dgsGridListSetItemTextOffset]]&lt;br /&gt;
*[[dgsGridListGetItemTextOffset]]&lt;br /&gt;
*[[dgsGridListSetItemText]]&lt;br /&gt;
*[[dgsGridListGetItemText]]&lt;br /&gt;
*[[dgsGridListSetItemFont]]&lt;br /&gt;
*[[dgsGridListGetItemFont]]&lt;br /&gt;
*[[dgsGridListSetItemData]]&lt;br /&gt;
*[[dgsGridListGetItemData]]&lt;br /&gt;
*[[dgsGridListSetItemImage]]&lt;br /&gt;
*[[dgsGridListGetItemImage]]&lt;br /&gt;
*[[dgsGridListRemoveItemImage]]&lt;br /&gt;
*[[dgsGridListSetItemBackGroundColorTemplate]]&lt;br /&gt;
*[[dgsGridListSetItemBackGroundImage]]&lt;br /&gt;
*[[dgsGridListGetItemBackGroundImage]]&lt;br /&gt;
*[[dgsGridListSetItemBackGroundColor]]&lt;br /&gt;
*[[dgsGridListGetItemBackGroundColor]]&lt;br /&gt;
*[[dgsGridListSelectItem]]&lt;br /&gt;
*[[dgsGridListItemIsSelected]]&lt;br /&gt;
*[[dgsGridListGetSelectedCount]]&lt;br /&gt;
*[[dgsGridListGetPreselectedItem]]&lt;br /&gt;
*[[dgsGridListGetSelectedItem]]&lt;br /&gt;
*[[dgsGridListSetSelectedItem]]&lt;br /&gt;
*[[dgsGridListGetSelectedItems]]&lt;br /&gt;
*[[dgsGridListSetSelectedItems]]&lt;br /&gt;
*[[dgsGridListGetItemSelectable]]&lt;br /&gt;
*[[dgsGridListSetItemSelectable]]&lt;br /&gt;
*[[dgsGridListGetItemHoverable]]&lt;br /&gt;
*[[dgsGridListSetItemHoverable]]&lt;br /&gt;
*[[dgsGridListSetSelectionMode]]&lt;br /&gt;
*[[dgsGridListGetSelectionMode]]&lt;br /&gt;
*[[dgsGridListSetNavigationEnabled]]&lt;br /&gt;
*[[dgsGridListGetNavigationEnabled]]&lt;br /&gt;
*[[dgsGridListSetMultiSelectionEnabled]]&lt;br /&gt;
*[[dgsGridListGetMultiSelectionEnabled]]&lt;br /&gt;
*[[dgsGridListSetAutoSortEnabled]]&lt;br /&gt;
*[[dgsGridListGetAutoSortEnabled]]&lt;br /&gt;
*[[dgsGridListSetSortFunction]]&lt;br /&gt;
*[[dgsGridListSetSortEnabled]]&lt;br /&gt;
*[[dgsGridListGetSortEnabled]]&lt;br /&gt;
*[[dgsGridListSort]]&lt;br /&gt;
*[[dgsAttachToGridList]]&lt;br /&gt;
*[[dgsDetachFromGridList]]&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=MTA_Classes&amp;diff=75278</id>
		<title>MTA Classes</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=MTA_Classes&amp;diff=75278"/>
		<updated>2022-07-13T14:08:58Z</updated>

		<summary type="html">&lt;p&gt;XLive: Undo revision 75263 by Borsuczek123 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In order to perform operations on MTA objects via scripting, pointers to internal classes are exported to scripts as Lua userdata. Each of these classes has a number of exported scripting functions associated with them.&lt;br /&gt;
&lt;br /&gt;
Elements that have a physical representation in the game are also known as [[entity|Entities]].&lt;br /&gt;
&lt;br /&gt;
The complete list of classes to be found in scripts follows:&lt;br /&gt;
&lt;br /&gt;
* [[account|Account]]&lt;br /&gt;
* [[acl|ACL]]&lt;br /&gt;
* [[aclgroup|ACL group]]&lt;br /&gt;
* [[Ban]]&lt;br /&gt;
* [[element|Element]]&lt;br /&gt;
&amp;lt;ul&amp;gt;{{Elements}}&amp;lt;/ul&amp;gt;&lt;br /&gt;
* [[resource|Resource]]&lt;br /&gt;
* [[textdisplay|Text display]]&lt;br /&gt;
* [[textitem|Text item]]&lt;br /&gt;
* [[timer|Timer]]&lt;br /&gt;
* [[xmlnode|XML node]]&lt;br /&gt;
* [[connection|Connection]]&lt;br /&gt;
[[Category:Scripting Concepts]]&lt;br /&gt;
&lt;br /&gt;
[[hu:MTA Classes]]&lt;br /&gt;
[[es:Clases MTA]]&lt;br /&gt;
[[it:Classi di MTA]]&lt;br /&gt;
[[ru:Классы MTA]]&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Element_tree&amp;diff=75277</id>
		<title>Element tree</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Element_tree&amp;diff=75277"/>
		<updated>2022-07-13T14:08:44Z</updated>

		<summary type="html">&lt;p&gt;XLive: Undo revision 75264 by Borsuczek123 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Tre.png|frame|Element tree]]&lt;br /&gt;
MTA uses a so-called ''element tree'' to store all the elements that exist on the server and the client. This is directly related to the set of running [[resources]] and their map files' XML layout, although it can be changed at run-time by scripts.&lt;br /&gt;
&lt;br /&gt;
If you are familiar with the concept of ''trees'' in computer-science, this should be easy to understand. If you are not, think of it as a family tree - except everyone only has a single parent. Every [[element]] has a ''parent'' element.&lt;br /&gt;
&lt;br /&gt;
All elements that are created within scripts or from .map files are child elements of the resource they belong to. Thus, most elements (except for [[client]]s) exist only within resources and are also destroyed as soon as their resource is stopped.&lt;br /&gt;
&lt;br /&gt;
==Tree elements==&lt;br /&gt;
* '''root''': This is at the very base of the tree - all elements are children (or descendants) of this element.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
getRootElement()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* '''resource''': These are direct children of the root element - with one for each ''running'' resource. This element is called the ''resource root''. Its ID holds the name of the resource.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
getResourceRootElement()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* '''map''': Each resource element contains at least one map element, representing either a &amp;quot;.map&amp;quot; file in the resource or the one containing the elements created by scripts (this is called the ''dynamic'' map). Their IDs contain the maps' filenames, or ''dynamic'' for the dynamic map.&lt;br /&gt;
** Map files can contain a number of other [[element]]s as well as an unlimited number of custom elements.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This in an example of a serverside tree dumped to XML from a running server.&lt;br /&gt;
''Please note that it is shortened on some places for the sake of overview.''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;root&amp;gt;&lt;br /&gt;
	&amp;lt;console/&amp;gt;&lt;br /&gt;
	&amp;lt;player dontRespawn=&amp;quot;false&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;player dontRespawn=&amp;quot;false&amp;quot; lastSpawnarea=&amp;quot;&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;resourcebrowser&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;ajax&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;resourcemanager&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;spawnmanager&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;mapmanager&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;runcode&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;fr&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;map id=&amp;quot;dynamic&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;vehicle/&amp;gt;&lt;br /&gt;
		&amp;lt;/map&amp;gt;&lt;br /&gt;
	&amp;lt;/resource&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;elementbrowser&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;assault&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;map id=&amp;quot;dynamic&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;team/&amp;gt;&lt;br /&gt;
			&amp;lt;team/&amp;gt;&lt;br /&gt;
			&amp;lt;blip/&amp;gt;&lt;br /&gt;
			&amp;lt;marker/&amp;gt;&lt;br /&gt;
			&amp;lt;colshape/&amp;gt;&lt;br /&gt;
			&amp;lt;blip/&amp;gt;&lt;br /&gt;
			&amp;lt;blip/&amp;gt;&lt;br /&gt;
		&amp;lt;/map&amp;gt;&lt;br /&gt;
	&amp;lt;/resource&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;as-farm&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;map id=&amp;quot;dynamic&amp;quot;/&amp;gt;&lt;br /&gt;
		&amp;lt;map id=&amp;quot;as-farm.map&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;spawngroup req=&amp;quot;&amp;quot; type=&amp;quot;attacker&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;spawnarea posY=&amp;quot;-8.3976354598999&amp;quot; posX=&amp;quot;20.182683944702&amp;quot; skins=&amp;quot;9&amp;quot; ... /&amp;gt;&lt;br /&gt;
			&amp;lt;/spawngroup&amp;gt;&lt;br /&gt;
			&amp;lt;spawngroup req=&amp;quot;&amp;quot; type=&amp;quot;attacker&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;spawnarea posY=&amp;quot;32.166355133057&amp;quot; posX=&amp;quot;-46.90763092041&amp;quot; skins=&amp;quot;9&amp;quot; ... /&amp;gt;&lt;br /&gt;
			&amp;lt;/spawngroup&amp;gt;&lt;br /&gt;
			&amp;lt;spawngroup req=&amp;quot;&amp;quot; type=&amp;quot;attacker&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;spawnarea posY=&amp;quot;35.214984893799&amp;quot; posX=&amp;quot;-33.486911773682&amp;quot; skins=&amp;quot;9&amp;quot; ... /&amp;gt;&lt;br /&gt;
			&amp;lt;/spawngroup&amp;gt;&lt;br /&gt;
			&amp;lt;spawngroup req=&amp;quot;&amp;quot; type=&amp;quot;attacker&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;spawnarea posY=&amp;quot;35.214984893799&amp;quot; posX=&amp;quot;-33.486911773682&amp;quot; skins=&amp;quot;9&amp;quot; ... /&amp;gt;&lt;br /&gt;
			&amp;lt;/spawngroup&amp;gt;&lt;br /&gt;
			&amp;lt;objective id=&amp;quot;first&amp;quot; type=&amp;quot;checkpoint&amp;quot; description=&amp;quot;Breach into the farm&amp;quot; ... /&amp;gt;&lt;br /&gt;
			&amp;lt;pickup type=&amp;quot;weapon&amp;quot; ... /&amp;gt;&lt;br /&gt;
		&amp;lt;/map&amp;gt;&lt;br /&gt;
	&amp;lt;/resource&amp;gt;&lt;br /&gt;
&amp;lt;/root&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
===Explanation===&lt;br /&gt;
This tree consists of a number of resource root elements, the [[Element/Console|server console]] and two [[player]] elements, that are direct children of the '''root''' element. All these resources have a ''dynamic map'' as child element (it is just not shown for most of them). These contain the elements that are created dynamically by this resource using scripts, for example a [[vehicle]]. If the resource has a map file, it is also a child element, itself containing all the elements in the .map file.&lt;br /&gt;
&lt;br /&gt;
Let's have a closer look at the '''assault''' resource: This contains just one ''dynamic'' map that has 2 teams, 3 blips, 1 marker, and 1 colshape as child elements. These are the elements that are created by the script, for example, the marker, the colshape and one of the blips are probably used for the objective.&lt;br /&gt;
&lt;br /&gt;
The '''as-farm''' resource's function on the contrary is to be a map for the '''assault''' gamemode. The dynamic map is empty (it could contain elements if there was a script in it though), while there is a map called 'as-farm.map', that contains a number of elements. These are mostly custom elements (like spawngroup, spawnarea, objective) but also a few elements that MTA creates automatically after loading the map (like pickup). In the brackets after the element type, you can see the element data it contains. These are identical with the attributes the .map file contains within these elements, while you can also set and get element data for any other elements (e.g. players) with [[setElementData]] and [[getElementData]].&lt;br /&gt;
&lt;br /&gt;
==Practical application==&lt;br /&gt;
Elements can have as many children as they like. This does not directly affect the map in any way, but it comes into its own when combined with the scripting system.&lt;br /&gt;
&lt;br /&gt;
===Setting data for elements===&lt;br /&gt;
If you call a set... function on a node of the element tree, the function will affect every element within it (that it can work on).&lt;br /&gt;
&lt;br /&gt;
So, the following code would set the size of every marker (the only type of element the setMarkerSize function can work on) that is below the root element to ''2.5''.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
setMarkerSize ( root, 2.5 )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The same can be done on any element, it is not restricted to the root element.&lt;br /&gt;
&lt;br /&gt;
===Map manager===&lt;br /&gt;
The [[#Example|example above]] shows the way the [[map manager]] uses different resources. The 'assault' resource is the gamemode, that manages what happens on the server using scripts and thus by creating elements in the tree dynamically. When a map resource is started, the gamemode receives a [[resource|resource pointer]] referring to the started resource - in this case ''as-farm'' - from which you can retrieve and store the resource root element. Using this element in conjunction with functions like [[getElementsByType]], [[getElementData]] and various others, you can access any of the information that was loaded into the tree from the 'as-farm.map'-file through scripts in the gamemode resource.&lt;br /&gt;
&lt;br /&gt;
Another thing that has to be considered related to the tree of elements is the fact that when you change the map, you don't have to remove any elements you created within the map resource, while you '''do''' have to remove elements that are created within the gamemode resource, '''if''' they are specific to the map (which will be probably the case for those items you create based on information read from the map resource's .map files).&lt;br /&gt;
&lt;br /&gt;
==Element browser==&lt;br /&gt;
You can start the resource ''elementbrowser'' to see a live view of the element tree on your server. Just start the resource and browser to your server's web page and choose the ''Element browser'' option in the sidebar (firefox only currently).&lt;br /&gt;
&lt;br /&gt;
[[Category:Scripting Concepts]]&lt;br /&gt;
&lt;br /&gt;
[[hu:Element tree]]&lt;br /&gt;
[[es:Árbol de elementos]]&lt;br /&gt;
[[ru:Element tree]]&lt;br /&gt;
[[pl:Element tree]]&lt;br /&gt;
[[pt-br:Árvore de elementos]]&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Element&amp;diff=75275</id>
		<title>Element</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Element&amp;diff=75275"/>
		<updated>2022-07-13T14:08:14Z</updated>

		<summary type="html">&lt;p&gt;XLive: Undo revision 75266 by Borsuczek123 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;An '''element''' is a generic class that can represent almost all in-game [[entity|entities]]. The built-in element types are:&lt;br /&gt;
&lt;br /&gt;
{{Elements}}&lt;br /&gt;
&lt;br /&gt;
Any other element type can be created as an abstract element, not referring to any game [[entity]]. For example, '''resource''' and '''map''' elements are created when resources and maps are loaded to group entities they create as their children.&lt;br /&gt;
&lt;br /&gt;
Elements share common functions such as type and list retrieval, a destroy operation to remove both the element and the game entity it is linked to (except for some elements which can't be destroyed, for example client elements), [[element data]] storing and retrieval, and many more common operations.&lt;br /&gt;
&lt;br /&gt;
All elements are stored internally in a [[Element tree|tree structure]], and as such every element except the '''root''' element has a parent element, that can be the '''root''' element, a '''resource''', '''map''' or another element. This is purely for declaring the scope of function calls.&lt;br /&gt;
&lt;br /&gt;
==Related scripting functions==&lt;br /&gt;
===Client===&lt;br /&gt;
{{Client element functions}}&lt;br /&gt;
===Server===&lt;br /&gt;
{{Element functions}}&lt;br /&gt;
[[Category:Scripting Concepts]]&lt;br /&gt;
&lt;br /&gt;
[[en:Element]]&lt;br /&gt;
[[ru:Element]]&lt;br /&gt;
[[es:Elemento]]&lt;br /&gt;
[[it:Elemento]]&lt;br /&gt;
[[hu:Element]]&lt;br /&gt;
[[pl:Element]]&lt;br /&gt;
[[pt-br:Elemento]]&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=How_you_can_help&amp;diff=75273</id>
		<title>How you can help</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=How_you_can_help&amp;diff=75273"/>
		<updated>2022-07-13T14:07:43Z</updated>

		<summary type="html">&lt;p&gt;XLive: Undo revision 75267 by Borsuczek123 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
Multi Theft Auto has loads of areas in which you can help us. In turn, we'll be more than happy to help you get started with any ideas you have, help test them and - if they're good enough - release them to the whole community. This page outlines the key areas you could do something in, of course, there are many things we've not thought of, so think outside the box!&lt;br /&gt;
&lt;br /&gt;
==Coding for MTA:SA==&lt;br /&gt;
* Become a patch contributor by sending [https://github.com/multitheftauto/mtasa-blue/pulls pull requests] to MTA, containing requested features or bugfixes. ([[Coding guidelines]])&lt;br /&gt;
* Translate MTA:SA to your native language - https://translate.multitheftauto.com/&lt;br /&gt;
&lt;br /&gt;
==Scripting==&lt;br /&gt;
* Become a contributor to MTA's official resources by sending [https://github.com/multitheftauto/mtasa-resources/pulls pull requests] to our resources repository&lt;br /&gt;
* Create and [https://community.mtasa.com/ publish] a gamemode or useful script&lt;br /&gt;
**[[Scripting Introduction]]&lt;br /&gt;
**[https://www.lua.org/pil/index.html &amp;quot;Programming in Lua&amp;quot; Manual]&lt;br /&gt;
* Make a general purpose resource that provides useful functions to other resources.&lt;br /&gt;
&lt;br /&gt;
==Mapping==&lt;br /&gt;
* Create and [https://community.mtasa.com/ publish] a map for an existing gamemode, with the map editor.&lt;br /&gt;
**[[Resource:Editor|Map Editor Manual]]&lt;br /&gt;
&lt;br /&gt;
==Web development==&lt;br /&gt;
* Create your own system for statistics - using the [[PHP SDK]] as a basis. Join the [https://discord.gg/RygaCSD MTA discord] (or [https://discord.gg/GNN6PRtTnu development discord]) for help.&lt;br /&gt;
&lt;br /&gt;
==Documentation==&lt;br /&gt;
Before you make changes check out: [[Help:Editing Guidelines|Editing Guidelines]] and [[Help:MTA Wiki Specific Templates|Specific Templates]]&lt;br /&gt;
* Finish documentation for [[:Category:Incomplete|Incomplete functions]] - ask in #mta.scripting if you're not sure of something.&lt;br /&gt;
* Add examples to [[:Category:Needs Example|functions &amp;amp; events missing examples]] - please '''test''' them, and again, ask if you need help.&lt;br /&gt;
* Review and verify [[:Category:Needs Checking|pages that need checking]] - make sure highlighted issues are solved before removing pages from the category.&lt;br /&gt;
* Expand the pages that explain [[:Category:Scripting_Concepts|MTA core concepts]].&lt;br /&gt;
* Write [https://forum.mtasa.com/forum/123-tutorials/ tutorials] to help new people.&lt;br /&gt;
* Translate the wiki pages so people from other countries can get started in MTA too.&lt;br /&gt;
* Create documentation for undocumented functions and events [[Undocumented Items]]&lt;br /&gt;
* Keep 'changes in' [current work-in-progress: https://wiki.multitheftauto.com/wiki/Changes_in_1.6] for future releases updated.&lt;br /&gt;
&lt;br /&gt;
==Quality Assurance==&lt;br /&gt;
* [https://github.com/multitheftauto/mtasa-blue/issues Report issues] with the mod, make sure to do a search on the already reported issues first.&lt;br /&gt;
* Test and confirm existing reported issues.&lt;br /&gt;
* Use the newest build of MTA to detect and report new bugs, by going to 'Settings', 'Advanced', 'Update build type' and choosing 'Nightly' or get it regularly [https://nightly.mtasa.com/ from here].&lt;br /&gt;
* Any bugs which are related to a scripting function / event and present in the main release (rather than nightlies), document that bug by adding a [https://wiki.multitheftauto.com/wiki/Help:MTA_Wiki_Specific_Templates warning] to the wiki page to save other scripters a lot of time.&lt;br /&gt;
&lt;br /&gt;
==Specific tasks==&lt;br /&gt;
* Create a fuzzer to check for crashes in our scripting functions.&lt;br /&gt;
&lt;br /&gt;
==Grant==&lt;br /&gt;
You can donate to MTA:SA [https://mtasa.com/donate/manage.php here]&lt;br /&gt;
&lt;br /&gt;
[[en:How you can help]]&lt;br /&gt;
[[ru:How you can help]]&lt;br /&gt;
[[pl:Jak możesz pomóc]]&lt;br /&gt;
[[uk:How you can help]]&lt;br /&gt;
[[es:Cómo puedes ayudar]]&lt;br /&gt;
[[hu:How you can help]]&lt;br /&gt;
[[tr:Nasıl yardımcı olabilirsiniz]]&lt;br /&gt;
[[pt-br:Como você pode ajudar]]&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=UK/Character_Skins&amp;diff=75271</id>
		<title>UK/Character Skins</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=UK/Character_Skins&amp;diff=75271"/>
		<updated>2022-07-13T14:06:54Z</updated>

		<summary type="html">&lt;p&gt;XLive: Undo revision 75268 by Borsuczek123 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Скіни, які гравець може використовувати.&lt;br /&gt;
&lt;br /&gt;
*[[All Skins Page|Сторінка з усіма скінами]] - Не рекомендується, якщо у вас повільний інтернет.&lt;br /&gt;
*[[Special Skins Page|Сторінка з особливими скінами]] - Нові скіни, які стали доступні починаючи з MTA версії 1.1&lt;br /&gt;
*[[Gang Skins|Скіни членів банд]]&lt;br /&gt;
*[[Female Skins|Жіночі скіни]]&lt;br /&gt;
*[[Male Skins|Чоловічі скіни]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Список скінів:'''&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
-- повний список&lt;br /&gt;
allSkins = getValidPedModels()&lt;br /&gt;
-- окремий список&lt;br /&gt;
maleSkins = {0, 1, 2, 7, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 32, 33, 34, 35, 36, 37, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 57, 58, 59, 60, 61, 62, 66, 67, 68, 70, 71, 72, 73, 78, 79, 80, 81, 82, 83, 84, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 120, 121, 122, 123, 124, 125, 126, 127, 128, 132, 133, 134, 135, 136, 137, 142, 143, 144, 146, 147, 153, 154, 155, 156, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 170, 171, 173, 174, 175, 176, 177, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 200, 202, 203, 204, 206, 209, 210, 212, 213, 217, 220, 221, 222, 223, 227, 228, 229, 230, 234, 235, 236, 239, 240, 241, 242, 247, 248, 249, 250, 252, 253, 254, 255, 258, 259, 260, 261, 262, 264, 265, 266, 267, 268, 269, 270, 271, 272, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 290, 291, 292, 293, 294, 295, 296, 297, 299, 300, 301, 302, 303, 305, 306, 307, 308, 309, 310, 311, 312}&lt;br /&gt;
femaleSkins = {9, 10, 11, 12, 13, 31, 38, 39, 40, 41, 53, 54, 55, 56, 63, 64, 69, 75, 76, 77, 85, 87, 88, 89, 90, 91, 92, 93, 129, 130, 131, 138, 139, 140, 141, 145, 148, 150, 151, 152, 157, 169, 172, 178, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 201, 205, 207, 211, 214, 215, 216, 218, 219, 224, 225, 226, 231, 232, 233, 237, 238, 243, 244, 245, 246, 251, 256, 257, 263, 298, 304}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{New items|3.0158|1.5.7|&lt;br /&gt;
* Наведені нижче ID не використовувались GTA SA, тому в MTA SA ми застосували однакові символи до кожної з наступних ID. Це дозволяє серверам застосовувати моди до коду цих нових ID. Це нові 236 ID ви можете використовувати для нових скінів:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
3, 4, 5, 6, 8, 42, 65, 74, 86, 119, 149, 208, 273, 289, 329, 340, 382, 383, 398, 399,&lt;br /&gt;
612, 613, 614, 662, 663, 665, 666, 667, 668, 699, 793, 794, 795, 796, 797, 798, 799, 907,&lt;br /&gt;
908, 909, 965, 999, 1194, 1195, 1196, 1197, 1198, 1199, 1200, 1201, 1202, 1203, 1204, 1205,&lt;br /&gt;
1206, 1326, 1573, 1699, 2883, 2884, 3136, 3137, 3138, 3139, 3140, 3141, 3142, 3143, 3144,&lt;br /&gt;
3145, 3146, 3147, 3148, 3149, 3150, 3151, 3152, 3153, 3154, 3155, 3156, 3157, 3158, 3159,&lt;br /&gt;
3160, 3161, 3162, 3163, 3164, 3165, 3166, 3176, 3177, 3179, 3180, 3181, 3182, 3183,&lt;br /&gt;
3184, 3185, 3186, 3188, 3189, 3190, 3191, 3192, 3194, 3195, 3196, 3197, 3198, 3199, 3200,&lt;br /&gt;
3201, 3202, 3203, 3204, 3205, 3206, 3207, 3208, 3209, 3210, 3211, 3212, 3213, 3215,&lt;br /&gt;
3216, 3217, 3218, 3219, 3220, 3222, 3223, 3224, 3225, 3226, 3227, 3228, 3229, 3230, 3231,&lt;br /&gt;
3232, 3233, 3234, 3235, 3236, 3237, 3238, 3239, 3240, 3245, 3247, 3248, 3251, 3254,&lt;br /&gt;
3266, 3348, 3349, 3416, 3429, 3610, 3611, 3784, 3870, 3871, 3883, 3889, 3974, 4542, 4543,&lt;br /&gt;
4544, 4545, 4546, 4547, 4548, 4549, 4763, 4764, 4765, 4766, 4767, 4768, 4769, 4770, 4771,&lt;br /&gt;
4772, 4773, 4774, 4775, 4776, 4777, 4778, 4779, 4780, 4781, 4782, 4783, 4784, 4785, 4786,&lt;br /&gt;
4787, 4788, 4789, 4790, 4791, 4792, 4793, 4794, 4795, 4796, 4797, 4798, 4799, 4800, 4801,&lt;br /&gt;
4802, 4803, 4804, 4805, 5090, 5104, 5376, 5377, 5378, 5379, 5380, 5381, 5382, 5383,&lt;br /&gt;
5384, 5385, 5386, 5387, 5388, 5389&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|7701}}--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Розбиті по секціях сторінки скінами:'''&lt;br /&gt;
----&lt;br /&gt;
*[[Skins Page 1|Сторінка 1]]: 7, 9-29&lt;br /&gt;
*[[Skins Page 2|Сторінка 2]]: 30-41, 43-52&lt;br /&gt;
*[[Skins Page 3|Сторінка 3]]: 53-64, 66-73, 75-76&lt;br /&gt;
*[[Skins Page 4|Сторінка 4]]: 77-85, 87-99&lt;br /&gt;
*[[Skins Page 5|Сторінка 5]]: 100-118, 120-122&lt;br /&gt;
*[[Skins Page 6|Сторінка 6]]: 123-144&lt;br /&gt;
*[[Skins Page 7|Сторінка 7]]: 145-148, 150-167&lt;br /&gt;
*[[Skins Page 8|Сторінка 8]]: 168-189&lt;br /&gt;
*[[Skins Page 9|Сторінка 9]]: 190-207, 209-212&lt;br /&gt;
*[[Skins Page 10|Сторінка 10]]: 213-234&lt;br /&gt;
*[[Skins Page 11|Сторінка 11]]: 235-238, 240-257&lt;br /&gt;
*[[Skins Page 12|Сторінка 12]]: 258-264, 274-288&lt;br /&gt;
*[[Skins Page 13|Сторінка 13]]: 290-312&lt;br /&gt;
&lt;br /&gt;
==Примітки:==&lt;br /&gt;
*Останній діючий ID скіна: 312&lt;br /&gt;
&lt;br /&gt;
*Ці пари ID відносяться до одного персонажу (1-й ID використовується в списках, 2-й відключений)&lt;br /&gt;
**118:119 &lt;br /&gt;
**148:149&lt;br /&gt;
&lt;br /&gt;
*Непрацюючі ID&lt;br /&gt;
**3 4 5 6 8 42 65 74 86 119 149 208 273 289&lt;br /&gt;
&lt;br /&gt;
==Функції скінів==&lt;br /&gt;
{{Template:Skin_functions}}&lt;br /&gt;
&lt;br /&gt;
==Див. також==&lt;br /&gt;
[[UK/Id|Списки ідентифікаторів]]&lt;br /&gt;
&lt;br /&gt;
[[en:Character Skins]]&lt;br /&gt;
[[tr:Karakter Tipleri]]&lt;br /&gt;
[[it:Skin Personaggi]]&lt;br /&gt;
[[es:Skins de Personajes]]&lt;br /&gt;
[[de:Charakterskins]]&lt;br /&gt;
[[zh-cn:角色皮肤]]&lt;br /&gt;
[[ru:Character Skins]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Translated/ID Lists]]&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsCreateBlurBox&amp;diff=74519</id>
		<title>DgsCreateBlurBox</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsCreateBlurBox&amp;diff=74519"/>
		<updated>2022-05-07T12:40:32Z</updated>

		<summary type="html">&lt;p&gt;XLive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Client function}}&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#FF0000;text-shadow:black 0.1em 0.1em 0.6em;&amp;quot;&amp;gt;&amp;gt;&amp;gt;&amp;gt;Warning: This feature requires pixel shader model 2_a&amp;lt;&amp;lt;&amp;lt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function creates a blur box.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
element dgsCreateBlurBox( int resolutionX, int resolutionY [, texture sourceTexture = nil ] )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:DGS_Blur_Box.png|300px|thumb|Example Blur Box]]&lt;br /&gt;
&lt;br /&gt;
===Required Argument===&lt;br /&gt;
*'''resolutionX''': A number of the resolution of the blur box in width.&lt;br /&gt;
*'''resolutionY''': A number of the resolution of the blur box in height.&lt;br /&gt;
&lt;br /&gt;
===Optional Argument===&lt;br /&gt;
*'''sourceTexture''': A texture that you want to blur. Set to ''nil'' to blur the screen.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns a dgs-dxblurbox element (DGS Plugin Type)[ shader (Element Type) ] if succeed, ''false'' otherwise&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
This example shows creating a blur box on image&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs --get exported functions from dgs&lt;br /&gt;
local x,y,width,height = 200,200,600,500&lt;br /&gt;
&lt;br /&gt;
local blurbox = DGS:dgsCreateBlurBox(width, height) --Blur Box&lt;br /&gt;
local blurArea = DGS:dgsCreateImage(x,y,width,height,blurbox,false) --Blur Box Renderer&lt;br /&gt;
local window = DGS:dgsCreateWindow(x,y,width,height,&amp;quot;Test Window&amp;quot;,false) --Window&lt;br /&gt;
DGS:dgsAttachToAutoDestroy(blurbox,window) --Destroy the blurbox with window&lt;br /&gt;
DGS:dgsAttachToAutoDestroy(blurArea,window) --Destroy the blurArea with window&lt;br /&gt;
DGS:dgsAttachElements(blurArea,window,0,0,1,1,true,true) --Attach Blur Box Renderer to Window&lt;br /&gt;
DGS:dgsSetLayer(blurArea,&amp;quot;bottom&amp;quot;) --Make sure the blurArea is always under window&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example adds a blurbox on the full screen&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportFunction())()-- load functions&lt;br /&gt;
&lt;br /&gt;
local sW, sH = guiGetScreenSize() -- get the screen size&lt;br /&gt;
local blurbox = dgsCreateBlurBox(sW, sH) -- Create a blur Box&lt;br /&gt;
local blurArea = dgsCreateImage(0,0,1,1,blurbox,true) -- --Blur Box Renderer&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example shows that you can blur a dgs element&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportFunction())()-- load functions&lt;br /&gt;
&lt;br /&gt;
local sW, sH = guiGetScreenSize() -- get the screen size&lt;br /&gt;
local blurbox = dgsCreateBlurBox(sW/2, sH/2) -- Create a blur Box&lt;br /&gt;
dgsSetProperty(blurbox,&amp;quot;updateScreenSource&amp;quot;,true)&lt;br /&gt;
dgsBlurBoxSetIntensity(blurbox,1)&lt;br /&gt;
dgsBlurBoxSetLevel(blurbox,15)&lt;br /&gt;
local blurArea = dgsCreateImage(0,0,0.5,0.5,blurbox,true) -- --Blur Box Renderer&lt;br /&gt;
window = dgsCreateWindow(400,200,800,200,&amp;quot;123&amp;quot;,false)&lt;br /&gt;
dgsSetPostGUI(window,false)&lt;br /&gt;
dgsSetLayer(window,&amp;quot;bottom&amp;quot;) --This window should be always under the blur box&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsCreateBlurBox&amp;diff=74518</id>
		<title>DgsCreateBlurBox</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsCreateBlurBox&amp;diff=74518"/>
		<updated>2022-05-07T12:39:30Z</updated>

		<summary type="html">&lt;p&gt;XLive: improve example&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Client function}}&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#FF0000;text-shadow:black 0.1em 0.1em 0.6em;&amp;quot;&amp;gt;&amp;gt;&amp;gt;&amp;gt;Warning: This feature requires pixel shader model 2_a&amp;lt;&amp;lt;&amp;lt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function creates a blur box.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
element dgsCreateBlurBox( int resolutionX, int resolutionY [, texture sourceTexture = nil ] )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:DGS_Blur_Box.png|300px|thumb|Example Blur Box]]&lt;br /&gt;
&lt;br /&gt;
===Required Argument===&lt;br /&gt;
*'''resolutionX''': A number of the resolution of the blur box in width.&lt;br /&gt;
*'''resolutionY''': A number of the resolution of the blur box in height.&lt;br /&gt;
&lt;br /&gt;
===Optional Argument===&lt;br /&gt;
*'''sourceTexture''': A texture that you want to blur. Set to ''nil'' to blur the screen.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns a dgs-dxblurbox element (DGS Plugin Type)[ shader (Element Type) ] if succeed, ''false'' otherwise&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
This example shows creating a blur box on image&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs --get exported functions from dgs&lt;br /&gt;
local x,y,width,height&lt;br /&gt;
&lt;br /&gt;
local blurbox = DGS:dgsCreateBlurBox(width, height) --Blur Box&lt;br /&gt;
local blurArea = DGS:dgsCreateImage(x,y,width,height,blurbox,false) --Blur Box Renderer&lt;br /&gt;
local window = DGS:dgsCreateWindow(x,y,width,height,&amp;quot;Test Window&amp;quot;,false) --Window&lt;br /&gt;
DGS:dgsAttachToAutoDestroy(blurbox,window) --Destroy the blurbox with window&lt;br /&gt;
DGS:dgsAttachToAutoDestroy(blurArea,window) --Destroy the blurArea with window&lt;br /&gt;
DGS:dgsAttachElements(blurArea,window,0,0,1,1,true,true) --Attach Blur Box Renderer to Window&lt;br /&gt;
DGS:dgsSetLayer(blurArea,&amp;quot;bottom&amp;quot;) --Make sure the blurArea is always under window&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example adds a blurbox on the full screen&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportFunction())()-- load functions&lt;br /&gt;
&lt;br /&gt;
local sW, sH = guiGetScreenSize() -- get the screen size&lt;br /&gt;
local blurbox = dgsCreateBlurBox(sW, sH) -- Create a blur Box&lt;br /&gt;
local blurArea = dgsCreateImage(0,0,1,1,blurbox,true) -- --Blur Box Renderer&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example shows that you can blur a dgs element&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
loadstring(exports.dgs:dgsImportFunction())()-- load functions&lt;br /&gt;
&lt;br /&gt;
local sW, sH = guiGetScreenSize() -- get the screen size&lt;br /&gt;
local blurbox = dgsCreateBlurBox(sW/2, sH/2) -- Create a blur Box&lt;br /&gt;
dgsSetProperty(blurbox,&amp;quot;updateScreenSource&amp;quot;,true)&lt;br /&gt;
dgsBlurBoxSetIntensity(blurbox,1)&lt;br /&gt;
dgsBlurBoxSetLevel(blurbox,15)&lt;br /&gt;
local blurArea = dgsCreateImage(0,0,0.5,0.5,blurbox,true) -- --Blur Box Renderer&lt;br /&gt;
window = dgsCreateWindow(400,200,800,200,&amp;quot;123&amp;quot;,false)&lt;br /&gt;
dgsSetPostGUI(window,false)&lt;br /&gt;
dgsSetLayer(window,&amp;quot;bottom&amp;quot;) --This window should be always under the blur box&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=User:XLive&amp;diff=74503</id>
		<title>User:XLive</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=User:XLive&amp;diff=74503"/>
		<updated>2022-05-02T00:52:17Z</updated>

		<summary type="html">&lt;p&gt;XLive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;&lt;br /&gt;
*[https://github.com/xLive GitHub]&lt;br /&gt;
*[https://forum.mtasa.com/profile/52180-xlive/ Forum Profile]&lt;br /&gt;
*[https://community.multitheftauto.com/index.php?p=profile&amp;amp;id=416702 Community Profile]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;&lt;br /&gt;
[[Special:Contributions/XLive|My contributions in the wiki]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;&lt;br /&gt;
[https://cdn.discordapp.com/emojis/755816981541683262.png?v=1 don't click!]&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Dgs-dxbutton&amp;diff=74493</id>
		<title>Dgs-dxbutton</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Dgs-dxbutton&amp;diff=74493"/>
		<updated>2022-04-30T20:35:28Z</updated>

		<summary type="html">&lt;p&gt;XLive: update image property&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Dgs|DGS]] Properties is always used to change the gui style and make it more fantastic.&lt;br /&gt;
&lt;br /&gt;
This page shows the properties of dgs-dxbutton that you could use.&lt;br /&gt;
&lt;br /&gt;
==Main Functions==&lt;br /&gt;
*[[dgsSetProperty]]&lt;br /&gt;
*[[dgsGetProperty]]&lt;br /&gt;
&lt;br /&gt;
==Properties==&lt;br /&gt;
===alignment===&lt;br /&gt;
Alignment of the text within the button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;alignment&amp;quot;,{alignX,alignY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''alignX:''' Horizontal alignment of the text within the button. Can be &amp;quot;left&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;right&amp;quot;.&lt;br /&gt;
*'''alignY:''' Vertical alignment of the text within the button. Can be &amp;quot;top&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;bottom&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===clickOffset===&lt;br /&gt;
The offset indicates that how much the text of the button will shift when it is clicked.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;clickOffset&amp;quot;,{offsetX,offsetY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX''' : A float of the 2D X offset relative to the position of the button.&lt;br /&gt;
*'''offsetY''' : A float of the 2D Y offset relative to the position of the button.&lt;br /&gt;
&lt;br /&gt;
===clickType===&lt;br /&gt;
This indicates that which button of the mouse can have effect on the button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;clickType&amp;quot;,clickType)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''clickType''' : If set to 1, only &amp;quot;Left Mouse Button&amp;quot; can do. If set to 2, only &amp;quot;Right Mouse Button&amp;quot; can do. Otherwise it will be both.&lt;br /&gt;
&lt;br /&gt;
===color===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the background of the button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;color&amp;quot;,{normalColor,hoveringColor,clickedColor})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalColor:''' An integer of the color of the background of the button ( neither selected nor clicked by mouse ).&lt;br /&gt;
*'''hoveringColor:''' An integer of the color of the background of the button which is selected.&lt;br /&gt;
*'''clickedColor:''' An integer of the color of the background of the button which is clicked.&lt;br /&gt;
&lt;br /&gt;
===colorCoded===&lt;br /&gt;
Whether the color code is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;colorCoded&amp;quot;,colorCoded)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorCoded''' : Set to true to enable embedded #FFFFFF color codes.&lt;br /&gt;
&lt;br /&gt;
===colorTransitionPeriod===&lt;br /&gt;
This property sets the transition period among colors (normal, hovering, clicked).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;colorTransitionPeriod&amp;quot;,colorTransitionPeriod)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorTransitionPeriod''' : An integer indicates the transition time in miliseconds. ( Set to 0 to disable )&lt;br /&gt;
&lt;br /&gt;
===font===&lt;br /&gt;
This is equivalent to [[dgsSetFont]]/[[dgsGetFont]]. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;font&amp;quot;,font)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''font''' : A [[Element/DX_font|dx font element]] of the text font of the button.&lt;br /&gt;
&lt;br /&gt;
===iconAlignment===&lt;br /&gt;
Alignment of the icon within the button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;iconAlignment&amp;quot;,{alignX,alignY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''alignX:''' Horizontal alignment of the icon within the button. Can be &amp;quot;left&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;right&amp;quot;.&lt;br /&gt;
*'''alignY:''' Vertical alignment of the icon within the button. Can be &amp;quot;top&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;bottom&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===iconColor===&lt;br /&gt;
This property enables you to change the icon color (Work with '''iconImage''').&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;iconColor&amp;quot;,{normalColor,hoveringColor,clickedColor})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalColor:''' An integer of the color of the icon image of the button ( neither selected nor clicked by mouse ).&lt;br /&gt;
*'''hoveringColor:''' An integer of the color of the icon image of the button which is selected.&lt;br /&gt;
*'''clickedColor:''' An integer of the color of the icon image of the button which is clicked.&lt;br /&gt;
&lt;br /&gt;
===iconImage===&lt;br /&gt;
Require [texture/shader] that can be used as the icon image of button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;iconImage&amp;quot;,{normalImage,hoveringImage,clickedImage})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalImage:''' A texture/shader element of the icon image of the button ( neither selected nor clicked by mouse ). ( You can pass a nil value to disable this option )&lt;br /&gt;
*'''hoveringImage:''' A texture/shader element of the  icon image of the button which is selected. ( You can pass a nil value to disable this option )&lt;br /&gt;
*'''clickedImage:''' A texture/shader element of the  icon image of the button which is clicked. ( You can pass a nil value to disable this option )&lt;br /&gt;
&lt;br /&gt;
===iconOffset===&lt;br /&gt;
This property enables you to change the offset of the icon from the text (Work with '''iconImage''').&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;iconOffset&amp;quot;,{iconOffsetX,iconOffsetY,relative})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''iconOffsetX''' : An integer of the 2D X offset in pixels to the position of the icon.&lt;br /&gt;
*'''iconOffsetY''' : An integer of the 2D Y offset in pixels to the position of the icon.&lt;br /&gt;
*'''relative''' : A bool of whether the iconOffset is relative to the height of text or absolute pixels.&lt;br /&gt;
&lt;br /&gt;
===iconRelative===&lt;br /&gt;
This property determines whether the icon is relative to the text or button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;iconRelative&amp;quot;,iconRelative)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''iconRelative:''' A bool  determines whether the icon is relative to the text or button.&lt;br /&gt;
&lt;br /&gt;
===iconShadow===&lt;br /&gt;
The shadow icon image of the button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;iconShadow&amp;quot;,{offsetX,offsetY,color})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX''' : A float of the 2D X offset of the shadow icon of the button.&lt;br /&gt;
*'''offsetY''' : A float of the 2D Y offset of the shadow icon of the button.&lt;br /&gt;
*'''color''' : An integer of the color of the shadow icon of the button.&lt;br /&gt;
&lt;br /&gt;
===iconSize===&lt;br /&gt;
This property enables you to change the icon size (Work with '''iconImage''').&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;iconSize&amp;quot;,{iconSizeX,iconSizeY,relative})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''iconSizeX''' : An integer of the 2D X scale to the position of the icon image.&lt;br /&gt;
*'''iconSizeY''' : An integer of the 2D Y scale to the position of the icon image.&lt;br /&gt;
*'''relative''' : A bool of whether the iconSize is relative to the height of text or absolute pixels.&lt;br /&gt;
&lt;br /&gt;
===image===&lt;br /&gt;
Require [texture/shader] that can be used as the background of button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;image&amp;quot;,image)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''image:''' A texture/shader element of the background of the button&lt;br /&gt;
Or&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;image&amp;quot;,{normalImage,hoveringImage,ClickedImage})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalImage:''' A texture/shader element of the background of the button ( neither selected nor clicked by mouse ). ( You can pass a nil value to disable this image option )&lt;br /&gt;
*'''hoveringImage:''' A texture/shader element of the background of the button which is selected. ( You can pass a nil value to disable this image option )&lt;br /&gt;
*'''clickedImage:''' A texture/shader element of the background of the button which is clicked. ( You can pass a nil value to disable this image option )&lt;br /&gt;
&lt;br /&gt;
===text===&lt;br /&gt;
This is equivalent to [[dgsSetText]]/[[dgsGetText]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;text&amp;quot;,text)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''text''' : A string of the text of the button.&lt;br /&gt;
&lt;br /&gt;
===textColor===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the text of the button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;textColor&amp;quot;,textColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''textColor''' : An integer of the color of the text of the button.&lt;br /&gt;
&lt;br /&gt;
===textOffset===&lt;br /&gt;
The offset of the text on button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;textOffset&amp;quot;,{offsetX,offsetY,relative})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX''' : A float of the 2D X offset relative to the position of the button, depends on '''relative'''.&lt;br /&gt;
*'''offsetY''' : A float of the 2D Y offset relative to the position of the button, depends on '''relative'''.&lt;br /&gt;
*'''relative''' : A bool of whether the offset is relative or absolute.&lt;br /&gt;
&lt;br /&gt;
===textSize===&lt;br /&gt;
The scale of the text of the button. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;textSize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX''' : A float of the 2D X scale of the text of the button.&lt;br /&gt;
*'''scaleY''' : A float of the 2D Y scale of the text of the button.&lt;br /&gt;
&lt;br /&gt;
===shadow===&lt;br /&gt;
The shadow text of the button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;shadow&amp;quot;,{offsetX,offsetY,color})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX''' : A float of the 2D X offset of the shadow text of the button.&lt;br /&gt;
*'''offsetY''' : A float of the 2D Y offset of the shadow text of the button.&lt;br /&gt;
*'''color''' : An integer of the color of the shadow text of the button.&lt;br /&gt;
&lt;br /&gt;
===wordBreak===&lt;br /&gt;
Whether the word-break is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(button,&amp;quot;wordBreak&amp;quot;,wordBreak)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''wordBreak''' : If set to true, the text will wrap to a new line whenever it reaches the right side of the bounding box. If false, the text will always be completely on one line.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSPROPERTIES}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsLabelGetFontHeight&amp;diff=74288</id>
		<title>DgsLabelGetFontHeight</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsLabelGetFontHeight&amp;diff=74288"/>
		<updated>2022-03-16T16:38:05Z</updated>

		<summary type="html">&lt;p&gt;XLive: Undo revision 74285 by XNawaf (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This function returns the height of the font currently used in a DGS text label.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
float dgsLabelGetFontHeight ( element theLabel )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''theLabel:''' The text label to get the font height from.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns the absolute height of the font currently used in the text label if the function is successful, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
This example creates a window, a text label, gets the text extent and font height, and sets the text label size according to these values.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
-- create the window (the container for our label)&lt;br /&gt;
local myWindow = DGS:dgsCreateWindow ( 0, 0, 0.5, 0.4, &amp;quot;Information&amp;quot;, true )&lt;br /&gt;
&lt;br /&gt;
-- create the label&lt;br /&gt;
local myLabel = DGS:dgsCreateLabel ( 10, 10, 0, 0, &amp;quot;This is my text container&amp;quot;, false, myWindow )&lt;br /&gt;
&lt;br /&gt;
-- get the (absolute) text extent and font height, and use these to size the label&lt;br /&gt;
DGS:dgsSetSize ( myLabel, DGS:dgsLabelGetTextExtent ( myLabel ), DGS:dgsLabelGetFontHeight ( myLabel ), false )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsLabelGetTextExtent&amp;diff=74287</id>
		<title>DgsLabelGetTextExtent</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsLabelGetTextExtent&amp;diff=74287"/>
		<updated>2022-03-16T16:37:23Z</updated>

		<summary type="html">&lt;p&gt;XLive: Undo revision 74284 by XNawaf (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This function returns the extent, or width, of the current text inside a DGS text label.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
float dgsLabelGetTextExtent ( element theLabel )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''theLabel:''' The text label to get the text extent from.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns the absolute width of the current text inside the text label if the function is successful, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
This example creates a window, a text label, gets the text extent and font height, and sets the text label size according to these values.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
-- create the window (the container for our label)&lt;br /&gt;
local myWindow = DGS:dgsCreateWindow ( 0, 0, 0.5, 0.4, &amp;quot;Information&amp;quot;, true )&lt;br /&gt;
&lt;br /&gt;
-- create the label&lt;br /&gt;
local myLabel = DGS:dgsCreateLabel ( 10, 10, 0, 0, &amp;quot;This is my text container&amp;quot;, false, myWindow )&lt;br /&gt;
&lt;br /&gt;
-- get the (absolute) text extent and font height, and use these to size the label&lt;br /&gt;
DGS:dgsSetSize ( myLabel, DGS:dgsLabelGetTextExtent ( myLabel ), DGS:dgsLabelGetFontHeight ( myLabel ), false )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsLabelGetFontHeight&amp;diff=74285</id>
		<title>DgsLabelGetFontHeight</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsLabelGetFontHeight&amp;diff=74285"/>
		<updated>2022-03-16T16:13:02Z</updated>

		<summary type="html">&lt;p&gt;XLive: Redirected page to DgsLabelGetTextSize&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[dgsLabelGetTextSize]]&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsLabelGetTextExtent&amp;diff=74284</id>
		<title>DgsLabelGetTextExtent</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsLabelGetTextExtent&amp;diff=74284"/>
		<updated>2022-03-16T16:12:27Z</updated>

		<summary type="html">&lt;p&gt;XLive: Redirected page to DgsLabelGetTextSize&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[dgsLabelGetTextSize]]&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsLabelGetTextSize&amp;diff=74283</id>
		<title>DgsLabelGetTextSize</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsLabelGetTextSize&amp;diff=74283"/>
		<updated>2022-03-16T16:09:42Z</updated>

		<summary type="html">&lt;p&gt;XLive: Undo revision 74282 by XNawaf (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This function retrieves the theoretical width and height (in pixels) of a certain piece of text of dgs label.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
float float dgsLabelGetTextSize( element theLabel )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''theLabel:''' The label of whose text you wish to retrieve the width and height.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns two floats representing the width and height of the text in pixels.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
This example creates a text label, gets the text width and height, and creates a background for the label.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
&lt;br /&gt;
local myLabel = DGS:dgsCreateLabel ( 200, 200, 100, 100, &amp;quot;OK. This is a dgs label of which you want to get the text width and height&amp;quot;, false )&lt;br /&gt;
DGS:dgsSetProperty(myLabel,&amp;quot;wordBreak&amp;quot;,true)&lt;br /&gt;
local width,height = DGS:dgsLabelGetTextSize( myLabel )&lt;br /&gt;
local background = DGS:dgsCreateImage(200, 200, width, height, _, false, _, tocolor(0,0,0,100))&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsLabelGetTextSize&amp;diff=74282</id>
		<title>DgsLabelGetTextSize</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsLabelGetTextSize&amp;diff=74282"/>
		<updated>2022-03-16T16:06:00Z</updated>

		<summary type="html">&lt;p&gt;XLive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This function retrieves the theoretical width and height (in pixels) of a certain piece of text of dgs label.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
float dgsLabelGetTextSize( element theLabel )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''theLabel:''' The label of whose text you wish to retrieve the width and height.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns two floats representing the width and height of the text in pixels.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
This example creates a text label, gets the text width and height, and creates a background for the label.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
&lt;br /&gt;
local myLabel = DGS:dgsCreateLabel ( 200, 200, 100, 100, &amp;quot;OK. This is a dgs label of which you want to get the text width and height&amp;quot;, false )&lt;br /&gt;
DGS:dgsSetProperty(myLabel,&amp;quot;wordBreak&amp;quot;,true)&lt;br /&gt;
local width,height = DGS:dgsLabelGetTextSize( myLabel )&lt;br /&gt;
local background = DGS:dgsCreateImage(200, 200, width, height, _, false, _, tocolor(0,0,0,100))&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Dgs-dxcombobox&amp;diff=73345</id>
		<title>Dgs-dxcombobox</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Dgs-dxcombobox&amp;diff=73345"/>
		<updated>2022-01-09T15:34:07Z</updated>

		<summary type="html">&lt;p&gt;XLive: update arrow&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Dgs|DGS]] Properties is always used to change the gui style and make it more fantastic.&lt;br /&gt;
&lt;br /&gt;
This page shows the properties of dgs-dxcombobox that you could use.&lt;br /&gt;
&lt;br /&gt;
==Main Functions==&lt;br /&gt;
*[[dgsSetProperty]]&lt;br /&gt;
*[[dgsGetProperty]]&lt;br /&gt;
&lt;br /&gt;
==Properties==&lt;br /&gt;
===arrow===&lt;br /&gt;
This property determines the arrow material of the combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;arrow&amp;quot;,arrow)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''arrow:''' A material element (texture/shader/screen).&lt;br /&gt;
&lt;br /&gt;
===alignment===&lt;br /&gt;
Alignment of the caption text within the combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;alignment&amp;quot;,{alignX,alignY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''alignX:''' Horizontal alignment of the caption text within the combo box. Can be &amp;quot;left&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;right&amp;quot;.&lt;br /&gt;
*'''alignY:''' Vertical alignment of the caption text within the combo box. Can be &amp;quot;top&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;bottom&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===autoHideAfterSelected===&lt;br /&gt;
This property determines whether the drop down will be hide automatically after selected.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;autoHideAfterSelected&amp;quot;,autoHideAfterSelected)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''autoHideAfterSelected:''' A bool indicates whether the drop down will be hide automatically after selected.&lt;br /&gt;
&lt;br /&gt;
===bgColor===&lt;br /&gt;
This property determines the background color of the combo box (behind items).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;bgColor&amp;quot;,bgColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''bgColor:''' An integer of the color that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
===bgImage===&lt;br /&gt;
This property determines the background image of the combo box (behind items).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;bgImage&amp;quot;,bgImage)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''bgImage:''' A material element that serves as the background image of the combo box (texture/shader/screen source/renderTarget).&lt;br /&gt;
&lt;br /&gt;
===buttonLen===&lt;br /&gt;
This property stores the width of the arrow button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;buttonLen&amp;quot;,{buttonLen,relative})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''buttonLen:''' A float of the width of arrow button, which is affected by '''relative'''.&lt;br /&gt;
*'''relative:''' If set to ''true'', '''buttonLen''' will range from 0 to 1 relative to combo box's height, otherwise the '''buttonLen''' will be absolute pixels.&lt;br /&gt;
&lt;br /&gt;
===captionEdit===&lt;br /&gt;
This property stores the caption edit when the caption is editable with [[dgsComboBoxSetEditEnabled]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;captionEdit&amp;quot;,captionEdit)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''captionEdit:''' A dgs-dxedit element.&lt;br /&gt;
&lt;br /&gt;
===caption===&lt;br /&gt;
This property stores the caption text of combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;caption&amp;quot;,caption)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''caption:''' A string of the caption text of the combo box.&lt;br /&gt;
&lt;br /&gt;
===clip===&lt;br /&gt;
Whether the clip property is enabled (include caption text and item text). ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;clip&amp;quot;,clip)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''clip:''' If set to true, the parts of the text that don't fit within the bounding box will be cut off.&lt;br /&gt;
&lt;br /&gt;
===color===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the background of the combobox (behind arrow).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;color&amp;quot;,{normalColor,hoveringColor,clickedColor})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalColor:''' An integer of the color of the combobox ( neither selected nor clicked by mouse ).&lt;br /&gt;
*'''hoveringColor:''' An integer of the color of the combobox which is selected.&lt;br /&gt;
*'''clickedColor:''' An integer of the color of the comboox which is clicked.&lt;br /&gt;
&lt;br /&gt;
===colorcoded===&lt;br /&gt;
Whether the color code is enabled (include caption text and item text). ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;colorcoded&amp;quot;,colorcoded)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorcoded:''' Set to true to enable embedded #FFFFFF color codes.&lt;br /&gt;
&lt;br /&gt;
===font===&lt;br /&gt;
This is equivalent to [[dgsSetFont]]/[[dgsGetFont]]. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;font&amp;quot;,font)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''font:''' A string or a [[Element/DX_font|dx font element]] of the text font of the combo box.&lt;br /&gt;
&lt;br /&gt;
===scrollBarThick===&lt;br /&gt;
This property determines the thickness of scroll bar.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;scrollBarThick&amp;quot;,scrollBarThick)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scrollBarThick:''' An integer of the thickness of scroll bar.&lt;br /&gt;
&lt;br /&gt;
===shadow===&lt;br /&gt;
The shadow of the text of the combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;shadow&amp;quot;,{offsetX,offsetY,color,outline})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the shadow text of the combo box.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the shadow text of the combo box.&lt;br /&gt;
*'''color:''' An integer of the color of the shadow text of the combo box.&lt;br /&gt;
*'''outline:''' A bool of the outline state of the shadow text.&lt;br /&gt;
&lt;br /&gt;
===myBox===&lt;br /&gt;
Combo box is composed by dgs-dxcombobox and dgs-dxcombobox-Box. This property stores the dgs-combobox-Box of dgs-dxcombobox.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;myBox&amp;quot;,myBox)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''myBox:''' A dgs-dxcombobox-box element.&lt;br /&gt;
&lt;br /&gt;
===image===&lt;br /&gt;
The image of combo box ( under arrow ).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;image&amp;quot;,{normalImage,hoveringImage,clickedImage})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalImage:''' A texture element of the background of the combobox ( no mouse enter and no mouse click ).&lt;br /&gt;
*'''hoveringImage:''' A texture element of the background of the combobox which is selected.&lt;br /&gt;
*'''clickedImage:''' A texture element of the background of the combobox which is clicked.&lt;br /&gt;
&lt;br /&gt;
===itemAlignment===&lt;br /&gt;
Alignment of the item text within the combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;itemAlignment&amp;quot;,{alignX,alignY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''alignX:''' Horizontal alignment of the item text within the combo box. Can be &amp;quot;left&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;right&amp;quot;.&lt;br /&gt;
*'''alignY:''' Vertical alignment of the item text within the combo box. Can be &amp;quot;top&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;bottom&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===itemTextPadding===&lt;br /&gt;
This property determines the item text padding of combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;itemTextPadding&amp;quot;,{paddingX,alignY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''paddingX''' : An integer of 2D x padding value.&lt;br /&gt;
*'''paddingY''' : An integer of 2D y padding value.&lt;br /&gt;
&lt;br /&gt;
===itemColor===&lt;br /&gt;
This property determines the 3 states' back ground colors of item.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;itemColor&amp;quot;,{colorNormal,colorHoving,colorSelected})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorNormal:''' An integer of the color of the item (Normal State).&lt;br /&gt;
*'''colorHoving:''' An integer of the color of the item (Hoving State).&lt;br /&gt;
*'''colorSelected:''' An integer of the color of the item (Selected State).&lt;br /&gt;
&lt;br /&gt;
===itemData===&lt;br /&gt;
This property stores item data.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;itemData&amp;quot;,itemData)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnData:''' A table stores all item data.&lt;br /&gt;
'''Item Structure'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	 textColor	BackGround Image			BackGround Color			Text	&lt;br /&gt;
	{[-2]=color,	[-1]={normal,hovering,selected},	[0]={normal,hovering,selected},		text	},&lt;br /&gt;
	{[-2]=color,	[-1]={normal,hovering,selected},	[0]={normal,hovering,selected},		text	},&lt;br /&gt;
	{[-2]=color,	[-1]={normal,hovering,selected},	[0]={normal,hovering,selected},		text	},&lt;br /&gt;
	{	...												},&lt;br /&gt;
}&lt;br /&gt;
]]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===itemImage===&lt;br /&gt;
This property determines the 3 states' background image of item.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;itemImage&amp;quot;,{imageDefault,cimageHoving,imageSelected})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''imageNormal:''' A texture of the image of the row (Normal State).&lt;br /&gt;
*'''cimageHoving:''' A texture of the image of the row (Hoving State).&lt;br /&gt;
*'''imageSelected:''' A texture of the image of the row (Selected State).&lt;br /&gt;
&lt;br /&gt;
===itemMoveOffset===&lt;br /&gt;
This property stores the move offset of item that is used to render.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;itemMoveOffset&amp;quot;,itemMoveOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''itemMoveOffset:''' A float stores the move offset of item that is used to render.&lt;br /&gt;
&lt;br /&gt;
===itemTextColor===&lt;br /&gt;
This property determines the color of the item text of the combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;itemTextColor&amp;quot;,itemTextColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''itemTextColor:''' An integer of the color that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
===itemTextSize===&lt;br /&gt;
This property determines the scale of the item text of the combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;itemTextSize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX:''' A float of the 2D X scale of the text of the item.&lt;br /&gt;
*'''scaleY:''' A float of the 2D Y scale of the text of the item.&lt;br /&gt;
&lt;br /&gt;
===listState===&lt;br /&gt;
This property stores the state of combo box which determines whether the combo box is opened(1) or closed(-1).&lt;br /&gt;
See: [[dgsComboBoxGetState]]/[[dgsComboBoxSetState]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;listState&amp;quot;,listState)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''listState:''' An integer of the state of combo box.&lt;br /&gt;
&lt;br /&gt;
===moveHardness===&lt;br /&gt;
This property determines how hard will the combo box moves when scrolling.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;moveHardness&amp;quot;,moveHardness)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''moveHardness:''' A float determins how hard will the combo box moves when scrolling ( should be larger than 0, lower than 1 ).&lt;br /&gt;
&lt;br /&gt;
===scrollbar===&lt;br /&gt;
This property stores the scroll bar of combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;scrollbar&amp;quot;,scrollbar)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scrollbar:''' a dgs-dxscrollbar element.&lt;br /&gt;
&lt;br /&gt;
===select===&lt;br /&gt;
This property stores the selected item of combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;select&amp;quot;,select)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''select:''' A integer of the index of selected item .&lt;br /&gt;
&lt;br /&gt;
===textColor===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the caption text of the combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;textColor&amp;quot;,textColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''textColor:''' An integer of the color of the text of the combo box.&lt;br /&gt;
&lt;br /&gt;
===textPadding===&lt;br /&gt;
This property determines the caption text padding of combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;textPadding&amp;quot;,{paddingX,alignY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''paddingX''' : An integer of 2D x padding value.&lt;br /&gt;
*'''paddingY''' : An integer of 2D y padding value.&lt;br /&gt;
&lt;br /&gt;
===textSize===&lt;br /&gt;
The scale of the capiton text of the combo box. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;textSize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX:''' A float of the 2D X scale of the text of the combo box.&lt;br /&gt;
*'''scaleY:''' A float of the 2D Y scale of the text of the combo box.&lt;br /&gt;
&lt;br /&gt;
===textBox===&lt;br /&gt;
This property determines whether the '''caption''' of combo box is enabled or not.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;textBox&amp;quot;,textBox)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''textBox:''' A bool indicates whether the '''caption''' of combo box is enabled or not.&lt;br /&gt;
&lt;br /&gt;
===wordbreak===&lt;br /&gt;
Whether the word-break of capiton text is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(capiton ,&amp;quot;wordbreak&amp;quot;,wordbreak)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''wordbreak:''' If set to true, the text will wrap to a new line whenever it reaches the right side of the bounding box. If false, the text will always be completely on one line.&lt;br /&gt;
&lt;br /&gt;
==Property of dgs-dxcombobox-Box==&lt;br /&gt;
===myCombo===&lt;br /&gt;
Combo box is composed by dgs-dxcombobox and dgs-dxcombobox-Box. This property stores the dgs-comboboxof dgs-dxcombobox-Box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(myCombo,&amp;quot;myCombo&amp;quot;,myCombo)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''myComboyBox:''' A dgs-dxcombobox element.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSPROPERTIES}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DgsCreateGradient&amp;diff=71650</id>
		<title>DgsCreateGradient</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DgsCreateGradient&amp;diff=71650"/>
		<updated>2021-08-10T23:37:05Z</updated>

		<summary type="html">&lt;p&gt;XLive: add missing space to syntax&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Client function}}&lt;br /&gt;
This function is for creating a gradient shader.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
element dgsCreateGradient( int colorFrom, int colorTo [, float rotation = 0 ] )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Arguments===&lt;br /&gt;
*'''colorFrom''': Gradient color 1&lt;br /&gt;
*'''colorTo ''': Gradient color 2&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments===&lt;br /&gt;
*'''rotation ''': The rotation of the direction of the gradient.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns a dgs-dxgradient [Element Type:shader] if successful, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
DGS = exports.dgs&lt;br /&gt;
&lt;br /&gt;
-- Create A Button&lt;br /&gt;
button = DGS:dgsCreateButton( 0.7, 0.1, 0.2, 0.1, &amp;quot;OK&amp;quot;, true )&lt;br /&gt;
&lt;br /&gt;
-- Create A Gradient Plugin&lt;br /&gt;
gradient = DGS:dgsCreateGradient(tocolor(240,10,10,255),tocolor(100,10,10,255),-90)&lt;br /&gt;
&lt;br /&gt;
-- Tell gradient that don't overwrite the color from the button&lt;br /&gt;
DGS:dgsGradientSetColorOverwritten(gradient,false)&lt;br /&gt;
&lt;br /&gt;
-- Apply the gradient to the button&lt;br /&gt;
DGS:dgsSetProperty(button,&amp;quot;image&amp;quot;,{gradient, gradient, gradient})&lt;br /&gt;
&lt;br /&gt;
 -- Apply the color&lt;br /&gt;
DGS:dgsSetProperty(button,&amp;quot;color&amp;quot;,{tocolor(200,200,200,255),tocolor(255,255,255,255),tocolor(100,100,100,255)})&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSFUNCTIONS}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Dgs-dxcombobox&amp;diff=71498</id>
		<title>Dgs-dxcombobox</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Dgs-dxcombobox&amp;diff=71498"/>
		<updated>2021-07-28T10:35:21Z</updated>

		<summary type="html">&lt;p&gt;XLive: color property&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Dgs|DGS]] Properties is always used to change the gui style and make it more fantastic.&lt;br /&gt;
&lt;br /&gt;
This page shows the properties of dgs-dxcombobox that you could use.&lt;br /&gt;
&lt;br /&gt;
==Main Functions==&lt;br /&gt;
*[[dgsSetProperty]]&lt;br /&gt;
*[[dgsGetProperty]]&lt;br /&gt;
&lt;br /&gt;
==Properties==&lt;br /&gt;
===arrow===&lt;br /&gt;
This property stores the arrow shader of the combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;arrow&amp;quot;,arrow)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''arrow:''' a shader.&lt;br /&gt;
&lt;br /&gt;
===alignment===&lt;br /&gt;
Alignment of the caption text within the combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;alignment&amp;quot;,{alignX,alignY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''alignX:''' Horizontal alignment of the caption text within the combo box. Can be &amp;quot;left&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;right&amp;quot;.&lt;br /&gt;
*'''alignY:''' Vertical alignment of the caption text within the combo box. Can be &amp;quot;top&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;bottom&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===autoHideAfterSelected===&lt;br /&gt;
This property determines whether the drop down will be hide automatically after selected.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;autoHideAfterSelected&amp;quot;,autoHideAfterSelected)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''autoHideAfterSelected:''' A bool indicates whether the drop down will be hide automatically after selected.&lt;br /&gt;
&lt;br /&gt;
===bgColor===&lt;br /&gt;
This property determines the background color of the combo box (behind items).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;bgColor&amp;quot;,bgColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''bgColor:''' An integer of the color that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
===bgImage===&lt;br /&gt;
This property determines the background image of the combo box (behind items).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;bgImage&amp;quot;,bgImage)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''bgImage:''' A material element that serves as the background image of the combo box (texture/shader/screen source/renderTarget).&lt;br /&gt;
&lt;br /&gt;
===buttonLen===&lt;br /&gt;
This property stores the width of the arrow button.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;buttonLen&amp;quot;,{buttonLen,relative})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''buttonLen:''' A float of the width of arrow button, which is affected by '''relative'''.&lt;br /&gt;
*'''relative:''' If set to ''true'', '''buttonLen''' will range from 0 to 1 relative to combo box's height, otherwise the '''buttonLen''' will be absolute pixels.&lt;br /&gt;
&lt;br /&gt;
===captionEdit===&lt;br /&gt;
This property stores the caption edit when the caption is editable with [[dgsComboBoxSetEditEnabled]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;captionEdit&amp;quot;,captionEdit)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''captionEdit:''' A dgs-dxedit element.&lt;br /&gt;
&lt;br /&gt;
===caption===&lt;br /&gt;
This property stores the caption text of combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;caption&amp;quot;,caption)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''caption:''' A string of the caption text of the combo box.&lt;br /&gt;
&lt;br /&gt;
===clip===&lt;br /&gt;
Whether the clip property is enabled (include caption text and item text). ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;clip&amp;quot;,clip)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''clip:''' If set to true, the parts of the text that don't fit within the bounding box will be cut off.&lt;br /&gt;
&lt;br /&gt;
===color===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the background of the combobox (behind arrow).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;color&amp;quot;,{normalColor,hoveringColor,clickedColor})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalColor:''' An integer of the color of the combobox ( neither selected nor clicked by mouse ).&lt;br /&gt;
*'''hoveringColor:''' An integer of the color of the combobox which is selected.&lt;br /&gt;
*'''clickedColor:''' An integer of the color of the comboox which is clicked.&lt;br /&gt;
&lt;br /&gt;
===colorcoded===&lt;br /&gt;
Whether the color code is enabled (include caption text and item text). ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;colorcoded&amp;quot;,colorcoded)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorcoded:''' Set to true to enable embedded #FFFFFF color codes.&lt;br /&gt;
&lt;br /&gt;
===font===&lt;br /&gt;
This is equivalent to [[dgsSetFont]]/[[dgsGetFont]]. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;font&amp;quot;,font)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''font:''' A string or a [[Element/DX_font|dx font element]] of the text font of the combo box.&lt;br /&gt;
&lt;br /&gt;
===scrollBarThick===&lt;br /&gt;
This property determines the thickness of scroll bar.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;scrollBarThick&amp;quot;,scrollBarThick)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scrollBarThick:''' An integer of the thickness of scroll bar.&lt;br /&gt;
&lt;br /&gt;
===shadow===&lt;br /&gt;
The shadow of the text of the combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;shadow&amp;quot;,{offsetX,offsetY,color,outline})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''offsetX:''' A float of the 2D X offset of the shadow text of the combo box.&lt;br /&gt;
*'''offsetY:''' A float of the 2D Y offset of the shadow text of the combo box.&lt;br /&gt;
*'''color:''' An integer of the color of the shadow text of the combo box.&lt;br /&gt;
*'''outline:''' A bool of the outline state of the shadow text.&lt;br /&gt;
&lt;br /&gt;
===myBox===&lt;br /&gt;
Combo box is composed by dgs-dxcombobox and dgs-dxcombobox-Box. This property stores the dgs-combobox-Box of dgs-dxcombobox.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;myBox&amp;quot;,myBox)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''myBox:''' A dgs-dxcombobox-box element.&lt;br /&gt;
&lt;br /&gt;
===image===&lt;br /&gt;
The image of combo box ( under arrow ).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;image&amp;quot;,{normalImage,hoveringImage,clickedImage})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''normalImage:''' A texture element of the background of the combobox ( no mouse enter and no mouse click ).&lt;br /&gt;
*'''hoveringImage:''' A texture element of the background of the combobox which is selected.&lt;br /&gt;
*'''clickedImage:''' A texture element of the background of the combobox which is clicked.&lt;br /&gt;
&lt;br /&gt;
===itemAlignment===&lt;br /&gt;
Alignment of the item text within the combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;itemAlignment&amp;quot;,{alignX,alignY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''alignX:''' Horizontal alignment of the item text within the combo box. Can be &amp;quot;left&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;right&amp;quot;.&lt;br /&gt;
*'''alignY:''' Vertical alignment of the item text within the combo box. Can be &amp;quot;top&amp;quot;, &amp;quot;center&amp;quot; or &amp;quot;bottom&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===itemTextPadding===&lt;br /&gt;
This property determines the item text padding of combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;itemTextPadding&amp;quot;,{paddingX,alignY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''paddingX''' : An integer of 2D x padding value.&lt;br /&gt;
*'''paddingY''' : An integer of 2D y padding value.&lt;br /&gt;
&lt;br /&gt;
===itemColor===&lt;br /&gt;
This property determines the 3 states' back ground colors of item.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;itemColor&amp;quot;,{colorNormal,colorHoving,colorSelected})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''colorNormal:''' An integer of the color of the item (Normal State).&lt;br /&gt;
*'''colorHoving:''' An integer of the color of the item (Hoving State).&lt;br /&gt;
*'''colorSelected:''' An integer of the color of the item (Selected State).&lt;br /&gt;
&lt;br /&gt;
===itemData===&lt;br /&gt;
This property stores item data.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(gridlist,&amp;quot;itemData&amp;quot;,itemData)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''columnData:''' A table stores all item data.&lt;br /&gt;
'''Item Structure'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	 textColor	BackGround Image			BackGround Color			Text	&lt;br /&gt;
	{[-2]=color,	[-1]={normal,hovering,selected},	[0]={normal,hovering,selected},		text	},&lt;br /&gt;
	{[-2]=color,	[-1]={normal,hovering,selected},	[0]={normal,hovering,selected},		text	},&lt;br /&gt;
	{[-2]=color,	[-1]={normal,hovering,selected},	[0]={normal,hovering,selected},		text	},&lt;br /&gt;
	{	...												},&lt;br /&gt;
}&lt;br /&gt;
]]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===itemImage===&lt;br /&gt;
This property determines the 3 states' background image of item.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;itemImage&amp;quot;,{imageDefault,cimageHoving,imageSelected})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''imageNormal:''' A texture of the image of the row (Normal State).&lt;br /&gt;
*'''cimageHoving:''' A texture of the image of the row (Hoving State).&lt;br /&gt;
*'''imageSelected:''' A texture of the image of the row (Selected State).&lt;br /&gt;
&lt;br /&gt;
===itemMoveOffset===&lt;br /&gt;
This property stores the move offset of item that is used to render.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;itemMoveOffset&amp;quot;,itemMoveOffset)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''itemMoveOffset:''' A float stores the move offset of item that is used to render.&lt;br /&gt;
&lt;br /&gt;
===itemTextColor===&lt;br /&gt;
This property determines the color of the item text of the combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;itemTextColor&amp;quot;,itemTextColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''itemTextColor:''' An integer of the color that can be converted by [[tocolor]].&lt;br /&gt;
&lt;br /&gt;
===itemTextSize===&lt;br /&gt;
This property determines the scale of the item text of the combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;itemTextSize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX:''' A float of the 2D X scale of the text of the item.&lt;br /&gt;
*'''scaleY:''' A float of the 2D Y scale of the text of the item.&lt;br /&gt;
&lt;br /&gt;
===listState===&lt;br /&gt;
This property stores the state of combo box which determines whether the combo box is opened(1) or closed(-1).&lt;br /&gt;
See: [[dgsComboBoxGetState]]/[[dgsComboBoxSetState]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;listState&amp;quot;,listState)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''listState:''' An integer of the state of combo box.&lt;br /&gt;
&lt;br /&gt;
===moveHardness===&lt;br /&gt;
This property determines how hard will the combo box moves when scrolling.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;moveHardness&amp;quot;,moveHardness)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''moveHardness:''' A float determins how hard will the combo box moves when scrolling ( should be larger than 0, lower than 1 ).&lt;br /&gt;
&lt;br /&gt;
===scrollbar===&lt;br /&gt;
This property stores the scroll bar of combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;scrollbar&amp;quot;,scrollbar)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scrollbar:''' a dgs-dxscrollbar element.&lt;br /&gt;
&lt;br /&gt;
===select===&lt;br /&gt;
This property stores the selected item of combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;select&amp;quot;,select)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''select:''' A integer of the index of selected item .&lt;br /&gt;
&lt;br /&gt;
===textColor===&lt;br /&gt;
The color which can be translated by [[tocolor]] of the caption text of the combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;textColor&amp;quot;,textColor)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''textColor:''' An integer of the color of the text of the combo box.&lt;br /&gt;
&lt;br /&gt;
===textPadding===&lt;br /&gt;
This property determines the caption text padding of combo box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;textPadding&amp;quot;,{paddingX,alignY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''paddingX''' : An integer of 2D x padding value.&lt;br /&gt;
*'''paddingY''' : An integer of 2D y padding value.&lt;br /&gt;
&lt;br /&gt;
===textSize===&lt;br /&gt;
The scale of the capiton text of the combo box. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;textSize&amp;quot;,{scaleX,scaleY})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''scaleX:''' A float of the 2D X scale of the text of the combo box.&lt;br /&gt;
*'''scaleY:''' A float of the 2D Y scale of the text of the combo box.&lt;br /&gt;
&lt;br /&gt;
===textBox===&lt;br /&gt;
This property determines whether the '''caption''' of combo box is enabled or not.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(combobox,&amp;quot;textBox&amp;quot;,textBox)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''textBox:''' A bool indicates whether the '''caption''' of combo box is enabled or not.&lt;br /&gt;
&lt;br /&gt;
===wordbreak===&lt;br /&gt;
Whether the word-break of capiton text is enabled or not. ''Learn More [[dxDrawText]]''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(capiton ,&amp;quot;wordbreak&amp;quot;,wordbreak)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''wordbreak:''' If set to true, the text will wrap to a new line whenever it reaches the right side of the bounding box. If false, the text will always be completely on one line.&lt;br /&gt;
&lt;br /&gt;
==Property of dgs-dxcombobox-Box==&lt;br /&gt;
===myCombo===&lt;br /&gt;
Combo box is composed by dgs-dxcombobox and dgs-dxcombobox-Box. This property stores the dgs-comboboxof dgs-dxcombobox-Box.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;dgsSetProperty(myCombo,&amp;quot;myCombo&amp;quot;,myCombo)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''myComboyBox:''' A dgs-dxcombobox element.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{DGSPROPERTIES}}&lt;/div&gt;</summary>
		<author><name>XLive</name></author>
	</entry>
</feed>