Type:
Class
Constants:
TYPE_NAME_TBL : Hash.new
TYPE_ID_TBL : Hash.new
TYPE_GROUP_TBL : Hash.new
FIELD_FLAG : { # key => flag 'above' => Grp::CONFIG, 'borderwidth' => (Grp::CREATE|Grp::CONFIG), 'button' => Grp::BUTTON, 'count' => Grp::EXPOSE, 'data' => (Grp::VIRTUAL|Grp::STRING_DATA), 'delta' => Grp::MWHEEL, 'detail' => (Grp::FOCUS|Grp::CROSSING), 'focus' => Grp::CROSSING, 'height' => (Grp::EXPOSE|Grp::CONFIG), 'keycode' => Grp::KEY, 'keysym' => Grp::KEY, 'mode' => (Grp::CROSSING|Grp::FOCUS), 'override' => (Grp::CREATE|Grp::MAP|Grp::REPARENT|Grp::CONFIG), 'place' => Grp::CIRC, 'root' => (Grp::KEY_BUTTON_MOTION_VIRTUAL|Grp::CROSSING), 'rootx' => (Grp::KEY_BUTTON_MOTION_VIRTUAL|Grp::CROSSING), 'rooty' => (Grp::KEY_BUTTON_MOTION_VIRTUAL|Grp::CROSSING), 'sendevent' => Grp::ALL, 'serial' => Grp::ALL, 'state' => (Grp::KEY_BUTTON_MOTION_VIRTUAL| Grp::CROSSING|Grp::VISIBILITY), 'subwindow' => (Grp::KEY_BUTTON_MOTION_VIRTUAL|Grp::CROSSING), 'time' => (Grp::KEY_BUTTON_MOTION_VIRTUAL|Grp::CROSSING| Grp::PROP), 'warp' => Grp::KEY_BUTTON_MOTION_VIRTUAL, 'width' => (Grp::EXPOSE|Grp::CREATE|Grp::CONFIG), 'window' => (Grp::CREATE|Grp::UNMAP|Grp::MAP|Grp::REPARENT| Grp::CONFIG|Grp::GRAVITY|Grp::CIRC), 'when' => Grp::ALL, 'x' => (Grp::KEY_BUTTON_MOTION_VIRTUAL|Grp::CROSSING| Grp::EXPOSE|Grp::CREATE|Grp::CONFIG|Grp::GRAVITY| Grp::REPARENT), 'y' => (Grp::KEY_BUTTON_MOTION_VIRTUAL|Grp::CROSSING| Grp::EXPOSE|Grp::CREATE|Grp::CONFIG|Grp::GRAVITY| Grp::REPARENT), }

FIELD_OPERATION : { 'root' => proc{|val| begin Tk.tk_call_without_enc('winfo', 'pathname', val) val rescue nil end }, 'subwindow' => proc{|val| begin Tk.tk_call_without_enc('winfo', 'pathname', val) val rescue nil end }, 'window' => proc{|val| nil} }

KEY_TBL : [ [ ?#, ?n, :serial ], [ ?a, ?s, :above ], [ ?b, ?n, :num ], [ ?c, ?n, :count ], [ ?d, ?s, :detail ], # ?e [ ?f, ?b, :focus ], # ?g [ ?h, ?n, :height ], [ ?i, ?s, :win_hex ], # ?j [ ?k, ?n, :keycode ], # ?l [ ?m, ?s, :mode ], # ?n [ ?o, ?b, :override ], [ ?p, ?s, :place ], # ?q # ?r [ ?s, ?x, :state ], [ ?t, ?n, :time ], # ?u [ ?v, ?n, :value_mask ], [ ?w, ?n, :width ], [ ?x, ?n, :x ], [ ?y, ?n, :y ], # ?z [ ?A, ?s, :char ], [ ?B, ?n, :borderwidth ], # ?C [ ?D, ?n, :wheel_delta ], [ ?E, ?b, :send_event ], # ?F # ?G # ?H # ?I # ?J [ ?K, ?s, :keysym ], # ?L # ?M [ ?N, ?n, :keysym_num ], # ?O [ ?P, ?s, :property ], # ?Q [ ?R, ?s, :rootwin_id ], [ ?S, ?s, :subwindow ], [ ?T, ?n, :type ], # ?U # ?V [ ?W, ?w, :widget ], [ ?X, ?n, :x_root ], [ ?Y, ?n, :y_root ], # ?Z nil ]
<'%' subst-key char>, <proc type char>, <instance var (accessor) name>
LONGKEY_TBL : [ # for example, for %CTT and %CST subst-key on tkdnd-2.0 # ['CTT', ?l, :drop_target_type], # ['CST', ?l, :drop_source_type], ]
<'%' subst-key str>, <proc type char>, <instance var (accessor) name>

the subst-key string will be converted to a bytecode (128+idx).

PROC_TBL : [ [ ?n, TkComm.method(:num_or_str) ], [ ?s, TkComm.method(:string) ], [ ?b, TkComm.method(:bool) ], [ ?w, TkComm.method(:window) ], [ ?x, proc{|val| begin TkComm::number(val) rescue ArgumentError val end } ], nil ]

<proc type char>, <proc/method to convert tcl-str to ruby-obj>
ALIAS_TBL : { :button => :num, :data => :detail, :delta => :wheel_delta, :root => :rootwin_id, :rootx => :x_root, :root_x => :x_root, :rooty => :y_root, :root_y => :y_root, :sendevent => :send_event, :window => :widget }

alias button num alias delta wheel_delta alias root rootwin_id alias rootx x_root alias root_x x_root alias rooty y_root alias root_y y_root alias sendevent send_event

type_id

type_id(name) Class Public methods

2015-06-05 03:59:24
group_flag

group_flag(id) Class Public methods

2015-06-05 03:53:13
type_name

type_name(id) Class Public methods

2015-06-05 04:00:11
valid_for_generate

valid_for_generate(group_flag=nil) Instance Public methods

2015-06-05 04:13:43
generate

generate(win, modkeys={}) Instance Public methods

2015-06-05 04:01:18
valid_fields

valid_fields(group_flag=nil) Instance Public methods

2015-06-05 04:07:30