Class: Tk::BLT::PlotComponent::Pen
- Defined in:
- lib/tkextlib/blt/component.rb
Constant Summary collapse
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 TkUtil
TkUtil::None, TkUtil::RELEASE_DATE
Constants included from Tk
AUTO_PATH, Fontchooser, 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::TkCommandNames, Encoding::UNKNOWN, Encoding::UTF8_NAME
Class Method Summary collapse
Instance Method Summary collapse
- #cget(option) ⇒ Object
- #cget_strict(option) ⇒ Object
- #cget_tkstring(option) ⇒ Object
- #configinfo(key = nil) ⇒ Object
- #configure(key, value = None) ⇒ Object
- #current_configinfo(key = nil) ⇒ Object
- #delete ⇒ Object
- #id ⇒ Object
-
#initialize(chart, pen = nil, keys = {}) ⇒ Pen
constructor
A new instance of Pen.
- #name ⇒ Object
- #to_eval ⇒ Object
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
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 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 TkBindCore
#bind, #bind_append, #bind_remove, #bindinfo
Methods included from TkConfigMethod
#[], #[]=, __IGNORE_UNKNOWN_CONFIGURE_OPTION__, #__check_available_configure_options, __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!, #config_hash_kv, #configure_cmd
Methods included from TkTreatFont
#font_configinfo, #font_configure, #font_copy, #kanjifont_configure, #kanjifont_copy, #latinfont_configure, #latinfont_copy
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
Constructor Details
#initialize(chart, pen = nil, keys = {}) ⇒ Pen
Returns a new instance of Pen.
1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 |
# File 'lib/tkextlib/blt/component.rb', line 1058 def initialize(chart, pen=nil, keys={}) if pen.kind_of?(Hash) keys = pen pen = nil end if pen @pen = @id = pen.to_s else OBJ_ID.mutex.synchronize{ @pen = @id = OBJ_ID.join(TkCore::INTERP._ip_id_).freeze OBJ_ID[1].succ! } end @path = @id @parent = @chart = chart @cpath = @chart.path Pen::PenID_TBL[@cpath][@pen] = self keys = _symbolkey2str(keys) unless keys.delete('without_creating') # @chart.pen_create(@pen, keys) tk_call(@chart, 'pen', 'create', @pen, keys) end end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class TkObject
Class Method Details
.id2obj(chart, id) ⇒ Object
1006 1007 1008 1009 1010 1011 1012 |
# File 'lib/tkextlib/blt/component.rb', line 1006 def self.id2obj(chart, id) cpath = chart.path PenID_TBL.mutex.synchronize{ return id unless PenID_TBL[cpath] PenID_TBL[cpath][id]? PenID_TBL[cpath][id]: id } end |
.new(chart, pen = nil, keys = {}) ⇒ Object
1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 |
# File 'lib/tkextlib/blt/component.rb', line 1014 def self.new(chart, pen=nil, keys={}) if pen.kind_of?(Hash) keys = pen pen = nil end if keys keys = _symbolkey2str(keys) not_create = keys.delete('without_creating') else not_create = false end obj = nil PenID_TBL.mutex.synchronize{ chart_path = chart.path PenID_TBL[chart_path] ||= {} if pen && PenID_TBL[chart_path][pen] obj = PenID_TBL[chart_path][pen] else (obj = self.allocate).instance_eval{ if pen @pen = @id = pen.to_s else OBJ_ID.mutex.synchronize{ @pen = @id = OBJ_ID.join(TkCore::INTERP._ip_id_).freeze OBJ_ID[1].succ! } end @path = @id @parent = @chart = chart @cpath = @chart.path Pen::PenID_TBL[@cpath][@pen] = self unless not_create tk_call(@chart, 'pen', 'create', @pen, keys) return obj end } end } obj.configure(keys) if obj && ! keys.empty? obj end |
Instance Method Details
#cget(option) ⇒ Object
1093 1094 1095 |
# File 'lib/tkextlib/blt/component.rb', line 1093 def cget(option) @chart.pen_cget(@id, option) end |
#cget_strict(option) ⇒ Object
1096 1097 1098 |
# File 'lib/tkextlib/blt/component.rb', line 1096 def cget_strict(option) @chart.pen_cget_strict(@id, option) end |
#cget_tkstring(option) ⇒ Object
1090 1091 1092 |
# File 'lib/tkextlib/blt/component.rb', line 1090 def cget_tkstring(option) @chart.pen_cget_tkstring(@id, option) end |
#configinfo(key = nil) ⇒ Object
1103 1104 1105 |
# File 'lib/tkextlib/blt/component.rb', line 1103 def configinfo(key=nil) @chart.pen_configinfo(@id, key) end |
#configure(key, value = None) ⇒ Object
1099 1100 1101 1102 |
# File 'lib/tkextlib/blt/component.rb', line 1099 def configure(key, value=None) @chart.pen_configure(@id, key, value) self end |
#current_configinfo(key = nil) ⇒ Object
1106 1107 1108 |
# File 'lib/tkextlib/blt/component.rb', line 1106 def current_configinfo(key=nil) @chart.current_pen_configinfo(@id, key) end |
#delete ⇒ Object
1110 1111 1112 1113 |
# File 'lib/tkextlib/blt/component.rb', line 1110 def delete @chart.pen_delete(@id) self end |
#id ⇒ Object
1082 1083 1084 |
# File 'lib/tkextlib/blt/component.rb', line 1082 def id @id end |
#name ⇒ Object
1115 1116 1117 |
# File 'lib/tkextlib/blt/component.rb', line 1115 def name @pen end |
#to_eval ⇒ Object
1086 1087 1088 |
# File 'lib/tkextlib/blt/component.rb', line 1086 def to_eval @id end |