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, 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
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) ⇒ Object
def tabbind(tag, context, cmd=Proc.new, *args) _bind([path, “bind”, tagid(tag)], context, cmd, *args) self end.
-
#tabbind_append(tag, context, *args) ⇒ Object
def tabbind_append(tag, context, cmd=Proc.new, *args) _bind_append([path, “bind”, tagid(tag)], context, cmd, *args) self end.
-
#tabbind_remove(tag, context) ⇒ Object
-
#tabbindinfo(tag, context = nil) ⇒ Object
-
#tagid(tab) ⇒ Object
-
#tagindex(tab) ⇒ Object
-
#xscrollcommand(cmd = Proc.new) ⇒ 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
#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__, add_kinsoku, bell, bell_on_display, const_missing, current_grabs, cursor_display, default_widget_set, default_widget_set=, 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, #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, toplevel_aliases_on_widget_set, 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
226
227
228
|
# File 'lib/tkextlib/blt/tabset.rb', line 226
def __boolval_optkeys
super() << 'samewidth' << 'tearoff'
end
|
#activate(index) ⇒ Object
Also known as:
highlight
285
286
287
288
|
# File 'lib/tkextlib/blt/tabset.rb', line 285
def activate(index)
tk_send('activate', tagindex(index))
self
end
|
#delete(first, last = None) ⇒ Object
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
|
# File 'lib/tkextlib/blt/tabset.rb', line 327
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
343
344
345
346
|
# File 'lib/tkextlib/blt/tabset.rb', line 343
def focus(index)
tk_send('focus', tagindex(index))
self
end
|
#get_tab(index) ⇒ Object
348
349
350
351
352
353
354
|
# File 'lib/tkextlib/blt/tabset.rb', line 348
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
355
356
357
358
359
360
361
|
# File 'lib/tkextlib/blt/tabset.rb', line 355
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
363
364
365
|
# File 'lib/tkextlib/blt/tabset.rb', line 363
def index(str)
num_or_str(tk_send('index', str))
end
|
#index_name(tab) ⇒ Object
366
367
368
|
# File 'lib/tkextlib/blt/tabset.rb', line 366
def index_name(tab)
num_or_str(tk_send('index', '-name', tagid(tab)))
end
|
#insert(pos, tab, keys = {}) ⇒ Object
370
371
372
373
|
# File 'lib/tkextlib/blt/tabset.rb', line 370
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
374
375
376
377
378
379
380
381
382
383
384
385
|
# File 'lib/tkextlib/blt/tabset.rb', line 374
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
387
388
389
|
# File 'lib/tkextlib/blt/tabset.rb', line 387
def invoke(index)
tk_send('invoke', tagindex(index))
end
|
#move_after(index, base_idx) ⇒ Object
395
396
397
398
|
# File 'lib/tkextlib/blt/tabset.rb', line 395
def move_after(index, base_idx)
tk_send('move', tagindex(index), 'after', tagindex(base_idx))
self
end
|
#move_before(index, base_idx) ⇒ Object
391
392
393
394
|
# File 'lib/tkextlib/blt/tabset.rb', line 391
def move_before(index, base_idx)
tk_send('move', tagindex(index), 'before', tagindex(base_idx))
self
end
|
#nearest(x, y) ⇒ Object
400
401
402
|
# File 'lib/tkextlib/blt/tabset.rb', line 400
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
404
405
406
407
|
# File 'lib/tkextlib/blt/tabset.rb', line 404
def perforation_activate(mode)
tk_send('perforation', 'activate', mode)
self
end
|
#perforation_highlight(index, *args) ⇒ Object
408
409
410
411
412
413
414
415
416
417
418
419
|
# File 'lib/tkextlib/blt/tabset.rb', line 408
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
420
421
422
423
424
425
426
|
# File 'lib/tkextlib/blt/tabset.rb', line 420
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
432
433
434
435
|
# File 'lib/tkextlib/blt/tabset.rb', line 432
def scan_dragto(x, y)
tk_send_without_enc('scan', 'dragto', x, y)
self
end
|
#scan_mark(x, y) ⇒ Object
428
429
430
431
|
# File 'lib/tkextlib/blt/tabset.rb', line 428
def scan_mark(x, y)
tk_send_without_enc('scan', 'mark', x, y)
self
end
|
#see(index) ⇒ Object
437
438
439
440
|
# File 'lib/tkextlib/blt/tabset.rb', line 437
def see(index)
tk_send('see', tagindex(index))
self
end
|
#select(index) ⇒ Object
446
447
448
449
|
# File 'lib/tkextlib/blt/tabset.rb', line 446
def select(index)
tk_send('select', tagindex(index))
self
end
|
442
443
444
|
# File 'lib/tkextlib/blt/tabset.rb', line 442
def size()
number(tk_send_without_enc('size'))
end
|
#tab_dockall ⇒ Object
451
452
453
454
|
# File 'lib/tkextlib/blt/tabset.rb', line 451
def tab_dockall
tk_send('tab', 'dockall')
self
end
|
#tab_ids(pat = None) ⇒ Object
468
469
470
|
# File 'lib/tkextlib/blt/tabset.rb', line 468
def tab_ids(pat=None)
simplelist(tk_send('tab', 'names', pat))
end
|
#tab_names(pat = None) ⇒ Object
456
457
458
459
460
|
# File 'lib/tkextlib/blt/tabset.rb', line 456
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
462
463
464
465
466
|
# File 'lib/tkextlib/blt/tabset.rb', line 462
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
472
473
474
|
# File 'lib/tkextlib/blt/tabset.rb', line 472
def tab_pageheight
number(tk_send('tab', 'pageheight'))
end
|
#tab_pagewidth ⇒ Object
476
477
478
|
# File 'lib/tkextlib/blt/tabset.rb', line 476
def tab_pagewidth
number(tk_send('tab', 'pagewidth'))
end
|
#tab_tearoff(index, parent = None) ⇒ Object
480
481
482
|
# File 'lib/tkextlib/blt/tabset.rb', line 480
def tab_tearoff(index, parent=None)
window(tk_send('tab', 'tearoff', tagindex(index), parent))
end
|
#tabbind(tag, context, *args) ⇒ Object
def tabbind(tag, context, cmd=Proc.new, *args)
_bind([path, "bind", tagid(tag)], context, cmd, *args)
self
end
295
296
297
298
299
300
301
302
303
304
|
# File 'lib/tkextlib/blt/tabset.rb', line 295
def tabbind(tag, context, *args)
if TkComm._callback_entry?(args[0]) || !block_given?
cmd = args.shift
else
cmd = Proc.new
end
_bind([path, "bind", tagid(tag)], context, cmd, *args)
self
end
|
#tabbind_append(tag, context, *args) ⇒ Object
def tabbind_append(tag, context, cmd=Proc.new, *args)
_bind_append([path, "bind", tagid(tag)], context, cmd, *args)
self
end
309
310
311
312
313
314
315
316
317
318
|
# File 'lib/tkextlib/blt/tabset.rb', line 309
def tabbind_append(tag, context, *args)
if TkComm._callback_entry?(args[0]) || !block_given?
cmd = args.shift
else
cmd = Proc.new
end
_bind_append([path, "bind", tagid(tag)], context, cmd, *args)
self
end
|
#tabbind_remove(tag, context) ⇒ Object
319
320
321
322
|
# File 'lib/tkextlib/blt/tabset.rb', line 319
def tabbind_remove(tag, context)
_bind_remove([path, "bind", tagid(tag)], context)
self
end
|
#tabbindinfo(tag, context = nil) ⇒ Object
323
324
325
|
# File 'lib/tkextlib/blt/tabset.rb', line 323
def tabbindinfo(tag, context=nil)
_bindinfo([path, "bind", tagid(tag)], context)
end
|
#tagid(tab) ⇒ Object
267
268
269
270
271
272
273
|
# File 'lib/tkextlib/blt/tabset.rb', line 267
def tagid(tab)
if tab.kind_of?(Tk::BLT::Tabset::Tab)
tab.id
else
tab
end
end
|
#tagindex(tab) ⇒ Object
275
276
277
278
279
280
281
|
# File 'lib/tkextlib/blt/tabset.rb', line 275
def tagindex(tab)
if tab.kind_of?(Tk::BLT::Tabset::Tab)
tab.index
else
tab
end
end
|
484
485
486
487
|
# File 'lib/tkextlib/blt/tabset.rb', line 484
def xscrollcommand(cmd=Proc.new)
configure_cmd 'scrollcommand', cmd
self
end
|
#xview(*index) ⇒ Object
Also known as:
view
490
491
492
493
494
495
496
497
|
# File 'lib/tkextlib/blt/tabset.rb', line 490
def xview(*index)
if index.empty?
list(tk_send_without_enc('view'))
else
tk_send_without_enc('view', *index)
self
end
end
|