4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
# File 'lib/rails_sprite/stylesheet_generator.rb', line 4
def self.generate options={}
css_class_prefix = options[:css_class_prefix]
css_class_shared = options[:css_class_shared]
css_extend = options[:css_extend]
image_scope_name = options[:image_scope_name]
file_infos = options[:file_infos]
stylesheet_to = options[:stylesheet_to]
result = {}
styles = []
file_infos.each do |file_info|
style = {}
style[:width] = "#{file_info[:width]}px"
style[:height] = "#{file_info[:height]}px"
style[:x] = "#{file_info[:x]}px"
style[:y] = "#{file_info[:y]}px"
style[:class] = "#{css_class_prefix}#{file_info[:file_purename]}"
styles << style
end
result[:styles] = styles
result[:image_scope_name] = image_scope_name
result[:css_class_shared] = css_class_shared
css_filt_content = case css_extend
when '.css.scss.erb', '.scss.erb'
composite_css_scss_erb(result)
else
end
system "mkdir -p #{::File.dirname(stylesheet_to)}"
::File.open(stylesheet_to, 'w') do |file|
file.write( css_filt_content )
end
result
end
|