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