Class: Tk::BLT::Tree::Node
Constant Summary
collapse
- TreeNodeID_TBL =
TkCore::INTERP.create_table
Constants included
from TkCore
TkCore::EventFlag, TkCore::INTERP, TkCore::WIDGET_DESTROY_HOOK
Constants included
from TkComm
TkComm::GET_CONFIGINFO_AS_ARRAY, TkComm::GET_CONFIGINFOwoRES_AS_ARRAY, TkComm::TkExtlibAutoloadModule, TkComm::Tk_CMDTBL, TkComm::Tk_IDs, TkComm::Tk_WINDOWS, TkComm::USE_TCLs_LIST_FUNCTIONS, TkComm::WidgetClassNames
Constants included
from TkUtil
TkUtil::None, TkUtil::RELEASE_DATE
Constants included
from Tk
AUTO_PATH, INTERP, JAPANIZED_TK, LIBRARY_PATH, MAINLOOP, PACKAGE_PATH, RELEASE_DATE, TCL_LIBRARY_PATH, TCL_MAJOR_VERSION, TCL_MINOR_VERSION, TCL_PACKAGE_PATH, TCL_PATCHLEVEL, TCL_PRECISION, TCL_VERSION, TK_MAJOR_VERSION, TK_MINOR_VERSION, TK_PATCHLEVEL, TK_VERSION, Tkextlib_RELEASE_DATE, TreeCtrl_Widget, X_Scrollable, Y_Scrollable
Constants included
from Encoding
Encoding::TkCommandNames
Class Method Summary
collapse
Instance Method Summary
collapse
-
#apply(keys = {}) ⇒ Object
-
#children ⇒ Object
-
#copy(parent, keys = {}) ⇒ Object
-
#copy_to(dest_tree, parent, keys = {}) ⇒ Object
-
#degree ⇒ Object
-
#delete ⇒ Object
-
#depth ⇒ Object
-
#dump ⇒ Object
-
#dump_to_file(file) ⇒ Object
-
#exist?(keys = {}) ⇒ Boolean
-
#find(keys = {}) ⇒ Object
-
#find_child(label) ⇒ Object
-
#first_child ⇒ Object
-
#fullpath ⇒ Object
-
#get ⇒ Object
-
#get_value(key, default_val = None) ⇒ Object
-
#id ⇒ Object
-
#index ⇒ Object
-
#initialize(tree, parent, keys = {}) ⇒ Node
constructor
-
#keys ⇒ Object
-
#label(text = nil) ⇒ Object
-
#label=(text) ⇒ Object
-
#last_child ⇒ Object
-
#leaf? ⇒ Boolean
-
#link? ⇒ Boolean
-
#move(dest, keys = {}) ⇒ Object
-
#next ⇒ Object
-
#next_sibling ⇒ Object
-
#parent ⇒ Object
-
#position ⇒ Object
-
#prev_sibling ⇒ Object
-
#previous ⇒ Object
-
#restore(str, keys = {}) ⇒ Object
-
#restore_from_file(file, keys = {}) ⇒ Object
-
#restore_overwrite(str, keys = {}) ⇒ Object
-
#restore_overwrite_from_file(file, keys = {}) ⇒ Object
-
#root ⇒ Object
-
#root? ⇒ Boolean
-
#set(data) ⇒ Object
-
#size ⇒ Object
-
#sort(keys = {}) ⇒ Object
-
#type(key) ⇒ Object
-
#unset(*keys) ⇒ Object
-
#values(key = None) ⇒ Object
Methods inherited from TkObject
#destroy, #epath, #event_generate, #method_missing, #path, #tk_send, #tk_send_to_list, #tk_send_to_list_with_enc, #tk_send_to_list_without_enc, #tk_send_to_simplelist, #tk_send_to_simplelist_with_enc, #tk_send_to_simplelist_without_enc, #tk_send_with_enc, #tk_send_without_enc, #to_eval
Methods included from TkCore
#_tk_call_to_list_core, #after, #after_cancel, #after_idle, #appname, #appsend, #appsend_deny, #appsend_displayof, callback, #callback_break, #callback_continue, #callback_return, #chooseColor, #chooseDirectory, #do_one_event, #event_generate, #getMultipleOpenFile, #getMultipleSaveFile, #getOpenFile, #getSaveFile, #get_eventloop_tick, #get_eventloop_weight, #get_no_event_wait, #inactive, #inactive_displayof, #info, #ip_eval, #ip_eval_with_enc, #ip_eval_without_enc, #ip_invoke, #ip_invoke_with_enc, #ip_invoke_without_enc, #is_mainloop?, #load_cmd_on_ip, #mainloop, #mainloop_exist?, #mainloop_thread?, #mainloop_watchdog, #messageBox, #rb_appsend, #rb_appsend_displayof, #reset_inactive, #reset_inactive_displayof, #restart, #scaling, #scaling_displayof, #set_eventloop_tick, #set_eventloop_weight, #set_no_event_wait, #tk_call, #tk_call_to_list, #tk_call_to_list_with_enc, #tk_call_to_list_without_enc, #tk_call_to_simplelist, #tk_call_to_simplelist_with_enc, #tk_call_to_simplelist_without_enc, #tk_call_with_enc, #tk_call_without_enc, #windowingsystem
Methods included from TkComm
#_at, #bind, #bind_all, #bind_append, #bind_append_all, #bind_remove, #bind_remove_all, #bindinfo, #bindinfo_all, #image_obj, #install_cmd, #subst, #uninstall_cmd
Methods included from TkEvent
#install_bind, #install_bind_for_event_class
Methods included from TkUtil
_conv_args, #_conv_args, #_fromUTF8, _get_eval_enc_str, #_get_eval_enc_str, #_get_eval_string, _get_eval_string, _symbolkey2str, #_symbolkey2str, #_toUTF8, bool, #bool, callback, eval_cmd, #hash_kv, hash_kv, install_cmd, num_or_str, #num_or_str, number, #number, string, #string, uninstall_cmd
Methods included from TkBindCore
#bind, #bind_append, #bind_remove, #bindinfo
#[], #[]=, #cget, #config_hash_kv, #configinfo, #configure, #configure_cmd, #current_configinfo
#font_configinfo, #font_configure, #font_copy, #kanjifont_configure, #kanjifont_copy, #latinfont_configure, #latinfont_copy
Methods included from Tk
BinaryString, EncodedString, UTF8_String, add_kinsoku, bell, bell_on_display, const_missing, current_grabs, cursor_display, delete_kinsoku, destroy, #encoding, #encoding=, errorCode, errorInfo, exit, focus, focus_lastfor, focus_next, focus_prev, focus_to, fromUTF8, grid, grid_forget, has_mainwindow?, load_tcllibrary, load_tclscript, load_tclscript_rsrc, load_tclscript_rsrcid, lower_window, pack, pack_forget, pkgconfig_get, pkgconfig_list, place, place_forget, raise_window, show_kinsoku, strictMotif, subst_tk_backslash, subst_utf_backslash, tcl_pkgconfig_get, tcl_pkgconfig_list, thread_update, thread_update_idletasks, tk_pkgconfig_get, tk_pkgconfig_list, toUTF8, to_backslash_sequence, ungrid, unload_tcllibrary, unpack, unplace, #update, update, update_idletasks, utf_to_backslash, utf_to_backslash_sequence
Methods included from Encoding
#encoding, #encoding=, #encoding_convertfrom, #encoding_convertto, #encoding_dirs, #encoding_dirs=, #encoding_names, #encoding_system, #encoding_system=
Constructor Details
#initialize(tree, parent, keys = {}) ⇒ Node
Returns a new instance of Node.
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
# File 'lib/tkextlib/blt/tree.rb', line 46
def initialize(tree, parent, keys={})
@parent = @tree = tree
@tpath = @parent.path
parent = tk_call(@tpath, 'root') unless parent
if (id = keys['node']) && bool(tk_call(@tpath, 'exists', id))
@path = @id = id
keys.delete('node')
tk_call(@tpath, 'move', @id, parent, keys) if parent
else
@path = @id = tk_call(@tpath, 'insert', parent, keys)
end
TreeNodeID_TBL[@tpath] = {} unless TreeNodeID_TBL[@tpath]
TreeNodeID_TBL[@tpath][@id] = self
end
|
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
in the class TkObject
Class Method Details
.id2obj(tree, id) ⇒ Object
19
20
21
22
23
24
25
26
27
28
29
30
31
|
# File 'lib/tkextlib/blt/tree.rb', line 19
def self.id2obj(tree, id)
tpath = tree.path
return id unless TreeNodeID_TBL[tpath]
if TreeNodeID_TBL[tpath][id]
TreeNodeID_TBL[tpath][id]
else
begin
self.new(tree, nil, 'node'=>Integer(id))
rescue
id
end
end
end
|
.new(tree, parent, keys = {}) ⇒ Object
33
34
35
36
37
38
39
40
41
42
43
44
|
# File 'lib/tkextlib/blt/tree.rb', line 33
def self.new(tree, parent, keys={})
keys = _symbolkey2str(keys)
tpath = tree.path
if (id = keys['node']) && (obj = TreeNodeID_TBL[tpath][id])
keys.delete('node')
tk_call(tree.path, 'move', id, parent, keys) if parent
return obj
end
super(tree, parent, keys)
end
|
Instance Method Details
#apply(keys = {}) ⇒ Object
68
69
70
71
|
# File 'lib/tkextlib/blt/tree.rb', line 68
def apply(keys={})
@tree.apply(@id, keys)
self
end
|
73
74
75
|
# File 'lib/tkextlib/blt/tree.rb', line 73
def children()
@tree.children(@id)
end
|
#copy(parent, keys = {}) ⇒ Object
77
78
79
|
# File 'lib/tkextlib/blt/tree.rb', line 77
def copy(parent, keys={})
@tree.copy(@id, parent, keys)
end
|
#copy_to(dest_tree, parent, keys = {}) ⇒ Object
80
81
82
|
# File 'lib/tkextlib/blt/tree.rb', line 80
def copy_to(dest_tree, parent, keys={})
@tree.copy_to(@id, dest_tree, parent, keys)
end
|
84
85
86
|
# File 'lib/tkextlib/blt/tree.rb', line 84
def degree()
@tree.degree(@id)
end
|
88
89
90
91
|
# File 'lib/tkextlib/blt/tree.rb', line 88
def delete()
@tree.delete(@id)
self
end
|
93
94
95
|
# File 'lib/tkextlib/blt/tree.rb', line 93
def depth()
@tree.depth(@id)
end
|
97
98
99
|
# File 'lib/tkextlib/blt/tree.rb', line 97
def dump()
@tree.dump(@id)
end
|
#dump_to_file(file) ⇒ Object
101
102
103
104
|
# File 'lib/tkextlib/blt/tree.rb', line 101
def dump_to_file(file)
@tree.dump_to_file(@id, file)
self
end
|
#exist?(keys = {}) ⇒ Boolean
106
107
108
|
# File 'lib/tkextlib/blt/tree.rb', line 106
def exist?(keys={})
@tree.exist?(@id, keys)
end
|
#find(keys = {}) ⇒ Object
110
111
112
|
# File 'lib/tkextlib/blt/tree.rb', line 110
def find(keys={})
@tree.find(@id, keys)
end
|
#find_child(label) ⇒ Object
114
115
116
|
# File 'lib/tkextlib/blt/tree.rb', line 114
def find_child(label)
@tree.find_child(@id, label)
end
|
#first_child ⇒ Object
118
119
120
|
# File 'lib/tkextlib/blt/tree.rb', line 118
def first_child()
@tree.first_child(@id)
end
|
175
176
177
|
# File 'lib/tkextlib/blt/tree.rb', line 175
def fullpath()
@tree.fullpath(@id)
end
|
122
123
124
|
# File 'lib/tkextlib/blt/tree.rb', line 122
def get()
@tree.get(@id)
end
|
#get_value(key, default_val = None) ⇒ Object
125
126
127
|
# File 'lib/tkextlib/blt/tree.rb', line 125
def get_value(key, default_val=None)
@tree.get_value(@id, key, default_val)
end
|
64
65
66
|
# File 'lib/tkextlib/blt/tree.rb', line 64
def id
@id
end
|
129
130
131
|
# File 'lib/tkextlib/blt/tree.rb', line 129
def index()
@tree.index(@id)
end
|
143
144
145
|
# File 'lib/tkextlib/blt/tree.rb', line 143
def keys()
@tree.keys(@id)
end
|
#label(text = nil) ⇒ Object
147
148
149
|
# File 'lib/tkextlib/blt/tree.rb', line 147
def label(text = nil)
@tree.label(@id, nil)
end
|
#label=(text) ⇒ Object
150
151
152
|
# File 'lib/tkextlib/blt/tree.rb', line 150
def label=(text)
@tree.label(@id, text)
end
|
#last_child ⇒ Object
154
155
156
|
# File 'lib/tkextlib/blt/tree.rb', line 154
def last_child()
@tree.last_child(@id)
end
|
#leaf? ⇒ Boolean
133
134
135
|
# File 'lib/tkextlib/blt/tree.rb', line 133
def leaf?()
@tree.leaf?(@id)
end
|
#link? ⇒ Boolean
136
137
138
|
# File 'lib/tkextlib/blt/tree.rb', line 136
def link?()
@tree.link?(@id)
end
|
#move(dest, keys = {}) ⇒ Object
158
159
160
161
|
# File 'lib/tkextlib/blt/tree.rb', line 158
def move(dest, keys={})
@tree.keys(@id, dest, keys)
self
end
|
163
164
165
|
# File 'lib/tkextlib/blt/tree.rb', line 163
def next()
@tree.next(@id)
end
|
#next_sibling ⇒ Object
167
168
169
|
# File 'lib/tkextlib/blt/tree.rb', line 167
def next_sibling()
@tree.next_sibling(@id)
end
|
171
172
173
|
# File 'lib/tkextlib/blt/tree.rb', line 171
def parent()
@tree.parent(@id)
end
|
179
180
181
|
# File 'lib/tkextlib/blt/tree.rb', line 179
def position()
@tree.position(@id)
end
|
#prev_sibling ⇒ Object
187
188
189
|
# File 'lib/tkextlib/blt/tree.rb', line 187
def prev_sibling()
@tree.prev_sibling(@id)
end
|
183
184
185
|
# File 'lib/tkextlib/blt/tree.rb', line 183
def previous()
@tree.previous(@id)
end
|
#restore(str, keys = {}) ⇒ Object
191
192
193
194
|
# File 'lib/tkextlib/blt/tree.rb', line 191
def restore(str, keys={})
@tree.restore(@id, str, keys)
self
end
|
#restore_from_file(file, keys = {}) ⇒ Object
200
201
202
203
|
# File 'lib/tkextlib/blt/tree.rb', line 200
def restore_from_file(file, keys={})
@tree.restore_from_file(@id, file, keys)
self
end
|
#restore_overwrite(str, keys = {}) ⇒ Object
195
196
197
198
|
# File 'lib/tkextlib/blt/tree.rb', line 195
def restore_overwrite(str, keys={})
@tree.restore_overwrite(@id, str, keys)
self
end
|
#restore_overwrite_from_file(file, keys = {}) ⇒ Object
204
205
206
207
|
# File 'lib/tkextlib/blt/tree.rb', line 204
def restore_overwrite_from_file(file, keys={})
@tree.restore_overwrite_from_file(@id, file, keys)
self
end
|
209
210
211
212
|
# File 'lib/tkextlib/blt/tree.rb', line 209
def root()
@tree.root(@id)
self
end
|
#root? ⇒ Boolean
139
140
141
|
# File 'lib/tkextlib/blt/tree.rb', line 139
def root?()
@tree.root?(@id)
end
|
#set(data) ⇒ Object
214
215
216
217
|
# File 'lib/tkextlib/blt/tree.rb', line 214
def set(data)
@tree.set(@id, data)
self
end
|
219
220
221
|
# File 'lib/tkextlib/blt/tree.rb', line 219
def size()
@tree.size(@id)
end
|
#sort(keys = {}) ⇒ Object
223
224
225
226
|
# File 'lib/tkextlib/blt/tree.rb', line 223
def sort(keys={})
@tree.sort(@id, keys)
self
end
|
#type(key) ⇒ Object
228
229
230
|
# File 'lib/tkextlib/blt/tree.rb', line 228
def type(key)
@tree.type(@id, key)
end
|
#unset(*keys) ⇒ Object
232
233
234
235
|
# File 'lib/tkextlib/blt/tree.rb', line 232
def unset(*keys)
@tree.unset(@id, *keys)
self
end
|
#values(key = None) ⇒ Object
237
238
239
|
# File 'lib/tkextlib/blt/tree.rb', line 237
def values(key=None)
@tree.values(@id, key)
end
|