Sha256: ec460f73c1686e960c20f621fc337ea43383848513588785dee17e96de94f712

Contents?: true

Size: 1.21 KB

Versions: 15

Compression:

Stored size: 1.21 KB

Contents

module Sprite
  module Styles

    # renders standard sass rules
    class SassGenerator
      def initialize(builder)
        @builder = builder
      end

      def write(path, sprite_files)
        @level = 0

        File.open(File.join(Sprite.root, path), 'w') do |f|
          if @builder.config['sprites_class']
            f.puts ".#{@builder.config['sprites_class']}"
            @level += 1
          end
          
          sprite_files.each do |sprite_file, sprites|
            sprites.each do |sprite|
              f.puts sass_line("&.#{sprite[:group]}#{@builder.config['class_separator']}#{sprite[:name]}")
              @level += 1
              f.puts sass_line("background: url('/#{@builder.config['image_output_path']}#{sprite_file}') no-repeat #{sprite[:x]}px #{sprite[:y]}px")
              f.puts sass_line("width: #{sprite[:width]}px")
              f.puts sass_line("height: #{sprite[:height]}px")
              f.puts sass_line("")
              @level -= 1
            end
          end
        end
      end
      
      # write sass output with correct tab spaces prepended
      def sass_line(sass)
        "#{'  '*@level}#{sass}"
      end
  
      def extension
        "sass"
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 3 rubygems

Version Path
amikula-sprite-0.1.11 lib/sprite/styles/sass_generator.rb
sprite-generator-0.1.11 lib/sprite/styles/sass_generator.rb
amikula-sprite-0.1.10 lib/sprite/styles/sass_generator.rb
amikula-sprite-0.1.9 lib/sprite/styles/sass_generator.rb
amikula-sprite-0.1.8.1 lib/sprite/styles/sass_generator.rb
amikula-sprite-0.1.8 lib/sprite/styles/sass_generator.rb
sprite-0.1.7 lib/sprite/styles/sass_generator.rb
sprite-generator-0.1.10 lib/sprite/styles/sass_generator.rb
sprite-generator-0.1.9 lib/sprite/styles/sass_generator.rb
sprite-generator-0.1.8 lib/sprite/styles/sass_generator.rb
sprite-generator-0.1.7 lib/sprite/styles/sass_generator.rb
sprite-0.1.6 lib/sprite/styles/sass_generator.rb
sprite-0.1.5 lib/sprite/styles/sass_generator.rb
sprite-0.1.4 lib/sprite/styles/sass_generator.rb
sprite-0.1.3 lib/sprite/styles/sass_generator.rb