機能 #722 » 0001-DSL.patch
| core/plugin.rb | ||
|---|---|---|
|
add_event_filter(:defined_settings) do |tabs|
|
||
|
[tabs.melt << [name, place, @name]] end end
|
||
|
# 画像ファイルのパスを得る
|
||
|
# ==== Args
|
||
|
# - String filename ファイル名
|
||
|
def get_skin(filename)
|
||
|
plugin_skin_dir = File.join(spec[:path], "skin")
|
||
|
if File.exist?(plugin_skin_dir)
|
||
|
Skin.get(filename, [plugin_skin_dir])
|
||
|
else
|
||
|
Skin.get(filename)
|
||
|
end
|
||
|
end
|
||
|
# マジックメソッドを追加する。
|
||
|
# on_?name :: add_event(name)
|
||
|
# filter_?name :: add_event_filter(name)
|
||
| core/skin.rb | ||
|---|---|---|
|
def self.user_dir
|
||
|
if USER_SKIN
|
||
|
p [SKIN_ROOT, USER_SKIN]
|
||
|
File.join(SKIN_ROOT, USER_SKIN)
|
||
|
else
|
||
|
nil
|
||
|
end
|
||
|
end
|
||
|
def self.get(filename, default = default_image)
|
||
|
valid_path = [ user_dir, default_dir ].compact.map { |_|
|
||
|
def self.get(filename, fallback_dirs = [])
|
||
|
search_path = [ user_dir, fallback_dirs, default_dir ].flatten.compact
|
||
|
valid_path = search_path.map { |_|
|
||
|
File.join(_, filename)
|
||
|
}.select { |_|
|
||
|
FileTest.exist?(_)
|
||
| ... | ... | |
|
if valid_path
|
||
|
valid_path
|
||
|
else
|
||
|
default
|
||
|
default_image
|
||
|
end
|
||
|
end
|
||
|
end
|
||