sproutit-sproutcore 1.0.0.20090407205609 → 1.0.0.20090408130025
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/frameworks/sproutcore/Buildfile +63 -0
- data/frameworks/sproutcore/HISTORY +682 -0
- data/frameworks/sproutcore/README +22 -0
- data/frameworks/sproutcore/apps/sc_jsdoc/controllers/docs.js +149 -0
- data/frameworks/sproutcore/apps/sc_jsdoc/core.js +16 -0
- data/frameworks/sproutcore/apps/sc_jsdoc/english.lproj/body.css +17 -0
- data/frameworks/sproutcore/apps/sc_jsdoc/english.lproj/body.js +99 -0
- data/frameworks/sproutcore/apps/sc_jsdoc/english.lproj/images/sproutcore-logo.png +0 -0
- data/frameworks/sproutcore/apps/sc_jsdoc/english.lproj/strings.js +15 -0
- data/frameworks/sproutcore/apps/sc_jsdoc/main.js +27 -0
- data/frameworks/sproutcore/apps/sc_jsdoc/models/doc.js +21 -0
- data/frameworks/sproutcore/apps/sc_qunit/controllers/runner.js +209 -0
- data/frameworks/sproutcore/apps/sc_qunit/core.js +16 -0
- data/frameworks/sproutcore/apps/sc_qunit/english.lproj/body.css +17 -0
- data/frameworks/sproutcore/apps/sc_qunit/english.lproj/body.js +107 -0
- data/frameworks/sproutcore/apps/sc_qunit/english.lproj/images/sproutcore-logo.png +0 -0
- data/frameworks/sproutcore/apps/sc_qunit/english.lproj/strings.js +15 -0
- data/frameworks/sproutcore/apps/sc_qunit/main.js +18 -0
- data/frameworks/sproutcore/apps/sc_qunit/models/test.js +24 -0
- data/frameworks/sproutcore/apps/sc_qunit/views/test_iframe.js +52 -0
- data/frameworks/sproutcore/apps/tests/controllers/targets.js +47 -0
- data/frameworks/sproutcore/apps/tests/controllers/test.js +20 -0
- data/frameworks/sproutcore/apps/tests/controllers/tests.js +38 -0
- data/frameworks/sproutcore/apps/tests/core.js +35 -0
- data/frameworks/sproutcore/apps/tests/english.lproj/loading.rhtml +9 -0
- data/frameworks/sproutcore/apps/tests/english.lproj/main_page.css +19 -0
- data/frameworks/sproutcore/apps/tests/english.lproj/main_page.js +86 -0
- data/frameworks/sproutcore/apps/tests/english.lproj/strings.js +17 -0
- data/frameworks/sproutcore/apps/tests/fixtures/target.js +43 -0
- data/frameworks/sproutcore/apps/tests/fixtures/test.js +43 -0
- data/frameworks/sproutcore/apps/tests/main.js +39 -0
- data/frameworks/sproutcore/apps/tests/models/target.js +49 -0
- data/frameworks/sproutcore/apps/tests/models/test.js +20 -0
- data/frameworks/sproutcore/apps/tests/tests/controllers/targets.js +15 -0
- data/frameworks/sproutcore/apps/tests/tests/controllers/test.js +15 -0
- data/frameworks/sproutcore/apps/tests/tests/controllers/tests.js +15 -0
- data/frameworks/sproutcore/apps/tests/tests/models/target.js +15 -0
- data/frameworks/sproutcore/apps/tests/tests/models/test.js +15 -0
- data/frameworks/sproutcore/apps/welcome/core.js +23 -0
- data/frameworks/sproutcore/apps/welcome/english.lproj/loading.rhtml +8 -0
- data/frameworks/sproutcore/apps/welcome/english.lproj/main_page.js +43 -0
- data/frameworks/sproutcore/apps/welcome/english.lproj/strings.js +15 -0
- data/frameworks/sproutcore/apps/welcome/main.js +36 -0
- data/frameworks/sproutcore/design/Design Charts.graffle +15819 -0
- data/frameworks/sproutcore/design/Record State Table.numbers +0 -0
- data/frameworks/sproutcore/frameworks/datastore/core.js +14 -0
- data/frameworks/sproutcore/frameworks/datastore/data_sources/cascade.js +113 -0
- data/frameworks/sproutcore/frameworks/datastore/data_sources/data_source.js +256 -0
- data/frameworks/sproutcore/frameworks/datastore/data_sources/fixtures.js +196 -0
- data/frameworks/sproutcore/frameworks/datastore/debug/json.js +71 -0
- data/frameworks/sproutcore/frameworks/datastore/debug/standard_setup.js +96 -0
- data/frameworks/sproutcore/frameworks/datastore/fixtures/author_fixtures.js +2503 -0
- data/frameworks/sproutcore/frameworks/datastore/fixtures/sample.js +17 -0
- data/frameworks/sproutcore/frameworks/datastore/models/fetched_attribute.js +92 -0
- data/frameworks/sproutcore/frameworks/datastore/models/many_attribute.js +38 -0
- data/frameworks/sproutcore/frameworks/datastore/models/record.js +430 -0
- data/frameworks/sproutcore/frameworks/datastore/models/record_attribute.js +361 -0
- data/frameworks/sproutcore/frameworks/datastore/system/nested_store.js +305 -0
- data/frameworks/sproutcore/frameworks/datastore/system/query.js +128 -0
- data/frameworks/sproutcore/frameworks/datastore/system/record_array.js +149 -0
- data/frameworks/sproutcore/frameworks/datastore/system/store.js +1689 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/data_sources/fixtures.js +86 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/integration/contact_model.js +114 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/integration/mail_model.js +91 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/integration/test_runner_model.js +56 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/models/record/destroy.js +73 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/models/record/readAttribute.js +48 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/models/record/refresh.js +42 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/models/record/storeDidChangeProperties.js +138 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/models/record/unknownProperty.js +46 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/models/record/writeAttribute.js +71 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/models/record_attribute.js +115 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/chain.js +40 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/commitChanges.js +116 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/commitChangesFromNestedStore.js +135 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/dataHashDidChange.js +110 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/discardChanges.js +99 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/readDataHash.js +180 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/readEditableDataHash.js +126 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/removeDataHash.js +163 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/writeDataHash.js +166 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/record_array/core_methods.js +175 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/store/cancelRecord.js +54 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/store/commitChangesFromNestedStore.js +126 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/store/commitRecord.js +127 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/store/createRecord.js +57 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/store/dataHashDidChange.js +78 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/store/dataSourceCallbacks.js +247 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/store/destroyRecord.js +106 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/store/init.js +21 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/store/pushChanges.js +61 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/store/readDataHash.js +74 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/store/readEditableDataHash.js +74 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/store/recordDidChange.js +74 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/store/removeDataHash.js +144 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/store/retrieveRecord.js +137 -0
- data/frameworks/sproutcore/frameworks/datastore/tests/system/store/writeDataHash.js +130 -0
- data/frameworks/sproutcore/frameworks/debug/core.js +1 -0
- data/frameworks/sproutcore/frameworks/deprecated/core.js +61 -0
- data/frameworks/sproutcore/frameworks/deprecated/lib/button_views.rb +330 -0
- data/frameworks/sproutcore/frameworks/deprecated/lib/collection_view.rb +83 -0
- data/frameworks/sproutcore/frameworks/deprecated/lib/core_views.rb +326 -0
- data/frameworks/sproutcore/frameworks/deprecated/lib/form_views.rb +253 -0
- data/frameworks/sproutcore/frameworks/deprecated/lib/index.rhtml +75 -0
- data/frameworks/sproutcore/frameworks/deprecated/lib/menu_views.rb +93 -0
- data/frameworks/sproutcore/frameworks/deprecated/server/rails_server.js +80 -0
- data/frameworks/sproutcore/frameworks/deprecated/server/rest_server.js +178 -0
- data/frameworks/sproutcore/frameworks/deprecated/server/server.js +674 -0
- data/frameworks/sproutcore/frameworks/deprecated/system/animator.js +679 -0
- data/frameworks/sproutcore/frameworks/deprecated/system/binding.js +36 -0
- data/frameworks/sproutcore/frameworks/deprecated/system/browser.js +77 -0
- data/frameworks/sproutcore/frameworks/deprecated/system/classic_responder.js +314 -0
- data/frameworks/sproutcore/frameworks/deprecated/system/event.js +60 -0
- data/frameworks/sproutcore/frameworks/deprecated/system/globals.js +20 -0
- data/frameworks/sproutcore/frameworks/deprecated/system/misc.js +60 -0
- data/frameworks/sproutcore/frameworks/deprecated/system/node_descriptor.js +72 -0
- data/frameworks/sproutcore/frameworks/deprecated/system/object.js +124 -0
- data/frameworks/sproutcore/frameworks/deprecated/system/path_module.js +433 -0
- data/frameworks/sproutcore/frameworks/deprecated/system/string.js +109 -0
- data/frameworks/sproutcore/frameworks/deprecated/tests/application/application.rhtml +125 -0
- data/frameworks/sproutcore/frameworks/deprecated/tests/views/classic_view/clippingFrame.rhtml +401 -0
- data/frameworks/sproutcore/frameworks/deprecated/tests/views/classic_view/frame.rhtml +357 -0
- data/frameworks/sproutcore/frameworks/deprecated/tests/views/classic_view/isVisibleInWindow.rhtml +147 -0
- data/frameworks/sproutcore/frameworks/deprecated/tests/views/collection/base.rhtml +298 -0
- data/frameworks/sproutcore/frameworks/deprecated/tests/views/collection/incremental_rendering.rhtml +260 -0
- data/frameworks/sproutcore/frameworks/deprecated/tests/views/collection/source_list_rendering.rhtml +143 -0
- data/frameworks/sproutcore/frameworks/deprecated/tests/views/popup_button.rhtml +128 -0
- data/frameworks/sproutcore/frameworks/deprecated/tests/views/text_field.rhtml +37 -0
- data/frameworks/sproutcore/frameworks/deprecated/views/collection.js +24 -0
- data/frameworks/sproutcore/frameworks/designer/coders/design.js +30 -0
- data/frameworks/sproutcore/frameworks/designer/coders/localization.js +28 -0
- data/frameworks/sproutcore/frameworks/designer/coders/object.js +347 -0
- data/frameworks/sproutcore/frameworks/designer/controllers/page_design.js +102 -0
- data/frameworks/sproutcore/frameworks/designer/css/css_rule.js +22 -0
- data/frameworks/sproutcore/frameworks/designer/css/css_style.js +29 -0
- data/frameworks/sproutcore/frameworks/designer/css/css_style_sheet.js +201 -0
- data/frameworks/sproutcore/frameworks/designer/ext/page.js +88 -0
- data/frameworks/sproutcore/frameworks/designer/ext/view.js +40 -0
- data/frameworks/sproutcore/frameworks/designer/views/controls/button.js +18 -0
- data/frameworks/sproutcore/frameworks/designer/views/designer.js +553 -0
- data/frameworks/sproutcore/frameworks/designer/views/label.js +17 -0
- data/frameworks/sproutcore/frameworks/designer/views/mixins/button.js +13 -0
- data/frameworks/sproutcore/frameworks/designer/views/tab.js +17 -0
- data/frameworks/sproutcore/frameworks/desktop/core.js +6 -0
- data/frameworks/sproutcore/frameworks/desktop/debug/drag.js +41 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/alert.css +56 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/debug/a_sample_image.jpg +0 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/debug/apple-logo1.jpeg +0 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/debug/iframe.html +23 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/disclosure.css +71 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/icons.css +943 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/images/blank.gif +0 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/images/icons/mini_222222.png +0 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/images/icons/mini_454545.png +0 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/images/icons/mini_888888.png +0 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/images/icons/mini_ffffff.png +0 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/images/icons/shared.png +0 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/images/indicator.gif +0 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/images/panels/sprite-x.png +0 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/images/panels/sprite-y.png +0 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/images/sc-theme-sprite.png +0 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/images/standard_fade/000000.png +0 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/images/standard_fade/ffffff.png +0 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/images/sticky-note.png +0 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/list_item.css +156 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/menu.css +83 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/menu_item_view.css +99 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/palette.css +3 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/panel.css +94 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/picker.css +39 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/progress.css +31 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/radio.css +10 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/scroller.css +26 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/segmented.css +141 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/separator.css +19 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/slider.css +57 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/split.css +70 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/split_divider.css +8 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/strings.js +14 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/tab.css +12 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/text_field.css +29 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/toolbar.css +6 -0
- data/frameworks/sproutcore/frameworks/desktop/mixins/border.js +53 -0
- data/frameworks/sproutcore/frameworks/desktop/mixins/collection_group.js +22 -0
- data/frameworks/sproutcore/frameworks/desktop/mixins/collection_item.js +22 -0
- data/frameworks/sproutcore/frameworks/desktop/mixins/collection_view_delegate.js +226 -0
- data/frameworks/sproutcore/frameworks/desktop/mixins/scrollable.js +247 -0
- data/frameworks/sproutcore/frameworks/desktop/panes/alert.js +377 -0
- data/frameworks/sproutcore/frameworks/desktop/panes/menu.js +504 -0
- data/frameworks/sproutcore/frameworks/desktop/panes/modal.js +68 -0
- data/frameworks/sproutcore/frameworks/desktop/panes/palette.js +63 -0
- data/frameworks/sproutcore/frameworks/desktop/panes/panel.js +184 -0
- data/frameworks/sproutcore/frameworks/desktop/panes/picker.js +402 -0
- data/frameworks/sproutcore/frameworks/desktop/panes/sheet.js +46 -0
- data/frameworks/sproutcore/frameworks/desktop/protocols/drag_data_source.js +39 -0
- data/frameworks/sproutcore/frameworks/desktop/protocols/drag_source.js +81 -0
- data/frameworks/sproutcore/frameworks/desktop/protocols/drop_target.js +175 -0
- data/frameworks/sproutcore/frameworks/desktop/protocols/responder.js +280 -0
- data/frameworks/sproutcore/frameworks/desktop/system/drag.js +721 -0
- data/frameworks/sproutcore/frameworks/desktop/system/key_bindings.js +40 -0
- data/frameworks/sproutcore/frameworks/desktop/system/root_responder.js +641 -0
- data/frameworks/sproutcore/frameworks/desktop/system/undo_manager.js +187 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/integration/dialog.js +43 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/alert/methods.js +10 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/alert/ui.js +152 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/menu/methods.js +10 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/menu/ui.js +57 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/palette/methods.js +10 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/palette/ui.js +36 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/panel/methods.js +10 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/panel/ui.js +40 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/picker/methods.js +10 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/picker/ui.js +80 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/sheet/methods.js +10 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/sheet/ui.js +38 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/button/methods.js +45 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/button/ui.js +140 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/checkbox/methods.js +145 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/checkbox/ui.js +99 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/collection/methods.js +10 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/collection/selectPreviousItem.js +39 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/disclosure/methods.js +10 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/disclosure/ui.js +64 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/grid/methods.js +10 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/grid/ui.js +10 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/list/methods.js +10 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/list/ui.js +110 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/list_item.js +255 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/menu_item/methods.js +10 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/menu_item/ui.js +44 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/progress/methods.js +128 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/progress/ui.js +240 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/radio/methods.js +113 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/radio/ui.js +202 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/scroll/methods.js +139 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/scroll/ui.js +111 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/scroller/methods.js +63 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/scroller/ui.js +70 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/segmented/methods.js +94 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/segmented/ui.js +206 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/select_field/methods.js +81 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/select_field/ui.js +85 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/separator.js +37 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/source_list/methods.js +10 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/source_list/ui.js +10 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/split/methods.js +50 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/split/ui.js +52 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/tab/methods.js +54 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/tab/ui.js +88 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/text_field/methods.js +76 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/text_field/ui.js +198 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/web/methods.js +10 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/views/web/ui.js +110 -0
- data/frameworks/sproutcore/frameworks/desktop/views/button.js +320 -0
- data/frameworks/sproutcore/frameworks/desktop/views/checkbox.js +98 -0
- data/frameworks/sproutcore/frameworks/desktop/views/collection.js +2141 -0
- data/frameworks/sproutcore/frameworks/desktop/views/disclosure.js +44 -0
- data/frameworks/sproutcore/frameworks/desktop/views/form.js +595 -0
- data/frameworks/sproutcore/frameworks/desktop/views/grid.js +199 -0
- data/frameworks/sproutcore/frameworks/desktop/views/list.js +706 -0
- data/frameworks/sproutcore/frameworks/desktop/views/list_item.js +523 -0
- data/frameworks/sproutcore/frameworks/desktop/views/menu_item.js +437 -0
- data/frameworks/sproutcore/frameworks/desktop/views/popup_button.js +62 -0
- data/frameworks/sproutcore/frameworks/desktop/views/progress.js +207 -0
- data/frameworks/sproutcore/frameworks/desktop/views/radio.js +332 -0
- data/frameworks/sproutcore/frameworks/desktop/views/scene.js +56 -0
- data/frameworks/sproutcore/frameworks/desktop/views/scroll.js +648 -0
- data/frameworks/sproutcore/frameworks/desktop/views/scroller.js +203 -0
- data/frameworks/sproutcore/frameworks/desktop/views/segmented.js +509 -0
- data/frameworks/sproutcore/frameworks/desktop/views/select_field.js +292 -0
- data/frameworks/sproutcore/frameworks/desktop/views/separator.js +37 -0
- data/frameworks/sproutcore/frameworks/desktop/views/slider.js +178 -0
- data/frameworks/sproutcore/frameworks/desktop/views/source_list.js +1117 -0
- data/frameworks/sproutcore/frameworks/desktop/views/source_list_group.js +169 -0
- data/frameworks/sproutcore/frameworks/desktop/views/split.js +651 -0
- data/frameworks/sproutcore/frameworks/desktop/views/split_divider.js +55 -0
- data/frameworks/sproutcore/frameworks/desktop/views/tab.js +190 -0
- data/frameworks/sproutcore/frameworks/desktop/views/text_field.js +233 -0
- data/frameworks/sproutcore/frameworks/desktop/views/thumb.js +49 -0
- data/frameworks/sproutcore/frameworks/desktop/views/toolbar.js +49 -0
- data/frameworks/sproutcore/frameworks/desktop/views/web.js +86 -0
- data/frameworks/sproutcore/frameworks/foundation/TESTING +46 -0
- data/frameworks/sproutcore/frameworks/foundation/controllers/array.js +490 -0
- data/frameworks/sproutcore/frameworks/foundation/controllers/controller.js +317 -0
- data/frameworks/sproutcore/frameworks/foundation/controllers/object.js +421 -0
- data/frameworks/sproutcore/frameworks/foundation/core.js +111 -0
- data/frameworks/sproutcore/frameworks/foundation/debug/control_test_pane.js +172 -0
- data/frameworks/sproutcore/frameworks/foundation/english.lproj/blank.gif +0 -0
- data/frameworks/sproutcore/frameworks/foundation/english.lproj/bootstrap.rhtml +53 -0
- data/frameworks/sproutcore/frameworks/foundation/english.lproj/button_view.css +55 -0
- data/frameworks/sproutcore/frameworks/foundation/english.lproj/core.css +5 -0
- data/frameworks/sproutcore/frameworks/foundation/english.lproj/debug/control-test-pane.css +8 -0
- data/frameworks/sproutcore/frameworks/foundation/english.lproj/images/sproutcore-logo.png +0 -0
- data/frameworks/sproutcore/frameworks/foundation/english.lproj/static_layout.css +5 -0
- data/frameworks/sproutcore/frameworks/foundation/english.lproj/view.css +40 -0
- data/frameworks/sproutcore/frameworks/foundation/ext/object.js +81 -0
- data/frameworks/sproutcore/frameworks/foundation/ext/run_loop.js +158 -0
- data/frameworks/sproutcore/frameworks/foundation/fixtures/file_exists.json +1 -0
- data/frameworks/sproutcore/frameworks/foundation/mixins/button.js +291 -0
- data/frameworks/sproutcore/frameworks/foundation/mixins/content_display.js +88 -0
- data/frameworks/sproutcore/frameworks/foundation/mixins/control.js +352 -0
- data/frameworks/sproutcore/frameworks/foundation/mixins/editable.js +146 -0
- data/frameworks/sproutcore/frameworks/foundation/mixins/responder.js +156 -0
- data/frameworks/sproutcore/frameworks/foundation/mixins/selection_support.js +154 -0
- data/frameworks/sproutcore/frameworks/foundation/mixins/static_layout.js +101 -0
- data/frameworks/sproutcore/frameworks/foundation/mixins/string.js +237 -0
- data/frameworks/sproutcore/frameworks/foundation/mixins/validatable.js +176 -0
- data/frameworks/sproutcore/frameworks/foundation/panes/main.js +47 -0
- data/frameworks/sproutcore/frameworks/foundation/panes/pane.js +555 -0
- data/frameworks/sproutcore/frameworks/foundation/protocols/inline_editor_delegate.js +84 -0
- data/frameworks/sproutcore/frameworks/foundation/system/benchmark.js +244 -0
- data/frameworks/sproutcore/frameworks/foundation/system/browser.js +64 -0
- data/frameworks/sproutcore/frameworks/foundation/system/builder.js +210 -0
- data/frameworks/sproutcore/frameworks/foundation/system/core_query.js +2015 -0
- data/frameworks/sproutcore/frameworks/foundation/system/cursor.js +129 -0
- data/frameworks/sproutcore/frameworks/foundation/system/error.js +93 -0
- data/frameworks/sproutcore/frameworks/foundation/system/event.js +817 -0
- data/frameworks/sproutcore/frameworks/foundation/system/image_cache.js +433 -0
- data/frameworks/sproutcore/frameworks/foundation/system/json.js +440 -0
- data/frameworks/sproutcore/frameworks/foundation/system/locale.js +288 -0
- data/frameworks/sproutcore/frameworks/foundation/system/page.js +106 -0
- data/frameworks/sproutcore/frameworks/foundation/system/ready.js +189 -0
- data/frameworks/sproutcore/frameworks/foundation/system/render_context.js +865 -0
- data/frameworks/sproutcore/frameworks/foundation/system/request.js +255 -0
- data/frameworks/sproutcore/frameworks/foundation/system/root_responder.js +368 -0
- data/frameworks/sproutcore/frameworks/foundation/system/routes.js +446 -0
- data/frameworks/sproutcore/frameworks/foundation/system/time.js +478 -0
- data/frameworks/sproutcore/frameworks/foundation/system/timer.js +549 -0
- data/frameworks/sproutcore/frameworks/foundation/system/user_defaults.js +158 -0
- data/frameworks/sproutcore/frameworks/foundation/system/utils.js +330 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/controllers/array.js +118 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/controllers/controller.js +268 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/controllers/object.js +433 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/debug/control_test_pane/methods.js +10 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/debug/control_test_pane/ui.js +113 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/integration/creating_views.js +113 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/mixins/button/content.js +195 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/mixins/button/displayProperties.js +89 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/mixins/control/content.js +168 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/mixins/control/displayProperties.js +89 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/builder.js +42 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/core_query/jquery_core.js +1323 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/core_query/jquery_dimensions.js +387 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/core_query/jquery_selector.js +405 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/core_query/setClass.js +49 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/core_query/within.js +66 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/error.js +41 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/json.js +14 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/locale.js +128 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/begin.js +47 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/element.js +44 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/end.js +119 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/get.js +51 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/helpers_attr.js +50 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/helpers_basic.js +28 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/helpers_className.js +179 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/helpers_style.js +100 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/init.js +55 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/join.js +28 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/push_text.js +74 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/tag.js +45 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/update.js +205 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/request.js +89 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/root_responder/makeKeyPane.js +124 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/root_responder/makeMainPane.js +68 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/root_responder/root_responder.js +97 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/root_responder/targetForAction.js +238 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/routes.js +33 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/timer/invalidate.js +38 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/timer/invokeLater.js +201 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/timer/isPaused.js +71 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/timer/performAction.js +67 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/timer/schedule.js +170 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/user_defaults.js +27 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/utils/normalizeURL.js +18 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/system/utils/range.js +62 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/validators/credit_card.js +35 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/validators/date.js +21 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/validators/number.js +47 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/validators/password.js +13 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/container/methods.js +10 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/container/ui.js +83 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/image/ui.js +39 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/main_pane.js +31 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/pane/append_remove.js +89 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/pane/firstResponder.js +148 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/pane/keyPane.js +133 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/pane/sendEvent.js +165 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/clippingFrame.js +132 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/convertFrames.js +246 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/createChildViews.js +87 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/createLayer.js +97 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/destroyLayer.js +85 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/findLayerInParentLayer.js +52 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/init.js +50 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/insertBefore.js +200 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/isVisibleInWindow.js +102 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/layer.js +150 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/layoutChildViews.js +162 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/layoutDidChange.js +127 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/layoutStyle.js +248 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/parentViewDidChange.js +67 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/prepareContext.js +166 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/removeChild.js +189 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/render.js +83 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/replaceChild.js +29 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/updateLayer.js +142 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/updateLayerLocation.js +194 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/viewDidResize.js +185 -0
- data/frameworks/sproutcore/frameworks/foundation/validators/credit_card.js +125 -0
- data/frameworks/sproutcore/frameworks/foundation/validators/date.js +52 -0
- data/frameworks/sproutcore/frameworks/foundation/validators/email.js +45 -0
- data/frameworks/sproutcore/frameworks/foundation/validators/not_empty.js +33 -0
- data/frameworks/sproutcore/frameworks/foundation/validators/number.js +82 -0
- data/frameworks/sproutcore/frameworks/foundation/validators/password.js +86 -0
- data/frameworks/sproutcore/frameworks/foundation/validators/validator.js +311 -0
- data/frameworks/sproutcore/frameworks/foundation/views/container.js +136 -0
- data/frameworks/sproutcore/frameworks/foundation/views/field.js +276 -0
- data/frameworks/sproutcore/frameworks/foundation/views/image.js +158 -0
- data/frameworks/sproutcore/frameworks/foundation/views/label.js +261 -0
- data/frameworks/sproutcore/frameworks/foundation/views/view.js +2160 -0
- data/frameworks/sproutcore/frameworks/mobile/english.lproj/core.css +12 -0
- data/frameworks/sproutcore/frameworks/mobile/lib/index.rhtml +126 -0
- data/frameworks/sproutcore/frameworks/mobile/system/root_responder.js +109 -0
- data/frameworks/sproutcore/frameworks/mobile/tests/views/button/ui.js +9 -0
- data/frameworks/sproutcore/frameworks/mobile/views/button.js +190 -0
- data/frameworks/sproutcore/frameworks/runtime/README +11 -0
- data/frameworks/sproutcore/frameworks/runtime/core.js +777 -0
- data/frameworks/sproutcore/frameworks/runtime/license.js +28 -0
- data/frameworks/sproutcore/frameworks/runtime/mixins/array.js +403 -0
- data/frameworks/sproutcore/frameworks/runtime/mixins/delegate_support.js +70 -0
- data/frameworks/sproutcore/frameworks/runtime/mixins/enumerable.js +1193 -0
- data/frameworks/sproutcore/frameworks/runtime/mixins/observable.js +1149 -0
- data/frameworks/sproutcore/frameworks/runtime/private/chain_observer.js +135 -0
- data/frameworks/sproutcore/frameworks/runtime/private/observer_queue.js +108 -0
- data/frameworks/sproutcore/frameworks/runtime/private/observer_set.js +128 -0
- data/frameworks/sproutcore/frameworks/runtime/protocols/sparse_array_delegate.js +131 -0
- data/frameworks/sproutcore/frameworks/runtime/system/binding.js +891 -0
- data/frameworks/sproutcore/frameworks/runtime/system/enumerator.js +107 -0
- data/frameworks/sproutcore/frameworks/runtime/system/object.js +783 -0
- data/frameworks/sproutcore/frameworks/runtime/system/range_observer.js +99 -0
- data/frameworks/sproutcore/frameworks/runtime/system/run_loop.js +214 -0
- data/frameworks/sproutcore/frameworks/runtime/system/set.js +246 -0
- data/frameworks/sproutcore/frameworks/runtime/system/sparse_array.js +286 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/core/IsEqual.js +56 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/core/beget.js +23 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/core/clone.js +66 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/core/guidFor.js +147 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/core/inspect.js +27 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/core/isArray.js +25 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/core/itemType.js +38 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/core/keys.js +20 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/core/makeArray.js +30 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/core/objectForPropertyPath.js +19 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/core/tupleForPropertyPath.js +37 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/mixins/enumerable.js +592 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/mixins/observable/observable.js +467 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/mixins/observable/propertyChanges.js +123 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/mixins/observable/registerDependentKeys.js +79 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/mixins/propertyChanges.js +80 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/system/array.js +263 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/system/binding.js +190 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/system/object/base.js +135 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/system/object/bindings.js +339 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/system/run_loop.js +120 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/system/set.js +313 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/system/sparse_array.js +84 -0
- data/frameworks/sproutcore/frameworks/testing/core.js +13 -0
- data/frameworks/sproutcore/frameworks/testing/english.lproj/additions.css +8 -0
- data/frameworks/sproutcore/frameworks/testing/english.lproj/testsuite.css +131 -0
- data/frameworks/sproutcore/frameworks/testing/extras.js +43 -0
- data/frameworks/sproutcore/frameworks/testing/jquery.js +3559 -0
- data/frameworks/sproutcore/frameworks/testing/qunit.js +819 -0
- data/frameworks/sproutcore/frameworks/testing/tests/debug/qunit.js +25 -0
- data/frameworks/sproutcore/frameworks/testing/utils.js +55 -0
- data/frameworks/sproutcore/lib/index.rhtml +118 -0
- data/frameworks/sproutcore/license.js +28 -0
- data/frameworks/sproutcore/themes/empty_theme/tests/mini_icons.rhtml +69 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/button.css +41 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/core.css +8 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/backButton.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/blueButton.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/cancel.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/grayButton.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/leftButton.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/listArrow.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/listArrowSel.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/listGroup.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/loading.gif +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/pinstripes.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/rightButton.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/selection.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/thumb.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/toggle.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/toggleOn.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/toolButton.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/toolbar.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/images/whiteButton.png +0 -0
- data/frameworks/sproutcore/themes/iphone_theme/english.lproj/strings.js +15 -0
- data/frameworks/sproutcore/themes/standard_theme/Source/Panel.drawit/Data +0 -0
- data/frameworks/sproutcore/themes/standard_theme/Source/Panel.drawit/QuickLook/Preview.jpg +0 -0
- data/frameworks/sproutcore/themes/standard_theme/Source/Panel.drawit/QuickLook/Thumbnail.jpg +0 -0
- data/frameworks/sproutcore/themes/standard_theme/Source/ToolbarView Pattern.drawit/Data +0 -0
- data/frameworks/sproutcore/themes/standard_theme/Source/ToolbarView Pattern.drawit/QuickLook/Preview.jpg +0 -0
- data/frameworks/sproutcore/themes/standard_theme/Source/ToolbarView Pattern.drawit/QuickLook/Thumbnail.jpg +0 -0
- data/frameworks/sproutcore/themes/standard_theme/Source/panel-sprite-x.drawit/Data +0 -0
- data/frameworks/sproutcore/themes/standard_theme/Source/panel-sprite-x.drawit/QuickLook/Preview.jpg +0 -0
- data/frameworks/sproutcore/themes/standard_theme/Source/panel-sprite-x.drawit/QuickLook/Thumbnail.jpg +0 -0
- data/frameworks/sproutcore/themes/standard_theme/Source/panel-sprite-y.drawit/Data +0 -0
- data/frameworks/sproutcore/themes/standard_theme/Source/panel-sprite-y.drawit/QuickLook/Preview.jpg +0 -0
- data/frameworks/sproutcore/themes/standard_theme/Source/panel-sprite-y.drawit/QuickLook/Thumbnail.jpg +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/button.css +333 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/checkbox.css +90 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/collection.css +53 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/core.css +47 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/disclosure.css +55 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/images/sc-theme-sprite.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/images/sc-theme-ysprite.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/images/sc-toolbar-view.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/label.css +37 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/pane.css +8 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/background-fat.jpg +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/background-thin.jpg +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/bottom-edge.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/bottom-left-corner.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/bottom-right-corner.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/left-edge.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/overlay.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/right-edge.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/top-edge.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/top-left-corner.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/top-right-corner.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/progress.css +23 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/radio.css +113 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/segmented.css +141 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/slider.css +62 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/split_view.css +27 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/tab.css +12 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/text_field.css +13 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/toolbar.css +4 -0
- data/lib/thor/.autotest +7 -0
- data/lib/thor/CHANGELOG.rdoc +52 -0
- data/lib/thor/LICENSE +20 -0
- data/lib/thor/README.markdown +76 -0
- data/lib/thor/Rakefile +6 -0
- data/lib/thor/Thorfile +45 -0
- data/lib/thor/bin/rake2thor +83 -0
- data/lib/thor/bin/thor +7 -0
- data/lib/thor/lib/thor/error.rb +3 -0
- data/lib/thor/lib/thor/options.rb +267 -0
- data/lib/thor/lib/thor/ordered_hash.rb +64 -0
- data/lib/thor/lib/thor/runner.rb +305 -0
- data/lib/thor/lib/thor/task.rb +83 -0
- data/lib/thor/lib/thor/task_hash.rb +22 -0
- data/lib/thor/lib/thor/tasks/package.rb +18 -0
- data/lib/thor/lib/thor/tasks.rb +77 -0
- data/lib/thor/lib/thor/util.rb +75 -0
- data/lib/thor/lib/thor.rb +170 -0
- data/lib/thor/script/destroy +14 -0
- data/lib/thor/script/generate +14 -0
- data/lib/thor/spec/fixtures/task.thor +10 -0
- data/lib/thor/spec/options_spec.rb +271 -0
- data/lib/thor/spec/ordered_hash_spec.rb +84 -0
- data/lib/thor/spec/spec.opts +1 -0
- data/lib/thor/spec/spec_helper.rb +30 -0
- data/lib/thor/spec/task_spec.rb +11 -0
- data/lib/thor/spec/tasks_spec.rb +28 -0
- data/lib/thor/spec/thor_runner_spec.rb +194 -0
- data/lib/thor/spec/thor_spec.rb +206 -0
- data/lib/thor/spec/util_spec.rb +99 -0
- data/lib/thor/task.thor +15 -0
- data/lib/thor/thor.gemspec +29 -0
- metadata +3 -4
- data/sproutcore.gemspec +0 -47
@@ -0,0 +1,128 @@
|
|
1
|
+
module("object.SC.Locale()", {
|
2
|
+
setup: function() {
|
3
|
+
|
4
|
+
LocaleObject = SC.Locale.create({
|
5
|
+
init: function(){
|
6
|
+
sc_super();
|
7
|
+
//hash of new languages
|
8
|
+
newLocales = { deflang: 'dl'};
|
9
|
+
|
10
|
+
//Added the new languages to the existing list of locales
|
11
|
+
SC.Locale.addStrings(newLocales);
|
12
|
+
}
|
13
|
+
});
|
14
|
+
|
15
|
+
}
|
16
|
+
});
|
17
|
+
|
18
|
+
test("Locale.init() : Should return a flag if the language has been set during the locale initialization", function() {
|
19
|
+
// As the locale is added during initialization the value of hasString is true
|
20
|
+
equals(LocaleObject.hasStrings, true) ;
|
21
|
+
|
22
|
+
//check the string values.
|
23
|
+
equals(LocaleObject.strings.deflang, 'dl') ;
|
24
|
+
});
|
25
|
+
|
26
|
+
|
27
|
+
test("Locale.locWithDefault() : localized version of the string or the string if no match was found", function() {
|
28
|
+
//Based on the input passed it should return the default locale
|
29
|
+
equals(LocaleObject.locWithDefault("en"), "en") ;
|
30
|
+
equals(LocaleObject.locWithDefault("jp", "Japanese"), "Japanese") ;
|
31
|
+
equals(LocaleObject.locWithDefault('deflang'), "dl") ;
|
32
|
+
});
|
33
|
+
|
34
|
+
test("Locale.addStrings() : Should be able to add the passed hash of strings to the locale's strings table", function() {
|
35
|
+
|
36
|
+
//Check for the new languages. This should be false as these are not added to the list of locales
|
37
|
+
equals(false, SC.Locale.options().strings.chinese === 'zh' && SC.Locale.options().strings.dutch === 'nl') ;
|
38
|
+
|
39
|
+
//hash of new languages
|
40
|
+
newLocales = { chinese: 'zh', czech: 'cs', dutch: 'nl'};
|
41
|
+
|
42
|
+
//Added the new languages to the existing list of locales
|
43
|
+
SC.Locale.addStrings(newLocales);
|
44
|
+
|
45
|
+
//Result should be true as the new lacales added to the list of default locales
|
46
|
+
equals(true, SC.Locale.options().strings.chinese === 'zh' && SC.Locale.options().strings.dutch === 'nl') ;
|
47
|
+
});
|
48
|
+
|
49
|
+
test("Locale.options() : Should provide the registered locales that have not been instantiated", function() {
|
50
|
+
|
51
|
+
//hash of new languages
|
52
|
+
newLocales = { jamican: 'ji', korean: 'ko'};
|
53
|
+
|
54
|
+
//Added the new languages to the existing list of locales
|
55
|
+
SC.Locale.addStrings(newLocales);
|
56
|
+
|
57
|
+
//Options should return the list of registered locales, so checking if the retruned object has strings.
|
58
|
+
equals(SC.Locale.options().hasStrings, true) ;
|
59
|
+
|
60
|
+
//Checking the strings with default locales.
|
61
|
+
equals(true, SC.Locale.options().strings.jamican === 'ji' && SC.Locale.options().strings.korean === 'ko') ;
|
62
|
+
});
|
63
|
+
|
64
|
+
test("Locale.normalizeLanguage() : Should provide the two character language code for the passed locale", function() {
|
65
|
+
//If nothing is passed this will retrun the default code as 'en'
|
66
|
+
equals(SC.Locale.normalizeLanguage(), 'en') ;
|
67
|
+
|
68
|
+
//If the language is passed as 'English' this will return the code as 'en'
|
69
|
+
equals(SC.Locale.normalizeLanguage('English'), 'en') ;
|
70
|
+
|
71
|
+
//For any other code passed which is not in the default code it should return as it was passed
|
72
|
+
equals(SC.Locale.normalizeLanguage('ab'), 'ab') ; ;
|
73
|
+
});
|
74
|
+
|
75
|
+
test("Locale.toString() : Should retrun the current language set with the guid value", function() {
|
76
|
+
// Creating the new locale by extending an existing Locale object
|
77
|
+
SC.Locale.locales['mx'] = SC.Locale.extend({ _deprecatedLanguageCodes: ['mexican'] }) ;
|
78
|
+
|
79
|
+
//Result should retrun the chinese object
|
80
|
+
equals(SC.Locale.locales.mx.currentLocale.isObject, true) ;
|
81
|
+
//Result should convert the chinese object into a string
|
82
|
+
equals(SC.Locale.locales.mx.toString(), 'SC.Locale[mx]') ;
|
83
|
+
});
|
84
|
+
|
85
|
+
test("Locale.createCurrentLocale() : Should create the Lacale Object for the language selected", function() {
|
86
|
+
//This will match the browser language with the SC lanuage and create the object accordingly
|
87
|
+
// This test will pass only for the default languages i.e en, fr, de, ja, es, it.
|
88
|
+
equals(true, SC.Locale.createCurrentLocale().language === SC.browser.language) ;
|
89
|
+
|
90
|
+
//Resetting the default browser language
|
91
|
+
SC.browser.language='kn';
|
92
|
+
|
93
|
+
//This is false as currentLocale will be created as 'en'
|
94
|
+
equals(false, SC.Locale.createCurrentLocale().language===SC.browser.language) ;
|
95
|
+
});
|
96
|
+
|
97
|
+
test("Locale.localeClassFor() : Should find the locale class for the names language code or creates on based on its most likely parent", function() {
|
98
|
+
// Local Class for any language other than default languages will be 'en'. Therefore this condition is false
|
99
|
+
equals(false, SC.Locale.localeClassFor('nl').create().language === "nl") ;
|
100
|
+
|
101
|
+
// This adds the new language with the parent language to the default list
|
102
|
+
SC.Locale.locales['nl'] = SC.Locale.extend({ _deprecatedLanguageCodes: ['Dutch'] }) ;
|
103
|
+
|
104
|
+
//This condition is true as the local class now exists for 'nl'
|
105
|
+
equals(true, SC.Locale.localeClassFor('nl').create().language==="nl") ;
|
106
|
+
});
|
107
|
+
|
108
|
+
test("Locale.define() : Should be able to define a particular type of locale", function() {
|
109
|
+
SC.Locale.define('xy', {
|
110
|
+
longNames: 'Charles John Romonoski Gregory William'.split(' '),
|
111
|
+
shortNames: ['C','A','Y','N']
|
112
|
+
});
|
113
|
+
|
114
|
+
//Result should retrun the new locale object
|
115
|
+
equals(SC.Locale.locales.xy.isClass, true) ;
|
116
|
+
});
|
117
|
+
|
118
|
+
test("Locale.extend() : Should make sure important properties of Locale object are copied to a new class", function() {
|
119
|
+
SC.Locale.locales['mn'] = SC.Locale.extend({ _deprecatedLanguageCodes: ['newlang'] }) ;
|
120
|
+
|
121
|
+
//hash of new languages
|
122
|
+
testLocales = { test: 'te', newtest: 'nt'};
|
123
|
+
//Added the new languages to the existing list of locales through the new locale object
|
124
|
+
SC.Locale.locales.mn.addStrings(testLocales);
|
125
|
+
|
126
|
+
//Result should be true as the new lacales added to the list of default locales
|
127
|
+
equals(SC.Locale.locales.mn.options().strings.test,'te') ;
|
128
|
+
});
|
@@ -0,0 +1,47 @@
|
|
1
|
+
// ==========================================================================
|
2
|
+
// Project: SproutCore - JavaScript Application Framework
|
3
|
+
// Copyright: ©2006-2009 Sprout Systems, Inc. and contributors.
|
4
|
+
// Portions ©2008-2009 Apple, Inc. All rights reserved.
|
5
|
+
// License: Licened under MIT license (see license.js)
|
6
|
+
// ==========================================================================
|
7
|
+
|
8
|
+
/*global module test equals context ok */
|
9
|
+
|
10
|
+
var context = null;
|
11
|
+
|
12
|
+
module("SC.RenderContext#begin", {
|
13
|
+
setup: function() {
|
14
|
+
context = SC.RenderContext();
|
15
|
+
}
|
16
|
+
});
|
17
|
+
|
18
|
+
test("should return a new context with parent context as prevObject", function() {
|
19
|
+
var c2 = context.begin();
|
20
|
+
ok(c2 !== context, "new context");
|
21
|
+
equals(c2.prevObject, context, 'previous context');
|
22
|
+
});
|
23
|
+
|
24
|
+
test("should set offset for new context equal to length of previous context", function() {
|
25
|
+
context.push("line1");
|
26
|
+
var expected = context.length ;
|
27
|
+
var c2 = context.begin();
|
28
|
+
equals(c2.offset, expected, "offset");
|
29
|
+
});
|
30
|
+
|
31
|
+
test("should copy same strings array to new child context", function() {
|
32
|
+
context.push("line1");
|
33
|
+
var c2 =context.begin();
|
34
|
+
equals(c2.strings, context.strings);
|
35
|
+
});
|
36
|
+
|
37
|
+
test("should start new context with length of 1 (reserving a space for opening tag)", function() {
|
38
|
+
context.push("line1");
|
39
|
+
var c2 = context.begin() ;
|
40
|
+
equals(c2.length, 1, 'has empty line');
|
41
|
+
equals(c2.strings.length, 3, "parent empty line + parent line + empty line");
|
42
|
+
});
|
43
|
+
|
44
|
+
test("should assign passed tag name to new context", function() {
|
45
|
+
var c2 = context.begin('foo');
|
46
|
+
equals(c2.tagName(), 'foo', 'tag name');
|
47
|
+
});
|
@@ -0,0 +1,44 @@
|
|
1
|
+
// ==========================================================================
|
2
|
+
// Project: SproutCore - JavaScript Application Framework
|
3
|
+
// Copyright: ©2006-2009 Sprout Systems, Inc. and contributors.
|
4
|
+
// Portions ©2008-2009 Apple, Inc. All rights reserved.
|
5
|
+
// License: Licened under MIT license (see license.js)
|
6
|
+
// ==========================================================================
|
7
|
+
|
8
|
+
/*global module test equals context ok */
|
9
|
+
|
10
|
+
var context = null;
|
11
|
+
|
12
|
+
module("SC.RenderContext#element", {
|
13
|
+
setup: function() {
|
14
|
+
context = SC.RenderContext() ;
|
15
|
+
},
|
16
|
+
|
17
|
+
teardown: function() {
|
18
|
+
context = null;
|
19
|
+
}
|
20
|
+
});
|
21
|
+
|
22
|
+
test("converts context to a DOM element and returns root element if there is one", function() {
|
23
|
+
context.id('foo');
|
24
|
+
var elem = context.element();
|
25
|
+
ok(elem, 'elem not null');
|
26
|
+
equals(elem.tagName.toString().toLowerCase(), 'div', 'is div');
|
27
|
+
equals(elem.id.toString(), 'foo', 'is id=foo');
|
28
|
+
elem = null ;
|
29
|
+
});
|
30
|
+
|
31
|
+
test("returns null if context does not generate valid element", function() {
|
32
|
+
context = SC.RenderContext(null);
|
33
|
+
var elem = context.element();
|
34
|
+
equals(elem, null, 'should be null');
|
35
|
+
elem = null;
|
36
|
+
});
|
37
|
+
|
38
|
+
test("returns first element if context renders multiple element", function() {
|
39
|
+
context.tag('div').tag('span');
|
40
|
+
var elem = context.element();
|
41
|
+
ok(elem, 'elem not null');
|
42
|
+
equals(elem.tagName.toString().toLowerCase(), 'div', 'is div');
|
43
|
+
elem = null;
|
44
|
+
});
|
@@ -0,0 +1,119 @@
|
|
1
|
+
// ==========================================================================
|
2
|
+
// Project: SproutCore - JavaScript Application Framework
|
3
|
+
// Copyright: ©2006-2009 Sprout Systems, Inc. and contributors.
|
4
|
+
// Portions ©2008-2009 Apple, Inc. All rights reserved.
|
5
|
+
// License: Licened under MIT license (see license.js)
|
6
|
+
// ==========================================================================
|
7
|
+
|
8
|
+
/*global module test equals context ok */
|
9
|
+
|
10
|
+
var context = null;
|
11
|
+
|
12
|
+
module("SC.RenderContext#end", {
|
13
|
+
setup: function() {
|
14
|
+
context = SC.RenderContext();
|
15
|
+
}
|
16
|
+
});
|
17
|
+
|
18
|
+
test("should replace opening tag with string and add closing tag, leaving middle content in place", function() {
|
19
|
+
context.push("line1").end();
|
20
|
+
equals(context.get(0), "<div>", "opening tag");
|
21
|
+
equals(context.get(1), "line1", "opening tag");
|
22
|
+
equals(context.get(2), "</div>", "closing tag");
|
23
|
+
});
|
24
|
+
|
25
|
+
test("should emit any CSS class names included in the tag opts.classNames array", function() {
|
26
|
+
context.classNames("foo bar".w()).end();
|
27
|
+
ok(context.get(0).match(/class=\"foo bar\"/), '<div> has class attr') ;
|
28
|
+
});
|
29
|
+
|
30
|
+
test("should emit id in tag opts.id", function() {
|
31
|
+
context.id("foo").end();
|
32
|
+
ok(context.get(0).match(/id=\"foo\"/), "<div> has id attr");
|
33
|
+
});
|
34
|
+
|
35
|
+
test("should emit style in tag if opts.styles is defined", function() {
|
36
|
+
context.styles({ alpha: "beta", foo: "bar" }).end();
|
37
|
+
ok(context.get(0).match(/style=\"alpha: beta; foo: bar\"/), '<div> has style="alpha: beta; foo: bar"');
|
38
|
+
});
|
39
|
+
|
40
|
+
|
41
|
+
test("should write arbitrary attrs has in opts", function() {
|
42
|
+
context.attr({ foo: "bar", bar: "baz" }).end();
|
43
|
+
ok(context.get(0).match(/foo=\"bar\"/), 'has foo="bar"');
|
44
|
+
ok(context.get(0).match(/bar=\"baz\"/), 'has bar="baz"');
|
45
|
+
});
|
46
|
+
|
47
|
+
test("classNames should override attrs.class", function() {
|
48
|
+
context.classNames("foo".w()).attr({ "class": "bar" }).end();
|
49
|
+
ok(context.get(0).match(/class=\"foo\"/), 'has class="foo"');
|
50
|
+
});
|
51
|
+
|
52
|
+
test("opts.id should override opts.attrs.id", function() {
|
53
|
+
context.id("foo").attr({ id: "bar" }).end();
|
54
|
+
ok(context.get(0).match(/id=\"foo\"/), 'has id="foo"');
|
55
|
+
});
|
56
|
+
|
57
|
+
test("opts.styles should override opts.attrs.style", function() {
|
58
|
+
context.styles({ foo: "foo" }).attr({ style: "bar: bar" }).end();
|
59
|
+
ok(context.get(0).match(/style=\"foo: foo\"/), 'has style="foo: foo"');
|
60
|
+
});
|
61
|
+
|
62
|
+
test("should return receiver if receiver has no prevObject", function() {
|
63
|
+
ok(!context.prevObject, 'precondition - prevObject is null');
|
64
|
+
equals(context.end(), context, 'ends as self');
|
65
|
+
});
|
66
|
+
|
67
|
+
test("should return prevObject if receiver has prevObject", function() {
|
68
|
+
var c2 = context.begin();
|
69
|
+
equals(c2.end(), context, "should return prevObject");
|
70
|
+
});
|
71
|
+
|
72
|
+
test("emits self closing tag if tag has no content and c._selfClosing !== NO", function() {
|
73
|
+
var c2 = context.begin('input');
|
74
|
+
c2.end();
|
75
|
+
equals(c2.get(0), "<input />");
|
76
|
+
});
|
77
|
+
|
78
|
+
test("emits two tags even if tag has no content if opts.selfClosing == NO", function() {
|
79
|
+
context._selfClosing = NO;
|
80
|
+
|
81
|
+
context.end();
|
82
|
+
equals(context.length, 2, "has two lines");
|
83
|
+
equals(context.get(0), "<div>", "has opening tag");
|
84
|
+
equals(context.get(1), "</div>", "has closing tag");
|
85
|
+
});
|
86
|
+
|
87
|
+
test("does NOT emit self closing tag if it has content, even if opts.selfClosing == YES (because that would yield invalid HTML)", function() {
|
88
|
+
context._selfClosing = YES;
|
89
|
+
context.push("line").end();
|
90
|
+
equals(context.length, 3, "has 3 lines");
|
91
|
+
equals(context.get(2), "</div>", "has closing tag");
|
92
|
+
});
|
93
|
+
|
94
|
+
test("it should make sure to clear reused temporary attributes object", function() {
|
95
|
+
|
96
|
+
// generate one tag...
|
97
|
+
context.begin('input')
|
98
|
+
.id("foo")
|
99
|
+
.styles({ foo: "bar" })
|
100
|
+
.classNames("foo bar".w())
|
101
|
+
.push("line")
|
102
|
+
.end();
|
103
|
+
|
104
|
+
// generate second tag...will reuse internal temporary attrs object.
|
105
|
+
context.begin('input').id("bar").end();
|
106
|
+
var str = context.get(context.length-1);
|
107
|
+
equals(str, "<input id=\"bar\" />");
|
108
|
+
});
|
109
|
+
|
110
|
+
test("it should work when nested more than one level deep", function() {
|
111
|
+
context.begin().id("foo")
|
112
|
+
.begin().id("bar").end()
|
113
|
+
.end();
|
114
|
+
|
115
|
+
var str = context.join('');
|
116
|
+
ok(str.match(/id="foo"/), 'has foo');
|
117
|
+
ok(str.match(/id="bar"/), 'has bar');
|
118
|
+
});
|
119
|
+
|
@@ -0,0 +1,51 @@
|
|
1
|
+
// ==========================================================================
|
2
|
+
// Project: SproutCore - JavaScript Application Framework
|
3
|
+
// Copyright: ©2006-2009 Sprout Systems, Inc. and contributors.
|
4
|
+
// Portions ©2008-2009 Apple, Inc. All rights reserved.
|
5
|
+
// License: Licened under MIT license (see license.js)
|
6
|
+
// ==========================================================================
|
7
|
+
|
8
|
+
/*global module test equals context */
|
9
|
+
|
10
|
+
var context = null;
|
11
|
+
|
12
|
+
module("SC.RenderContext#get", {
|
13
|
+
setup: function() {
|
14
|
+
context = SC.RenderContext();
|
15
|
+
},
|
16
|
+
|
17
|
+
teardown: function() {
|
18
|
+
context = null;
|
19
|
+
}
|
20
|
+
});
|
21
|
+
|
22
|
+
test("it should return strings array with space for top tag if no params passed and no strings pushed yet", function() {
|
23
|
+
isSet(context.get(), [null]);
|
24
|
+
});
|
25
|
+
|
26
|
+
test("it should return full strings array if no params passed and no strings pushed yet", function() {
|
27
|
+
context.push("line1");
|
28
|
+
isSet(context.get(), [null, "line1"]);
|
29
|
+
});
|
30
|
+
|
31
|
+
test("it should return individual string if index passed that is within current length", function() {
|
32
|
+
context.push("line1");
|
33
|
+
equals(context.get(1), "line1");
|
34
|
+
});
|
35
|
+
|
36
|
+
test("it should return undefined if index passed that is outside of current range", function() {
|
37
|
+
context.push("line1");
|
38
|
+
equals(context.get(3), undefined);
|
39
|
+
});
|
40
|
+
|
41
|
+
// test this special case since the internal strings array is created lazily.
|
42
|
+
test("it should return undefined if index passed and no strings set yet", function() {
|
43
|
+
equals(context.get(2), undefined);
|
44
|
+
});
|
45
|
+
|
46
|
+
test("it should return the value based on an index from the context offset of the context is chained", function() {
|
47
|
+
context.push('line1', 'line2');
|
48
|
+
var childContext = context.begin();
|
49
|
+
childContext.push("NEXT");
|
50
|
+
equals(childContext.get(1), "NEXT", 'gets child line');
|
51
|
+
}) ;
|
@@ -0,0 +1,50 @@
|
|
1
|
+
// ==========================================================================
|
2
|
+
// Project: SproutCore - JavaScript Application Framework
|
3
|
+
// Copyright: ©2006-2009 Sprout Systems, Inc. and contributors.
|
4
|
+
// Portions ©2008-2009 Apple, Inc. All rights reserved.
|
5
|
+
// License: Licened under MIT license (see license.js)
|
6
|
+
// ==========================================================================
|
7
|
+
|
8
|
+
/*global module test equals context ok same isSet */
|
9
|
+
|
10
|
+
var context = null;
|
11
|
+
|
12
|
+
|
13
|
+
|
14
|
+
// ..........................................................
|
15
|
+
// attr
|
16
|
+
//
|
17
|
+
module("SC.RenderContext#attr", {
|
18
|
+
setup: function() {
|
19
|
+
context = SC.RenderContext().attr({ foo: 'foo' }) ;
|
20
|
+
}
|
21
|
+
});
|
22
|
+
|
23
|
+
test("should add passed name to value", function() {
|
24
|
+
context.attr('bar', 'bar');
|
25
|
+
equals(context._attrs.bar, 'bar', 'verify attr name');
|
26
|
+
});
|
27
|
+
|
28
|
+
test("should replace passed name value in attrs", function() {
|
29
|
+
context.attr('foo', 'bar');
|
30
|
+
equals(context._attrs.foo, 'bar', 'verify attr name');
|
31
|
+
});
|
32
|
+
|
33
|
+
test("should return receiver", function() {
|
34
|
+
equals(context, context.attr('foo', 'bar'));
|
35
|
+
});
|
36
|
+
|
37
|
+
test("should create attrs hash if needed", function() {
|
38
|
+
context = SC.RenderContext().begin();
|
39
|
+
equals(context._attrs, null, 'precondition - has no attrs');
|
40
|
+
|
41
|
+
context.attr('foo', 'bar');
|
42
|
+
equals(context._attrs.foo, 'bar', 'has styles');
|
43
|
+
});
|
44
|
+
|
45
|
+
test("should assign all attrs if a hash is passed", function() {
|
46
|
+
context.attr({ foo: 'bar', bar: 'bar' });
|
47
|
+
same(context._attrs, { foo: 'bar', bar: 'bar' }, 'has same styles');
|
48
|
+
});
|
49
|
+
|
50
|
+
|
@@ -0,0 +1,28 @@
|
|
1
|
+
// ==========================================================================
|
2
|
+
// Project: SproutCore - JavaScript Application Framework
|
3
|
+
// Copyright: ©2006-2009 Sprout Systems, Inc. and contributors.
|
4
|
+
// Portions ©2008-2009 Apple, Inc. All rights reserved.
|
5
|
+
// License: Licened under MIT license (see license.js)
|
6
|
+
// ==========================================================================
|
7
|
+
|
8
|
+
/*global module test equals context ok isSet */
|
9
|
+
|
10
|
+
var context = null;
|
11
|
+
|
12
|
+
// ..........................................................
|
13
|
+
// id()
|
14
|
+
//
|
15
|
+
module("SC.RenderContext#id", {
|
16
|
+
setup: function() {
|
17
|
+
context = SC.RenderContext().id('foo') ;
|
18
|
+
}
|
19
|
+
});
|
20
|
+
|
21
|
+
test("id() returns the current id for the tag", function() {
|
22
|
+
equals(context.id(), 'foo', 'get id');
|
23
|
+
});
|
24
|
+
|
25
|
+
test("id(bar) alters the current id", function() {
|
26
|
+
equals(context.id("bar"), context, "Returns receiver");
|
27
|
+
equals(context.id(), 'bar', 'changed to bar');
|
28
|
+
});
|
data/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/helpers_className.js
ADDED
@@ -0,0 +1,179 @@
|
|
1
|
+
// ==========================================================================
|
2
|
+
// Project: SproutCore - JavaScript Application Framework
|
3
|
+
// Copyright: ©2006-2009 Sprout Systems, Inc. and contributors.
|
4
|
+
// Portions ©2008-2009 Apple, Inc. All rights reserved.
|
5
|
+
// License: Licened under MIT license (see license.js)
|
6
|
+
// ==========================================================================
|
7
|
+
|
8
|
+
/*global module test equals context ok isSet */
|
9
|
+
|
10
|
+
var context = null;
|
11
|
+
|
12
|
+
// ..........................................................
|
13
|
+
// classNames()
|
14
|
+
//
|
15
|
+
module("SC.RenderContext#classNames", {
|
16
|
+
setup: function() {
|
17
|
+
context = SC.RenderContext() ;
|
18
|
+
}
|
19
|
+
});
|
20
|
+
|
21
|
+
test("returns empty array if no current class names", function() {
|
22
|
+
isSet(context.classNames(), [], 'classNames') ;
|
23
|
+
});
|
24
|
+
|
25
|
+
test("classNames(array) updates class names", function() {
|
26
|
+
var cl = 'bar baz'.w();
|
27
|
+
equals(context.classNames(cl), context, "returns receiver");
|
28
|
+
isSet(context.classNames(), cl, 'class names');
|
29
|
+
});
|
30
|
+
|
31
|
+
test("returns classNames if set", function() {
|
32
|
+
context.classNames('bar'.w());
|
33
|
+
isSet(context.classNames(), ['bar'], 'classNames');
|
34
|
+
});
|
35
|
+
|
36
|
+
test("clone on next retrieval if classNames(foo) set with cloneOnModify=YES", function() {
|
37
|
+
var cl = 'foo bar'.w();
|
38
|
+
context.classNames(cl, YES);
|
39
|
+
|
40
|
+
var result = context.classNames();
|
41
|
+
ok(result !== cl, "class name is NOT same instance");
|
42
|
+
isSet(result, cl, "but arrays are equivalent");
|
43
|
+
|
44
|
+
equals(result, context.classNames(), "2nd retrieval is same instance");
|
45
|
+
});
|
46
|
+
|
47
|
+
test("extracts class names from element on first retrieval", function() {
|
48
|
+
var elem = document.createElement('div');
|
49
|
+
elem.setAttribute('class', 'foo bar');
|
50
|
+
context = SC.RenderContext(elem);
|
51
|
+
|
52
|
+
var result = context.classNames();
|
53
|
+
isSet(result, ['foo', 'bar'], 'extracted class names');
|
54
|
+
|
55
|
+
equals(context.classNames(), result, "should reuse same instance thereafter");
|
56
|
+
});
|
57
|
+
|
58
|
+
// ..........................................................
|
59
|
+
// hasClass()
|
60
|
+
//
|
61
|
+
module("SC.RenderContext#hasClass", {
|
62
|
+
setup: function() {
|
63
|
+
context = SC.RenderContext().classNames('foo bar'.w()) ;
|
64
|
+
}
|
65
|
+
});
|
66
|
+
|
67
|
+
test("should return true if context classNames has class name", function() {
|
68
|
+
equals(YES, context.hasClass('foo'), 'should have foo');
|
69
|
+
});
|
70
|
+
|
71
|
+
test("should return false if context classNames does not have class name", function() {
|
72
|
+
equals(NO, context.hasClass('imaginary'), "should not have imaginary");
|
73
|
+
});
|
74
|
+
|
75
|
+
test("should return false if context has no classNames", function() {
|
76
|
+
context = context.begin('div');
|
77
|
+
ok(context.classNames().length===0, 'precondition - context has no classNames');
|
78
|
+
equals(NO, context.hasClass('foo'), 'should not have foo');
|
79
|
+
});
|
80
|
+
|
81
|
+
// ..........................................................
|
82
|
+
// addClass()
|
83
|
+
//
|
84
|
+
module("SC.RenderContext#addClass", {
|
85
|
+
setup: function() {
|
86
|
+
context = SC.RenderContext().classNames(['foo']) ;
|
87
|
+
}
|
88
|
+
});
|
89
|
+
|
90
|
+
test("shoudl return receiver", function() {
|
91
|
+
equals(context.addClass('foo'), context, "receiver");
|
92
|
+
});
|
93
|
+
|
94
|
+
test("should add class name to existing classNames array on currentTag", function() {
|
95
|
+
context.addClass('bar');
|
96
|
+
isSet(context.classNames(), ['foo', 'bar'], 'has classes');
|
97
|
+
equals(context._classNamesDidChange, YES, "note did change");
|
98
|
+
});
|
99
|
+
|
100
|
+
test("should only add class name once - does nothing if name already in array", function() {
|
101
|
+
isSet(context.classNames(), ['foo'], 'precondition - has foo classname');
|
102
|
+
context._classNamesDidChange = NO; // reset to pretend once not modified
|
103
|
+
|
104
|
+
context.addClass('foo');
|
105
|
+
isSet(context.classNames(), ['foo'], 'no change');
|
106
|
+
equals(context._classNamesDidChange, NO, "note did not change");
|
107
|
+
});
|
108
|
+
|
109
|
+
// ..........................................................
|
110
|
+
// removeClass()
|
111
|
+
//
|
112
|
+
module("SC.RenderContext#removeClass", {
|
113
|
+
setup: function() {
|
114
|
+
context = SC.RenderContext().classNames(['foo', 'bar']) ;
|
115
|
+
}
|
116
|
+
});
|
117
|
+
|
118
|
+
test("should remove class if already in classNames array", function() {
|
119
|
+
ok(context.classNames().indexOf('foo')>=0, "precondition - has foo");
|
120
|
+
|
121
|
+
context.removeClass('foo');
|
122
|
+
ok(context.classNames().indexOf('foo')<0, "does not have foo");
|
123
|
+
});
|
124
|
+
|
125
|
+
test('should return receiver', function() {
|
126
|
+
equals(context.removeClass('foo'), context, 'receiver');
|
127
|
+
});
|
128
|
+
|
129
|
+
test("should do nothing if class name not in array", function() {
|
130
|
+
context._classNamesDidChange = NO; // reset to pretend not modified
|
131
|
+
context.removeClass('imaginary');
|
132
|
+
isSet(context.classNames(), 'foo bar'.w(), 'did not change');
|
133
|
+
equals(context._classNamesDidChange, NO, "note did not change");
|
134
|
+
});
|
135
|
+
|
136
|
+
test("should do nothing if there are no class names", function() {
|
137
|
+
context = context.begin();
|
138
|
+
isSet(context.classNames(), [], 'precondition - no class names');
|
139
|
+
context._classNamesDidChange = NO; // reset to pretend not modified
|
140
|
+
|
141
|
+
context.removeClass('foo');
|
142
|
+
isSet(context.classNames(), [], 'still no class names -- and no errors');
|
143
|
+
equals(context._classNamesDidChange, NO, "note did not change");
|
144
|
+
});
|
145
|
+
|
146
|
+
// ..........................................................
|
147
|
+
// setClass
|
148
|
+
//
|
149
|
+
module("SC.RenderContext#setClass", {
|
150
|
+
setup: function() {
|
151
|
+
context = SC.RenderContext().addClass('foo') ;
|
152
|
+
}
|
153
|
+
});
|
154
|
+
|
155
|
+
test("should add named class if shouldAdd is YES", function() {
|
156
|
+
ok(!context.hasClass("bar"), "precondition - does not have class bar");
|
157
|
+
context.setClass("bar", YES);
|
158
|
+
ok(context.hasClass("bar"), "now has bar");
|
159
|
+
});
|
160
|
+
|
161
|
+
test("should remove named class if shouldAdd is NO", function() {
|
162
|
+
ok(context.hasClass("foo"), "precondition - has class foo");
|
163
|
+
context.setClass("foo", NO);
|
164
|
+
ok(!context.hasClass("foo"), "should not have foo ");
|
165
|
+
});
|
166
|
+
|
167
|
+
test("should return receiver", function() {
|
168
|
+
equals(context, context.setClass("bar", YES), "returns receiver");
|
169
|
+
});
|
170
|
+
|
171
|
+
test("should add/remove all classes if a hash of class names is passed", function() {
|
172
|
+
ok(context.hasClass("foo"), "precondition - has class foo");
|
173
|
+
ok(!context.hasClass("bar"), "precondition - does not have class bar");
|
174
|
+
|
175
|
+
context.setClass({ foo: NO, bar: YES });
|
176
|
+
|
177
|
+
ok(context.hasClass("bar"), "now has bar");
|
178
|
+
ok(!context.hasClass("foo"), "should not have foo ");
|
179
|
+
});
|