Class: AutoItX3::TreeView
Overview
A TreeView is a control that shows a kind of expandable list, like the one displayed ont the left side in .chm
files.
The item
parameter of many methods in this class is a string of form
"#index_0|#index_1|#index_2..."
that describes where to find the item. See the #selected method for an example.
Instance Method Summary collapse
-
#check(item) ⇒ Object
Checks
item
, if it supports that operation. -
#checked?(item) ⇒ Boolean
Returns wheather or not
item
is checked. -
#collapse(item) ⇒ Object
Collapses
item
to hide its children. -
#exists?(item) ⇒ Boolean
Return wheather or not
item
exists. -
#expand(item) ⇒ Object
Expands
item
to show its children. -
#num_subitems(item) ⇒ Object
Returns the number of children of
item
. -
#select(item) ⇒ Object
Selects
item
. -
#selected(use_index = false) ⇒ Object
Returns where to find the selected item.
-
#send_command_to_tree_view(command, arg1 = "", arg2 = "") ⇒ Object
Sends
cmd
toself
. -
#text_at(item) ⇒ Object
(also: #[])
call-seq: text_at( item ) ==> aString [ item ] ==> aString.
-
#uncheck(item) ⇒ Object
Unchecks
item
if it suports that operation (i.e. it’s a checkbox).
Methods inherited from Control
#click, #disable, #enable, #enabled?, #focus, from_control, functions, functions=, #handle, #hide, #initialize, #move, #rect, #send_command_to_control, #send_keys, #show, #text, #text=, #visible?
Constructor Details
This class inherits a constructor from AutoItX3::Control
Instance Method Details
#check(item) ⇒ Object
Checks item
, if it supports that operation.
Parameters
item
-
The path of the item to check.
Return value
Unknown.
Raises
- Au3Error
-
Control or window not found.
Example
ctrl.check("#0|#3|#7")
869 870 871 |
# File 'lib/AutoItX3/control.rb', line 869 def check(item) send_command_to_tree_view("Check", item) end |
#checked?(item) ⇒ Boolean
Returns wheather or not item
is checked.
Parameters
item
-
The item to check.
Return value
true or false.
Raises
- Au3Error
-
Control or window not found.
Example
p ctrl.checked?("#1|#2|#3") #=> true
Remarks
This method always returns false for non-checkable items.
982 983 984 |
# File 'lib/AutoItX3/control.rb', line 982 def checked?(item) send_command_to_tree_view("IsChecked", item).to_i == 1 end |
#collapse(item) ⇒ Object
Collapses item
to hide its children.
Parameters
item
-
The path of the item to collapse.
Return value
Unknown.
Raises
- Au3Error
-
Control or window not found.
Example
ctrl.collapse("#0")
882 883 884 |
# File 'lib/AutoItX3/control.rb', line 882 def collapse(item) send_command_to_tree_view("Collapse", item) end |
#exists?(item) ⇒ Boolean
Return wheather or not item
exists.
Parameters
item
-
The path of the item to check.
Return value
true or false.
Raises
- Au3Error
-
Control or window not found.
Example
p ctrl.exists?("#0|#3") #=> true
p ctrl.exists?("#1|#4") #=> false
896 897 898 |
# File 'lib/AutoItX3/control.rb', line 896 def exists?(item) send_command_to_tree_view("Exists", item).to_i == 1 end |
#expand(item) ⇒ Object
Expands item
to show its children.
Parameters
item
-
The path of the item to expand.
Return value
Unknown.
Raises
- Au3Error
-
Control or window not found.
Example
ctrl.("#0|#3")
909 910 911 |
# File 'lib/AutoItX3/control.rb', line 909 def (item) send_command_to_tree_view("Expand", item) end |
#num_subitems(item) ⇒ Object
Returns the number of children of item
.
Parameters
item
-
The path of the item to check.
Return value
The number of subitems of that node.
Raises
- Au3Error
-
Control or window not found.
Example
p ctrl.num_subitems("#0") #=> 8
Remarks
This method returns 0 if the item doesn’t exist.
924 925 926 |
# File 'lib/AutoItX3/control.rb', line 924 def num_subitems(item) send_command_to_tree_view("GetItemCount", item).to_i end |
#select(item) ⇒ Object
Selects item
.
Parameters
item
-
The item to select.
Return value
Unknown.
Raises
- Au3Error
-
Control or window not found.
Example
ctrl.select("#1|#2")
995 996 997 |
# File 'lib/AutoItX3/control.rb', line 995 def select(item) send_command_to_tree_view("Select", item) end |
#selected(use_index = false) ⇒ Object
Returns where to find the selected item.
Parameters
use_index
-
(
false
) If this is true, you only get the last index.
Return value
If use_index
is false, which is the default, you get a string back that describes where you find the currently selected item. The string is of form
"#index_0|#index_1|#index_3..."
for example
"#0|#3|#0|#10|#1|#0"
for the “ControlClick” item in the AutoItX help. Otherwise, if use_index
is false, you only get the last index of that chain, as an integer.
Raises
- Au3Error
-
Control or window not found.
Example
See Return value.
Remarks
You can pass the result of this method directly to many methods of this class.
945 946 947 948 949 |
# File 'lib/AutoItX3/control.rb', line 945 def selected(use_index = false) result = send_command_to_tree_view("GetSelected", use_index ? 1 : 0) return result.to_i if use_index result end |
#send_command_to_tree_view(command, arg1 = "", arg2 = "") ⇒ Object
Sends cmd
to self
. This method is only used internally.
851 852 853 854 855 856 857 858 |
# File 'lib/AutoItX3/control.rb', line 851 def send_command_to_tree_view(command, arg1 = "", arg2 = "") Control.functions[__method__] ||= AU3_Function.new("ControlTreeView", 'SSSSSSPI') buffer = " " * BUFFER_SIZE buffer.wide! Control.functions[__method__].call(@title.wide, @text.wide, @c_id.to_s.wide, command.to_s.wide, arg1.to_s.wide, arg2.to_s.wide, buffer, BUFFER_SIZE - 1) raise(Au3Error, "Unknown error occured when sending '#{command}' to '#{@c_id}' in '#{@title}'! Maybe an invalid window?") if AutoItX3.last_error == 1 buffer.normal.strip end |
#text_at(item) ⇒ Object Also known as: []
call-seq:
text_at( item ) ==> aString
[ item ] ==> aString
Returns the text of item
.
Parameters
item
-
The item to retrieve the text from.
Return value
The text at the specified position.
Raises
- Au3Error
-
Control or window not found.
Example
p ctrl.text_at("#0|#3|#0|#10|#1|#0") #=> "ControlClick"
Remarks
See #selected for an easy way of how to get the text of the currently selected item.
966 967 968 |
# File 'lib/AutoItX3/control.rb', line 966 def text_at(item) send_command_to_tree_view("GetText", item) end |
#uncheck(item) ⇒ Object
Unchecks item
if it suports that operation (i.e. it’s a checkbox).
Parameters
item
-
The item to uncheck.
Return value
Unknown.
Raises
- Au3Error
-
Control or Window not found.
Example
ctrl.uncheck("#0|#3")
1008 1009 1010 |
# File 'lib/AutoItX3/control.rb', line 1008 def uncheck(item) send_command_to_tree_view("Uncheck", item) end |