sproutcore 1.0.1049.pre.2 → 1.4.0.rc
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +1 -1
- data/VERSION.yml +4 -4
- data/lib/Buildfile +1 -1
- data/lib/frameworks/sproutcore/Buildfile +13 -27
- data/lib/frameworks/sproutcore/apps/greenhouse/controllers/library.js +0 -42
- data/lib/frameworks/sproutcore/apps/greenhouse/controllers/view_configs.js +100 -0
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/app_page.js +1 -1
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/dialogs.js +33 -9
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/strings.js +5 -2
- data/lib/frameworks/sproutcore/apps/greenhouse/states/main.js +1 -0
- data/lib/frameworks/sproutcore/apps/greenhouse/states/modals.js +21 -11
- data/lib/frameworks/sproutcore/apps/welcome/controllers/targets.js +0 -7
- data/lib/frameworks/sproutcore/apps/welcome/english.lproj/main_page.css +6 -24
- data/lib/frameworks/sproutcore/apps/welcome/english.lproj/main_page.js +46 -36
- data/lib/frameworks/sproutcore/frameworks/animation/core.js +32 -50
- data/lib/frameworks/sproutcore/frameworks/animation/tests/core.js +2 -7
- data/lib/frameworks/sproutcore/frameworks/bootstrap/system/browser.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/models/record.js +66 -42
- data/lib/frameworks/sproutcore/frameworks/datastore/models/record_attribute.js +4 -12
- data/lib/frameworks/sproutcore/frameworks/datastore/models/single_attribute.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/{desktop/tests → datastore/tests/models}/datetime_recordattribute.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/list_item.css +3 -27
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/touch-scroller.css +196 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/collection_fast_path.js +21 -8
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/alert.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/menu.js +15 -19
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/panel.js +22 -5
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/picker.js +54 -12
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/select_button.js +45 -18
- data/lib/frameworks/sproutcore/frameworks/desktop/system/drag.js +52 -32
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/button/methods.js +3 -28
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/button/ui.js +10 -30
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/checkbox/methods.js +17 -11
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/date_field/ui.js +2 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/list/ui_simple.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/list_item.js +20 -128
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/progress/ui.js +39 -8
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/segmented/methods.js +47 -23
- data/lib/frameworks/sproutcore/frameworks/desktop/views/button.js +90 -59
- data/lib/frameworks/sproutcore/frameworks/desktop/views/checkbox.js +39 -29
- data/lib/frameworks/sproutcore/frameworks/desktop/views/collection.js +15 -11
- data/lib/frameworks/sproutcore/frameworks/desktop/views/disclosure.js +16 -17
- data/lib/frameworks/sproutcore/frameworks/desktop/views/list_item.js +278 -457
- data/lib/frameworks/sproutcore/frameworks/desktop/views/menu_item.js +5 -5
- data/lib/frameworks/sproutcore/frameworks/desktop/views/popup_button.js +101 -5
- data/lib/frameworks/sproutcore/frameworks/desktop/views/scroll.js +87 -85
- data/lib/frameworks/sproutcore/frameworks/desktop/views/scroller.js +278 -33
- data/lib/frameworks/sproutcore/frameworks/desktop/views/segmented.js +146 -60
- data/lib/frameworks/sproutcore/frameworks/desktop/views/select.js +80 -211
- data/lib/frameworks/sproutcore/frameworks/desktop/views/select_field.js +10 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/views/slider.js +34 -33
- data/lib/frameworks/sproutcore/frameworks/desktop/views/split.js +248 -331
- data/lib/frameworks/sproutcore/frameworks/desktop/views/static_content.js +12 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/views/web.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/controllers/object.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/core.js +2 -33
- data/lib/frameworks/sproutcore/frameworks/foundation/ext/run_loop.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/license.js +11 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/button.js +6 -12
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/content_display.js +9 -4
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/control.js +1 -83
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inline_text_field.js +7 -6
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/selection_support.js +4 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/panes/main.js +2 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/panes/pane.js +107 -143
- data/lib/frameworks/sproutcore/frameworks/foundation/system/bundle.js +8 -4
- data/lib/frameworks/sproutcore/frameworks/foundation/system/core_query.js +4 -3
- data/lib/frameworks/sproutcore/frameworks/foundation/system/event.js +44 -33
- data/lib/frameworks/sproutcore/frameworks/foundation/system/exception_handler.js +85 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/system/image_cache.js +9 -9
- data/lib/frameworks/sproutcore/frameworks/foundation/system/platform.js +114 -6
- data/lib/frameworks/sproutcore/frameworks/foundation/system/ready.js +37 -38
- data/lib/frameworks/sproutcore/frameworks/foundation/system/render_context.js +5 -33
- data/lib/frameworks/sproutcore/frameworks/foundation/system/response.js +17 -19
- data/lib/frameworks/sproutcore/frameworks/foundation/system/root_responder.js +311 -255
- data/lib/frameworks/sproutcore/frameworks/foundation/system/routes.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/foundation/system/task_queue.js +10 -10
- data/lib/frameworks/sproutcore/frameworks/foundation/system/utils.js +53 -44
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/button/keyEquivalents.js +17 -16
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/staticLayout.js +0 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/end.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/helpers_style.js +3 -11
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/update.js +4 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/timer/invokeLater.js +5 -7
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/pane/sendEvent.js +41 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/text_field/ui.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/clippingFrame.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/createLayer.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/layoutStyle.js +56 -118
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/prepareContext.js +4 -12
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/render.js +5 -48
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/updateLayer.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/updateLayerLocation.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/viewDidResize.js +2 -24
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/date_time.js +2 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/views/field.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/foundation/views/label.js +49 -21
- data/lib/frameworks/sproutcore/frameworks/foundation/views/text_field.js +85 -54
- data/lib/frameworks/sproutcore/frameworks/foundation/views/view.js +256 -1174
- data/lib/frameworks/sproutcore/frameworks/media/views/audio.js +81 -74
- data/lib/frameworks/sproutcore/frameworks/media/views/controls.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/media/views/miniControls.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/mobile/tests/views/button/ui.js +1 -8
- data/lib/frameworks/sproutcore/frameworks/mobile/views/button.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/core.js +54 -25
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/array.js +1 -11
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/observable.js +8 -5
- data/lib/frameworks/sproutcore/frameworks/runtime/private/observer_queue.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/private/observer_set.js +24 -25
- data/lib/frameworks/sproutcore/frameworks/runtime/system/binding.js +9 -6
- data/lib/frameworks/sproutcore/frameworks/runtime/system/object.js +13 -6
- data/lib/frameworks/sproutcore/frameworks/runtime/system/run_loop.js +26 -11
- data/lib/frameworks/sproutcore/frameworks/runtime/system/set.js +140 -33
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/guidFor.js +33 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/object/base.js +48 -1
- data/lib/frameworks/sproutcore/frameworks/statechart/mixins/statechart.js +2 -3
- data/lib/frameworks/sproutcore/frameworks/testing/system/runner.js +1 -1
- data/lib/frameworks/sproutcore/themes/standard_theme/english.lproj/scroller.css +8 -4
- data/lib/sproutcore/helpers/entry_sorter.rb +14 -1
- data/sproutcore.gemspec +0 -2
- metadata +12 -443
- data/lib/frameworks/sproutcore/Gemfile +0 -8
- data/lib/frameworks/sproutcore/Gemfile.lock +0 -33
- data/lib/frameworks/sproutcore/apps/test_controls/Buildfile +0 -0
- data/lib/frameworks/sproutcore/apps/test_controls/controllers/categories.js +0 -108
- data/lib/frameworks/sproutcore/apps/test_controls/controllers/category.js +0 -31
- data/lib/frameworks/sproutcore/apps/test_controls/core.js +0 -29
- data/lib/frameworks/sproutcore/apps/test_controls/main.js +0 -14
- data/lib/frameworks/sproutcore/apps/test_controls/resources/buttons_page.js +0 -124
- data/lib/frameworks/sproutcore/apps/test_controls/resources/checkboxes_page.js +0 -45
- data/lib/frameworks/sproutcore/apps/test_controls/resources/flow_layout_page.js +0 -77
- data/lib/frameworks/sproutcore/apps/test_controls/resources/list_page.js +0 -40
- data/lib/frameworks/sproutcore/apps/test_controls/resources/loading.rhtml +0 -9
- data/lib/frameworks/sproutcore/apps/test_controls/resources/main_page.css +0 -54
- data/lib/frameworks/sproutcore/apps/test_controls/resources/main_page.js +0 -136
- data/lib/frameworks/sproutcore/apps/test_controls/resources/progress_page.js +0 -42
- data/lib/frameworks/sproutcore/apps/test_controls/resources/radio_page.js +0 -41
- data/lib/frameworks/sproutcore/apps/test_controls/resources/scroll_page.js +0 -76
- data/lib/frameworks/sproutcore/apps/test_controls/resources/segmented_page.js +0 -75
- data/lib/frameworks/sproutcore/apps/test_controls/resources/select_page.js +0 -60
- data/lib/frameworks/sproutcore/apps/test_controls/resources/sliders_page.js +0 -53
- data/lib/frameworks/sproutcore/apps/test_controls/resources/strings.js +0 -50
- data/lib/frameworks/sproutcore/apps/test_controls/resources/tab_page.js +0 -15
- data/lib/frameworks/sproutcore/apps/test_controls/resources/text_field_page.js +0 -40
- data/lib/frameworks/sproutcore/apps/welcome/english.lproj/images/main-bg.png +0 -0
- data/lib/frameworks/sproutcore/bin/edit_json.rb +0 -14
- data/lib/frameworks/sproutcore/bin/erubis +0 -14
- data/lib/frameworks/sproutcore/bin/prettify_json.rb +0 -14
- data/lib/frameworks/sproutcore/bin/rackup +0 -14
- data/lib/frameworks/sproutcore/bin/rake2thor +0 -14
- data/lib/frameworks/sproutcore/bin/sc-build +0 -14
- data/lib/frameworks/sproutcore/bin/sc-build-number +0 -14
- data/lib/frameworks/sproutcore/bin/sc-docs +0 -14
- data/lib/frameworks/sproutcore/bin/sc-gen +0 -14
- data/lib/frameworks/sproutcore/bin/sc-init +0 -14
- data/lib/frameworks/sproutcore/bin/sc-manifest +0 -14
- data/lib/frameworks/sproutcore/bin/sc-server +0 -14
- data/lib/frameworks/sproutcore/bin/sproutcore +0 -14
- data/lib/frameworks/sproutcore/bin/thin +0 -14
- data/lib/frameworks/sproutcore/bin/thor +0 -14
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/navigation_builder.js +0 -130
- data/lib/frameworks/sproutcore/frameworks/desktop/renderers/button.js +0 -147
- data/lib/frameworks/sproutcore/frameworks/desktop/renderers/checkbox.js +0 -87
- data/lib/frameworks/sproutcore/frameworks/desktop/renderers/checkbox_control.js +0 -103
- data/lib/frameworks/sproutcore/frameworks/desktop/renderers/disclosure.js +0 -82
- data/lib/frameworks/sproutcore/frameworks/desktop/renderers/disclosure_control.js +0 -103
- data/lib/frameworks/sproutcore/frameworks/desktop/renderers/image_button.js +0 -33
- data/lib/frameworks/sproutcore/frameworks/desktop/renderers/list_item.js +0 -334
- data/lib/frameworks/sproutcore/frameworks/desktop/renderers/masterDetail.js +0 -23
- data/lib/frameworks/sproutcore/frameworks/desktop/renderers/panel.js +0 -34
- data/lib/frameworks/sproutcore/frameworks/desktop/renderers/picker.js +0 -50
- data/lib/frameworks/sproutcore/frameworks/desktop/renderers/segment.js +0 -79
- data/lib/frameworks/sproutcore/frameworks/desktop/renderers/segmented.js +0 -172
- data/lib/frameworks/sproutcore/frameworks/desktop/renderers/slider.js +0 -86
- data/lib/frameworks/sproutcore/frameworks/desktop/renderers/workspace.js +0 -22
- data/lib/frameworks/sproutcore/frameworks/desktop/views/file.js +0 -112
- data/lib/frameworks/sproutcore/frameworks/desktop/views/master_detail.js +0 -249
- data/lib/frameworks/sproutcore/frameworks/desktop/views/navigation.js +0 -237
- data/lib/frameworks/sproutcore/frameworks/desktop/views/navigation_bar.js +0 -181
- data/lib/frameworks/sproutcore/frameworks/desktop/views/workspace.js +0 -270
- data/lib/frameworks/sproutcore/frameworks/documentation/core.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/forms/english.lproj/default_styles.css +0 -5
- data/lib/frameworks/sproutcore/frameworks/forms/english.lproj/strings.js +0 -15
- data/lib/frameworks/sproutcore/frameworks/forms/mixins/auto_hide.js +0 -85
- data/lib/frameworks/sproutcore/frameworks/forms/mixins/edit_mode.js +0 -43
- data/lib/frameworks/sproutcore/frameworks/forms/renderers/form.js +0 -24
- data/lib/frameworks/sproutcore/frameworks/forms/renderers/form_row.js +0 -24
- data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form.js +0 -15
- data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_checkbox_field.js +0 -15
- data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_field.js +0 -15
- data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_label.js +0 -15
- data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_radio_field.js +0 -15
- data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_row.js +0 -15
- data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_text_field.js +0 -15
- data/lib/frameworks/sproutcore/frameworks/forms/views/form.js +0 -266
- data/lib/frameworks/sproutcore/frameworks/forms/views/form_row.js +0 -188
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/images/sproutcore.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/gestures/pinch.js +0 -81
- data/lib/frameworks/sproutcore/frameworks/foundation/gestures/swipe.js +0 -142
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/auto_mixin.js +0 -33
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/auto_resize.js +0 -74
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/flowed_layout.js +0 -415
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/gestureable.js +0 -106
- data/lib/frameworks/sproutcore/frameworks/foundation/renderers/control.js +0 -122
- data/lib/frameworks/sproutcore/frameworks/foundation/renderers/image.js +0 -51
- data/lib/frameworks/sproutcore/frameworks/foundation/renderers/label.js +0 -96
- data/lib/frameworks/sproutcore/frameworks/foundation/renderers/renderer.js +0 -316
- data/lib/frameworks/sproutcore/frameworks/foundation/renderers/title.js +0 -108
- data/lib/frameworks/sproutcore/frameworks/foundation/renderers/view.js +0 -62
- data/lib/frameworks/sproutcore/frameworks/foundation/system/gesture.js +0 -245
- data/lib/frameworks/sproutcore/frameworks/foundation/system/theme.js +0 -108
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/renderers/renderer/base.js +0 -170
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/renderers/renderer/inheritance.js +0 -39
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/theme.js +0 -86
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/pane/sendTouchEvent.js +0 -267
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/animation.js +0 -321
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/build.js +0 -85
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/build_children.js +0 -89
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/renderer.js +0 -443
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/theme.js +0 -41
- data/lib/frameworks/sproutcore/frameworks/jquery/jquery.js +0 -6240
- data/lib/frameworks/sproutcore/frameworks/test +0 -77
- data/lib/frameworks/sproutcore/themes/ace/Buildfile +0 -0
- data/lib/frameworks/sproutcore/themes/ace/README.md +0 -161
- data/lib/frameworks/sproutcore/themes/ace/build +0 -2
- data/lib/frameworks/sproutcore/themes/ace/build-d +0 -2
- data/lib/frameworks/sproutcore/themes/ace/chance/README.md +0 -113
- data/lib/frameworks/sproutcore/themes/ace/chance/chance.rb +0 -203
- data/lib/frameworks/sproutcore/themes/ace/chance/lib/css.rb +0 -202
- data/lib/frameworks/sproutcore/themes/ace/chance/lib/slicedice.rb +0 -391
- data/lib/frameworks/sproutcore/themes/ace/chance/sc-theme.rb +0 -0
- data/lib/frameworks/sproutcore/themes/ace/chance/scripts/setup.rb +0 -126
- data/lib/frameworks/sproutcore/themes/ace/mockups/dark.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/mockups/dark.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/mockups/light.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/mockups/light.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/images/1.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/images/2.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/images/3.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/theme.css +0 -1832
- data/lib/frameworks/sproutcore/themes/ace/scroll_test/resources/images/1.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/scroll_test/resources/images/2.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/scroll_test/resources/images/3.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/scroll_test/resources/theme.css +0 -147
- data/lib/frameworks/sproutcore/themes/ace/scroll_test/scrollbars.html +0 -326
- data/lib/frameworks/sproutcore/themes/ace/src/body.css +0 -13
- data/lib/frameworks/sproutcore/themes/ace/src/collections/list.css +0 -4
- data/lib/frameworks/sproutcore/themes/ace/src/collections/list_item.css +0 -7
- data/lib/frameworks/sproutcore/themes/ace/src/collections/source_list/selection.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/collections/source_list/selection.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/collections/source_list/source_list_view.css +0 -37
- data/lib/frameworks/sproutcore/themes/ace/src/containers/container.css +0 -3
- data/lib/frameworks/sproutcore/themes/ace/src/containers/masterdetail/master-detail.css +0 -26
- data/lib/frameworks/sproutcore/themes/ace/src/containers/split/split.css +0 -4
- data/lib/frameworks/sproutcore/themes/ace/src/containers/tab/tab.css +0 -9
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button.js +0 -23
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/button_view.css +0 -53
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/normal_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/normal_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/selected_active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/selected_active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/selected_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/selected_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/active_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/active_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/button_view.css +0 -144
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/normal_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/normal_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/normal_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/normal_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/normal_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/normal_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_active_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_active_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/button_view_30.css +0 -111
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/normal_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/normal_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/normal_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/normal_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/button_view.css +0 -57
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/normal_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/normal_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/selected_active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/selected_active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/selected_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/selected_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/button_view.css +0 -56
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_closed.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_closed.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_closed_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_closed_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_open.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_open.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_open_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_open_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_view.css +0 -64
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox.css +0 -25
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_checked.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_checked.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_checked_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_checked_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_mixed.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_mixed.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_mixed_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_mixed_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_unchecked.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_unchecked.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_unchecked_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_unchecked_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox.css +0 -25
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_checked.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_checked.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_checked_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_checked_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_mixed.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_mixed.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_mixed_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_mixed_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_unchecked.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_unchecked.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_unchecked_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_unchecked_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/checkbox.css +0 -4
- data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/checkbox_control.css +0 -31
- data/lib/frameworks/sproutcore/themes/ace/src/controls/progress/progress_view/progress_view.css +0 -70
- data/lib/frameworks/sproutcore/themes/ace/src/controls/progress/progress_view/progress_view_content.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/progress/progress_view/progress_view_content.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/progress/progress_view/progress_view_indeterminate_content.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/progress/progress_view/progress_view_track.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/progress/progress_view/progress_view_track.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio.css +0 -61
- data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_mixed.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_mixed.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_mixed_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_mixed_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_selected.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_selected.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_selected_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_selected_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_unselected.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_unselected.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/horizontal/horizontal.css +0 -77
- data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/horizontal/thumb.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/horizontal/thumb.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/horizontal/track_and_arrows.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/horizontal/track_and_arrows.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/horizontal/track_and_arrows_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/horizontal/track_and_arrows_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical/thumb.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical/thumb.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical/track_and_arrows.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical/track_and_arrows.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical/track_and_arrows_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical/track_and_arrows_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical/vertical.css +0 -74
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented.css +0 -92
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_normal.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_normal.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_selected.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_selected.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_selected_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_selected_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented.css +0 -87
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_normal.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_normal.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_selected.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_selected.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_selected_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_selected_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented.css +0 -93
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_normal.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_normal.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_selected.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_selected.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_selected_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_selected_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented.css +0 -101
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_normal.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_normal.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_selected.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_selected.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_selected_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_selected_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/segmented.css +0 -73
- data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/segmented.js +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/select/active_select.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/select/active_select.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/select/menu.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/select/normal_select.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/select/normal_select.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/select/select.css +0 -45
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/14px/knob.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/14px/knob.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/14px/knob_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/14px/knob_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/14px/slider.css +0 -43
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/16px/knob.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/16px/knob.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/16px/knob_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/16px/knob_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/16px/slider.css +0 -44
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/22px/knob.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/22px/knob.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/22px/knob_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/22px/knob_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/22px/slider.css +0 -44
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/22px/track.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/22px/track.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/slider.css +0 -3
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/slider.js +0 -27
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/track.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/track.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/switch/24px/switch.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/switch/24px/switch_handle.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/switch/24px/switch_handle.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/switch/24px/switch_off.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/switch/24px/switch_off.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/switch/24px/switch_on.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/controls/switch/24px/switch_on.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/core/loading.css +0 -50
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/active_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/active_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/button_view.css +0 -142
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/normal_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/normal_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/normal_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/normal_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/normal_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/normal_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_active_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_active_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/button_view_30.css +0 -111
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/normal_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/normal_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/normal_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/normal_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/button.css +0 -20
- data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/button.js +0 -3
- data/lib/frameworks/sproutcore/themes/ace/src/form/iphone/form.js +0 -21
- data/lib/frameworks/sproutcore/themes/ace/src/form/iphone/form_row.js +0 -24
- data/lib/frameworks/sproutcore/themes/ace/src/form/iphone/iphone.css +0 -51
- data/lib/frameworks/sproutcore/themes/ace/src/form/iphone/iphone.js +0 -14
- data/lib/frameworks/sproutcore/themes/ace/src/form/iphone/label.js +0 -32
- data/lib/frameworks/sproutcore/themes/ace/src/panels/pane.css +0 -3
- data/lib/frameworks/sproutcore/themes/ace/src/panels/panel.css +0 -70
- data/lib/frameworks/sproutcore/themes/ace/src/panels/panel.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/panel.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/checkmark.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/checkmark.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/checkmark_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/checkmark_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/down.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/down.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/menu.css +0 -154
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/menu.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/menu.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/menu_item.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/menu_item.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/up.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/up.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/picker.css +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/picker.js +0 -1
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/picker.js +0 -14
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover.css +0 -271
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover.js +0 -5
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_empty.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_empty.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_notoolbar.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_notoolbar.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_pointers.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_pointers.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_pointers_notoolbar.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_pointers_notoolbar.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_sourcelist.css +0 -5
- data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/workspace.js +0 -51
- data/lib/frameworks/sproutcore/themes/ace/src/theme.js +0 -12
- data/lib/frameworks/sproutcore/themes/ace/src/toolbars/normal/selection.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/toolbars/normal/toolbar.css +0 -8
- data/lib/frameworks/sproutcore/themes/ace/src/toolbars/normal/toolbar.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/toolbars/normal/toolbar.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/toolbars/panel_header/panel_header.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/src/toolbars/panel_header/panel_header.psd +0 -0
- data/lib/frameworks/sproutcore/themes/empty_theme/theme.js +0 -16
@@ -1,77 +0,0 @@
|
|
1
|
-
require "tsort"
|
2
|
-
require "set"
|
3
|
-
|
4
|
-
require "pp"
|
5
|
-
|
6
|
-
Entry = Struct.new(:name, :requires)
|
7
|
-
|
8
|
-
# Construct a special Array that uses the Ruby TSort
|
9
|
-
# module to sort files by their dependencies
|
10
|
-
class Entries < Array
|
11
|
-
include TSort
|
12
|
-
|
13
|
-
# TSort requires that tsort_each_node iterates through
|
14
|
-
# all nodes. Since this is an Array, alias to each
|
15
|
-
alias tsort_each_node each
|
16
|
-
|
17
|
-
def self.from_directory(dir)
|
18
|
-
list = new(dir)
|
19
|
-
|
20
|
-
directory = File.expand_path(dir)
|
21
|
-
|
22
|
-
Dir["#{directory}/**/*.js"].each do |file|
|
23
|
-
requires = File.read(file).scan(%r{sc_require\(\s*['"](.*)['"]\)}).flatten
|
24
|
-
list.add Entry.new(file[%r{#{directory}/(.*)\.js}, 1], requires)
|
25
|
-
end
|
26
|
-
|
27
|
-
list
|
28
|
-
end
|
29
|
-
|
30
|
-
def initialize(root)
|
31
|
-
# make it faster to look up an entry by name, since
|
32
|
-
# dependencies are Strings
|
33
|
-
@entry_lookup = {}
|
34
|
-
@root = root
|
35
|
-
|
36
|
-
sort!
|
37
|
-
end
|
38
|
-
|
39
|
-
def add(entry)
|
40
|
-
self << entry
|
41
|
-
@entry_lookup[entry.name] = entry
|
42
|
-
end
|
43
|
-
|
44
|
-
private
|
45
|
-
# TSort requires that tsort_each_child take in a node
|
46
|
-
# and then yield back once for each dependency.
|
47
|
-
def tsort_each_child(node)
|
48
|
-
node.requires.each do |name|
|
49
|
-
yield @entry_lookup[name]
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
|
-
# sort first by the naming heuristics, then by dependencies
|
54
|
-
def sort!
|
55
|
-
step1 = sort_by! do |entry|
|
56
|
-
sort_by = case entry.name
|
57
|
-
# TODO: Allow preferred filename customization
|
58
|
-
when %r{^(\w+\.)lproj/strings$}
|
59
|
-
-3
|
60
|
-
when "core"
|
61
|
-
-2
|
62
|
-
when "utils"
|
63
|
-
-1
|
64
|
-
when %r{^(lproj|resources)/.*_page$}
|
65
|
-
1
|
66
|
-
when "main"
|
67
|
-
2
|
68
|
-
else
|
69
|
-
0
|
70
|
-
end
|
71
|
-
[sort_by, entry.name]
|
72
|
-
end
|
73
|
-
replace(tsort)
|
74
|
-
end
|
75
|
-
end
|
76
|
-
|
77
|
-
pp Entries.from_directory("~/Code/sprout/sproutcore/frameworks/core_tools")
|
File without changes
|
@@ -1,161 +0,0 @@
|
|
1
|
-
There are two concept PSDs: Light and Dark. Dark doesn't receive as much attention, and it shows.
|
2
|
-
|
3
|
-
Prerequisites
|
4
|
-
=============
|
5
|
-
To use the theme, you'll need a custom version & branch of SproutCore that has an updated rendering infrastructure
|
6
|
-
from here:
|
7
|
-
|
8
|
-
http://github.com/ialexi/sproutcore/tree/renderers
|
9
|
-
|
10
|
-
Or, to clone:
|
11
|
-
|
12
|
-
git://github.com/ialexi/sproutcore.git renderers
|
13
|
-
|
14
|
-
To generate new versions of the theme, you need RMagick.
|
15
|
-
|
16
|
-
To install rmagick, first install imagemagick (easiest way I know of is through MacPorts),
|
17
|
-
and then install the rmagick gem.
|
18
|
-
|
19
|
-
Ace Theme
|
20
|
-
=========
|
21
|
-
The theme should already be generated.
|
22
|
-
|
23
|
-
To generate the theme, you run the following from the theme folder:
|
24
|
-
|
25
|
-
chance/chance.rb ace.light
|
26
|
-
|
27
|
-
The ace.light argument supplies the theme class name. It is injected into the CSS. It is nice.
|
28
|
-
And a required argument.
|
29
|
-
|
30
|
-
"Chance" is named after the gardener from Being There.
|
31
|
-
|
32
|
-
TODO LIST
|
33
|
-
=========
|
34
|
-
Please feel free to tackle some of these.
|
35
|
-
|
36
|
-
Growing Todo List:
|
37
|
-
|
38
|
-
- SegmentedView
|
39
|
-
- Start with PSDs for Button; they should use very similar (if not the same) styles.
|
40
|
-
- TabView
|
41
|
-
- Should mostly be handled by SegmentedView, but will likely need stuff for the tab container.
|
42
|
-
- SliderView
|
43
|
-
- List & Collection Views
|
44
|
-
- bg color for selected items—currently is gray, should probably be blue
|
45
|
-
- ListItemView checkboxes
|
46
|
-
- ListItemView icons
|
47
|
-
- ListItemView unread or whatever indicators
|
48
|
-
- ... any other ListItemView things.
|
49
|
-
- Grid View? (doesn't appear to have much of a style at the moment—should that be changed?)
|
50
|
-
- Disclosure Buttons
|
51
|
-
- Capsule buttons
|
52
|
-
- Indeterminate progress bar
|
53
|
-
- May be impossible to do with rounded corners unless pattern fades at edges
|
54
|
-
- WellView
|
55
|
-
- PickerPane, especially PickerPane.pointer
|
56
|
-
- AlertPane
|
57
|
-
- Set up icons (redesign some for new Ace?)
|
58
|
-
- Alternate control sizes? (I'm not sure what the alternate sizes are supposed to be at the moment)
|
59
|
-
- Selected style for menu items (for instance, in SelectView)
|
60
|
-
- Top border not dark enough at the moment?
|
61
|
-
- Testing of buttons, radio buttons, and checkboxes with icons
|
62
|
-
|
63
|
-
Optional goodies: ???
|
64
|
-
|
65
|
-
Needing Discussion:
|
66
|
-
|
67
|
-
- Icons. Keep same? Make sedate? Some of each?
|
68
|
-
|
69
|
-
There may be other things too...
|
70
|
-
|
71
|
-
|
72
|
-
Completed tasks:
|
73
|
-
|
74
|
-
- Checkbox corners look rough; can this be fixed?
|
75
|
-
- Progress bar tracks are too dark
|
76
|
-
- Revise ButtonView so it will have the option of creating true three-part buttons
|
77
|
-
where the PIECES DON'T OVERLAP!!! This would allow semitransparent borders, which
|
78
|
-
would help buttons work on a variety of backgrounds.
|
79
|
-
|
80
|
-
Revised in an experimental version of SC rendering layer. Still work to do here...
|
81
|
-
- Make things use semitransparent borders (see above); test on many backgrounds.
|
82
|
-
|
83
|
-
|
84
|
-
Build Tools
|
85
|
-
===========
|
86
|
-
The operation works inside the theme folder, and generates the "resources" folder used
|
87
|
-
by SproutCore. There are various options that can be seen by calling with the --help argument.
|
88
|
-
|
89
|
-
The theme packaging operation is recursive (much like SproutCore's build tools), so
|
90
|
-
any folder depth may be used. The suggested folder layout is this:
|
91
|
-
|
92
|
-
* Theme Folder
|
93
|
-
* View Category Folders (controls, containers, etc.)
|
94
|
-
* Views (button\_view, progress\_view, etc.)
|
95
|
-
* 1 CSS file
|
96
|
-
* 0+ images (PSDs, usually)
|
97
|
-
|
98
|
-
Each CSS file will reference images relative to itself. So, controls/progress\_view/progress_view.css
|
99
|
-
could reference "progress\_view.png".
|
100
|
-
|
101
|
-
CSS Syntax
|
102
|
-
----------
|
103
|
-
Normal CSS won't work too well for accessing Sprites. It will work even less when
|
104
|
-
you need to perform slicing (do not talk to me about my nemesis, Photoshop slicing).
|
105
|
-
|
106
|
-
However, I do not want to parse CSS, so I use regular expressions.
|
107
|
-
|
108
|
-
Here is the current syntax:
|
109
|
-
|
110
|
-
@view(view-name) .more-rules {
|
111
|
-
/*
|
112
|
-
Input file, repeat, anchor, slice rect
|
113
|
-
*/
|
114
|
-
background: sprite("progress_view_track.png" repeat-x [12 1]);
|
115
|
-
background: sprite("progress_view_track.png" anchor-right [-8])
|
116
|
-
background: sprite("progress_view_track.png" anchor-right [1 1 5 1]) /* 1,1; size: 5, 1 */
|
117
|
-
}
|
118
|
-
|
119
|
-
The build tools would just search for sprite(, and then parse the contents, and replace @view(view-name)
|
120
|
-
with .sc-view.view-name.theme.name (where theme.name is specified via an argument to the build tool).
|
121
|
-
Note: right now, it does not do anything with the theme name; this may change in future.
|
122
|
-
|
123
|
-
The syntax is:
|
124
|
-
|
125
|
-
sprite(<sprite name> [<repeat method>] [clear] [<anchor method>] [<rect or partial rect>])
|
126
|
-
|
127
|
-
Sprite name: the name of the image (quotes required only for images with spaces)
|
128
|
-
|
129
|
-
Repeat Method: repeat-x or repeat-y
|
130
|
-
|
131
|
-
clear: Whether to ensure there are no more images on the row after this one.
|
132
|
-
Use with anchor-left to ensure a lonely item.
|
133
|
-
|
134
|
-
Anchor Method: anchor-left or anchor-right (forces the image to be on left or right side of image;
|
135
|
-
see below)
|
136
|
-
|
137
|
-
Partial Rectangle: \[ left [width] \] // left can be positive or negative.
|
138
|
-
Rectangle: \[ left top width height \]
|
139
|
-
|
140
|
-
It is rather trivial to parse, yet also easy to read.
|
141
|
-
|
142
|
-
Anchoring
|
143
|
-
---------
|
144
|
-
Anchoring an image to the left or right side allows you to effectively create controls that have left,
|
145
|
-
right, and middle parts. Such controls are usually easy to make, but not if the control can shrink to
|
146
|
-
0px (like ProgressView).
|
147
|
-
|
148
|
-
For ProgressView, the control is created like this:
|
149
|
-
|
150
|
-
container w/left portion
|
151
|
-
inner-head with right portion: anchor-right, left: 8, right: 0
|
152
|
-
The left:8 right:0 allows it to never overlap the left edge.
|
153
|
-
inner-tail with middle portion: left: 8, right: 8
|
154
|
-
Writes over any junk that comes before the right-anchored part.
|
155
|
-
|
156
|
-
|
157
|
-
Producing Production-Ready Files
|
158
|
-
================================
|
159
|
-
It would be best to open the files that are in resources/images in Photoshop and Save for Web. This will
|
160
|
-
reduce the size by a large margin. For instance, in one test, the main png started at ~24,000 bytes, and
|
161
|
-
after going through PS, finished at ~17,000.
|
@@ -1,113 +0,0 @@
|
|
1
|
-
Description
|
2
|
-
===========
|
3
|
-
Chance is a set of ruby scripts to auto-generate sprites from your CSS.
|
4
|
-
It only requires two special tags in your css to work.
|
5
|
-
|
6
|
-
Contributions
|
7
|
-
=============
|
8
|
-
* Alex Iskander (http://create.tpsitulsa.com/blog/) -- All credit for the initial idea
|
9
|
-
* Joshua Holt (http://blog.thesempiternalholts.com) -- Modifications and Additions
|
10
|
-
* Colin Campbell (-----------------------------------) -- Modifications and Additions
|
11
|
-
|
12
|
-
Build Tools
|
13
|
-
===========
|
14
|
-
The operation works inside the theme folder, and generates the "resources" folder used
|
15
|
-
by SproutCore. There are various options that can be seen by calling with the --help argument.
|
16
|
-
|
17
|
-
The theme packaging operation is recursive (much like SproutCore's build tools), so
|
18
|
-
any folder depth may be used. The suggested folder layout is this:
|
19
|
-
|
20
|
-
* Theme Folder
|
21
|
-
* View Category Folders (controls, containers, etc.)
|
22
|
-
* Views (button\_view, progress\_view, etc.)
|
23
|
-
* 1 CSS file
|
24
|
-
* 0+ images (PSDs, usually)
|
25
|
-
|
26
|
-
Each CSS file will reference images relative to itself. So, controls/progress\_view/progress_view.css
|
27
|
-
could reference "progress\_view.png".
|
28
|
-
|
29
|
-
CSS Syntax
|
30
|
-
----------
|
31
|
-
Normal CSS won't work too well for accessing Sprites. It will work even less when
|
32
|
-
you need to perform slicing (do not talk to me about my nemesis, Photoshop slicing).
|
33
|
-
|
34
|
-
However, I do not want to parse CSS, so I use regular expressions.
|
35
|
-
|
36
|
-
Here is the current syntax:
|
37
|
-
|
38
|
-
@view(view-name) .more-rules {
|
39
|
-
/*
|
40
|
-
Input file, repeat, anchor, slice rect
|
41
|
-
*/
|
42
|
-
background: sprite("progress_view_track.png" repeat-x [12 1]);
|
43
|
-
background: sprite("progress_view_track.png" anchor-right [-8])
|
44
|
-
background: sprite("progress_view_track.png" anchor-right [1 1 5 1]) /* 1,1; size: 5, 1 */
|
45
|
-
}
|
46
|
-
|
47
|
-
The build tools would just search for sprite(, and then parse the contents, and replace @view(view-name)
|
48
|
-
with .sc-view.view-name.theme.name (where theme.name is specified via an argument to the build tool).
|
49
|
-
Note: right now, it does not do anything with the theme name; this may change in future.
|
50
|
-
|
51
|
-
The syntax is:
|
52
|
-
|
53
|
-
sprite(<sprite name> [<repeat method>] [clear] [<anchor method>] [<rect or partial rect>])
|
54
|
-
|
55
|
-
Sprite name: the name of the image (quotes required only for images with spaces)
|
56
|
-
|
57
|
-
Repeat Method: repeat-x or repeat-y
|
58
|
-
|
59
|
-
clear: Whether to ensure there are no more images on the row after this one.
|
60
|
-
Use with anchor-left to ensure a lonely item.
|
61
|
-
|
62
|
-
Anchor Method: anchor-left or anchor-right (forces the image to be on left or right side of image;
|
63
|
-
see below)
|
64
|
-
|
65
|
-
Partial Rectangle: \[ left [width] \] // left can be positive or negative.
|
66
|
-
Rectangle: \[ left top width height \]
|
67
|
-
|
68
|
-
It is rather trivial to parse, yet also easy to read.
|
69
|
-
|
70
|
-
|
71
|
-
Chance also provides declarations for easily providing cross-browser compatible CSS rules, including
|
72
|
-
border-radius and box-shadow. Here is example input:
|
73
|
-
|
74
|
-
.class {
|
75
|
-
-sc-box-shadow: 0 0 5px #000;
|
76
|
-
-sc-border-radius: 5px;
|
77
|
-
/*
|
78
|
-
Also supported:
|
79
|
-
-sc-border-top-left-radius
|
80
|
-
-sc-border-top-right-radius
|
81
|
-
-sc-border-bottom-left-radius
|
82
|
-
-sc-border-bottom-right-radius
|
83
|
-
*/
|
84
|
-
}
|
85
|
-
|
86
|
-
Chance will then output the following, allowing for a single declaration to cover all browsers:
|
87
|
-
|
88
|
-
.class {
|
89
|
-
-moz-box-shadow: 0 0 5px #000; -webkit-box-shadow: 0 0 5px #000; box-shadow: 0 0 5px #000;
|
90
|
-
-moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px;
|
91
|
-
}
|
92
|
-
|
93
|
-
|
94
|
-
Anchoring
|
95
|
-
---------
|
96
|
-
Anchoring an image to the left or right side allows you to effectively create controls that have left,
|
97
|
-
right, and middle parts. Such controls are usually easy to make, but not if the control can shrink to
|
98
|
-
0px (like ProgressView).
|
99
|
-
|
100
|
-
For ProgressView, the control is created like this:
|
101
|
-
|
102
|
-
container w/left portion
|
103
|
-
inner-head with right portion: anchor-right, left: 8, right: 0
|
104
|
-
The left:8 right:0 allows it to never overlap the left edge.
|
105
|
-
inner-tail with middle portion: left: 8, right: 8
|
106
|
-
Writes over any junk that comes before the right-anchored part.
|
107
|
-
|
108
|
-
|
109
|
-
Producing Production-Ready Files
|
110
|
-
================================
|
111
|
-
It would be best to open the files that are in resources/images in Photoshop and Save for Web. This will
|
112
|
-
reduce the size by a large margin. For instance, in one test, the main png started at ~24,000 bytes, and
|
113
|
-
after going through PS, finished at ~17,000.
|
@@ -1,203 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
|
3
|
-
# A CSSParser object is created for every file processed. It opens the file,
|
4
|
-
# reads its contents, and can perform two actions on it: parsing and generating.
|
5
|
-
#
|
6
|
-
# The parsing step reads the file and finds references to images; this causes those
|
7
|
-
# images to be added to the object's usedImages, which is a set of images required (images
|
8
|
-
# here being hashes with arguments specified). Ruby's "Set" functionality seems
|
9
|
-
# to work here (I am not a ruby expert, hence 'seems')
|
10
|
-
#
|
11
|
-
# Internally, it actually generates an in-memory CSS file in the parsing step,
|
12
|
-
# to be used in the generating step—but that's all transparent. The object is long-lived,
|
13
|
-
# staying around from initial parse step to generation.
|
14
|
-
#
|
15
|
-
# In my opinion, this script is not that great. This is due to two reasons: it is my very
|
16
|
-
# first script written in Ruby, and I was figuring out the requirements by writing it (something
|
17
|
-
# I often do, but I usually follow that with a rewrite).
|
18
|
-
# But still, it generally works, and works with acceptable speed.
|
19
|
-
|
20
|
-
$: << File.expand_path(File.dirname(__FILE__) + "/lib")
|
21
|
-
|
22
|
-
require 'css'
|
23
|
-
require 'slicedice'
|
24
|
-
|
25
|
-
require 'optparse'
|
26
|
-
require 'pp'
|
27
|
-
require 'FileUtils'
|
28
|
-
|
29
|
-
config = {}
|
30
|
-
argparser = OptionParser.new {|opts|
|
31
|
-
opts.banner = "Usage: ruby generate_theme.rb [options] theme.name"
|
32
|
-
|
33
|
-
config[:optimization_limit] = 50000
|
34
|
-
opts.on(
|
35
|
-
'-l',
|
36
|
-
'--optimization-limit [limit]', Integer,
|
37
|
-
"Optimization limit; if reducing latency by eliminating a file causes more " +
|
38
|
-
"than [limit] wasted pixels, it won't be done."
|
39
|
-
) {|limit|
|
40
|
-
config[:optimization_limit] = limit
|
41
|
-
}
|
42
|
-
|
43
|
-
opts.on('--prefer-fewer-files', "Prefer fewer files by setting the optimization limit to 2 million pixels.") {
|
44
|
-
config[:optimization_limit] = 2000000
|
45
|
-
}
|
46
|
-
|
47
|
-
opts.on('--prefer-smaller-download', "Prefer smaller download by setting the optimization limit to 0 pixels.") {
|
48
|
-
config[:optimization_limit] = 0
|
49
|
-
}
|
50
|
-
|
51
|
-
|
52
|
-
config[:input] = "./src/"
|
53
|
-
opts.on('-i', '--input [directory]', "Input directory (default: ./)") {|input|
|
54
|
-
config[:input] = input
|
55
|
-
}
|
56
|
-
|
57
|
-
config[:output] = "resources/"
|
58
|
-
opts.on('-o', '--output [directory]', 'Set output path (default: resources/)') {|out|
|
59
|
-
out += "." if out.length == 0
|
60
|
-
out += "/" if out[out.length - 1] != '/'
|
61
|
-
config[:output] = out
|
62
|
-
}
|
63
|
-
|
64
|
-
config[:url_template] = "static_url(\"%s\")"
|
65
|
-
opts.on('-u', '--url [PATTERN]', 'The URL template (default: static_url(\"%s\") )') {|template|
|
66
|
-
config[:url_template] = template
|
67
|
-
}
|
68
|
-
|
69
|
-
config[:extension] = "css"
|
70
|
-
opts.on('-e', '--extension [ext]', "The extension for CSS files.") {|ext|
|
71
|
-
config[:extension] = ext
|
72
|
-
}
|
73
|
-
|
74
|
-
config[:less] = false
|
75
|
-
opts.on('--less', "Postprocess using LESS.") {
|
76
|
-
config[:less] = true
|
77
|
-
}
|
78
|
-
|
79
|
-
config[:include_sc_theme] = true
|
80
|
-
opts.on('--no-sc-theme', "Exclude 'sc-theme' prefix (newer themes with SC 1.1 can do this).") {
|
81
|
-
config[:include_sc_theme] = false
|
82
|
-
}
|
83
|
-
|
84
|
-
config[:use_data_url] = false
|
85
|
-
opts.on('--data-url', "Use data urls embedded in the CSS.") {
|
86
|
-
config[:use_data_url] = true
|
87
|
-
}
|
88
|
-
|
89
|
-
config[:hue] = 1.0
|
90
|
-
config[:saturation] = 1.0
|
91
|
-
config[:brightness] = 1.0
|
92
|
-
|
93
|
-
opts.on('--hue [def]', Float, 'Adjust hue (default 1.0)') {|v|
|
94
|
-
config[:hue] = v
|
95
|
-
}
|
96
|
-
|
97
|
-
opts.on('--saturation [def]', Float, 'Adjust hue (saturation 1.0)') {|v|
|
98
|
-
config[:saturation] = v
|
99
|
-
}
|
100
|
-
|
101
|
-
opts.on('--brightness [def]', Float, 'Adjust brightness (default 1.0)') {|v|
|
102
|
-
config[:brightness] = v
|
103
|
-
}
|
104
|
-
}
|
105
|
-
|
106
|
-
argparser.parse!
|
107
|
-
if ARGV.length > 0
|
108
|
-
config[:theme_name] = ARGV[0]
|
109
|
-
end
|
110
|
-
|
111
|
-
require 'find'
|
112
|
-
images = {}
|
113
|
-
static_images = {}
|
114
|
-
parsers = []
|
115
|
-
Find.find(config[:input]) do |f|
|
116
|
-
if f =~ /^\.\/(resources)|\/\./
|
117
|
-
Find.prune
|
118
|
-
end
|
119
|
-
if f =~ /\.css$/
|
120
|
-
parser = CSSParser.new(File.dirname(f), File.basename(f), config)
|
121
|
-
parsers << parser
|
122
|
-
parser.parse
|
123
|
-
images.merge! parser.images
|
124
|
-
static_images.merge! parser.static_images
|
125
|
-
end
|
126
|
-
end
|
127
|
-
|
128
|
-
#---------------------------------------------------------------------------
|
129
|
-
# TODO: ?
|
130
|
-
# I should probably make this a boolean option and wrap this in an if
|
131
|
-
# statement based on that option.
|
132
|
-
#---------------------------------------------------------------------------
|
133
|
-
# Copy all non-sprited images to respective dirs.
|
134
|
-
if static_images.length > 0
|
135
|
-
static_images.values.each do |hsh|
|
136
|
-
src_path = hsh[:path]
|
137
|
-
match = /((\/images\/.*)(\/.*(\.png|\.jpg|\.gif)))/.match(src_path)
|
138
|
-
if match
|
139
|
-
location = match[2]
|
140
|
-
new_loc = "#{config[:output].sub(/\/$/,'')}#{location}"
|
141
|
-
FileUtils.mkdir_p(new_loc) if !File.exist?(new_loc)
|
142
|
-
FileUtils.cp("#{src_path}", new_loc) if File.exist?(src_path)
|
143
|
-
end
|
144
|
-
end
|
145
|
-
end
|
146
|
-
# END Non-sprited image copy
|
147
|
-
|
148
|
-
|
149
|
-
slicer = Slicer.new(config)
|
150
|
-
slicer.images = images
|
151
|
-
slicer.slice
|
152
|
-
slicer.dice
|
153
|
-
|
154
|
-
# Add all the code together
|
155
|
-
css_code = ""
|
156
|
-
parsers.each {|parser|
|
157
|
-
parser.images = slicer.images
|
158
|
-
css_code += parser.generate + "\n"
|
159
|
-
}
|
160
|
-
|
161
|
-
# Do some cleanup of whitespace
|
162
|
-
cleaned = ""
|
163
|
-
css_code.each_line {|line|
|
164
|
-
cleaned += line.strip + "\n"
|
165
|
-
}
|
166
|
-
|
167
|
-
final = cleaned
|
168
|
-
|
169
|
-
if config[:less]
|
170
|
-
begin
|
171
|
-
require 'less'
|
172
|
-
rescue
|
173
|
-
raise "Lest less doth be installed, less shall remain unusable. Sad."
|
174
|
-
end
|
175
|
-
|
176
|
-
keyframes = {}
|
177
|
-
|
178
|
-
# this is dirty; I took a shower after writing this
|
179
|
-
# first group gets the animation name, the second captures the % keyframes
|
180
|
-
webkitkeyframes_rule = /@\-webkit\-keyframes\s*([\w-]*)\s*{((\s*[\d]*%\s*{[^}]*})*)\s*}/
|
181
|
-
cleaned.gsub!(webkitkeyframes_rule) do |match|
|
182
|
-
keyframes[$1] = $2
|
183
|
-
".less-sucks-" + $1 + " { less: " + $1 + "; }"
|
184
|
-
end
|
185
|
-
|
186
|
-
lessed = Less.parse cleaned
|
187
|
-
final = ""
|
188
|
-
|
189
|
-
rev_webkitkeyframes_rule = /.less\-sucks\-\s*([^\s]*) { less: \1; }/
|
190
|
-
lessed.gsub!(rev_webkitkeyframes_rule) do |match|
|
191
|
-
"@-webkit-keyframes " + $1 + "{ " + keyframes[$1] + "}"
|
192
|
-
end
|
193
|
-
|
194
|
-
# LESS messes things up
|
195
|
-
lessed.each_line {|line|
|
196
|
-
final += line.gsub(/url\('data:image\/(gif|png);base64,(.*?)'\)/) do |match|
|
197
|
-
"url('data:image/" + $1 + ";base64," + $2.gsub(" ", "+") + "')"
|
198
|
-
end
|
199
|
-
}
|
200
|
-
end
|
201
|
-
|
202
|
-
|
203
|
-
File.open(config[:output] + "theme." + config[:extension], File::WRONLY|File::TRUNC|File::CREAT) {|f| f.write(final) }
|