class TkVarAccess + TkVariable + Tk + TkCore + TkComm + TkUtil
クラスの継承リスト: TkVarAccess < TkVariable < Tk < TkCore < TkComm < TkUtil < TkEvent < Comparable < Object < Kernel < BasicObject
要約
Tclライブラリなどで既に定義されている変数にアクセスするためのクラスで す。((-Tclのスコープを意識して利用しないとうまくアクセスできないと思わ れる。また、現状Tclの配列にはアクセスすることはできない-))
require 'tk'
p TkCore::INTERP._eval("set tclvar 1") # => 1
var = TkVarAccess.new("tclvar", 2)
p TkCore::INTERP._eval("set tclvar") # => 2
var.value = 3
p TkCore::INTERP._eval("set tclvar") # => 3
特異メソッド
_at(x, y = nil)-
[TODO]
_callback_entry?(obj)-
[TODO]
_callback_entry_class?(klass)-
[TODO]
_conv_args(*args)-
[TODO]
_curr_cmd_id-
[TODO]
_fromUTF8(str, encoding = nil)-
[TODO]
_genobj_for_tkwidget(path)-
[TODO]
_get_eval_enc_str(obj)-
[TODO]
_get_eval_string(*args)-
[TODO]
_next_cmd_id-
[TODO]
_symbolkey2str(keys)-
[TODO]
_toUTF8(str, encoding = nil)-
[TODO]
add_kinsoku(chars, mode = 'both')-
[TODO]
array2tk_list(ary, enc = nil)-
[TODO]
bell(nice = false)-
[TODO]
bell_on_display(win, nice = false)-
[TODO]
bool(value)-
[TODO]
callback(args)-
[TODO]
TkVariable#traceにより登録されたProcオブジェクトを実行します。 args は、 [TkVariableのインスタンス, "キー", "操作"] である配列です。
callback(*arg)-
[TODO]
callback(*args)-
[TODO]
const_missing(sym)-
[TODO]
current_grabs(win = nil)-
[TODO]
delete_kinsoku(chars, mode = 'both')-
[TODO]
destroy(*wins)-
[TODO]
errorCode-
[TODO]
errorInfo-
[TODO]
eval_cmd(*args)-
[TODO]
exit-
[TODO]
focus(display = nil)-
[TODO]
focus_lastfor(win)-
[TODO]
focus_next(win)-
[TODO]
focus_prev(win)-
[TODO]
focus_to(win, force = false)-
[TODO]
fromUTF8(str, encoding = nil)-
[TODO]
grid(*args)-
[TODO]
grid_forget(*args)-
[TODO]
has_mainwindow?-
[TODO]
hash_kv(*args)-
[TODO]
image_obj(val)-
[TODO]
install_cmd(cmd)-
[TODO]
install_cmd(*args)-
[TODO]
list(val, depth = 0, enc = true)-
[TODO]
load_tcllibrary(file, pkg_name = Tk::None, interp = Tk::None)-
[TODO]
load_tclscript(file, enc = nil)-
[TODO]
lower_window(win, below = Tk::None)-
[TODO]
new(name, *args)-
[TODO]
Tcl変数 varname と生成したインスタンスを関連付けます。 val を指定すると値の設定も行います。
new(val="")-
[TODO]
値がvalであるTkVariableオブジェクトを生成します。valが Array または Hash のオブジェクトである場合、生成されたインス タンスは Tclの配列として振る舞います。
new_hash(name, *args)-
[TODO]
new_hash(val = {})-
[TODO]
num_or_str(value)-
[TODO]
number(value)-
[TODO]
pack(*args)-
[TODO]
pack_forget(*args)-
[TODO]
pkgconfig_get(mod, key)-
[TODO]
pkgconfig_list(mod)-
[TODO]
place(*args)-
[TODO]
place_forget(*args)-
[TODO]
procedure(val)-
[TODO]
raise_window(win, above = Tk::None)-
[TODO]
show_kinsoku(mode = 'both')-
[TODO]
simplelist(val, src_enc = true, dst_enc = true)-
[TODO]
strictMotif(mode = Tk::None)-
[TODO]
string(value)-
[TODO]
subst_tk_backslash(str)-
[TODO]
subst_utf_backslash(str)-
[TODO]
tcl_pkgconfig_get-
[TODO]
tcl_pkgconfig_list(key)-
[TODO]
thread_update(idle = nil)-
[TODO]
thread_update_idletasks-
[TODO]
tk_pkgconfig_get(key)-
[TODO]
tk_pkgconfig_list-
[TODO]
tk_tcl2ruby(val, enc_mode = false, listobj = true)-
[TODO]
toUTF8(str, encoding = nil)-
[TODO]
to_backslash_sequence(str)-
[TODO]
ungrid(*args)-
[TODO]
uninstall_cmd(id)-
[TODO]
uninstall_cmd(cmd_id)-
[TODO]
unload_tcllibrary(*args)-
[TODO]
unpack(*args)-
[TODO]
unplace(*args)-
[TODO]
update(idle = nil)-
[TODO]
update_idletasks-
[TODO]
utf_to_backslash(str)-
[TODO]
utf_to_backslash_sequence(str)-
[TODO]
window(val)-
[TODO]
インスタンスメソッド
self % other-
[TODO]
self & other-
[TODO]
self * other-
[TODO]
self ** other-
[TODO]
self + other-
[TODO]
self - other-
[TODO]
self / other-
[TODO]
self <=> other-
[TODO]
self == other-
[TODO]
値がotherと同じである場合に真です。otherは、 TkVariable, String, Integer, Float, Arrayのいずれかです。
self =~ other-
[TODO]
self[index]-
[TODO]
index番目の値を返します。 selfはTclの配列でなければなりません。
self[index] = val-
[TODO]
index番目の要素をvalにします。 selfはTclの配列でなければなりません。
_conv_args(*args)-
[TODO]
_fromUTF8(*args)-
[TODO]
_get_eval_enc_str(obj)-
[TODO]
_get_eval_string(*args)-
[TODO]
_symbolkey2str(keys)-
[TODO]
_tk_call_to_list_core(depth, arg_enc, val_enc, *args)-
[TODO]
_toUTF8(*args)-
[TODO]
after(ms, cmd = Proc.new)-
[TODO]
after_cancel(after_id)-
[TODO]
after_idle(cmd = Proc.new)-
[TODO]
appname(name = Tk::None)-
[TODO]
appsend(interp, async, *args)-
[TODO]
appsend_deny-
[TODO]
appsend_displayof(interp, win, async, *args)-
[TODO]
bind(tag_or_class, context, *args)-
[TODO]
bind_all(context, *args)-
[TODO]
bind_append(tag_or_class, context, *args)-
[TODO]
bind_append_all(context, *args)-
[TODO]
bind_remove(tag_or_class, context)-
[TODO]
bind_remove_all(context)-
[TODO]
bindinfo(tag_or_class, context = nil)-
[TODO]
bindinfo_all(context = nil)-
[TODO]
bool-
[TODO]
bool(value)-
[TODO]
bool=set_bool-
[TODO]
bool_element-
[TODO]
bool_type=set_bool_type(val)-
[TODO]
callback_break-
[TODO]
callback_continue-
[TODO]
callback_return-
[TODO]
chooseColor(keys = nil)-
[TODO]
chooseDirectory(keys = nil)-
[TODO]
clear-
[TODO]
coerce(other)-
[TODO]
default_element_value_type(idxs)-
[TODO]
default_proc(cmd = Proc.new)-
[TODO]
default_value(val = nil)default_value(val = nil) { .... }-
[TODO]
default_value=-
[TODO]
default_value_type-
[TODO]
default_value_type=set_default_value_type(type)-
[TODO]
do_one_event(flag = TclTkLib::EventFlag::ALL)-
[TODO]
element_lappend(idxs, *elems)-
[TODO]
element_lindex(elem_idxs, idx)element_lget(elem_idxs, idx)-
[TODO]
element_lget_f(elem_idxs, idx)-
[TODO]
element_lget_i(elem_idxs, idx)-
[TODO]
element_lset(elem_idxs, idx, val)-
[TODO]
list_element(*idxs)element_to_a(*idxs)-
[TODO]
element_to_f(*idxs)-
[TODO]
element_to_i(*idxs)-
[TODO]
element_to_s(*idxs)string_element(*idxs)-
[TODO]
element_to_sym(*idxs)-
[TODO]
event_generate(win, context, keys = nil)-
[TODO]
eventloop_tkwait-
[TODO]
eventloop_wait(check_root = false)-
[TODO]
exist?(*elems)-
[TODO]
getMultipleOpenFile(keys = nil)-
[TODO]
getMultipleSaveFile(keys = nil)-
[TODO]
getOpenFile(keys = nil)-
[TODO]
getSaveFile(keys = nil)-
[TODO]
get_eventloop_tick-
[TODO]
get_eventloop_weight-
[TODO]
get_no_event_wait-
[TODO]
hash_kv(*args)-
[TODO]
id-
[TODO]
inactive-
[TODO]
inactive_displayof(win)-
[TODO]
info(*args)-
[TODO]
ip_eval(cmd_string)-
[TODO]
ip_eval_with_enc(cmd_string)-
[TODO]
ip_eval_without_enc(cmd_string)-
[TODO]
ip_invoke(*args)-
[TODO]
ip_invoke_with_enc(*args)-
[TODO]
ip_invoke_without_enc(*args)-
[TODO]
is_hash?-
[TODO]
is_mainloop?-
[TODO]
is_scalar?-
[TODO]
keys-
[TODO]
lappend(*elems)-
[TODO]
lindex(idx)lget(idx)-
[TODO]
lget_f(idx)-
[TODO]
lget_i(idx)-
[TODO]
list-
[TODO]
list=-
[TODO]
list_type=set_list_type(val)-
[TODO]
load_cmd_on_ip(tk_cmd)-
[TODO]
lset(idx, val)-
[TODO]
mainloop(check_root = true)-
[TODO]
mainloop_exist?-
[TODO]
mainloop_thread?-
[TODO]
mainloop_watchdog(check_root = true)-
[TODO]
messageBox(keys)-
[TODO]
nonzero?-
[TODO]
num_or_str(value)-
[TODO]
number(value)-
[TODO]
numeric-
[TODO]
numeric=-
[TODO]
numeric_element(*idxs)-
[TODO]
set_numeric_type(val)numeric_type=-
[TODO]
numlist-
[TODO]
set_numlist(val)numlist=-
[TODO]
numlist_element(*idxs)-
[TODO]
set_numlist_type(val)numlist_type=-
[TODO]
procedure-
[TODO]
set_procedure(cmd)procedure=-
[TODO]
procedure_element(*idxs)-
[TODO]
procedure_type=set_procedure_type(cmd)-
[TODO]
rb_appsend(interp, async, *args)-
[TODO]
rb_appsend_displayof(interp, win, async, *args)-
[TODO]
ref(*idxs)-
[TODO]
unset(elem=nil)remove(elem=nil)-
[TODO]
値がTcl配列であるとき、elemの値を削除します。
reset_inactive-
[TODO]
reset_inactive_displayof(win)-
[TODO]
restart(app_name = nil, keys = {})-
[TODO]
root-
[TODO]
scaling(scale = nil)-
[TODO]
scaling_displayof(win, scale=nil)-
[TODO]
set_bool_element-
[TODO]
set_bool_element_type(idxs, val)-
[TODO]
set_default_element_value_type(idxs, type)-
[TODO]
set_default_value(val)-
[TODO]
set_element_value(idxs, val)-
[TODO]
set_element_value_type(idxs, val)-
[TODO]
set_eventloop_ticktimer_tick-
[TODO]
set_eventloop_weight(loop_max, no_event_tick)-
[TODO]
set_list(val)-
[TODO]
set_list_element(idxs, val)set_numlist_element(idxs, val)-
[TODO]
set_list_element_type(idxs, val)-
[TODO]
set_no_event_wait(wait)-
[TODO]
set_numeric(val)-
[TODO]
set_numeric_element(idxs, val)-
[TODO]
set_numeric_element_type(idxs, val)-
[TODO]
set_numlist_element_type(idxs, val)-
[TODO]
set_procedure_element(idxs, cmd)-
[TODO]
set_procedure_element_type(idxs, cmd)-
[TODO]
string=set_string(val)-
[TODO]
set_string_element(idxs, val)-
[TODO]
set_string_element_type(idxs, val)-
[TODO]
string_type=set_string_type(val)-
[TODO]
symbol=set_symbol(val)-
[TODO]
set_symbol_element(idxs, val)-
[TODO]
set_symbol_element_type(idxs, val)-
[TODO]
symbol_type=set_symbol_type(val)-
[TODO]
set_value(val)-
[TODO]
値を val に設定し、self を返します。
set_value_type(val)value_type=-
[TODO]
set_variable(var)variable=-
[TODO]
set_variable_element(*idxs)-
[TODO]
set_variable_element_type(idxs, var)-
[TODO]
set_variable_type(var)variable_type=-
[TODO]
set_window(win)window=-
[TODO]
set_window_element(idxs, win)-
[TODO]
set_window_element_type(idxs, win)-
[TODO]
set_window_type(win)window_type=-
[TODO]
size-
[TODO]
string-
[TODO]
string(value)-
[TODO]
subst-
[TODO]
symbolto_sym-
[TODO]
symbol_element-
[TODO]
thread_tkwait-
[TODO]
thread_wait(check_root = false)-
[TODO]
tk_call(*args)-
[TODO]
tk_call_to_list(*args)-
[TODO]
tk_call_to_list_with_enc(*args)-
[TODO]
tk_call_to_list_without_enc(*args)-
[TODO]
tk_call_to_simplelist(*args)-
[TODO]
tk_call_to_simplelist_with_enc(*args)-
[TODO]
tk_call_to_simplelist_without_enc(*args)-
[TODO]
tk_call_with_enc(*args)-
[TODO]
tk_call_without_enc(*args)-
[TODO]
tkwait(on_thread = true)-
[TODO]
to_a-
[TODO]
値を配列(Array)として返します。
to_eval-
[TODO]
to_f-
[TODO]
値を数値(Float)として返します。
to_i-
[TODO]
値を数値(Fixnum)として返します。(現状のTkVariableは、 Bignumを値にすることはできません)
to_s-
[TODO]
値を文字列(String)として返します。
trace(opts, cmd)-
[TODO]
optsは、"r", "w", "u" のいずれか、またはこれらの組み合わせで、それぞれ 変数が参照、設定、削除 されたときにProcオブジェクト cmd を 呼び出します。2回目以降の呼び出しでは、opts が以前の設定と異なれ ばcmdを再設定します。
cmdは、引数に、self、空配列、"操作" を渡されて呼ばれ ます。"配列のキー" は、変数が配列の場合以外は空文字列です。"操作"は、 "r","w","u" のいずれかです。
require "tk" var = TkVariable.new(0) var.trace "rwu", proc {|arg| puts "callback called with #{arg.inspect}"} p var.value p var.value = 1 p var.unset =>callback called with [<TkVariable: v00000>, [], "r"] "0" callback called with [<TkVariable: v00000>, [], "w"] "1" callback called with [<TkVariable: v00000>, [], "u"] "" trace_callback(elem, op)-
[TODO]
TkVariable#traceにより登録されたProcオブジェクトを引数にself, elem, opを指定して実行します。
require "tk" var = TkVariable.new(0) var.trace "rwu", proc {|arg| puts "callback called with #{arg.inspect}"} var.trace_callback([], "r") trace_element(elem, opts, cmd)-
[TODO]
trace_vdelete(opts, cmd)-
[TODO]
TkVariable#trace で設定したcmdを削除します。opts が TkVariable#trace で 設定したときと一致しなければ何もしません。
trace_vdelete_for_element(elem, opts, cmd)-
[TODO]
trace_vinfo-
[TODO]
undef_default-
[TODO]
update(hash)-
[TODO]
update(idle = nil)-
[TODO]
only for backward compatibility (This never be recommended to use)
value-
[TODO]
値を返します。selfがTclの配列ならば(Tclの配列は連想配列な ので) Hashとして返します。それ以外では常に文字列を返します。
value=(val)-
[TODO]
値をvalに設定します。
variable-
[TODO]
variable_element(*idxs)-
[TODO]
wait-
[TODO]
値が変化するまで待ちます。
window-
[TODO]
window_element(*idxs)-
[TODO]
windowingsystem-
[TODO]
zero?-
[TODO]
self | other-
[TODO]
定数
AUTO_PATH-
[TODO]
EventFlag-
[TODO]
GET_CONFIGINFO_AS_ARRAY-
[TODO]
GET_CONFIGINFOwoRES_AS_ARRAY-
[TODO]
INTERP[redefined by multi-tk]-
[TODO]
INTERP-
[TODO]
JAPANIZED_TK-
[TODO]
LIBRARY_PATH-
[TODO]
None-
[TODO]
PACKAGE_PATH-
[TODO]
RELEASE_DATE-
[TODO]
TCL_LIBRARY_PATH-
[TODO]
TCL_MAJOR_VERSION-
[TODO]
TCL_MINOR_VERSION-
[TODO]
TCL_PACKAGE_PATH-
[TODO]
TCL_PATCHLEVEL-
[TODO]
TCL_PRECISION-
[TODO]
TCL_VERSION-
[TODO]
TK_MAJOR_VERSION-
[TODO]
TK_MINOR_VERSION-
[TODO]
TK_PATCHLEVEL-
[TODO]
TK_VERSION-
[TODO]
TkCommandNames-
[TODO]
TkExtlibAutoloadModule-
[TODO]
TkVar_CB_TBL-
[TODO]
コールバック関数を記録するハッシュです。内部で利用しています。
TkVar_ID_TBL-
[TODO]
Tk_CMDTBL-
[TODO]
Tk_IDs-
[TODO]
Tk_VARIABLE_ID-
[TODO]
Tclレベルの変数名をインスタンスに割り当てるために内部で利用されています。
Tk_VARIABLE_IDは、配列ですが0番目の要素しか使われていません。 Rubyにおける定数が値を変更できないためです。
Tk_WINDOWS-
[TODO]
Tkextlib_RELEASE_DATE-
[TODO]
USE_TCLs_LIST_FUNCTIONS-
[TODO]
USE_TCLs_SET_VARIABLE_FUNCTIONS-
[TODO]
WIDGET_DESTROY_HOOK-
[TODO]
WidgetClassNames-
[TODO]