class Motion::SplashGenerator::Image

Attributes

size[R]

Public Class Methods

new(size) click to toggle source
# File lib/motion/splash_generator/image.rb, line 10
def initialize(size)
  @size = size
end

Public Instance Methods

report() click to toggle source
# File lib/motion/splash_generator/image.rb, line 14
def report
  if File.exist?(filename)
    puts("Created #{filename.ljust(50)}\t(#{size.actual_width}x#{size.actual_height} for #{size.idiom})")
  end
end
write!() click to toggle source
# File lib/motion/splash_generator/image.rb, line 20
def write!
  create_target_directory
  if requested_splash_for_size_idiom?(size)
    begin
      scaled_image.write(filename)
    rescue
      warn("Couldn't write #{filename}")
    end
  else
    puts "Skipping #{size.idiom}"
  end
end

Private Instance Methods

create_target_directory() click to toggle source
# File lib/motion/splash_generator/image.rb, line 57
def create_target_directory
  FileUtils.mkdir(target) unless Dir.exist?(target)
end
device() click to toggle source
# File lib/motion/splash_generator/image.rb, line 65
def device
  ENV['DEVICES'] || 'iphone'
end
filename() click to toggle source
# File lib/motion/splash_generator/image.rb, line 41
def filename
  "#{target}/#{size.name}"
end
img_name() click to toggle source
# File lib/motion/splash_generator/image.rb, line 61
def img_name
  ENV['TEMPLATE'] || "resources/splash-template.png"
end
requested_splash_for_size_idiom?(size) click to toggle source
# File lib/motion/splash_generator/image.rb, line 45
def requested_splash_for_size_idiom?(size)
  device == 'universal' || size.idiom.start_with?(device)
end
scaled_image() click to toggle source
# File lib/motion/splash_generator/image.rb, line 37
def scaled_image
  template_image.resize_to_fill(size.actual_width, size.actual_height)
end
target() click to toggle source
# File lib/motion/splash_generator/image.rb, line 69
def target
  ENV['TARGET'] || 'splashes'
end
template_image() click to toggle source
# File lib/motion/splash_generator/image.rb, line 49
def template_image
  if File.exist?(img_name)
    ImageList.new(img_name)
  else
    raise LoadError, "Can't find resources/splash-template.png. Did you even RTFM?"
  end
end