Class: Compass::SassExtensions::Sprites::SpriteMap

### Home Classes Methods

### In Files

- lib/compass/sass_extensions/sprites/sprite_map.rb

### Parent

Sass::Script::Literal

### Methods

- ::from_uri
- ::new
- ::relative_name
- #inspect
- #method_missing
- #respond_to?
- #to_s

### Included Modules

- Compass::SassExtensions::Sprites::SpriteMethods
- Compass::SassExtensions::Sprites::ImageMethods
- Compass::SassExtensions::Sprites::LayoutMethods

### Class/Module Index

Quicksearch

- Compass
- Compass::Actions
- Compass::AppIntegration
- Compass::AppIntegration::Helpers
- Compass::AppIntegration::Rails
- Compass::AppIntegration::StandAlone
- Compass::AppIntegration::StandAlone::ConfigurationDefaults
- Compass::AppIntegration::StandAlone::Installer
- Compass::BrowserSupport
- Compass::Commands
- Compass::Commands::Base
- Compass::Commands::CleanProject
- Compass::Commands::CleanProjectOptionsParser
- Compass::Commands::CompileProjectOptionsParser
- Compass::Commands::ConfigurationOptionsParser
- Compass::Commands::CreateProject
- Compass::Commands::CreateProjectOptionsParser
- Compass::Commands::Default
- Compass::Commands::DefaultOptionsParser
- Compass::Commands::ExtensionCommand
- Compass::Commands::ExtensionOptionsParser
- Compass::Commands::ExtensionsOptionParser
- Compass::Commands::GenerateGridBackground
- Compass::Commands::GridBackgroundOptionsParser
- Compass::Commands::Help
- Compass::Commands::HelpOptionsParser
- Compass::Commands::Imports
- Compass::Commands::InstallerCommand
- Compass::Commands::Interactive
- Compass::Commands::InteractiveOptionsParser
- Compass::Commands::ListFrameworks
- Compass::Commands::MemoryDebugger
- Compass::Commands::PrintVersion
- Compass::Commands::ProjectBase
- Compass::Commands::ProjectStats
- Compass::Commands::Registry
- Compass::Commands::Sprite
- Compass::Commands::SpriteOptionsParser
- Compass::Commands::StampPattern
- Compass::Commands::StampPatternOptionsParser
- Compass::Commands::StatsOptionsParser
- Compass::Commands::StructureOptionsParser
- Compass::Commands::UnpackExtension
- Compass::Commands::UpdateProject
- Compass::Commands::ValidateProject
- Compass::Commands::ValidationOptionsParser
- Compass::Commands::VersionOptionsParser
- Compass::Commands::WatchProject
- Compass::Commands::WatchProjectOptionsParser
- Compass::Commands::WriteConfiguration
- Compass::Compiler
- Compass::Configuration
- Compass::Configuration::Adapters
- Compass::Configuration::Comments
- Compass::Configuration::Data
- Compass::Configuration::Defaults
- Compass::Configuration::FileData
- Compass::Configuration::Helpers
- Compass::Configuration::Inheritance
- Compass::Configuration::Inheritance::ClassMethods
- Compass::Configuration::Inheritance::ClassMethods::ArrayProxy
- Compass::Configuration::Inheritance::InstanceMethods
- Compass::Configuration::Paths
- Compass::Configuration::Serialization
- Compass::Error
- Compass::Exec
- Compass::Exec::CommandOptionParser
- Compass::Exec::GlobalOptionsParser
- Compass::Exec::Helpers
- Compass::Exec::ProjectOptionsParser
- Compass::Exec::SubCommandUI
- Compass::Exec::SwitchUI
- Compass::FilesystemConflict
- Compass::Frameworks
- Compass::Frameworks::Framework
- Compass::GridBuilder
- Compass::Installers
- Compass::Installers::BareInstaller
- Compass::Installers::Base
- Compass::Installers::Manifest
- Compass::Installers::Manifest::Entry
- Compass::Installers::ManifestInstaller
- Compass::Installers::TemplateContext
- Compass::Logger
- Compass::MissingDependency
- Compass::NullLogger
- Compass::PNG
- Compass::SassExtensions
- Compass::SassExtensions::Functions
- Compass::SassExtensions::Functions::Colors
- Compass::SassExtensions::Functions::Constants
- Compass::SassExtensions::Functions::CrossBrowserSupport
- Compass::SassExtensions::Functions::CrossBrowserSupport::CSS2FallbackValue
- Compass::SassExtensions::Functions::Display
- Compass::SassExtensions::Functions::Enumerate
- Compass::SassExtensions::Functions::Env
- Compass::SassExtensions::Functions::FontFiles
- Compass::SassExtensions::Functions::GradientSupport
- Compass::SassExtensions::Functions::GradientSupport::Assertions
- Compass::SassExtensions::Functions::GradientSupport::ColorStop
- Compass::SassExtensions::Functions::GradientSupport::Functions
- Compass::SassExtensions::Functions::GradientSupport::Gradient
- Compass::SassExtensions::Functions::GradientSupport::Gradient::ClassMethods
- Compass::SassExtensions::Functions::GradientSupport::LinearGradient
- Compass::SassExtensions::Functions::GradientSupport::RadialGradient
- Compass::SassExtensions::Functions::ImageSize
- Compass::SassExtensions::Functions::ImageSize::ImageProperties
- Compass::SassExtensions::Functions::ImageSize::JPEG
- Compass::SassExtensions::Functions::InlineImage
- Compass::SassExtensions::Functions::Lists
- Compass::SassExtensions::Functions::Math
- Compass::SassExtensions::Functions::Selectors
- Compass::SassExtensions::Functions::Sprites
- Compass::SassExtensions::Functions::Sprites::VariableReader
- Compass::SassExtensions::Functions::Urls
- Compass::SassExtensions::Functions::Urls::FontUrl
- Compass::SassExtensions::Functions::Urls::GeneratedImageUrl
- Compass::SassExtensions::Functions::Urls::ImageUrl
- Compass::SassExtensions::Functions::Urls::StylesheetUrl
- Compass::SassExtensions::Sprites
- Compass::SassExtensions::Sprites::ChunkyPngEngine
- Compass::SassExtensions::Sprites::Engine
- Compass::SassExtensions::Sprites::Image
- Compass::SassExtensions::Sprites::ImageMethods
- Compass::SassExtensions::Sprites::ImageRow
- Compass::SassExtensions::Sprites::LayoutMethods
- Compass::SassExtensions::Sprites::RowFitter
- Compass::SassExtensions::Sprites::SpriteMap
- Compass::SassExtensions::Sprites::SpriteMethods
- Compass::SpriteException
- Compass::SpriteImporter
- Compass::Sprites
- Compass::Sprites::Binding
- Compass::Stats
- Compass::Stats::CssFile
- Compass::Stats::SassFile
- Compass::Stats::StatsVisitor
- Compass::TestCase
- Compass::Util
- Compass::Version
- Sass
- Sass::Script
- Sass::Script::CrossBrowserFunctionCall
- Sass::Script::Funcall
- Sass::Script::Functions
- Sass::Script::Functions::EvaluationContext
- Sass::Script::HasSimpleCrossBrowserFunctionSupport
- Sass::Script::List
- Sass::Tree
- Sass::Tree::Node
- QuickCache

No matching classes.

# Compass::SassExtensions::Sprites::SpriteMap

### Attributes

engine[RW]
height[RW]
image_names[RW]
images[RW]
kwargs[RW]
map[RW]
name[RW]
path[RW]
width[RW]

### Public Class Methods

from_uri(uri, context, kwargs) click to toggle source

Initialize a new sprite object from a relative file path the path is relative to the `images_path` confguration option

    # File lib/compass/sass_extensions/sprites/sprite_map.rb, line 15
    def self.from_uri(uri, context, kwargs)
      uri = uri.value
      path, name = Compass::SpriteImporter.path_and_name(uri)
      files = Compass::SpriteImporter.files(uri)
      sprites = files.map do |sprite|
        relative_name(sprite)
      end
      new(sprites, path, name, context, kwargs)
    end

new(sprites, path, name, context, kwargs) click to toggle source

    # File lib/compass/sass_extensions/sprites/sprite_map.rb, line 35
    def initialize(sprites, path, name, context, kwargs)
      @image_names = sprites
      @path = path
      @name = name
      @kwargs = kwargs
      @kwargs['cleanup'] ||= Sass::Script::Bool.new(true)
      @kwargs['layout'] ||= Sass::Script::String.new('vertical')
      @images = nil
      @width = nil
      @height = nil
      @engine = nil
      @evaluation_context = context
      validate!
      compute_image_metadata!
    end

relative_name(sprite) click to toggle source

    # File lib/compass/sass_extensions/sprites/sprite_map.rb, line 25
    def self.relative_name(sprite)
      sprite = File.expand_path(sprite)
      Compass.configuration.sprite_load_path.each do |path|
        path = File.expand_path(path)
        if sprite.include?(path)
          return sprite.gsub("#{path}/", "")
        end
      end
    end

### Public Instance Methods

inspect() click to toggle source

    # File lib/compass/sass_extensions/sprites/sprite_map.rb, line 51
    def inspect
      puts 'images'
      @images.each do |img|
        puts img.file
      end
      puts "options"
      @kwargs.each do |k,v|
        puts "#{k}:#{v}"
      end
    end

method_missing(meth, *args, &block) click to toggle source

    # File lib/compass/sass_extensions/sprites/sprite_map.rb, line 70
    def method_missing(meth, *args, &block)
      if @evaluation_context.respond_to?(meth)
        @evaluation_context.send(meth, *args, &block)
      else
        super
      end
    end

respond_to?(meth) click to toggle source

    # File lib/compass/sass_extensions/sprites/sprite_map.rb, line 66
    def respond_to?(meth)
      super || @evaluation_context.respond_to?(meth)
    end

to_s(kwargs = self.kwargs) click to toggle source

    # File lib/compass/sass_extensions/sprites/sprite_map.rb, line 62
    def to_s(kwargs = self.kwargs)
      sprite_url(self).value
    end

[Validate]

Generated with the Darkfish Rdoc Generator 2.