Difference between revisions of "Lua:Class:CheckBox"

From Cheat Engine
Jump to navigation Jump to search
(Tanisha)
m (Reverted edits by This content is not available (Talk) to last revision by TheyCallMeTim13)
 
(12 intermediate revisions by 4 users not shown)
Line 1: Line 1:
Currently in AT-SPI there is a discrepancy. The user has a sligne gesture to change to the opposite state depending on the current state but the actions define in specific end states (check or unckeck). Is there a good reason for this? If the AT wants to give the user the same experience as the direct user then it must look at the current state and use the correct action to give a similar toggle effect.Following that logic you should expose both Check and UnCheck in the indeterminate state and let the AT do all the work. Yuk  how did we get here?If there is a good use case for an action that ends in an unknown state as determined by current state and application logic then Toggle might do as you suggest. To my mind toggle indicates change to the other state of 2 states so isn't right for tri state logic where Cycle, Change, Alter. NextState, might be better suitedHey how about
+
[[Category:Lua]]
 +
CheckBox '''Class''': ('''Inheritance''': ''[[Lua:Class:ButtonControl|ButtonControl]]''->''[[Lua:Class:WinControl|WinControl]]''->''[[Lua:Class:Control|Control]]''->''[[Lua:Class:Component|Component]]''->''[[Lua:Class:Object|Object]]'')
 +
 
 +
The Checkbox is a visual component that lets the user click it and change state between checked, unchecked, and if possible, grayed
 +
 
 +
'''createCheckBox(owner)'''
 +
Creates a CheckBox class object which belongs to the given owner. Owner can be any object inherited from WinControl
 +
 
 +
== Properties ==
 +
;AllowGrayed
 +
:AllowGrayed Determines if there is a 3th state
 +
 
 +
;State
 +
:The state of the checkbox. 0=Unchecked, 1=Checked, 2=Gray
 +
 
 +
;OnChange(function(sender))
 +
:Function to be called when the state changes
 +
 
 +
 
 +
<pre>
 +
Example:
 +
 
 +
local form = createForm( true );
 +
 
 +
local checkBoxes = {};
 +
checkBoxes[1] = createCheckBox( form );
 +
checkBoxes[2] = createCheckBox( form );
 +
checkBoxes[3] = createCheckBox( form );
 +
checkBoxes[4] = createCheckBox( form );
 +
checkBoxes[5] = createCheckBox( form );
 +
 
 +
for x = 1, #checkBoxes do
 +
    checkBoxes[x].Caption="This is checkbox " .. tostring( x )
 +
    checkBoxes[x].setPosition(10, x * 20)
 +
end
 +
 
 +
checkBoxes[1].State=0  -- Sets checkboxes[1] to unchecked state.
 +
checkBoxes[2].State=1  -- Sets checkboxes[2] to checked state.
 +
checkBoxes[3].State=2  -- Sets checkboxes[3] to the gray state
 +
 
 +
if checkBoxes[4].Checked then  -- if checkboxes[4] is checked then the function returns true otherwise false.
 +
  print "true"
 +
else
 +
  print "false"
 +
end
 +
</pre>
 +
 
 +
{{LuaSeeAlso}}

Latest revision as of 19:10, 18 March 2019

CheckBox Class: (Inheritance: ButtonControl->WinControl->Control->Component->Object)

The Checkbox is a visual component that lets the user click it and change state between checked, unchecked, and if possible, grayed

createCheckBox(owner) Creates a CheckBox class object which belongs to the given owner. Owner can be any object inherited from WinControl

Properties[edit]

AllowGrayed
AllowGrayed Determines if there is a 3th state
State
The state of the checkbox. 0=Unchecked, 1=Checked, 2=Gray
OnChange(function(sender))
Function to be called when the state changes


Example:

local form = createForm( true );

local checkBoxes = {};
checkBoxes[1] = createCheckBox( form );
checkBoxes[2] = createCheckBox( form );
checkBoxes[3] = createCheckBox( form );
checkBoxes[4] = createCheckBox( form );
checkBoxes[5] = createCheckBox( form );

for x = 1, #checkBoxes do
    checkBoxes[x].Caption="This is checkbox " .. tostring( x )
    checkBoxes[x].setPosition(10, x * 20)
end 

checkBoxes[1].State=0  -- Sets checkboxes[1] to unchecked state.
checkBoxes[2].State=1  -- Sets checkboxes[2] to checked state.
checkBoxes[3].State=2  -- Sets checkboxes[3] to the gray state

if checkBoxes[4].Checked then  -- if checkboxes[4] is checked then the function returns true otherwise false.
   print "true"
else
   print "false"
end

See also[edit]