Class: Tk::Iwidgets::Scrolledlistbox

Inherits:
Scrolledwidget show all
Includes:
TkListItemConfig
Defined in:
lib/tkextlib/iwidgets/scrolledlistbox.rb,
lib/tkextlib/iwidgets/scrolledlistbox.rb

Constant Summary collapse

TkCommandNames =
['::iwidgets::scrolledlistbox'.freeze].freeze
WidgetClassName =
'Scrolledlistbox'.freeze

Constants included from TkUtil

TkUtil::None, TkUtil::RELEASE_DATE

Constants included from TkCore

TkCore::EventFlag, TkCore::INTERP, TkCore::INTERP_MUTEX, TkCore::INTERP_ROOT_CHECK, TkCore::INTERP_THREAD, TkCore::INTERP_THREAD_STATUS, TkCore::RUN_EVENTLOOP_ON_MAIN_THREAD, TkCore::WIDGET_DESTROY_HOOK, TkCore::WITH_ENCODING, TkCore::WITH_RUBY_VM

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 Tk

AUTO_PATH, Fontchooser, Tk::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::BINARY, Encoding::BINARY_NAME, Encoding::DEFAULT_EXTERNAL_NAME, Encoding::DEFAULT_INTERNAL_NAME, Encoding::ENCODING_TABLE, Encoding::RubyEncoding, Encoding::UNKNOWN, Encoding::UTF8_NAME

Constants included from TkDND::Shape

TkDND::Shape::PACKAGE_NAME

Instance Method Summary collapse

Methods included from TkItemConfigMethod

__IGNORE_UNKNOWN_CONFIGURE_OPTION__, #__check_available_itemconfigure_options, #__current_itemconfiginfo, __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!, #current_itemconfiginfo, #itemcget, #itemcget_strict, #itemcget_tkstring, #itemconfiginfo, #itemconfigure

Methods included from TkItemConfigOptkeys

#__conv_item_keyonly_opts, #itemconfig_hash_kv

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_nil, #num_or_nil, #num_or_str, num_or_str, #number, number, string, #string, uninstall_cmd, untrust

Methods included from TkTreatItemFont

#kanjifont_copy, #kanjitagfont_configure, #latintagfont_configure, #latintagfont_copy, #tagfont_configinfo, #tagfont_configure, #tagfont_copy

Methods inherited from Labeledwidget

alignlabels, #child_site

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, _callback_entry?, _callback_entry_class?, _curr_cmd_id, _fromUTF8, _genobj_for_tkwidget, _next_cmd_id, _toUTF8, array2tk_list, #bind, #bind_all, #bind_append, #bind_append_all, #bind_remove, #bind_remove_all, #bindinfo, #bindinfo_all, bool, image_obj, #install_cmd, install_cmd, list, num_or_nil, num_or_str, number, procedure, simplelist, slice_ary, string, #subst, tk_tcl2ruby, uninstall_cmd, #uninstall_cmd, window

Methods included from TkEvent

#install_bind, #install_bind_for_event_class

Methods inherited from Tk::Itk::Archetype

#__destroy_hook__, #component, #component_invoke, #component_obj, #component_path, to_eval

Methods inherited from TkWindow

_widget_inspect_full_=, _widget_inspect_full_?, #bind_class, #bindtags, #bindtags=, #bindtags_shift, #bindtags_unshift, #caret, #colormodel, #command, #cursor_propagate, #cursor_restore, database_class, #database_class, database_classname, #database_classname, #destroy, #eventloop_wait_destroy, #eventloop_wait_visibility, #exist?, #grab, #grab_current, #grab_release, #grab_set, #grab_set_global, #grab_status, #grid, #grid_anchor, #grid_bbox, #grid_column, #grid_columnconfig, #grid_columnconfiginfo, #grid_config, #grid_forget, #grid_in, #grid_info, #grid_location, #grid_propagate, #grid_remove, #grid_row, #grid_rowconfig, #grid_rowconfiginfo, #grid_size, #grid_slaves, #inspect, #lower, #pack, #pack_config, #pack_forget, #pack_in, #pack_info, #pack_propagate, #pack_slaves, #place, #place_config, #place_configinfo, #place_forget, #place_in, #place_info, #place_slaves, #raise, #set_focus, #thread_wait_destroy, #thread_wait_visibility, #tktrans_get_image, #tktrans_set_image, to_eval, #wait_destroy, #wait_visibility

Methods included from TkBindCore

#bind, #bind_append, #bind_remove, #bindinfo

Methods included from Busy

__item_cget_cmd, __item_config_cmd, __item_confinfo_cmd, #busy, #busy_cget, #busy_configinfo, #busy_configure, #busy_current?, #busy_current_configinfo, #busy_forget, #busy_status, current, forget, hold, method_missing, status

Methods included from TkWinfo

appname, atom, atomname, cells, children, classname, colormapfull, containing, depth, exist?, fpixels, geometry, height, id, interps, manager, mapped?, parent, pixels, pointerx, pointerxy, pointery, reqheight, reqwidth, rgb, rootx, rooty, screen, screencells, screendepth, screenheight, screenmmheight, screenmmwidth, screenvisual, screenwidth, server, toplevel, viewable, visual, visualid, visualsavailable, vrootheight, vrootwidth, vrootx, vrooty, widget, width, #winfo_appname, #winfo_atom, #winfo_atomname, #winfo_cells, #winfo_children, #winfo_classname, #winfo_colormapfull, #winfo_containing, #winfo_depth, #winfo_exist?, #winfo_fpixels, #winfo_geometry, #winfo_height, #winfo_id, #winfo_interps, #winfo_manager, #winfo_mapped?, #winfo_parent, #winfo_pixels, #winfo_pointerx, #winfo_pointerxy, #winfo_pointery, #winfo_reqheight, #winfo_reqwidth, #winfo_rgb, #winfo_rootx, #winfo_rooty, #winfo_screen, #winfo_screencells, #winfo_screendepth, #winfo_screenheight, #winfo_screenmmheight, #winfo_screenmmwidth, #winfo_screenvisual, #winfo_screenwidth, #winfo_server, #winfo_toplevel, #winfo_viewable, #winfo_visual, #winfo_visualid, #winfo_visualsavailable, #winfo_vrootheight, #winfo_vrootwidth, #winfo_vrootx, #winfo_vrooty, #winfo_widget, #winfo_width, #winfo_x, #winfo_y, x, y

Methods included from Tk

BinaryString, EncodedString, #Grid, #Pack, #Place, UTF8_String, __create_widget_set__, __disable_toplevel_control__, __import_toplevel_aliases__, __regist_toplevel_aliases__, __remove_toplevel_aliases__, __reset_toplevel_owner__, __set_loaded_toplevel_aliases__, __set_toplevel_aliases__, __toplevel_alias_setup_proc__, _replace_toplevel_aliases, add_kinsoku, backup_current_topdef, bell, bell_on_display, const_missing, current_grabs, cursor_display, default_widget_set, default_widget_set=, define_topalias, define_topobj, 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, regist_sym_for_loaded_file, replace_topalias, replace_topobj, #root, set_topalias, show_kinsoku, sleep, 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, topalias_defined?, toplevel_aliases_on_widget_set, topobj_defined?, ungrid, unload_tcllibrary, unpack, unplace, #update, update, update_idletasks, utf_to_backslash, utf_to_backslash_sequence, wakeup, widget_set_symbols

Methods included from Encoding

#default_encoding=, #encoding=, #encoding_convertfrom, #encoding_convertto, #encoding_dirs, #encoding_dirs=, #encoding_name, #encoding_names, #encoding_obj, #encoding_objs, #encoding_system=, #encoding_system_name, #encoding_system_obj, #force_default_encoding, #force_default_encoding=, #force_default_encoding?, #tk_encoding_names

Methods included from TkDND::DND

#dnd_bindsource, #dnd_bindsource_info, #dnd_bindtarget, #dnd_bindtarget_info, #dnd_clearsource, #dnd_cleartarget, #dnd_drag, version

Methods included from TkDND::Shape

package_name, package_patchlevel, package_version, #shape_bounds, #shape_get, #shape_offset, #shape_set, #shape_update, version

Methods inherited from TkObject

#destroy, #epath, #event_generate, #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 TkConfigMethod

#[], #[]=, __IGNORE_UNKNOWN_CONFIGURE_OPTION__, #__check_available_configure_options, __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!, #cget, #cget_strict, #cget_tkstring, #config_hash_kv, #configinfo, #configure, #configure_cmd, #current_configinfo

Methods included from TkTreatFont

#font_configinfo, #font_configure, #font_copy, #kanjifont_configure, #kanjifont_copy, #latinfont_configure, #latinfont_copy

Methods inherited from TkKernel

new

Constructor Details

#initialize(*args) ⇒ Scrolledlistbox

Returns a new instance of Scrolledlistbox.


40
41
42
43
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 40

def initialize(*args)
  super(*args)
  @listbox = component_widget('listbox')
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(id, *args) ⇒ Object


45
46
47
48
49
50
51
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 45

def method_missing(id, *args)
  if @listbox.respond_to?(id)
    @listbox.__send__(id, *args)
  else
    super(id, *args)
  end
end

Instance Method Details

#activate(y) ⇒ Object


135
136
137
138
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 135

def activate(y)
  tk_send_without_enc('activate', y)
  self
end

#bbox(index) ⇒ Object


93
94
95
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 93

def bbox(index)
  list(tk_send_without_enc('bbox', index))
end

#clearObject


55
56
57
58
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 55

def clear
  tk_call(@path, 'clear')
  self
end

#curselectionObject


139
140
141
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 139

def curselection
  list(tk_send_without_enc('curselection'))
end

#delete(first, last = None) ⇒ Object


96
97
98
99
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 96

def delete(first, last=None)
  tk_send_without_enc('delete', first, last)
  self
end

#get(first, last = nil) ⇒ Object


100
101
102
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 100

def get(*index)
  _fromUTF8(tk_send_without_enc('get', *index))
end

#get_curselectionObject


60
61
62
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 60

def get_curselection
  tk_call(@path, 'getcurselection')
end

#index(idx) ⇒ Object


173
174
175
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 173

def index(idx)
  tk_send_without_enc('index', idx).to_i
end

#insert(index, *args) ⇒ Object


103
104
105
106
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 103

def insert(index, *args)
  tk_send('insert', index, *args)
  self
end

#justify(dir) ⇒ Object


64
65
66
67
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 64

def justify(dir)
  tk_call(@path, 'justify', dir)
  self
end

#nearest(y) ⇒ Object


151
152
153
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 151

def nearest(y)
  tk_send_without_enc('nearest', y).to_i
end

#scan_dragto(x, y) ⇒ Object


111
112
113
114
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 111

def scan_dragto(x, y)
  tk_send_without_enc('scan', 'dragto', x, y)
  self
end

#scan_mark(x, y) ⇒ Object


107
108
109
110
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 107

def scan_mark(x, y)
  tk_send_without_enc('scan', 'mark', x, y)
  self
end

#see(index) ⇒ Object


115
116
117
118
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 115

def see(index)
  tk_send_without_enc('see', index)
  self
end

#selected_item_countObject


69
70
71
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 69

def selected_item_count
  number(tk_call(@path, 'selecteditemcount'))
end

#selection_anchor(index) ⇒ Object


157
158
159
160
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 157

def selection_anchor(index)
  tk_send_without_enc('selection', 'anchor', index)
  self
end

#selection_clear(first, last = None) ⇒ Object


161
162
163
164
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 161

def selection_clear(first, last=None)
  tk_send_without_enc('selection', 'clear', first, last)
  self
end

#selection_includes(index) ⇒ Object


165
166
167
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 165

def selection_includes(index)
  bool(tk_send_without_enc('selection', 'includes', index))
end

#selection_set(first, last = None) ⇒ Object


168
169
170
171
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 168

def selection_set(first, last=None)
  tk_send_without_enc('selection', 'set', first, last)
  self
end

#sizeObject


154
155
156
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 154

def size
  tk_send_without_enc('size').to_i
end

#sort(*params, &b) ⇒ Object


73
74
75
76
77
78
79
80
81
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 73

def sort(*params, &b)
  # see 'lsort' man page about params
  if b
    tk_call(@path, 'sort', '-command', proc(&b), *params)
  else
    tk_call(@path, 'sort', *params)
  end
  self
end

#sort_ascendingObject


82
83
84
85
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 82

def sort_ascending
  tk_call(@path, 'sort', 'ascending')
  self
end

#sort_descendingObject


86
87
88
89
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 86

def sort_descending
  tk_call(@path, 'sort', 'descending')
  self
end

#xview(*index) ⇒ Object


179
180
181
182
183
184
185
186
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 179

def xview(*index)
  if index.size == 0
    list(tk_send_without_enc('xview'))
  else
    tk_send_without_enc('xview', *index)
    self
  end
end

#xview_moveto(*index) ⇒ Object


187
188
189
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 187

def xview_moveto(*index)
  xview('moveto', *index)
end

#xview_scroll(*index) ⇒ Object


190
191
192
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 190

def xview_scroll(*index)
  xview('scroll', *index)
end

#yview(*index) ⇒ Object


194
195
196
197
198
199
200
201
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 194

def yview(*index)
  if index.size == 0
    list(tk_send_without_enc('yview'))
  else
    tk_send_without_enc('yview', *index)
    self
  end
end

#yview_moveto(*index) ⇒ Object


202
203
204
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 202

def yview_moveto(*index)
  yview('moveto', *index)
end

#yview_scroll(*index) ⇒ Object


205
206
207
# File 'lib/tkextlib/iwidgets/scrolledlistbox.rb', line 205

def yview_scroll(*index)
  yview('scroll', *index)
end