Module: TkConfigMethod
Constant Summary
Constants included
from TkUtil
TkUtil::None, TkUtil::RELEASE_DATE
Class Method Summary
collapse
Instance Method Summary
collapse
#font_configinfo, #font_configure, #font_copy, #kanjifont_configure, #kanjifont_copy, #latinfont_configure, #latinfont_copy
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
Class Method Details
3733
3734
3735
|
# File 'lib/tk.rb', line 3733
def TkConfigMethod.__IGNORE_UNKNOWN_CONFIGURE_OPTION__
@mode || false
end
|
3736
3737
3738
3739
|
# File 'lib/tk.rb', line 3736
def TkConfigMethod.__set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!(mode)
fail SecurityError, "can't change the mode" if $SAFE>=4
@mode = (mode)? true: false
end
|
Instance Method Details
3864
3865
3866
|
# File 'lib/tk.rb', line 3864
def [](id)
cget(id)
end
|
#[]=(id, val) ⇒ Object
3868
3869
3870
3871
|
# File 'lib/tk.rb', line 3868
def []=(id, val)
configure(id, val)
val
end
|
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
|
# File 'lib/tk.rb', line 4061
def __check_available_configure_options(keys)
availables = self.current_configinfo.keys
availables |= __font_optkeys.map{|k|
[k.to_s, "latin#{k}", "ascii#{k}", "kanji#{k}"]
}.flatten
availables |= __methodcall_optkeys.keys.map{|k| k.to_s}
availables |= __keyonly_optkeys.keys.map{|k| k.to_s}
keys = _symbolkey2str(keys)
keys.delete_if{|k, v| !(availables.include?(k))}
end
|
#cget(slot) ⇒ Object
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
|
# File 'lib/tk.rb', line 3962
def cget(slot)
unless TkConfigMethod.__IGNORE_UNKNOWN_CONFIGURE_OPTION__
__cget_core(slot)
else
begin
__cget_core(slot)
rescue => e
if current_configinfo.has_key?(slot.to_s)
fail e
else
nil
end
end
end
end
|
#cget_strict(slot) ⇒ Object
3979
3980
3981
3982
|
# File 'lib/tk.rb', line 3979
def cget_strict(slot)
__cget_core(slot)
end
|
#cget_tkstring(option) ⇒ Object
3873
3874
3875
3876
3877
|
# File 'lib/tk.rb', line 3873
def cget_tkstring(option)
opt = option.to_s
fail ArgumentError, "Invalid option `#{option.inspect}'" if opt.length == 0
tk_call_without_enc(*(__cget_cmd << "-#{opt}"))
end
|
#config_hash_kv(keys, enc_mode = nil, conf = nil) ⇒ Object
3858
3859
3860
|
# File 'lib/tk.rb', line 3858
def config_hash_kv(keys, enc_mode = nil, conf = nil)
hash_kv(__conv_keyonly_opts(keys), enc_mode, conf)
end
|
#configinfo(slot = nil) ⇒ Object
4872
4873
4874
4875
4876
4877
4878
4879
4880
4881
4882
|
# File 'lib/tk.rb', line 4872
def configinfo(slot = nil)
if slot && TkConfigMethod.__IGNORE_UNKNOWN_CONFIGURE_OPTION__
begin
__configinfo_core(slot)
rescue
Array.new(__configinfo_struct.values.max).unshift(slot.to_s)
end
else
__configinfo_core(slot)
end
end
|
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
|
# File 'lib/tk.rb', line 4075
def configure(slot, value=None)
unless TkConfigMethod.__IGNORE_UNKNOWN_CONFIGURE_OPTION__
__configure_core(slot, value)
else
if slot.kind_of?(Hash)
begin
__configure_core(slot)
rescue
slot = __check_available_configure_options(slot)
__configure_core(slot) unless slot.empty?
end
else
begin
__configure_core(slot, value)
rescue => e
if current_configinfo.has_key?(slot.to_s)
fail e
else
nil
end
end
end
end
self
end
|
4103
4104
4105
|
# File 'lib/tk.rb', line 4103
def configure_cmd(slot, value)
configure(slot, install_cmd(value))
end
|
#current_configinfo(slot = nil) ⇒ Object
4884
4885
4886
4887
4888
4889
4890
4891
4892
4893
4894
4895
4896
4897
4898
4899
4900
4901
4902
4903
4904
4905
4906
4907
4908
4909
4910
4911
4912
4913
4914
4915
|
# File 'lib/tk.rb', line 4884
def current_configinfo(slot = nil)
if TkComm::GET_CONFIGINFO_AS_ARRAY
if slot
org_slot = slot
begin
conf = configinfo(slot)
if ( ! __configinfo_struct[:alias] \
|| conf.size > __configinfo_struct[:alias] + 1 )
return {conf[0] => conf[-1]}
end
slot = conf[__configinfo_struct[:alias]]
end while(org_slot != slot)
fail RuntimeError,
"there is a configure alias loop about '#{org_slot}'"
else
ret = {}
configinfo().each{|cnf|
if ( ! __configinfo_struct[:alias] \
|| cnf.size > __configinfo_struct[:alias] + 1 )
ret[cnf[0]] = cnf[-1]
end
}
ret
end
else ret = {}
configinfo(slot).each{|key, cnf|
ret[key] = cnf[-1] if cnf.kind_of?(Array)
}
ret
end
end
|