DgsBindToColorPicker: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
 
(15 intermediate revisions by the same user not shown)
Line 6: Line 6:
==Syntax==  
==Syntax==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
bool dgsBindToColorPicker( element boundSource, element targetColorPicker, string colorType, string colorAttribute [, bool isStatic = false ] )
bool dgsBindToColorPicker( element boundSource, element targetColorPicker, string colorType, string colorAttribute [, bool isStatic = false, bool isReversed = false ] )
</syntaxhighlight>  
</syntaxhighlight>  
[[Image:DGS_ComponentSelector.png|350px|thumb|Component Selector in different color type and color attribute]]


===Required Arguments===
===Required Arguments===
*'''boundSource:''' Can be dgs edit/label/component selector/scrollbar.
*'''boundSource''': Can be dgs edit/label/component selector/scrollbar.
*'''targetColorPicker:''' The target color picker to bind.
*'''targetColorPicker''': The target color picker to bind.
*'''colorType:''' The color type. Available values are as follows:
*'''colorType''': The color type. Available values are as follows:
**'''RGB'''
**'''RGB'''
**'''HSL'''
**'''HSL'''
**'''HSV'''
**'''HSV'''
*'''colorAttribute:''' The color attribute, depends on '''colorType'''. Available values are as follows:
**'''#RGBAHEX'''
***'''A'''
**'''RGBAHEX'''
**''RGB:''
*'''colorAttribute''': The color attribute, depends on '''colorType'''. Available values are as follows:
**''RGB'':
***'''R'''
***'''R'''
***'''G'''
***'''G'''
***'''B'''
***'''B'''
**''HSL:''
***'''A'''
**''HSL'':
***'''H'''
***'''H'''
***'''S'''
***'''S'''
***'''L'''
***'''L'''
**''HSV:''
***'''A'''
**''HSV'':
***'''H'''
***'''H'''
***'''S'''
***'''S'''
***'''V'''
***'''V'''
***'''A'''
**''#RGBAHEX'':
***'''RGBA''' : At least 1 attribute. Can be made up of any letter from"R", "G", "B" and"A".
**''RGBAHEX'':
***'''RGBA''' : At least 1 attribute. Can be made up of any letter from"R", "G", "B" and "A".


===Optional Arguments===
===Optional Arguments===
*'''isStatic :''' A bool indicates whether the background color of the component selector is static (only works then the boundSource is dgs-dxcomponentselector). Set to ''true'' means 'Static', which makes the background color not change with selected color of color picker. Set to ''false'' means 'Dynamic', which makes the background color change with selected color of color picker.
*'''isStatic :''' A bool indicates whether the background color of the component selector is static (''only works when the boundSource is dgs-dxcomponentselector''). Set to ''true'' means 'Static', which makes the background color not change with selected color of color picker. Set to ''false'' means 'Dynamic', which makes the background color change with selected color of color picker.
**''RGB:'' Works for all.
**''RGB:'' Works for all.
**''HSL:'' Only H works with static mode.
**''HSL:'' Only H works with static mode.
**''HSV:'' Only H works with static mode.
**''HSV:'' Only H works with static mode.
**Alpha doesn't work with static mode.
*'''isReversed :''' A bool indicates whether the background color of the component selector is reversed.


===Returns===
===Returns===
Line 41: Line 52:


==Example==  
==Example==  
===Example 1===
This example binds edit to color picker
This example binds edit to color picker
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
Line 57: Line 70:


This example binds component select to color picker
This example binds component select to color picker
==Example==  
===Example 2===  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
DGS = exports.dgs --get exported functions from dgs
DGS = exports.dgs --get exported functions from dgs


local cp = DGS:dgsCreateColorPicker("HSVRing",50,50,300,300,false)
local cp = DGS:dgsCreateColorPicker("HSVRing",50,50,300,300,false)
local Aedit = DGS:dgsCreateComponentSelector(400,170,100,30,"",false)
local Aedit = DGS:dgsColorPickerCreateComponentSelector(400,170,100,30,true,false)
DGS:dgsBindToColorPicker(Aedit,cp,"RGB","A") --Alpha doesn't request a specific color type. So it remains in any color type.
DGS:dgsBindToColorPicker(Aedit,cp,"RGB","A") --Alpha doesn't request a specific color type. So it remains in any color type.


--Dynamic Background Component Selector
--Dynamic Background Component Selector
local Redit1 = DGS:dgsCreateComponentSelector(400,50,100,30,"",false)
local Redit1 = DGS:dgsColorPickerCreateComponentSelector(400,50,100,30,true,false)
local Gedit1 = DGS:dgsCreateComponentSelector(400,90,100,30,"",false)
local Gedit1 = DGS:dgsColorPickerCreateComponentSelector(400,90,100,30,true,false)
local Bedit1 = DGS:dgsCreateComponentSelector(400,130,100,30,"",false)
local Bedit1 = DGS:dgsColorPickerCreateComponentSelector(400,130,100,30,true,false)
DGS:dgsBindToColorPicker(Redit1,cp,"RGB","R")
DGS:dgsBindToColorPicker(Redit1,cp,"RGB","R")
DGS:dgsBindToColorPicker(Gedit1,cp,"RGB","G")
DGS:dgsBindToColorPicker(Gedit1,cp,"RGB","G")
Line 74: Line 87:


--Static Background Component Selector
--Static Background Component Selector
local Redit2 = DGS:dgsCreateComponentSelector(550,50,100,30,"",false)
local Redit2 = DGS:dgsColorPickerCreateComponentSelector(550,50,100,30,true,false)
local Gedit2 = DGS:dgsCreateComponentSelector(550,90,100,30,"",false)
local Gedit2 = DGS:dgsColorPickerCreateComponentSelector(550,90,100,30,true,false)
local Bedit2 = DGS:dgsCreateComponentSelector(550,130,100,30,"",false)
local Bedit2 = DGS:dgsColorPickerCreateComponentSelector(550,130,100,30,true,false)
DGS:dgsBindToColorPicker(Redit2,cp,"RGB","R",true)
DGS:dgsBindToColorPicker(Redit2,cp,"RGB","R",true)
DGS:dgsBindToColorPicker(Gedit2,cp,"RGB","G",true)
DGS:dgsBindToColorPicker(Gedit2,cp,"RGB","G",true)
DGS:dgsBindToColorPicker(Bedit2,cp,"RGB","B",true)
DGS:dgsBindToColorPicker(Bedit2,cp,"RGB","B",true)
</syntaxhighlight>
===Example 3===
This example binds edit to color picker for hex color code
<syntaxhighlight lang="lua">
DGS = exports.dgs --get exported functions from dgs
local cp = DGS:dgsCreateColorPicker("HSVRing",350,250,200,200,false)
local PoundHexRGB = DGS:dgsCreateEdit(600,250,100,30,"",false)
local PoundHexRGBA = DGS:dgsCreateEdit(600,300,100,30,"",false)
local PoundHexARGB = DGS:dgsCreateEdit(600,350,100,30,"",false)
local HexRGB = DGS:dgsCreateEdit(600,400,100,30,"",false)
DGS:dgsBindToColorPicker(PoundHexRGB ,cp,"#RGBAHEX","RGB")
DGS:dgsBindToColorPicker(PoundHexRGBA ,cp,"#RGBAHEX","RGBA")
DGS:dgsBindToColorPicker(PoundHexARGB ,cp,"#RGBAHEX","ARGB")
DGS:dgsBindToColorPicker(HexRGB ,cp,"RGBAHEX","RGB")
</syntaxhighlight>
</syntaxhighlight>


==See Also==
==See Also==
{{DGSFUNCTIONS}}
{{DGSFUNCTIONS}}

Latest revision as of 18:27, 29 March 2022

This function allows the possibility to bind a dgs edit/label/component selector/scrollbar to a dgs color picker. The value will be automatically syncronized without writing a lot of code.

Syntax

bool dgsBindToColorPicker( element boundSource, element targetColorPicker, string colorType, string colorAttribute [, bool isStatic = false, bool isReversed = false ] )
Component Selector in different color type and color attribute

Required Arguments

  • boundSource: Can be dgs edit/label/component selector/scrollbar.
  • targetColorPicker: The target color picker to bind.
  • colorType: The color type. Available values are as follows:
    • RGB
    • HSL
    • HSV
    • #RGBAHEX
    • RGBAHEX
  • colorAttribute: The color attribute, depends on colorType. Available values are as follows:
    • RGB:
      • R
      • G
      • B
      • A
    • HSL:
      • H
      • S
      • L
      • A
    • HSV:
      • H
      • S
      • V
      • A
    • #RGBAHEX:
      • RGBA : At least 1 attribute. Can be made up of any letter from"R", "G", "B" and"A".
    • RGBAHEX:
      • RGBA : At least 1 attribute. Can be made up of any letter from"R", "G", "B" and "A".

Optional Arguments

  • isStatic : A bool indicates whether the background color of the component selector is static (only works when the boundSource is dgs-dxcomponentselector). Set to true means 'Static', which makes the background color not change with selected color of color picker. Set to false means 'Dynamic', which makes the background color change with selected color of color picker.
    • RGB: Works for all.
    • HSL: Only H works with static mode.
    • HSV: Only H works with static mode.
    • Alpha doesn't work with static mode.
  • isReversed : A bool indicates whether the background color of the component selector is reversed.

Returns

Returns true if successful, false otherwise

Example

Example 1

This example binds edit to color picker

DGS = exports.dgs --get exported functions from dgs

local cp = DGS:dgsCreateColorPicker("HSVRing",50,50,300,300,false)
local Redit = DGS:dgsCreateEdit(400,50,100,30,"",false)
local Gedit = DGS:dgsCreateEdit(400,90,100,30,"",false)
local Bedit = DGS:dgsCreateEdit(400,130,100,30,"",false)
local Aedit = DGS:dgsCreateEdit(400,170,100,30,"",false)
DGS:dgsBindToColorPicker(Redit,cp,"RGB","R")
DGS:dgsBindToColorPicker(Gedit,cp,"RGB","G")
DGS:dgsBindToColorPicker(Bedit,cp,"RGB","B")
DGS:dgsBindToColorPicker(Aedit,cp,"RGB","A") --Alpha doesn't request a specific color type. So it remains in any color type.

This example binds component select to color picker

Example 2

DGS = exports.dgs --get exported functions from dgs

local cp = DGS:dgsCreateColorPicker("HSVRing",50,50,300,300,false)
local Aedit = DGS:dgsColorPickerCreateComponentSelector(400,170,100,30,true,false)
DGS:dgsBindToColorPicker(Aedit,cp,"RGB","A") --Alpha doesn't request a specific color type. So it remains in any color type.

--Dynamic Background Component Selector
local Redit1 = DGS:dgsColorPickerCreateComponentSelector(400,50,100,30,true,false)
local Gedit1 = DGS:dgsColorPickerCreateComponentSelector(400,90,100,30,true,false)
local Bedit1 = DGS:dgsColorPickerCreateComponentSelector(400,130,100,30,true,false)
DGS:dgsBindToColorPicker(Redit1,cp,"RGB","R")
DGS:dgsBindToColorPicker(Gedit1,cp,"RGB","G")
DGS:dgsBindToColorPicker(Bedit1,cp,"RGB","B")

--Static Background Component Selector
local Redit2 = DGS:dgsColorPickerCreateComponentSelector(550,50,100,30,true,false)
local Gedit2 = DGS:dgsColorPickerCreateComponentSelector(550,90,100,30,true,false)
local Bedit2 = DGS:dgsColorPickerCreateComponentSelector(550,130,100,30,true,false)
DGS:dgsBindToColorPicker(Redit2,cp,"RGB","R",true)
DGS:dgsBindToColorPicker(Gedit2,cp,"RGB","G",true)
DGS:dgsBindToColorPicker(Bedit2,cp,"RGB","B",true)

Example 3

This example binds edit to color picker for hex color code

DGS = exports.dgs --get exported functions from dgs

local cp = DGS:dgsCreateColorPicker("HSVRing",350,250,200,200,false)
local PoundHexRGB = DGS:dgsCreateEdit(600,250,100,30,"",false)
local PoundHexRGBA = DGS:dgsCreateEdit(600,300,100,30,"",false)
local PoundHexARGB = DGS:dgsCreateEdit(600,350,100,30,"",false)
local HexRGB = DGS:dgsCreateEdit(600,400,100,30,"",false)
DGS:dgsBindToColorPicker(PoundHexRGB ,cp,"#RGBAHEX","RGB")
DGS:dgsBindToColorPicker(PoundHexRGBA ,cp,"#RGBAHEX","RGBA")
DGS:dgsBindToColorPicker(PoundHexARGB ,cp,"#RGBAHEX","ARGB")
DGS:dgsBindToColorPicker(HexRGB ,cp,"RGBAHEX","RGB")

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