Generates a Sass version of Ext theme. Includes methods for colorizing images.
The Gem is hosted at Gemcutter. Install the gem with:
gem install extjs-theme
gem 'extjs-theme' to you Gemfile and execute
$ bundle install
In the root of your Rails app, first execute the following in your console:
$ bundle exec xtheme init <path/to/ext> <path/to/stylesheets/sass-dir>
or generate a custom configuration file by execute the following in your console:
$ bundle exec xtheme init <path/to/ext> <path/to/stylesheets>
Every subsequent xtheme command will act up those directories. If you download a new version of Ext, simply re-execute xtheme init with the new path
To generate a new Sass theme:
$ bundle exec xtheme create my-theme
In Rails, this will have created a new directory public/stylesheets/themes/my-theme
The generator creates a main include file called my-theme/all.sass which contains @include directives for each individual Ext stylesheet. You *no longer need* to include the ext-all.css file from the Ext library – my-theme/all.sass contains all it needs. In a Rails view, you would include this file in the standard Haml/Sass manner.
or in an erb template:
<%= stylesheet_link_tag “my-theme/all”
The generator also creates a copy of all the Ext theme images in my-theme/images
Another important sass file created is my-theme/defines.sass. This file contains Sass variable declarations added to each Ext sass file.
$img_path: '../themes/my-theme/images' $font: tahoma,arial,verdana,sans-serif $hue: -90.0
The Gem includes commands for theme colorization, including image-processing through RMagick.
Currently, the only effect available is modulate, for modifying the hue, saturation and lightness of a theme according to RMagick:
$ bundle exec xtheme modulate <theme-name> <hue> <saturation> <lightness>
The parameters hue, saturation and lightness are defined as “Float numbers, for example, 0.25 means ”25%“. The median value of each argument is 1.0, that is, 100%”
Based upon the default blue Ext theme, the following will generate a pink theme:
$ bundle exec xtheme modulate my-theme 0.5 1.0 1.0
A green theme:
$ bundle exec xtheme modulate my-theme 1.5 1.0 1.0
*Only hue works currently, saturation and lightness are under development*
Copyright © 2010 Christocracy. See LICENSE for details.