Wijmo UI
Wijmo is a complete kit of over 40 UI widgets with everything from interactive menus to rich charts. If you know jQuery, you know Wijmo. Complete with documentation and professional support, every widget is hand-crafted and includes premium themes.
If you want to use Wijmo, go to wijmo.com to get started. Or visit the Wijmo Forum for discussions and questions.
This gem packages the Wijmo UI 2.2.0 assets (JavaScripts, stylesheets, and
images) for the Rails 3.1+ asset
pipeline, so you never have
to download a custom package through the web
interface again.
Usage
In your Gemfile, add:
gem 'Wijmo'
Require Everything
To require all wijmo UI modules, add the following to your application.js:
Also add the wijmo UI CSS to your application.css:
All images required by Wijmo UI are automatically served through the asset
pipeline, so you are good to go! For example, this code will add a
datepicker:
$(function() {
$('.datepicker').datepicker();
});
Require Specific Modules
The jQuery UI code weighs 51KB (minified + gzipped) and takes a while to
execute, so for production apps it's recommended to only include the modules
that your application actually uses. Dependencies are automatically resolved.
Simply pick one or more modules from the asset list below.
For example, if you only need the datepicker module, add this to your
application.js:
In your application.css, require the corresponding CSS module:
JavaScript Assets
UI Core
You usually do not need to require these directly, as they are pulled in by the
other JavaScript modules as needed.
Interactions
For wijmo.ui.resizable
and wijmo.ui.selectable
, remember to require
their matching CSS files in your application.css as well.
Widgets
For all of these, remember to require
their matching CSS files in your
application.css as well.
I18n
Datepicker has optional i18n modules for non-US locales, named
wijmo.ui.datepicker-xx[-YY]
(list),
for example:
Note that you still need to include the main datepicker module. It is not
required automatically for performance
reasons.
Effects
Stylesheet Assets
UI Core
You might want to require these if you do not use any of the following modules,
but still want wijmo UI's basic theming CSS. Otherwise they are automatically
pulled in as dependencies.
Interactions
Widgets
Contributing
Bug Reports
For bugs in wijmo UI itself, head to the wijmo UI Development
Center.
For bugs in this gem distribution, use the GitHub issue tracker.
Setup
The jquery-ui-rails
gem should work in Ruby 1.8.7 apps. To run the rake
tasks, you need Ruby 1.9 however.
git clone git://github.com/joliss/jquery-ui-rails.git
cd jquery-ui-rails
git submodule update --init
bundle install
bundle exec rake
Most of the code lives in the Rakefile
. Pull requests are more than welcome!
Hacking jQuery UI
The jquery-ui-rails repository is
contributor-friendly
and has a git submodule containing the official jquery-ui
repo. This way it's easy to hack the
jQuery UI code:
cd jquery-ui
git checkout master
... hack-hack-hack ...
bundle exec rake
Assuming your app's Gemfile points at your Wijmo checkout (gem 'Wijmo', :path => '~/path/to/Wijmo'
), all you need to do
now is refresh your browser, and your changes to Wijmo UI are live in your
Rails application.
You can send pull requests to the
Wijmo GitHub project straight out of
your submodule.
Testing
As a smoke test, a testapp
application is available in the repository, which
displays a check mark and a datepicker to make sure the assets load correctly:
cd testapp
bundle install
rails server
Now point your browser at http://localhost:3000/.
Limitations
-
Only the base theme (Smoothness) is included. Once it becomes possible to
generate all theme
files
from the jQuery UI sources, we can package all the other themes in the
ThemeRoller gallery.
Perhaps we can also add helper tasks to help developers generate assets for
their own custom themes or for third-party themes (like
Selene).
If you still want a different theme right now, you could probably download
a custom theme and require the theme CSS after requiring any other jQuery
UI CSS files you need, making sure to serve up the theme images correctly.
(This is arguably cumbersome, not officially supported by this gem, and
adds 1 KB overhead as both the base theme and the custom theme are served
up.)
-
The jquery.ui.all.js
file is named jquery-ui.js
in the official
distribution. We should follow their naming. But jquery-rails provides a
jquery-ui.js
asset as well, so until that is removed from the
jquery-rails gem (see issue
#46), we cannot
distribute jquery-ui.js
without risking conflicts.
To reduce confusion, as long as there is no jquery-ui.js
, we also do not
distribute the official jquery-ui-i18n.js
and jquery-ui.css
. The latter
is available as wijmo.ui.all.css
however.
Note:Copyright 2013 Grapecity, inc. For commercial use please buy the license from here http://wijmo.com/purchase