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.


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

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


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

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


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

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

#bbox(index) ⇒ Object


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

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

#clearObject


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

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

#curselectionObject


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

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

#delete(first, last = None) ⇒ Object


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

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

#get(first, last = nil) ⇒ Object


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

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

#get_curselectionObject


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

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

#index(idx) ⇒ Object


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

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

#insert(index, *args) ⇒ Object


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

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

#justify(dir) ⇒ Object


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

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

#nearest(y) ⇒ Object


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

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

#scan_dragto(x, y) ⇒ Object


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

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

#scan_mark(x, y) ⇒ Object


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

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

#see(index) ⇒ Object


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

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

#selected_item_countObject


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

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

#selection_anchor(index) ⇒ Object


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

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

#selection_clear(first, last = None) ⇒ Object


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

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

#selection_includes(index) ⇒ Object


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

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

#selection_set(first, last = None) ⇒ Object


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

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

#sizeObject


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

def size
  tk_send_without_enc('size').to_i
end

#sort(*params, &b) ⇒ Object


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

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


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

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

#sort_descendingObject


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

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

#xview(*index) ⇒ Object


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

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


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

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

#xview_scroll(*index) ⇒ Object


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

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

#yview(*index) ⇒ Object


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

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


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

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

#yview_scroll(*index) ⇒ Object


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

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