Class: Tk::BWidget::NoteBook

Inherits:
TkWindow show all
Includes:
TkItemConfigMethod
Defined in:
lib/tkextlib/bwidget/notebook.rb,
lib/tkextlib/bwidget/notebook.rb

Defined Under Namespace

Classes: Event_for_Tabs

Constant Summary collapse

TkCommandNames =
['NoteBook'.freeze].freeze
WidgetClassName =
'NoteBook'.freeze

Constants included from TkUtil

TkUtil::None, TkUtil::RELEASE_DATE

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 TkCore

TkCore::EventFlag, TkCore::INTERP, TkCore::WIDGET_DESTROY_HOOK

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 TkDND::Shape

TkDND::Shape::PACKAGE_NAME

Instance Method Summary collapse

Methods included from TkItemConfigMethod

#current_itemconfiginfo, #itemcget, #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 TkWindow

#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_bbox, #grid_columnconfig, #grid_columnconfiginfo, #grid_config, #grid_forget, #grid_in, #grid_info, #grid_location, #grid_propagate, #grid_remove, #grid_rowconfig, #grid_rowconfiginfo, #grid_size, #grid_slaves, #initialize, #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, #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, UTF8_String, add_kinsoku, bell, bell_on_display, const_missing, current_grabs, cursor_display, 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, 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

Methods included from Encoding

#encoding, #encoding=, #encoding_convertfrom, #encoding_convertto, #encoding_dirs, #encoding_dirs=, #encoding_names, #encoding_system, #encoding_system=

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, #bind, #bind_all, #bind_append, #bind_append_all, #bind_remove, #bind_remove_all, #bindinfo, #bindinfo_all, #image_obj, #install_cmd, #subst, #uninstall_cmd

Methods included from TkEvent

#install_bind, #install_bind_for_event_class

Methods included from TkDND::Shape

package_name, package_patchlevel, package_version, #shape_bounds, #shape_get, #shape_offset, #shape_set, #shape_update, version

Methods included from TkDND::DND

#dnd_bindsource, #dnd_bindsource_info, #dnd_bindtarget, #dnd_bindtarget_info, #dnd_clearsource, #dnd_cleartarget, #dnd_drag, 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

Methods included from TkConfigMethod

#[], #[]=, #cget, #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

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

#add(page, &b) ⇒ Object



90
91
92
93
94
# File 'lib/tkextlib/bwidget/notebook.rb', line 90

def add(page, &b)
  win = window(tk_send('add', tagid(page)))
  win.instance_eval(&b) if b
  win
end

#compute_sizeObject



96
97
98
99
# File 'lib/tkextlib/bwidget/notebook.rb', line 96

def compute_size
  tk_send('compute_size')
  self
end

#delete(page, destroyframe = None) ⇒ Object



101
102
103
104
# File 'lib/tkextlib/bwidget/notebook.rb', line 101

def delete(page, destroyframe=None)
  tk_send('delete', tagid(page), destroyframe)
  self
end

#get_frame(page, &b) ⇒ Object



106
107
108
109
110
# File 'lib/tkextlib/bwidget/notebook.rb', line 106

def get_frame(page, &b)
  win = window(tk_send('getframe', tagid(page)))
  win.instance_eval(&b) if b
  win
end

#get_page(page) ⇒ Object



127
128
129
# File 'lib/tkextlib/bwidget/notebook.rb', line 127

def get_page(page)
  tk_send('pages', page)
end

#index(page) ⇒ Object



112
113
114
# File 'lib/tkextlib/bwidget/notebook.rb', line 112

def index(page)
  num_or_str(tk_send('index', tagid(page)))
end

#insert(index, page, keys = {}, &b) ⇒ Object



116
117
118
119
120
# File 'lib/tkextlib/bwidget/notebook.rb', line 116

def insert(index, page, keys={}, &b)
  win = window(tk_send('insert', index, tagid(page), *hash_kv(keys)))
  win.instance_eval(&b) if b
  win
end

#move(page, index) ⇒ Object



122
123
124
125
# File 'lib/tkextlib/bwidget/notebook.rb', line 122

def move(page, index)
  tk_send('move', tagid(page), index)
  self
end

#pages(first = None, last = None) ⇒ Object



131
132
133
# File 'lib/tkextlib/bwidget/notebook.rb', line 131

def pages(first=None, last=None)
  list(tk_send('pages', first, last))
end

#raise(page = nil) ⇒ Object



135
136
137
138
139
140
141
142
# File 'lib/tkextlib/bwidget/notebook.rb', line 135

def raise(page=nil)
  if page
    tk_send('raise', page)
    self
  else
    tk_send('raise')
  end
end

#see(page) ⇒ Object



144
145
146
147
# File 'lib/tkextlib/bwidget/notebook.rb', line 144

def see(page)
  tk_send('see', page)
  self
end

#tabbind(context, *args) ⇒ Object

def tabbind(*args)

_bind_for_event_class(Event_for_Tabs, [path, 'bindtabs'], *args)
self

end



53
54
55
56
57
58
59
60
61
62
63
# File 'lib/tkextlib/bwidget/notebook.rb', line 53

def tabbind(context, *args)
  #if args[0].kind_of?(Proc) || args[0].kind_of?(Method)
  if TkComm._callback_entry?(args[0]) || !block_given?
    cmd = args.shift
  else
    cmd = Proc.new
  end
  _bind_for_event_class(Event_for_Tabs, [path, 'bindtabs'], 
                        context, cmd, *args)
  self
end

#tabbind_append(context, *args) ⇒ Object

def tabbind_append(*args)

_bind_append_for_event_class(Event_for_Tabs, [path, 'bindtabs'], *args)
self

end



69
70
71
72
73
74
75
76
77
78
79
# File 'lib/tkextlib/bwidget/notebook.rb', line 69

def tabbind_append(context, *args)
  #if args[0].kind_of?(Proc) || args[0].kind_of?(Method)
  if TkComm._callback_entry?(args[0]) || !block_given?
    cmd = args.shift
  else
    cmd = Proc.new
  end
  _bind_append_for_event_class(Event_for_Tabs, [path, 'bindtabs'], 
                               context, cmd, *args)
  self
end

#tabbind_remove(*args) ⇒ Object



81
82
83
84
# File 'lib/tkextlib/bwidget/notebook.rb', line 81

def tabbind_remove(*args)
  _bind_remove_for_event_class(Event_for_Tabs, [path, 'bindtabs'], *args)
  self
end

#tabbindinfo(*args) ⇒ Object



86
87
88
# File 'lib/tkextlib/bwidget/notebook.rb', line 86

def tabbindinfo(*args)
  _bindinfo_for_event_class(Event_for_Tabs, [path, 'bindtabs'], *args)
end

#tagid(id) ⇒ Object



37
38
39
40
41
42
43
44
45
46
47
# File 'lib/tkextlib/bwidget/notebook.rb', line 37

def tagid(id)
  if id.kind_of?(TkWindow)
    #id.path
    id.epath
  elsif id.kind_of?(TkObject)
    id.to_eval
  else
    # id.to_s
    _get_eval_string(id)
  end
end