Class: Tk::BLT::PlotComponent::Marker
- Extended by:
- Tk, OptKeys, TkItemConfigOptkeys, TkItemFontOptkeys
- Defined in:
- lib/tkextlib/blt/component.rb
Constant Summary collapse
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 Encoding
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
Class Method Summary collapse
- ._parse_create_args(keys) ⇒ Object
- .create(chart, keys = {}) ⇒ Object
- .create_type(chart, type, keys = {}) ⇒ Object
- .id2obj(chart, id) ⇒ Object
- .type2class(type) ⇒ Object
Instance Method Summary collapse
- #after(target = None) ⇒ Object
- #before(target = None) ⇒ Object
- #cget(option) ⇒ Object
- #configinfo(key = nil) ⇒ Object
- #configure(key, value = None) ⇒ Object
- #current_configinfo(key = nil) ⇒ Object
- #delete ⇒ Object
- #exist? ⇒ Boolean
- #id ⇒ Object
-
#initialize(parent, *args) ⇒ Marker
constructor
A new instance of Marker.
- #to_eval ⇒ Object
- #type ⇒ Object
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 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_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 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 TkBindCore
#bind, #bind_append, #bind_remove, #bindinfo
Methods included from TkConfigMethod
#[], #[]=, #config_hash_kv, #configure_cmd
Methods included from TkTreatFont
#font_configinfo, #font_configure, #font_copy, #kanjifont_configure, #kanjifont_copy, #latinfont_configure, #latinfont_copy
Methods inherited from TkKernel
Constructor Details
#initialize(parent, *args) ⇒ Marker
Returns a new instance of Marker.
954 955 956 957 958 959 960 961 962 963 |
# File 'lib/tkextlib/blt/component.rb', line 954 def initialize(parent, *args) @parent = @chart = parent @cpath = parent.path @path = @id = create_self(*args) # an integer number as 'item id' unless Tk::BLT::PlotComponent::Marker::MarkerID_TBL[@cpath] Tk::BLT::PlotComponent::Marker::MarkerID_TBL[@cpath] = {} end Tk::BLT::PlotComponent::Marker::MarkerID_TBL[@cpath][@id] = self end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class TkObject
Class Method Details
._parse_create_args(keys) ⇒ Object
885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 |
# File 'lib/tkextlib/blt/component.rb', line 885 def self._parse_create_args(keys) fontkeys = {} methodkeys = {} if keys.kind_of? Hash keys = _symbolkey2str(keys) __item_font_optkeys(nil).each{|key| fkey = key.to_s fontkeys[fkey] = keys.delete(fkey) if keys.key?(fkey) fkey = "kanji#{key}" fontkeys[fkey] = keys.delete(fkey) if keys.key?(fkey) fkey = "latin#{key}" fontkeys[fkey] = keys.delete(fkey) if keys.key?(fkey) fkey = "ascii#{key}" fontkeys[fkey] = keys.delete(fkey) if keys.key?(fkey) } __item_methodcall_optkeys(nil).each{|key| key = key.to_s methodkeys[key] = keys.delete(key) if keys.key?(key) } __item_ruby2val_optkeys(nil).each{|key, method| key = key.to_s keys[key] = method.call(keys[key]) if keys.has_key?(key) } args = itemconfig_hash_kv(nil, keys) else args = [] end [args, fontkeys] end |
.create(chart, keys = {}) ⇒ Object
924 925 926 927 928 929 930 931 932 933 |
# File 'lib/tkextlib/blt/component.rb', line 924 def self.create(chart, keys={}) unless self::MarkerTypeName fail RuntimeError, "#{self} is an abstract class" end args, fontkeys = _parse_create_args(keys) idnum = tk_call_without_enc(chart.path, 'marker', 'create', self::MarkerTypeName, *args) chart.marker_configure(idnum, fontkeys) unless fontkeys.empty? idnum.to_i # 'item id' is an integer number end |
.create_type(chart, type, keys = {}) ⇒ Object
935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 |
# File 'lib/tkextlib/blt/component.rb', line 935 def self.create_type(chart, type, keys={}) args, fontkeys = _parse_create_args(keys) idnum = tk_call_without_enc(chart.path, 'marker', 'create', type, *args) chart.marker_configure(idnum, fontkeys) unless fontkeys.empty? id = idnum.to_i # 'item id' is an integer number obj = self.allocate obj.instance_eval{ @parent = @chart = chart @cpath = chart.path @id = id unless Tk::BLT::PlotComponent::Marker::MarkerID_TBL[@cpath] Tk::BLT::PlotComponent::Marker::MarkerID_TBL[@cpath] = {} end Tk::BLT::PlotComponent::Marker::MarkerID_TBL[@cpath][@id] = self } obj end |
.id2obj(chart, id) ⇒ Object
879 880 881 882 883 |
# File 'lib/tkextlib/blt/component.rb', line 879 def Marker.id2obj(chart, id) cpath = chart.path return id unless MarkerID_TBL[cpath] MarkerID_TBL[cpath][id]? MarkerID_TBL[cpath][id]: id end |
.type2class(type) ⇒ Object
875 876 877 |
# File 'lib/tkextlib/blt/component.rb', line 875 def Marker.type2class(type) MarkerTypeToClass[type] end |
Instance Method Details
#after(target = None) ⇒ Object
991 992 993 |
# File 'lib/tkextlib/blt/component.rb', line 991 def after(target=None) @chart.marker_after(@id, target) end |
#before(target = None) ⇒ Object
995 996 997 |
# File 'lib/tkextlib/blt/component.rb', line 995 def before(target=None) @chart.marker_before(@id, target) end |
#cget(option) ⇒ Object
977 978 979 |
# File 'lib/tkextlib/blt/component.rb', line 977 def cget(option) @chart.marker_cget(@id, option) end |
#configinfo(key = nil) ⇒ Object
984 985 986 |
# File 'lib/tkextlib/blt/component.rb', line 984 def configinfo(key=nil) @chart.marker_configinfo(@id, key) end |
#configure(key, value = None) ⇒ Object
980 981 982 983 |
# File 'lib/tkextlib/blt/component.rb', line 980 def configure(key, value=None) @chart.marker_configure(@id, key, value) self end |
#current_configinfo(key = nil) ⇒ Object
987 988 989 |
# File 'lib/tkextlib/blt/component.rb', line 987 def current_configinfo(key=nil) @chart.current_marker_configinfo(@id, key) end |
#delete ⇒ Object
999 1000 1001 |
# File 'lib/tkextlib/blt/component.rb', line 999 def delete @chart.marker_delete(@id) end |
#exist? ⇒ Boolean
1003 1004 1005 |
# File 'lib/tkextlib/blt/component.rb', line 1003 def exist? @chart.marker_exist(@id) end |
#id ⇒ Object
969 970 971 |
# File 'lib/tkextlib/blt/component.rb', line 969 def id @id end |
#to_eval ⇒ Object
973 974 975 |
# File 'lib/tkextlib/blt/component.rb', line 973 def to_eval @id end |
#type ⇒ Object
1007 1008 1009 |
# File 'lib/tkextlib/blt/component.rb', line 1007 def type @chart.marker_type(@id) end |