DgsCreateCheckBox: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
(update arguments names)
 
(9 intermediate revisions by one other user not shown)
Line 2: Line 2:
{{Client function}}
{{Client function}}
This function creates a DGS Dx Check Box.
This function creates a DGS Dx Check Box.
'''Note: DGS Dx Check Box have 3 states.(checked:true; unchecked:false; indeterminate: nil)'''
 
'''Note: DGS Dx Check Box have 3 states.(checked: true; unchecked: false; indeterminate: nil)'''


==Syntax==  
==Syntax==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
element dgsDxCreateCheckBox ( float x, float y, float width, float height, string text, bool selected, bool relative, [element parent = nil] )
element dgsCreateCheckBox ( float x, float y, float width, float height, string text, bool selected, bool relative [, element parent = nil, int textColor, float scaleX = 1.0, float scaleY = 1.0, element normalUncheckedImage = nil, element hoveringUncheckedImage = nil, element clickedUnCheckedImage = nil, int normalUnCheckedColor = 0xFFFFFFFF, int hoveringUnCheckedColor = 0xFFFFFFFF, int clickedUnCheckedColor = 0xFFB4B4B4, element normalCheckedImage = nil, element  hoveringCheckedImage = nil, element clickedCheckedImage = nil, int normalCheckedColor = 0xFFFFFFFF, int hoveringCheckedColor = 0xFFFFFFFF,int clickedCheckedColor = 0xFFB4B4B4, element normalIndeterminateImage = nil, element  hoveringIndeterminateImage = nil, element clickedIndeterminateImage = nil, int normalIndeterminateColor = 0xFFFFFFFF, int hoveringIndeterminateColor = 0xFFFFFFFF,int clickedIndeterminateColor = 0xFFB4B4B4 ] )
</syntaxhighlight>  
</syntaxhighlight>  


Line 18: Line 19:
*'''selected:''' A boolean representing whether the checkbox created should be selected by default.
*'''selected:''' A boolean representing whether the checkbox created should be selected by default.
*'''relative:''' This is whether sizes and positioning are relative. If this is ''true'', then all x,y,width,height floats must be between 0 and 1, representing measures relative to the parent.
*'''relative:''' This is whether sizes and positioning are relative. If this is ''true'', then all x,y,width,height floats must be between 0 and 1, representing measures relative to the parent.
===Optional Arguments===
{{OptionalArg}}
*'''parent:''' This is the parent that the DGS check box is attached to.  If the ''relative'' argument is true, sizes and positioning will be made relative to this parent. If the ''relative'' argument is false, positioning will be the number of offset pixels from the parent's origin. If no parent is passed, the parent will become the screen - causing positioning and sizing according to screen positioning.
*'''textColor:''' An int of the color of the check box.
*'''scaleX :''' A float of the width of the text scale.
*'''scaleY:''' A float of the height of the text scale.
*'''normalUncheckedImage:''' An image element of the default state of the check box. (unchecked)
*'''hoveringUncheckedImage:''' An image element of the hovered state of the check box. (unchecked)
*'''clickedUnCheckedImage:''' An image element of the clicked state of the check box. (unchecked)
*'''normalUnCheckedColor:''' An integer of the color of the default state of the check box. (unchecked)
*'''hoveringUnCheckedColor:''' An integer of the color of the hovered state of the check box. (unchecked)
*'''clickedUnCheckedColor:''' An integer of the color of the clicked state of the check box. (unchecked)
*'''normalCheckedImage:''' An image element of the default state of the check box. (checked)
*'''hoveringCheckedImage:''' An image element of the hovered state of the check box. (checked)
*'''clickedCheckedImage:''' An image element of the clicked state of the check box. (checked)
*'''normalCheckedColor:''' An integer of the color of the default state of the check box. (checked)
*'''hoveringCheckedColor:''' An integer of the color of the hovered state of the check box. (checked)
*'''clickedCheckedColor:''' An integer of the color of the clicked state of the check box. (checked)
*'''normalIndeterminateImage:''' An image element of the default state of the check box. (indeterminate)
*'''hoveringIndeterminateImage:''' An image element of the hovered state of the check box. (indeterminate)
*'''clickedIndeterminateImage:''' An image element of the clicked state of the check box. (indeterminate)
*'''normalIndeterminateColor:''' An integer of the color of the default state of the check box. (indeterminate)
*'''hoveringIndeterminateColor:''' An integer of the color of the hovered state of the check box. (indeterminate)
*'''clickedIndeterminateColor:''' An integer of the color of the clicked state of the check box. (indeterminate)


===Optional Arguments===  
===Optional Arguments===  
Line 24: Line 49:


===Returns===
===Returns===
Returns [[element]] of the checkbox if it was created succesfully, ''false'' otherwise.  
Returns [[element]] of the checkbox if it was created succesfully, ''false'' otherwise.


==Example==  
==Example==  
<!-- Explain what the example is in a single sentance -->
<!-- Explain what the example is in a single sentance -->
This example creates a GUI window with a checked and an unchecked checkbox and adds a command to toggle their visibility
This example creates a DGS window with a checked and an unchecked checkbox and adds a command to toggle their visibility
<!-- Add the code below, an emphasis should be on making it clear, not optimized. You could provide two versions if you wish, one clear and well commented, the other optimized -->
<!-- Add the code below, an emphasis should be on making it clear, not optimized. You could provide two versions if you wish, one clear and well commented, the other optimized -->
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
DGS = exports.dgs
function drawGUI()
function drawGUI()
local guiWindow = guiCreateWindow(100,100,200,100,"Checkbox test area",false,false) -- create the container window
local window = DGS:dgsCreateWindow(100,100,200,120,"Checkbox test area",false,false) -- create the container window
local checkedBox = guiCreateCheckBox(20,30,150,20,"Checked checkbox",true,false,guiWindow) -- note the parameter after header, it will make the checkbox be checked
local checkedBox = DGS:dgsCreateCheckBox(20,30,150,20,"Checked checkbox",true,false,window) -- note the parameter after header, it will make the checkbox be checked
local uncheckedBox = guiCreateCheckBox(20,60,150,20,"Unchecked checkbox",false,false,guiWindow) -- not here though
local uncheckedBox = DGS:dgsCreateCheckBox(20,60,150,20,"Unchecked checkbox",false,false,window) -- not here though
guiSetVisible(guiWindow,false) -- set it invisible just in case
local indeterminateBox= DGS:dgsCreateCheckBox(20,90,150,20,"Indeterminate checkbox",nil,false,window) -- Indeterminate
return guiWindow -- we return the guiWindow
DGS:dgsSetVisible(window,false) -- set it invisible just in case
return window -- we return the window
end
end
function cmdGUI(cmd)
function cmdGUI(cmd)
if not checkBoxWindow then -- if it hasn't been declared yet
if not checkBoxWindow then -- if it hasn't been declared yet
checkBoxWindow = drawGUI() -- we draw the gui window
checkBoxWindow = drawGUI() -- we draw the dgs window
guiSetVisible(checkBoxWindow,true) -- we set it visible again. Strictly speaking it's not necessary, could have omitted both this and the upper guiSetVisible, but this is needed if you want to cache a window without actually showing it
DGS:dgsSetVisible(checkBoxWindow,true) -- we set it visible again. Strictly speaking it's not necessary, could have omitted both this and the upper dgsSetVisible, but this is needed if you want to cache a window without actually showing it
else -- if we actually have run this function before and declared checkBoxWindow
else -- if we actually have run this function before and declared checkBoxWindow
guiSetVisible(checkBoxWindow, not guiGetVisible(checkBoxWindow)) -- we just toggle the visibility. If it was visible, not visible returns false and thus sets it's visibility false, effectivly hiding it
DGS:dgsSetVisible(checkBoxWindow, not DGS:dgsGetVisible(checkBoxWindow)) -- we just toggle the visibility. If it was visible, not visible returns false and thus sets it's visibility false, effectivly hiding it
end
end
showCursor(not isCursorShowing()) -- similar to above visibility
showCursor(not isCursorShowing()) -- similar to above visibility

Latest revision as of 13:58, 16 February 2021

This function creates a DGS Dx Check Box.

Note: DGS Dx Check Box have 3 states.(checked: true; unchecked: false; indeterminate: nil)

Syntax

element dgsCreateCheckBox ( float x, float y, float width, float height, string text, bool selected, bool relative [, element parent = nil, int textColor, float scaleX = 1.0, float scaleY = 1.0, element normalUncheckedImage = nil, element hoveringUncheckedImage = nil, element clickedUnCheckedImage = nil, int normalUnCheckedColor = 0xFFFFFFFF, int hoveringUnCheckedColor = 0xFFFFFFFF, int clickedUnCheckedColor = 0xFFB4B4B4, element normalCheckedImage = nil, element  hoveringCheckedImage = nil, element clickedCheckedImage = nil, int normalCheckedColor = 0xFFFFFFFF, int hoveringCheckedColor = 0xFFFFFFFF,int clickedCheckedColor = 0xFFB4B4B4, element normalIndeterminateImage = nil, element  hoveringIndeterminateImage = nil, element clickedIndeterminateImage = nil, int normalIndeterminateColor = 0xFFFFFFFF, int hoveringIndeterminateColor = 0xFFFFFFFF,int clickedIndeterminateColor = 0xFFB4B4B4 ] )

Required Arguments

Test Checkbox
  • x: A float of the 2D x position of the checkbox on a player's screen. This is affected by the relative argument.
  • y: A float of the 2D y position of the checkbox on a player's screen. This is affected by the relative argument.
  • width: A float of the width of the text field next to the checkbox. This is affected by the relative argument.
  • height: A float of the height of the text field next to the checkbox. This is affected by the relative argument.
  • text: The text to be displayed next to the checkbox.
  • selected: A boolean representing whether the checkbox created should be selected by default.
  • relative: This is whether sizes and positioning are relative. If this is true, then all x,y,width,height floats must be between 0 and 1, representing measures relative to the parent.

Optional Arguments

NOTE: When using optional arguments, you might need to supply all arguments before the one you wish to use. For more information on optional arguments, see optional arguments.

  • parent: This is the parent that the DGS check box is attached to. If the relative argument is true, sizes and positioning will be made relative to this parent. If the relative argument is false, positioning will be the number of offset pixels from the parent's origin. If no parent is passed, the parent will become the screen - causing positioning and sizing according to screen positioning.
  • textColor: An int of the color of the check box.
  • scaleX : A float of the width of the text scale.
  • scaleY: A float of the height of the text scale.
  • normalUncheckedImage: An image element of the default state of the check box. (unchecked)
  • hoveringUncheckedImage: An image element of the hovered state of the check box. (unchecked)
  • clickedUnCheckedImage: An image element of the clicked state of the check box. (unchecked)
  • normalUnCheckedColor: An integer of the color of the default state of the check box. (unchecked)
  • hoveringUnCheckedColor: An integer of the color of the hovered state of the check box. (unchecked)
  • clickedUnCheckedColor: An integer of the color of the clicked state of the check box. (unchecked)
  • normalCheckedImage: An image element of the default state of the check box. (checked)
  • hoveringCheckedImage: An image element of the hovered state of the check box. (checked)
  • clickedCheckedImage: An image element of the clicked state of the check box. (checked)
  • normalCheckedColor: An integer of the color of the default state of the check box. (checked)
  • hoveringCheckedColor: An integer of the color of the hovered state of the check box. (checked)
  • clickedCheckedColor: An integer of the color of the clicked state of the check box. (checked)
  • normalIndeterminateImage: An image element of the default state of the check box. (indeterminate)
  • hoveringIndeterminateImage: An image element of the hovered state of the check box. (indeterminate)
  • clickedIndeterminateImage: An image element of the clicked state of the check box. (indeterminate)
  • normalIndeterminateColor: An integer of the color of the default state of the check box. (indeterminate)
  • hoveringIndeterminateColor: An integer of the color of the hovered state of the check box. (indeterminate)
  • clickedIndeterminateColor: An integer of the color of the clicked state of the check box. (indeterminate)

Optional Arguments

NOTE: When using optional arguments, you might need to supply all arguments before the one you wish to use. For more information on optional arguments, see optional arguments.

  • parent: This is the parent that the checkbox is attached to. If the relative argument is true, sizes and positioning will be made relative to this parent. If the relative argument is false, positioning will be the number of offset pixels from the parent's origin. If no parent is passed, the parent will become the screen - causing positioning and sizing according to screen positioning.

Returns

Returns element of the checkbox if it was created succesfully, false otherwise.

Example

This example creates a DGS window with a checked and an unchecked checkbox and adds a command to toggle their visibility

DGS = exports.dgs

function drawGUI()
	local window = DGS:dgsCreateWindow(100,100,200,120,"Checkbox test area",false,false) -- create the container window
	local checkedBox = DGS:dgsCreateCheckBox(20,30,150,20,"Checked checkbox",true,false,window) -- note the parameter after header, it will make the checkbox be checked
	local uncheckedBox = DGS:dgsCreateCheckBox(20,60,150,20,"Unchecked checkbox",false,false,window) -- not here though
	local indeterminateBox= DGS:dgsCreateCheckBox(20,90,150,20,"Indeterminate checkbox",nil,false,window) -- Indeterminate
	DGS:dgsSetVisible(window,false) -- set it invisible just in case
	return window -- we return the window
end
function cmdGUI(cmd)
	if not checkBoxWindow then -- if it hasn't been declared yet
		checkBoxWindow = drawGUI() -- we draw the dgs window
		DGS:dgsSetVisible(checkBoxWindow,true) -- we set it visible again. Strictly speaking it's not necessary, could have omitted both this and the upper dgsSetVisible, but this is needed if you want to cache a window without actually showing it
	else -- if we actually have run this function before and declared checkBoxWindow
		DGS:dgsSetVisible(checkBoxWindow, not DGS:dgsGetVisible(checkBoxWindow)) -- we just toggle the visibility. If it was visible, not visible returns false and thus sets it's visibility false, effectivly hiding it	
	end
	showCursor(not isCursorShowing()) -- similar to above visibility
end
addCommandHandler("guiwindow",cmdGUI) -- trigger cmdGUI function with this command

See Also

Custom Cursor Functions

Multi Language Supports

Animation

3D Element

3D Interface

3D Line

3D Image

3D Text

Browser

Button

Check Box

Combo Box

Custom Renderer

Edit

Detect Area

Drag'N Drop

Grid List

Image

Memo

Menu

Label

Layout

Line

Progress Bar

Radio Button

Scale Pane

Scroll Bar

Scroll Pane

Selector

Style

Switch Button

Tab Panel

Window

Basic Shape Plugins

Circle

Quadrilateral

Rounded Rectangle

Other Plugins

Blur Box

Canvas

Chart

Color Picker

Effect 3D

Gradient

Mask

Media Browser

Nine Slice

Object Preview Supports

Paste Handler

QRCode

Remote Image

Screen Source

SVG

Tooltips