Sha256: 6215d55f433e972880f2ac5629961a4476d52632aeae2b53a366b55c68bc8360
Contents?: true
Size: 1.44 KB
Versions: 12
Compression:
Stored size: 1.44 KB
Contents
module Sprite module Styles # renders a yml file that is later parsed by a sass extension when generating the mixins class SassMixinGenerator def initialize(builder) @builder = builder end def write(path, sprite_files) # write the sass mixins to disk File.open(File.join(Sprite.root, path), 'w') do |f| add_else = false f.puts "= sprite(!group_name, !image_name, !offset=0)" sprite_files.each do |sprite_file, sprites| sprites.each do |sprite| f << " @" if add_else f << "else " end add_else = true #{sprite[:x]}px #{sprite[:y]}px if sprite[:align] == 'horizontal' background_offset = "\#{#{sprite[:x]}+!offset}px #{sprite[:y]}px" else background_offset = "#{sprite[:x]}px \#{#{sprite[:y]}+!offset}px" end f.puts %{if !group_name == "#{sprite[:group]}" and !image_name == "#{sprite[:name]}"} f.puts " background: url('/#{@builder.config['image_output_path']}#{sprite_file}') no-repeat #{background_offset}" f.puts " width: #{sprite[:width]}px" f.puts " height: #{sprite[:height]}px" end end end end def extension "sass" end end end end
Version data entries
12 entries across 12 versions & 3 rubygems