Class: Tk::Iwidgets::Scrolledlistbox

Inherits:
Scrolledwidget show all
Includes:
TkListItemConfig
Defined in:
ext/lib/tkextlib/iwidgets/scrolledlistbox.rb,
ext/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, Checkbutton, CloneMenu, JAPANIZED_TK, LIBRARY_PATH, Labelframe, MenuButton, OptionMenuButton, PACKAGE_PATH, Panedwindow, RELEASE_DATE, Radiobutton, 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, #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_str, #num_or_str, number, #number, string, #string, uninstall_cmd

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_str, number, procedure, simplelist, 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 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, __set_toplevel_aliases__, add_kinsoku, bell, bell_on_display, const_missing, current_grabs, cursor_display, default_widget_set, default_widget_set=, delete_kinsoku, destroy, 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, #root, 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, ungrid, unload_tcllibrary, unpack, unplace, #update, update, update_idletasks, utf_to_backslash, utf_to_backslash_sequence, wakeup

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, #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 'ext/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 'ext/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 'ext/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 'ext/lib/tkextlib/iwidgets/scrolledlistbox.rb', line 92

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

#clearObject



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

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

#curselectionObject



138
139
140
# File 'ext/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 'ext/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 'ext/lib/tkextlib/iwidgets/scrolledlistbox.rb', line 99

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

#get_curselectionObject



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

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

#index(idx) ⇒ Object



172
173
174
# File 'ext/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 'ext/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 'ext/lib/tkextlib/iwidgets/scrolledlistbox.rb', line 63

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

#nearest(y) ⇒ Object



150
151
152
# File 'ext/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 'ext/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 'ext/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 'ext/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 'ext/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 'ext/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 'ext/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 'ext/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 'ext/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 'ext/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 'ext/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 'ext/lib/tkextlib/iwidgets/scrolledlistbox.rb', line 81

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

#sort_descendingObject



85
86
87
88
# File 'ext/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 'ext/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 'ext/lib/tkextlib/iwidgets/scrolledlistbox.rb', line 186

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

#xview_scroll(*index) ⇒ Object



189
190
191
# File 'ext/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 'ext/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 'ext/lib/tkextlib/iwidgets/scrolledlistbox.rb', line 201

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

#yview_scroll(*index) ⇒ Object



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

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