mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
48 lines
1.1 KiB
Ruby
48 lines
1.1 KiB
Ruby
|
#
|
||
|
# charts -- Create and manipulate canvas Add-On Items
|
||
|
# by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
|
||
|
#
|
||
|
require 'tk'
|
||
|
require 'tk/canvas'
|
||
|
|
||
|
# call setup script -- <libdir>/tkextlib/vu.rb
|
||
|
require(File.dirname(File.expand_path(__FILE__)) + '.rb')
|
||
|
|
||
|
module Tk
|
||
|
module Vu
|
||
|
module ChartsConfig
|
||
|
include TkItemConfigOptkeys
|
||
|
def __item_boolval_optkeys(id)
|
||
|
super(id) << 'lefttrunc' << 'autocolor'
|
||
|
end
|
||
|
private :__item_boolval_optkeys
|
||
|
|
||
|
def __item_listval_optkeys(id)
|
||
|
super(id) << 'values' << 'tags'
|
||
|
end
|
||
|
private :__item_listval_optkeys
|
||
|
end
|
||
|
|
||
|
class TkcSticker < TkcItem
|
||
|
include ChartsConfig
|
||
|
|
||
|
CItemTypeName = 'sticker'.freeze
|
||
|
CItemTypeToClass[CItemTypeName] = self
|
||
|
end
|
||
|
|
||
|
class TkcStripchart < TkcItem
|
||
|
include ChartsConfig
|
||
|
|
||
|
CItemTypeName = 'stripchart'.freeze
|
||
|
CItemTypeToClass[CItemTypeName] = self
|
||
|
end
|
||
|
|
||
|
class TkcBarchart < TkcItem
|
||
|
include ChartsConfig
|
||
|
|
||
|
CItemTypeName = 'barchart'.freeze
|
||
|
CItemTypeToClass[CItemTypeName] = self
|
||
|
end
|
||
|
end
|
||
|
end
|