Class: Tk::BLT::PlotComponent::Axis
- 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, 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
- #command(cmd = nil, &b) ⇒ Object
- #configinfo(key = nil) ⇒ Object
- #configure(key, value = None) ⇒ Object
- #current_configinfo(key = nil) ⇒ Object
- #delete ⇒ Object
- #id ⇒ Object
-
#initialize(chart, axis = nil, keys = {}) ⇒ Axis
constructor
A new instance of Axis.
- #invtransform(val) ⇒ Object
- #limits ⇒ Object
- #name ⇒ Object
- #to_eval ⇒ Object
- #transform(val) ⇒ Object
-
#use(name = None) ⇒ Object
if @id == xaxis | x2axis | yaxis | y2axis.
-
#use_as(axis) ⇒ Object
axis := xaxis | x2axis | yaxis | y2axis.
- #view ⇒ 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__, 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
Constructor Details
#initialize(chart, axis = nil, keys = {}) ⇒ Axis
Returns a new instance of Axis.
480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 |
# File 'lib/tkextlib/blt/component.rb', line 480 def initialize(chart, axis=nil, keys={}) # dummy:: not called by 'new' method if axis.kind_of?(Hash) keys = axis axis = nil end if axis @axis = @id = axis.to_s else OBJ_ID.mutex.synchronize{ @axis = @id = OBJ_ID.join(TkCore::INTERP._ip_id_).freeze OBJ_ID[1].succ! } end @path = @id @parent = @chart = chart @cpath = @chart.path # Axis::AxisID_TBL[@cpath][@axis] = self keys = _symbolkey2str(keys) unless keys.delete('without_creating') # @chart.axis_create(@axis, keys) tk_call(@chart, 'axis', 'create', @axis, 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
428 429 430 431 432 433 434 |
# File 'lib/tkextlib/blt/component.rb', line 428 def self.id2obj(chart, id) cpath = chart.path AxisID_TBL.mutex.synchronize{ return id unless AxisID_TBL[cpath] AxisID_TBL[cpath][id]? AxisID_TBL[cpath][id]: id } end |
.new(chart, axis = nil, keys = {}) ⇒ Object
436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 |
# File 'lib/tkextlib/blt/component.rb', line 436 def self.new(chart, axis=nil, keys={}) if axis.kind_of?(Hash) keys = axis axis = nil end if keys keys = _symbolkey2str(keys) not_create = keys.delete('without_creating') else not_create = false end obj = nil AxisID_TBL.mutex.synchronize{ chart_path = chart.path AxisID_TBL[chart_path] ||= {} if axis && AxisID_TBL[chart_path][axis] obj = AxisID_TBL[chart_path][axis] else (obj = self.allocate).instance_eval{ if axis @axis = @id = axis.to_s else OBJ_ID.mutex.synchronize{ @axis = @id = OBJ_ID.join(TkCore::INTERP._ip_id_).freeze OBJ_ID[1].succ! } end @path = @id @parent = @chart = chart @cpath = @chart.path Axis::AxisID_TBL[@cpath][@axis] = self unless not_create tk_call(@chart, 'axis', 'create', @axis, keys) return obj end } end } obj.configure(keys) if obj && ! keys.empty? obj end |
Instance Method Details
#cget(option) ⇒ Object
517 518 519 |
# File 'lib/tkextlib/blt/component.rb', line 517 def cget(option) @chart.axis_cget(@id, option) end |
#cget_strict(option) ⇒ Object
520 521 522 |
# File 'lib/tkextlib/blt/component.rb', line 520 def cget_strict(option) @chart.axis_cget_strict(@id, option) end |
#cget_tkstring(option) ⇒ Object
514 515 516 |
# File 'lib/tkextlib/blt/component.rb', line 514 def cget_tkstring(option) @chart.axis_cget_tkstring(@id, option) end |
#command(cmd = nil, &b) ⇒ Object
534 535 536 537 538 539 540 541 542 |
# File 'lib/tkextlib/blt/component.rb', line 534 def command(cmd=nil, &b) if cmd configure('command', cmd) elsif b configure('command', Proc.new(&b)) else cget('command') end end |
#configinfo(key = nil) ⇒ Object
527 528 529 |
# File 'lib/tkextlib/blt/component.rb', line 527 def configinfo(key=nil) @chart.axis_configinfo(@id, key) end |
#configure(key, value = None) ⇒ Object
523 524 525 526 |
# File 'lib/tkextlib/blt/component.rb', line 523 def configure(key, value=None) @chart.axis_configure(@id, key, value) self end |
#current_configinfo(key = nil) ⇒ Object
530 531 532 |
# File 'lib/tkextlib/blt/component.rb', line 530 def current_configinfo(key=nil) @chart.current_axis_configinfo(@id, key) end |
#delete ⇒ Object
544 545 546 547 |
# File 'lib/tkextlib/blt/component.rb', line 544 def delete @chart.axis_delete(@id) self end |
#id ⇒ Object
506 507 508 |
# File 'lib/tkextlib/blt/component.rb', line 506 def id @id end |
#invtransform(val) ⇒ Object
549 550 551 |
# File 'lib/tkextlib/blt/component.rb', line 549 def invtransform(val) @chart.axis_invtransform(@id, val) end |
#limits ⇒ Object
553 554 555 |
# File 'lib/tkextlib/blt/component.rb', line 553 def limits @chart.axis_limits(@id) end |
#name ⇒ Object
557 558 559 |
# File 'lib/tkextlib/blt/component.rb', line 557 def name @axis end |
#to_eval ⇒ Object
510 511 512 |
# File 'lib/tkextlib/blt/component.rb', line 510 def to_eval @id end |
#transform(val) ⇒ Object
561 562 563 |
# File 'lib/tkextlib/blt/component.rb', line 561 def transform(val) @chart.axis_transform(@id, val) end |
#use(name = None) ⇒ Object
if @id == xaxis | x2axis | yaxis | y2axis
570 571 572 |
# File 'lib/tkextlib/blt/component.rb', line 570 def use(name=None) # if @id == xaxis | x2axis | yaxis | y2axis @chart.axis_use(@id, name) end |
#use_as(axis) ⇒ Object
axis := xaxis | x2axis | yaxis | y2axis
574 575 576 |
# File 'lib/tkextlib/blt/component.rb', line 574 def use_as(axis) # axis := xaxis | x2axis | yaxis | y2axis @chart.axis_use(axis, @id) end |
#view ⇒ Object
565 566 567 568 |
# File 'lib/tkextlib/blt/component.rb', line 565 def view @chart.axis_view(@id) self end |