Class: Tk::BLT::Tabset
Defined Under Namespace
Classes: NamedTab, Tab
Constant Summary
collapse
- TkCommandNames =
['::blt::tabset'.freeze].freeze
- WidgetClassName =
'Tabset'.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, Fontchooser, 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
TkDND::Shape::PACKAGE_NAME
Instance Method Summary
collapse
-
#__boolval_optkeys ⇒ Object
-
#__destroy_hook__ ⇒ Object
-
#activate(index) ⇒ Object
(also: #highlight)
-
#delete(first, last = None) ⇒ Object
-
#focus(index) ⇒ Object
-
#get_tab(index) ⇒ Object
-
#get_tabobj(index) ⇒ Object
-
#index(str) ⇒ Object
-
#index_name(tab) ⇒ Object
-
#insert(pos, tab, keys = {}) ⇒ Object
-
#insert_tabs(pos, *tabs) ⇒ Object
-
#invoke(index) ⇒ Object
-
#move_after(index, base_idx) ⇒ Object
-
#move_before(index, base_idx) ⇒ Object
-
#nearest(x, y) ⇒ Object
-
#perforation_activate(mode) ⇒ Object
-
#perforation_highlight(index, *args) ⇒ Object
-
#perforation_invoke(index = nil) ⇒ Object
-
#scan_dragto(x, y) ⇒ Object
-
#scan_mark(x, y) ⇒ Object
-
#see(index) ⇒ Object
-
#select(index) ⇒ Object
-
#size ⇒ Object
-
#tab_dockall ⇒ Object
-
#tab_ids(pat = None) ⇒ Object
-
#tab_names(pat = None) ⇒ Object
-
#tab_objs(pat = None) ⇒ Object
-
#tab_pageheight ⇒ Object
-
#tab_pagewidth ⇒ Object
-
#tab_tearoff(index, parent = None) ⇒ Object
-
#tabbind(tag, context, *args, &block) ⇒ Object
-
#tabbind_append(tag, context, *args, &block) ⇒ Object
-
#tabbind_remove(tag, context) ⇒ Object
-
#tabbindinfo(tag, context = nil) ⇒ Object
-
#tagid(tab) ⇒ Object
-
#tagindex(tab) ⇒ Object
-
#xscrollcommand(cmd = nil, &block) ⇒ Object
(also: #scrollcommand)
-
#xview(*index) ⇒ Object
(also: #view)
__IGNORE_UNKNOWN_CONFIGURE_OPTION__, #__check_available_itemconfigure_options, #__current_itemconfiginfo, __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!, #current_itemconfiginfo, #itemcget, #itemcget_strict, #itemcget_tkstring, #itemconfiginfo, #itemconfigure
#__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
#kanjifont_copy, #kanjitagfont_configure, #latintagfont_configure, #latintagfont_copy, #tagfont_configinfo, #tagfont_configure, #tagfont_copy
#xscrollbar, #xview_moveto, #xview_scroll
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, #initialize, #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 Tk::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 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 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, 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
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, #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
#[], #[]=, __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
#font_configinfo, #font_configure, #font_copy, #kanjifont_configure, #kanjifont_copy, #latinfont_configure, #latinfont_copy
Methods inherited from TkKernel
new
Constructor Details
This class inherits a constructor from TkWindow
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
in the class TkObject
Instance Method Details
#__boolval_optkeys ⇒ Object
219
220
221
|
# File 'lib/tkextlib/blt/tabset.rb', line 219
def __boolval_optkeys
super() << 'samewidth' << 'tearoff'
end
|
#activate(index) ⇒ Object
Also known as:
highlight
278
279
280
281
|
# File 'lib/tkextlib/blt/tabset.rb', line 278
def activate(index)
tk_send('activate', tagindex(index))
self
end
|
#delete(first, last = None) ⇒ Object
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
|
# File 'lib/tkextlib/blt/tabset.rb', line 313
def delete(first, last=None)
tk_send('delete', tagindex(first), tagindex(last))
if first.kind_of?(Tk::BLT::Tabset::Tab)
TabID_TBL.mutex.synchronize{
TabID_TBL[@path].delete(first.id)
}
end
if last.kind_of?(Tk::BLT::Tabset::Tab)
TabID_TBL.mutex.synchronize{
TabID_TBL[@path].delete(last.id)
}
end
self
end
|
#focus(index) ⇒ Object
329
330
331
332
|
# File 'lib/tkextlib/blt/tabset.rb', line 329
def focus(index)
tk_send('focus', tagindex(index))
self
end
|
#get_tab(index) ⇒ Object
334
335
336
337
338
339
340
|
# File 'lib/tkextlib/blt/tabset.rb', line 334
def get_tab(index)
if (idx = tk_send_without_enc('get', tagindex(index))).empty?
nil
else
Tk::BLT::Tabset::Tab.id2obj(self, idx)
end
end
|
#get_tabobj(index) ⇒ Object
341
342
343
344
345
346
347
|
# File 'lib/tkextlib/blt/tabset.rb', line 341
def get_tabobj(index)
if (idx = tk_send_without_enc('get', tagindex(index))).empty?
nil
else
Tk::BLT::Tabset::Tab.new(self, nil, name, {})
end
end
|
#index(str) ⇒ Object
349
350
351
|
# File 'lib/tkextlib/blt/tabset.rb', line 349
def index(str)
num_or_str(tk_send('index', str))
end
|
#index_name(tab) ⇒ Object
352
353
354
|
# File 'lib/tkextlib/blt/tabset.rb', line 352
def index_name(tab)
num_or_str(tk_send('index', '-name', tagid(tab)))
end
|
#insert(pos, tab, keys = {}) ⇒ Object
356
357
358
359
|
# File 'lib/tkextlib/blt/tabset.rb', line 356
def insert(pos, tab, keys={})
pos = 'end' if pos.nil?
Tk::BLT::Tabset::Tab.new(self, tagindex(pos), tagid(tab), keys)
end
|
#insert_tabs(pos, *tabs) ⇒ Object
360
361
362
363
364
365
366
367
368
369
370
371
|
# File 'lib/tkextlib/blt/tabset.rb', line 360
def insert_tabs(pos, *tabs)
pos = 'end' if pos.nil?
if tabs[-1].kind_of?(Hash)
keys = tabs.pop
else
keys = {}
end
fail ArgumentError, 'no tabs is given' if tabs.empty?
tabs.map!{|tab| tagid(tab)}
tk_send('insert', tagindex(pos), *(tabs + [keys]))
tabs.collect{|tab| Tk::BLT::Tabset::Tab.new(self, nil, tagid(tab))}
end
|
#invoke(index) ⇒ Object
373
374
375
|
# File 'lib/tkextlib/blt/tabset.rb', line 373
def invoke(index)
tk_send('invoke', tagindex(index))
end
|
#move_after(index, base_idx) ⇒ Object
381
382
383
384
|
# File 'lib/tkextlib/blt/tabset.rb', line 381
def move_after(index, base_idx)
tk_send('move', tagindex(index), 'after', tagindex(base_idx))
self
end
|
#move_before(index, base_idx) ⇒ Object
377
378
379
380
|
# File 'lib/tkextlib/blt/tabset.rb', line 377
def move_before(index, base_idx)
tk_send('move', tagindex(index), 'before', tagindex(base_idx))
self
end
|
#nearest(x, y) ⇒ Object
386
387
388
|
# File 'lib/tkextlib/blt/tabset.rb', line 386
def nearest(x, y)
Tk::BLT::Tabset::Tab.id2obj(self, num_or_str(tk_send_without_enc('nearest', x, y)))
end
|
#perforation_activate(mode) ⇒ Object
390
391
392
393
|
# File 'lib/tkextlib/blt/tabset.rb', line 390
def perforation_activate(mode)
tk_send('perforation', 'activate', mode)
self
end
|
#perforation_highlight(index, *args) ⇒ Object
394
395
396
397
398
399
400
401
402
403
404
405
|
# File 'lib/tkextlib/blt/tabset.rb', line 394
def perforation_highlight(index, *args)
if args.empty?
tk_send('perforation', 'highlight', index)
elsif args.size == 1
tk_send('perforation', 'highlight', tagindex(index), args[0])
else tk_send('perforation', 'highlight', tagindex(index), *args)
end
self
end
|
#perforation_invoke(index = nil) ⇒ Object
406
407
408
409
410
411
412
|
# File 'lib/tkextlib/blt/tabset.rb', line 406
def perforation_invoke(index=nil)
if index
tk_send('perforation', 'invoke', tagindex(index))
else
tk_send('perforation', 'invoke')
end
end
|
#scan_dragto(x, y) ⇒ Object
418
419
420
421
|
# File 'lib/tkextlib/blt/tabset.rb', line 418
def scan_dragto(x, y)
tk_send_without_enc('scan', 'dragto', x, y)
self
end
|
#scan_mark(x, y) ⇒ Object
414
415
416
417
|
# File 'lib/tkextlib/blt/tabset.rb', line 414
def scan_mark(x, y)
tk_send_without_enc('scan', 'mark', x, y)
self
end
|
#see(index) ⇒ Object
423
424
425
426
|
# File 'lib/tkextlib/blt/tabset.rb', line 423
def see(index)
tk_send('see', tagindex(index))
self
end
|
#select(index) ⇒ Object
432
433
434
435
|
# File 'lib/tkextlib/blt/tabset.rb', line 432
def select(index)
tk_send('select', tagindex(index))
self
end
|
428
429
430
|
# File 'lib/tkextlib/blt/tabset.rb', line 428
def size()
number(tk_send_without_enc('size'))
end
|
#tab_dockall ⇒ Object
437
438
439
440
|
# File 'lib/tkextlib/blt/tabset.rb', line 437
def tab_dockall
tk_send('tab', 'dockall')
self
end
|
#tab_ids(pat = None) ⇒ Object
454
455
456
|
# File 'lib/tkextlib/blt/tabset.rb', line 454
def tab_ids(pat=None)
simplelist(tk_send('tab', 'names', pat))
end
|
#tab_names(pat = None) ⇒ Object
442
443
444
445
446
|
# File 'lib/tkextlib/blt/tabset.rb', line 442
def tab_names(pat=None)
simplelist(tk_send('tab', 'names', pat)).collect{|name|
Tk::BLT::Tabset::Tab.id2obj(self, name)
}
end
|
#tab_objs(pat = None) ⇒ Object
448
449
450
451
452
|
# File 'lib/tkextlib/blt/tabset.rb', line 448
def tab_objs(pat=None)
simplelist(tk_send('tab', 'names', pat)).collect{|name|
Tk::BLT::Tabset::Tab.new(self, nil, name, {})
}
end
|
#tab_pageheight ⇒ Object
458
459
460
|
# File 'lib/tkextlib/blt/tabset.rb', line 458
def tab_pageheight
number(tk_send('tab', 'pageheight'))
end
|
#tab_pagewidth ⇒ Object
462
463
464
|
# File 'lib/tkextlib/blt/tabset.rb', line 462
def tab_pagewidth
number(tk_send('tab', 'pagewidth'))
end
|
#tab_tearoff(index, parent = None) ⇒ Object
466
467
468
|
# File 'lib/tkextlib/blt/tabset.rb', line 466
def tab_tearoff(index, parent=None)
window(tk_send('tab', 'tearoff', tagindex(index), parent))
end
|
#tabbind(tag, context, *args, &block) ⇒ Object
284
285
286
287
288
289
290
291
292
293
|
# File 'lib/tkextlib/blt/tabset.rb', line 284
def tabbind(tag, context, *args, &block)
if TkComm._callback_entry?(args[0]) || !block
cmd = args.shift
else
cmd = block
end
_bind([path, "bind", tagid(tag)], context, cmd, *args)
self
end
|
#tabbind_append(tag, context, *args, &block) ⇒ Object
295
296
297
298
299
300
301
302
303
304
|
# File 'lib/tkextlib/blt/tabset.rb', line 295
def tabbind_append(tag, context, *args, &block)
if TkComm._callback_entry?(args[0]) || !block
cmd = args.shift
else
cmd = block
end
_bind_append([path, "bind", tagid(tag)], context, cmd, *args)
self
end
|
#tabbind_remove(tag, context) ⇒ Object
305
306
307
308
|
# File 'lib/tkextlib/blt/tabset.rb', line 305
def tabbind_remove(tag, context)
_bind_remove([path, "bind", tagid(tag)], context)
self
end
|
#tabbindinfo(tag, context = nil) ⇒ Object
309
310
311
|
# File 'lib/tkextlib/blt/tabset.rb', line 309
def tabbindinfo(tag, context=nil)
_bindinfo([path, "bind", tagid(tag)], context)
end
|
#tagid(tab) ⇒ Object
260
261
262
263
264
265
266
|
# File 'lib/tkextlib/blt/tabset.rb', line 260
def tagid(tab)
if tab.kind_of?(Tk::BLT::Tabset::Tab)
tab.id
else
tab
end
end
|
#tagindex(tab) ⇒ Object
268
269
270
271
272
273
274
|
# File 'lib/tkextlib/blt/tabset.rb', line 268
def tagindex(tab)
if tab.kind_of?(Tk::BLT::Tabset::Tab)
tab.index
else
tab
end
end
|
470
471
472
473
|
# File 'lib/tkextlib/blt/tabset.rb', line 470
def xscrollcommand(cmd=nil, &block)
configure_cmd('scrollcommand', cmd || block)
self
end
|
#xview(*index) ⇒ Object
Also known as:
view
476
477
478
479
480
481
482
483
|
# File 'lib/tkextlib/blt/tabset.rb', line 476
def xview(*index)
if index.empty?
list(tk_send_without_enc('view'))
else
tk_send_without_enc('view', *index)
self
end
end
|