add a feature to support multiple resource directories

change `app.resources_dir' to accept an Array too, like:

    app.resources_dir = ["resources", "vendor/GoogleMaps.framework/Resources"]
This commit is contained in:
Watson
2013-02-25 15:43:24 +09:00
parent bc962fa1c6
commit a160a13cc1
3 changed files with 57 additions and 40 deletions

View File

@@ -69,7 +69,7 @@ module Motion; module Project
@libs = []
@delegate_class = 'AppDelegate'
@name = 'Untitled'
@resources_dir = File.join(project_dir, 'resources')
@resources_dir = [File.join(project_dir, 'resources')]
@build_dir = File.join(project_dir, 'build')
@specs_dir = File.join(project_dir, 'spec')
@device_family = :iphone
@@ -198,6 +198,11 @@ EOS
end
end
def resources_dir=(dir)
dir = [dir] if dir.is_a?(String)
@resources_dir = dir
end
def build_dir
unless File.directory?(@build_dir)
tried = false
@@ -694,12 +699,14 @@ EOS
def fonts
@fonts ||= begin
if File.exist?(resources_dir)
Dir.chdir(resources_dir) do
Dir.glob('*.{otf,ttf}')
resources_dir.flatten.inject([]) do |fonts, dir|
if File.exist?(dir)
Dir.chdir(dir) do
fonts.concat(Dir.glob('*.{otf,ttf}'))
end
else
fonts
end
else
[]
end
end
end