sproutcore 1.4.5-java → 1.5.0-java
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/.rspec +1 -0
- data/CHANGELOG +126 -0
- data/README.txt +25 -0
- data/VERSION.yml +2 -2
- data/bin/sc-build +1 -1
- data/bin/sc-build-number +1 -1
- data/bin/sc-docs +1 -1
- data/bin/sc-gen +1 -1
- data/bin/sc-init +1 -1
- data/bin/sc-manifest +1 -1
- data/bin/sc-server +1 -1
- data/bin/sproutcore +1 -1
- data/lib/Buildfile +14 -5
- data/lib/buildtasks/build.rake +33 -17
- data/lib/buildtasks/manifest.rake +381 -103
- data/lib/buildtasks/target.rake +1 -0
- data/lib/doc_templates/sproutcore/index.tmpl +18 -4
- data/lib/doc_templates/sproutcore/publish.js +1 -1
- data/lib/frameworks/sproutcore/Buildfile +36 -33
- data/lib/frameworks/sproutcore/CHANGELOG.md +414 -0
- data/lib/frameworks/sproutcore/README.md +1 -0
- data/lib/frameworks/sproutcore/apps/test_controls/Buildfile +0 -0
- data/lib/frameworks/sproutcore/apps/test_controls/controllers/alert.js +39 -0
- data/lib/frameworks/sproutcore/apps/test_controls/controllers/buttons.js +21 -0
- data/lib/frameworks/sproutcore/apps/test_controls/controllers/categories.js +125 -0
- data/lib/frameworks/sproutcore/apps/test_controls/controllers/category.js +36 -0
- data/lib/frameworks/sproutcore/apps/test_controls/controllers/split.js +74 -0
- data/lib/frameworks/sproutcore/apps/test_controls/core.js +29 -0
- data/lib/frameworks/sproutcore/apps/test_controls/main.js +14 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/buttons_page.js +158 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/checkboxes_page.js +53 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/flow_layout_page.js +85 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/list_page.js +40 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/loading.rhtml +9 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/main_page.css +60 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/main_page.js +151 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/panels_page.js +62 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/progress_page.js +33 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/radio_page.js +55 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/scroll_page.js +77 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/segmented_page.js +99 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/select_page.js +61 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/sliders_page.js +54 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/split_page.js +141 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/strings.js +50 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/tab_page.js +53 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/text_field_page.js +65 -0
- data/lib/frameworks/sproutcore/apps/test_controls/theme.js +34 -0
- data/lib/frameworks/sproutcore/apps/tests/controllers/detail.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/controllers/source.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/controllers/target.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/controllers/targets.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/controllers/tests.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/core.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/english.lproj/main_page.js +6 -6
- data/lib/frameworks/sproutcore/apps/tests/english.lproj/strings.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/main.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/states/no_targets.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/states/ready.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/states/ready_detail.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/states/ready_empty.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/states/ready_list.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/states/ready_loading.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/states/ready_no_tests.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/states/start.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/tests/controllers/detail.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/tests/controllers/source.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/tests/controllers/target.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/tests/controllers/targets.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/tests/controllers/tests.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/tests/models/target.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/tests/models/test.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/tests/views/offset_checkbox.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/views/offset_checkbox.js +1 -1
- data/lib/frameworks/sproutcore/apps/welcome/controllers/targets.js +10 -4
- data/lib/frameworks/sproutcore/apps/welcome/core.js +1 -1
- data/lib/frameworks/sproutcore/apps/{greenhouse → welcome}/english.lproj/images/main-bg.png +0 -0
- data/lib/frameworks/sproutcore/apps/welcome/english.lproj/main_page.css +24 -6
- data/lib/frameworks/sproutcore/apps/welcome/english.lproj/main_page.js +37 -47
- data/lib/frameworks/sproutcore/apps/welcome/english.lproj/strings.js +1 -1
- data/lib/frameworks/sproutcore/apps/welcome/main.js +1 -1
- data/lib/frameworks/sproutcore/apps/welcome/tests/controllers/targets.js +1 -1
- data/lib/frameworks/sproutcore/design/{SproutCore Datastore Design.graffle → Sproutcore_DatastoreDesign.graffle}/QuickLook/Preview.pdf +0 -0
- data/lib/frameworks/sproutcore/design/{SproutCore Datastore Design.graffle → Sproutcore_DatastoreDesign.graffle}/QuickLook/Thumbnail.tiff +0 -0
- data/lib/frameworks/sproutcore/design/{SproutCore Datastore Design.graffle → Sproutcore_DatastoreDesign.graffle}/data.plist +0 -0
- data/lib/frameworks/sproutcore/{apps/docs/design/Doc Viewer.graffle → design/Sproutcore_DatastoreDesign.graffle}/image8.png +0 -0
- data/lib/frameworks/sproutcore/design/{SproutCore Design Template.graffle → Sproutcore_Design_Template.graffle}/QuickLook/Preview.pdf +0 -0
- data/lib/frameworks/sproutcore/design/{SproutCore Design Template.graffle → Sproutcore_Design_Template.graffle}/QuickLook/Thumbnail.tiff +0 -0
- data/lib/frameworks/sproutcore/design/{SproutCore Design Template.graffle → Sproutcore_Design_Template.graffle}/data.plist +0 -0
- data/lib/frameworks/sproutcore/design/{SproutCore Datastore Design.graffle → Sproutcore_Design_Template.graffle}/image8.png +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/QuickLook/Preview.pdf +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/QuickLook/Thumbnail.tiff +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/data.plist +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/image10.png +0 -0
- data/lib/frameworks/sproutcore/{apps/docs/design/Doc Viewer.graffle → design/TestRunner_Design.graffle}/image11.png +0 -0
- data/lib/frameworks/sproutcore/{apps/docs/design/Doc Viewer.graffle → design/TestRunner_Design.graffle}/image13.png +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/image15.png +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/image16.png +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/image17.png +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/image18.png +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/image19.png +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/image22.tiff +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/image23.png +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/image24.png +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/image25.png +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/image30.png +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/image31.png +0 -0
- data/lib/frameworks/sproutcore/design/{SproutCore Design Template.graffle → TestRunner_Design.graffle}/image8.png +0 -0
- data/lib/frameworks/sproutcore/design/{TestRunner Design.graffle → TestRunner_Design.graffle}/image9.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/ajax/fixtures/file_exists.json +1 -0
- data/lib/frameworks/sproutcore/frameworks/ajax/fixtures/malformed.json +11 -0
- data/lib/frameworks/sproutcore/frameworks/ajax/system/request.js +611 -0
- data/lib/frameworks/sproutcore/frameworks/ajax/system/response.js +550 -0
- data/lib/frameworks/sproutcore/frameworks/ajax/tests/system/request.js +276 -0
- data/lib/frameworks/sproutcore/frameworks/animation/core.js +57 -45
- data/lib/frameworks/sproutcore/frameworks/animation/tests/core.js +10 -5
- data/lib/frameworks/sproutcore/frameworks/bootstrap/core.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/bootstrap/setup_body_class_names.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/bootstrap/system/bench.js +14 -0
- data/lib/frameworks/sproutcore/frameworks/bootstrap/system/browser.js +219 -23
- data/lib/frameworks/sproutcore/frameworks/bootstrap/system/loader.js +16 -15
- data/lib/frameworks/sproutcore/frameworks/bootstrap/tests/system/browser.js +187 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/controllers/array.js +540 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/controllers/controller.js +44 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/controllers/object.js +342 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/core.js +189 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/function.js +39 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/handlebars.js +73 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/handlebars/bind.js +293 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/handlebars/collection.js +55 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/handlebars/localization.js +5 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/handlebars/view.js +96 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/object.js +81 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/run_loop.js +163 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/string.js +60 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/mixins/delegate_support.js +110 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/mixins/responder_context.js +268 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/mixins/selection_support.js +249 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/mixins/template_helpers/checkbox_support.js +28 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/mixins/template_helpers/text_field_support.js +55 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/keyboard.js +74 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/layout.js +95 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/main.js +50 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/manipulation.js +33 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/pane.js +670 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/template.js +31 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/visibility.js +17 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/protocols/observable_protocol.js +40 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/protocols/sparse_array_delegate.js +131 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/resources/core.css +378 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/resources/view.css +57 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/application.js +33 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/bindable_span.js +164 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/browser.js +36 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/builder.js +202 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/core_query.js +141 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/cursor.js +131 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/datetime.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/device.js +210 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/event.js +991 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/locale.js +289 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/page.js +106 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/platform.js +419 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/ready.js +103 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/render_context.js +1063 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/responder.js +124 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/root_responder.js +2174 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/selection_set.js +693 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/sparse_array.js +397 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/string.js +165 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/theme.js +316 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/timer.js +548 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/utils.js +155 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/utils/rect.js +104 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/controllers/array/array_case.js +301 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/controllers/array/enum_case.js +206 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/controllers/array/null_case.js +64 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/controllers/array/selection_support.js +344 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/controllers/array/single_case.js +136 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/controllers/object/empty_case.js +82 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/controllers/object/multiple_case.js +111 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/controllers/object/single_case.js +193 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/controllers/object/single_enumerable_case.js +265 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/mixins/responder_context.js +76 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/mixins/string.js +78 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/mixins/template_helpers/checkbox_support.js +38 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/mixins/template_helpers/text_field_support.js +79 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/panes/template.js +20 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/builder.js +49 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/core_query/within.js +71 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/locale.js +140 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/ready/done.js +40 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/begin.js +47 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/element.js +44 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/end.js +124 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/get.js +51 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/helpers_attr.js +50 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/helpers_basic.js +28 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/helpers_className.js +177 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/helpers_style.js +109 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/init.js +55 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/join.js +28 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/push_text.js +74 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/tag.js +46 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/update.js +219 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/root_responder/makeKeyPane.js +124 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/root_responder/makeMainPane.js +68 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/root_responder/makeMenuPane.js +48 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/root_responder/root_responder.js +108 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/root_responder/targetForAction.js +288 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/selection_set/add.js +92 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/selection_set/copy.js +17 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/selection_set/indexSetForSource.js +98 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/selection_set/isEqual.js +60 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/selection_set/remove.js +111 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/sparse_array.js +201 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/theme.js +78 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/timer/invalidate.js +44 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/timer/invokeLater.js +209 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/timer/isPaused.js +77 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/timer/performAction.js +75 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/timer/schedule.js +176 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/utils/normalizeURL.js +24 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/utils/offset.js +284 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/utils/rect.js +105 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/main_pane.js +49 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/pane/append_remove.js +224 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/pane/child_view.js +26 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/pane/firstResponder.js +148 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/pane/keyPane.js +133 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/pane/layout.js +31 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/pane/sendEvent.js +206 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/template/collection.js +201 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/template/core.js +160 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/template/handlebars.js +919 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/animation.js +382 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/build.js +85 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/build_children.js +89 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/clippingFrame.js +117 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/convertFrames.js +248 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/convertLayouts.js +153 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/createChildViews.js +132 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/createLayer.js +97 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/destroyLayer.js +83 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/didAppendToDocument.js +83 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/findLayerInParentLayer.js +50 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/init.js +50 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/insertBefore.js +217 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/isVisible.js +85 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/isVisibleInWindow.js +122 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/keyboard.js +28 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/layer.js +146 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/layoutChildViews.js +162 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/layoutDidChange.js +180 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/layoutStyle.js +745 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/parentViewDidChange.js +67 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/prepareContext.js +203 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/removeChild.js +189 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/render.js +203 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/render_delegate_support.js +163 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/replaceChild.js +29 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/static_layout.js +28 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/theme.js +45 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/updateLayer.js +148 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/updateLayerLocation.js +213 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/view.js +64 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/viewDidResize.js +202 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/template.js +131 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/template_collection.js +242 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view.js +1524 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/animation.js +181 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/base.js +3 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/cursor.js +48 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/enabled.js +57 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/keyboard.js +223 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/layout.js +1115 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/layout_style.js +624 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/manipulation.js +401 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/theming.js +400 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/touch.js +67 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/visibility.js +118 -0
- data/lib/frameworks/sproutcore/frameworks/core_tools/core.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_tools/data_source.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_tools/english.lproj/strings.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_tools/fixtures/target.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_tools/fixtures/test.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_tools/models/target.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_tools/models/test.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/core.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/data_sources/cascade.js +17 -21
- data/lib/frameworks/sproutcore/frameworks/datastore/data_sources/data_source.js +322 -132
- data/lib/frameworks/sproutcore/frameworks/datastore/data_sources/fixtures.js +5 -5
- data/lib/frameworks/sproutcore/frameworks/datastore/debug/json.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/debug/standard_setup.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/models/child_attribute.js +44 -61
- data/lib/frameworks/sproutcore/frameworks/datastore/models/child_record.js +16 -100
- data/lib/frameworks/sproutcore/frameworks/datastore/models/children_attribute.js +17 -24
- data/lib/frameworks/sproutcore/frameworks/datastore/models/fetched_attribute.js +8 -8
- data/lib/frameworks/sproutcore/frameworks/datastore/models/many_attribute.js +20 -21
- data/lib/frameworks/sproutcore/frameworks/datastore/models/record.js +457 -216
- data/lib/frameworks/sproutcore/frameworks/datastore/models/record_attribute.js +204 -94
- data/lib/frameworks/sproutcore/frameworks/datastore/models/single_attribute.js +17 -19
- data/lib/frameworks/sproutcore/frameworks/datastore/system/child_array.js +150 -115
- data/lib/frameworks/sproutcore/frameworks/datastore/system/many_array.js +148 -110
- data/lib/frameworks/sproutcore/frameworks/datastore/system/nested_store.js +51 -26
- data/lib/frameworks/sproutcore/frameworks/datastore/system/query.js +160 -158
- data/lib/frameworks/sproutcore/frameworks/datastore/system/record_array.js +298 -204
- data/lib/frameworks/sproutcore/frameworks/datastore/system/store.js +419 -233
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/data_sources/cascade.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/data_sources/fixtures.js +7 -2
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/integration/contact_model.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/integration/cyclical_relationship.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/integration/mail_model.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/integration/test_runner_model.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/datetime_recordattribute.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/many_attribute.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/nested_records/data_store.js +180 -0
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/nested_records/nested_record.js +56 -18
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/nested_records/nested_record_array.js +36 -10
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/nested_records/nested_record_array_complex.js +11 -11
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/nested_records/nested_record_complex.js +8 -8
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/record/core_methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/record/destroy.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/record/error_methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/record/normalize.js +26 -4
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/record/readAttribute.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/record/refresh.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/record/storeDidChangeProperties.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/record/unknownProperty.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/record/writeAttribute.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/record_attribute.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/single_attribute.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/many_array/core_methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/chain.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/commitChanges.js +5 -3
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/commitChangesFromNestedStore.js +5 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/core_methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/dataHashDidChange.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/discardChanges.js +5 -2
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/readDataHash.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/readEditableDataHash.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/removeDataHash.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/writeDataHash.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/builders.js +22 -22
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/compare.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/contains.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/containsRecordTypes.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/copy.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/evaluation.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/evaluation_of_records.js +39 -14
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/expandedRecordTypes.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/parse.js +14 -6
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/queryWithScope.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/record_type_is.js +5 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/registered_comparisons.js +5 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/registered_query_extensions.js +5 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/record_array/core_methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/record_array/error_methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/record_array/flush.js +89 -53
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/cancelRecord.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/commitChangesFromNestedStore.js +5 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/commitRecord.js +11 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/core_methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/createRecord.js +6 -2
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/dataHashDidChange.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/dataSourceCallbacks.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/destroyRecord.js +6 -2
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/error_methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/find.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/init.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/loadRecord.js +64 -0
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/loadRecords.js +100 -0
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/pushChanges.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/readDataHash.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/readEditableDataHash.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/recordDidChange.js +39 -36
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/removeDataHash.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/retrieveRecord.js +17 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/unloadRecord.js +55 -0
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/unloadRecords.js +85 -32
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/writeDataHash.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datetime/frameworks/core/system/datetime.js +1103 -0
- data/lib/frameworks/sproutcore/frameworks/datetime/frameworks/core/tests/system/datetime.js +390 -0
- data/lib/frameworks/sproutcore/frameworks/datetime/frameworks/localized/resources/strings.js +14 -0
- data/lib/frameworks/sproutcore/frameworks/datetime/frameworks/localized/system/datetime.js +91 -0
- data/lib/frameworks/sproutcore/frameworks/debug/core.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/debug/invoke_once_last_debugging.js +10 -11
- data/lib/frameworks/sproutcore/frameworks/desktop/core.js +19 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/debug/drag.js +8 -7
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/disclosure.css +0 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/icons.css +0 -27
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/list_item.css +27 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/menu_item_view.css +1 -9
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/segmented.css +72 -74
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/border.js +49 -27
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/collection_fast_path.js +63 -46
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/collection_group.js +6 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/collection_row_delegate.js +53 -17
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/collection_view_delegate.js +84 -79
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/navigation_builder.js +138 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/scrollable.js +38 -24
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/alert.js +396 -218
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/menu.js +92 -123
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/modal.js +23 -18
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/palette.js +39 -17
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/panel.js +66 -53
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/picker.js +364 -121
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/select_button.js +209 -108
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/sheet.js +40 -17
- data/lib/frameworks/sproutcore/frameworks/desktop/protocols/drag_data_source.js +16 -12
- data/lib/frameworks/sproutcore/frameworks/desktop/protocols/drag_source.js +25 -27
- data/lib/frameworks/sproutcore/frameworks/desktop/protocols/drop_target.js +36 -24
- data/lib/frameworks/sproutcore/frameworks/desktop/protocols/responder.js +7 -5
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/button.js +112 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/checkbox.js +98 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/collection.js +25 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/disclosure.js +59 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/helpers/slicing.js +35 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/image_button.js +51 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/master_detail.js +29 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/menu.js +60 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/panel.js +28 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/picker.js +44 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/popup_button.js +21 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/progress.js +100 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/radio.js +84 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/radio_group.js +116 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/segment.js +58 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/segmented.js +80 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/slider.js +81 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/source_list.js +8 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/toolbar.js +18 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/well.js +17 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/workspace.js +18 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/system/drag.js +197 -103
- data/lib/frameworks/sproutcore/frameworks/desktop/system/key_bindings.js +7 -5
- data/lib/frameworks/sproutcore/frameworks/desktop/system/undo_manager.js +74 -37
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/integration/dialog.js +26 -5
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/mixins/border.js +16 -6
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/alert/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/alert/ui.js +190 -22
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/menu/methods.js +2 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/menu/ui.js +69 -9
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/palette/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/palette/ui.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/pane_page.js +4 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/panel/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/panel/ui.js +30 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/picker/methods.js +91 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/picker/ui.js +9 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/select_button/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/select_button/ui.js +11 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/sheet/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/sheet/ui.js +4 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/button/content.js +189 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/button/displayProperties.js +89 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/button/keyEquivalents.js +57 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/button/methods.js +46 -4
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/button/ui.js +91 -18
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/checkbox/methods.js +16 -32
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/checkbox/ui.js +29 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/content.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/deleteSelection.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/deselect.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/displayProperties.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/itemViewForContentIndex.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/layerIdFor.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/length.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/mouse.js +27 -5
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/nowShowing.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/reload.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/select.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/selectNextItem.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/selectPreviousItem.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/selection.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/ui_diagram.js +16 -10
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/date_field/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/date_field/ui.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/disclosure/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/disclosure/ui.js +40 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/grid/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/grid/ui.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/image_button/ui.js +52 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/list/render.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/list/rowDelegate.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/list/rowHeightForContentIndex.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/list/rowOffsetForContentIndex.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/list/ui_alternatingrows.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/list/ui_outline.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/list/ui_row_heights.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/list/ui_simple.js +5 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/list_item.js +129 -21
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/menu_item/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/menu_item/ui.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/progress/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/progress/ui.js +174 -43
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/radio/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/radio/ui.js +93 -8
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/scroll/integration.js +50 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/scroll/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/scroll/ui.js +14 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/scroller.js +29 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/segmented/methods.js +26 -83
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/segmented/ui.js +292 -61
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/select/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/select/ui.js +11 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/select_field/methods.js +32 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/select_field/ui.js +78 -8
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/separator.js +11 -4
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/source_list/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/source_list/ui.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/split/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/split/ui.js +11 -4
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/stacked/ui_comments.js +16 -9
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/static_content.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/tab/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/tab/ui.js +33 -29
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/toolbar/method.js +33 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/toolbar/ui.js +29 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/web/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/web/ui.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/well/ui.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/views/button.js +550 -231
- data/lib/frameworks/sproutcore/frameworks/desktop/views/checkbox.js +63 -55
- data/lib/frameworks/sproutcore/frameworks/desktop/views/collection.js +286 -187
- data/lib/frameworks/sproutcore/frameworks/desktop/views/date_field.js +77 -53
- data/lib/frameworks/sproutcore/frameworks/desktop/views/disclosure.js +39 -31
- data/lib/frameworks/sproutcore/frameworks/desktop/views/file.js +148 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/views/grid.js +43 -7
- data/lib/frameworks/sproutcore/frameworks/desktop/views/image_button.js +82 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/views/list.js +58 -36
- data/lib/frameworks/sproutcore/frameworks/desktop/views/list_item.js +668 -509
- data/lib/frameworks/sproutcore/frameworks/desktop/views/master_detail.js +313 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/views/menu_item.js +93 -54
- data/lib/frameworks/sproutcore/frameworks/desktop/views/menu_scroll.js +152 -38
- data/lib/frameworks/sproutcore/frameworks/desktop/views/navigation.js +261 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/views/navigation_bar.js +191 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/views/popup_button.js +35 -30
- data/lib/frameworks/sproutcore/frameworks/desktop/views/progress.js +131 -122
- data/lib/frameworks/sproutcore/frameworks/desktop/views/radio.js +208 -208
- data/lib/frameworks/sproutcore/frameworks/desktop/views/scene.js +24 -17
- data/lib/frameworks/sproutcore/frameworks/desktop/views/scroll.js +332 -135
- data/lib/frameworks/sproutcore/frameworks/desktop/views/scroller.js +184 -73
- data/lib/frameworks/sproutcore/frameworks/desktop/views/segment.js +193 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/views/segmented.js +829 -426
- data/lib/frameworks/sproutcore/frameworks/desktop/views/select.js +377 -143
- data/lib/frameworks/sproutcore/frameworks/desktop/views/select_field.js +96 -37
- data/lib/frameworks/sproutcore/frameworks/desktop/views/separator.js +26 -10
- data/lib/frameworks/sproutcore/frameworks/desktop/views/slider.js +52 -39
- data/lib/frameworks/sproutcore/frameworks/desktop/views/source_list.js +19 -5
- data/lib/frameworks/sproutcore/frameworks/desktop/views/source_list_group.js +15 -8
- data/lib/frameworks/sproutcore/frameworks/desktop/views/split.js +387 -271
- data/lib/frameworks/sproutcore/frameworks/desktop/views/split_divider.js +10 -9
- data/lib/frameworks/sproutcore/frameworks/desktop/views/stacked.js +15 -4
- data/lib/frameworks/sproutcore/frameworks/desktop/views/static_content.js +18 -4
- data/lib/frameworks/sproutcore/frameworks/desktop/views/tab.js +114 -12
- data/lib/frameworks/sproutcore/frameworks/desktop/views/thumb.js +14 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/views/toolbar.js +103 -14
- data/lib/frameworks/sproutcore/frameworks/desktop/views/web.js +36 -20
- data/lib/frameworks/sproutcore/frameworks/desktop/views/well.js +27 -31
- data/lib/frameworks/sproutcore/frameworks/desktop/views/workspace.js +285 -0
- data/lib/frameworks/sproutcore/frameworks/documentation/core.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/Buildfile +6 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/README.md +23 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/README +18 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/TODO +56 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/beautify.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/design.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/controllers/file.js +35 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/files.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/layout.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/controllers/library.js +194 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/page.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/property.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/property_editor.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/target.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/targets.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/view_configs.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/core.js +65 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/core_file.js +124 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/data_source.js +250 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/english.lproj/app_page.js +399 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/english.lproj/css/app-selector.css +107 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/english.lproj/css/button.css +314 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/english.lproj/css/dock.css +90 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/english.lproj/css/general.css +51 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/english.lproj/css/main-page.css +93 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/english.lproj/css/menu.css +49 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/english.lproj/css/modal.css +41 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/english.lproj/css/picker.css +195 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/search.css +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/text-field.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/english.lproj/dialogs.js +303 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500.eot +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500.otf +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500.woff +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500_italic.eot +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500_italic.otf +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500_italic.woff +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/app-selector/choose-app.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/app-selector/list-item-sel.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/active-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/active-m.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/active-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/regular-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/regular-m.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/regular-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/active-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/active-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/disabled-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/disabled-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/regular-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/regular-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-active-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-active-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-disabled-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-disabled-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/active-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/active-m.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/active-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-active-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-active-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-sel-active-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-sel-active-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-sel-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-sel-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/disabled-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/disabled-m.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/disabled-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/regular-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/regular-m.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/regular-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-active-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-active-m.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-active-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-disabled-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-disabled-m.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-disabled-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-m.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/active-m.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/disabled-m.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/regular-m.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/sel-active-m.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/sel-disabled-m.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/sel-m.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/active-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/active-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/disabled-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/disabled-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/regular-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/regular-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-active-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-active-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-disabled-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-disabled-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-r.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/actions-active.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/actions.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/inspector-active.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/inspector.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/library-active.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/library.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/projects-active.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/projects.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/run-active.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/run.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/save-active.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/save.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/logos/greenhouse-l.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/logos/greenhouse-s.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/logos/sproutcore.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/{designer → experimental/apps/greenhouse}/english.lproj/images/main-bg.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/bottom-left.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/bottom-right.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/bottom.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/close-active.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/close.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/left.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/pointer-bottom.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/pointer-left.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/pointer-right.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/pointer-top.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/right.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/search-active.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/search.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/top-left.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/top-right.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/top.png +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/toolbar-bg.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/english.lproj/inspectors.js +365 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/loading.rhtml +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/main_page.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/english.lproj/strings.js +93 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/fixtures/file.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/main.js +28 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/mixins/drop_down.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/models/design.js +26 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/models/dir.js +93 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/models/file.js +51 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/models/target.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/models/view_config.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/resources/test_page.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/states/inspector.js +152 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/states/library.js +142 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/states/main.js +283 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/states/modals.js +299 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/states/ready.js +235 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/controllers/design.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/controllers/designs.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/controllers/file.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/controllers/files.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/models/file.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/models/view_config.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/tests/views/list_item.js +16 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/tests/views/plist_item.js +20 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/theme.js +25 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/anchor.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/application_list_item.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/event_blocker.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/label_designer.js +0 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/list_item.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/views/plist_item.js +178 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/simple_button.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/views/tear_off_picker.js +56 -0
- data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/web.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/coders/design.js +22 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/coders/object.js +349 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/controllers/controllers.js +23 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/controllers/design.js +43 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/controllers/designs.js +139 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/controllers/page_design.js +172 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/controllers/page_files.js +28 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/core.js +28 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/css/css_rule.js +22 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/css/css_style.js +29 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/css/css_style_sheet.js +201 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/designers/button.js +23 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/designers/label.js +18 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/designers/object_designer.js +298 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/designers/tab.js +20 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/designers/text_field.js +17 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/designers/view_designer.js +1269 -0
- data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/css/designer.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/english.lproj/design_page.js +55 -0
- data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/high_light.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/controller.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/dock-bg.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/dock-item-bg.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/dock-item-divider.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/dock-item-sel-bg.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/dock-item-sel-divider.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/english.lproj/images/main-bg.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/page.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/pane.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/view.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/selection_handles.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/ext/binding.js +39 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/ext/object.js +28 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/ext/page.js +60 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/ext/view.js +29 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/mixins/button.js +13 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/mixins/snap_lines.js +227 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/tests/coders/page.js +54 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/tests/designers/view_designer.js +47 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/views/designer_drop_target.js +144 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/views/drawing.js +219 -0
- data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/views/high_light.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/views/page_item_view.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/views/selection_handles.js +78 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/device_motion/README.md +11 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/device_motion/device.js +215 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/device_motion/platform.js +67 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/polymorphism/README.md +46 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/polymorphism/models/record.js +112 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/polymorphism/tests/models/polymorphism/many.js +79 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/polymorphism/tests/models/polymorphism/simple.js +76 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/polymorphism/tests/models/polymorphism/single.js +67 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/mixins/split_child.js +229 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/mixins/split_thumb.js +236 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/render_delegates/split.js +18 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/render_delegates/split_divider.js +26 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/tests/children.js +100 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/tests/dividers.js +243 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/tests/methods.js +294 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/tests/split_child.js +135 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/tests/split_thumb.js +160 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/views/split.js +929 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/views/split_divider.js +40 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/views/thumb.js +26 -0
- data/lib/frameworks/sproutcore/frameworks/forms/english.lproj/default_styles.css +5 -0
- data/lib/frameworks/sproutcore/frameworks/forms/english.lproj/strings.js +15 -0
- data/lib/frameworks/sproutcore/frameworks/forms/mixins/edit_mode.js +48 -0
- data/lib/frameworks/sproutcore/frameworks/forms/mixins/emptiness.js +94 -0
- data/lib/frameworks/sproutcore/frameworks/forms/render_delegates/form.js +21 -0
- data/lib/frameworks/sproutcore/frameworks/forms/render_delegates/form_row.js +20 -0
- data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form.js +17 -0
- data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_checkbox_field.js +17 -0
- data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_field.js +17 -0
- data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_label.js +17 -0
- data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_radio_field.js +17 -0
- data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_row.js +17 -0
- data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_text_field.js +17 -0
- data/lib/frameworks/sproutcore/frameworks/forms/views/form.js +286 -0
- data/lib/frameworks/sproutcore/frameworks/forms/views/form_row.js +187 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/controllers/tree.js +52 -43
- data/lib/frameworks/sproutcore/frameworks/foundation/core.js +15 -142
- data/lib/frameworks/sproutcore/frameworks/foundation/debug/control_test_pane.js +29 -21
- data/lib/frameworks/sproutcore/frameworks/foundation/delegates/inline_text_field.js +90 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/benchmark.css +146 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/bootstrap.rhtml +4 -16
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/checkbox_view.css +5 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/images/favicon.ico +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/images/sproutcore.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/label.css +5 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/radio_view.css +7 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/text_field.css +4 -6
- data/lib/frameworks/sproutcore/frameworks/foundation/ext/string.js +89 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/gestures/pinch.js +119 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/gestures/swipe.js +234 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/gestures/tap.js +157 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/license.js +24 -26
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/auto_mixin.js +41 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/auto_resize.js +355 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/button.js +4 -350
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/collection_content.js +10 -8
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/content_display.js +8 -9
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/content_value_support.js +227 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/control.js +105 -200
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/editable.js +16 -15
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/flowed_layout.js +745 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/gestureable.js +214 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inline_editable.js +254 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inline_editor.js +188 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inline_editor_delegate.js +195 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inner_frame.js +194 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/static_layout.js +20 -21
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/tree_item_content.js +57 -53
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/validatable.js +18 -9
- data/lib/frameworks/sproutcore/frameworks/foundation/private/tree_item_observer.js +214 -203
- data/lib/frameworks/sproutcore/frameworks/foundation/render_delegates/canvas_image.js +110 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/render_delegates/container.js +18 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/render_delegates/helpers/sizing.js +174 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/render_delegates/image.js +99 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/render_delegates/label.js +119 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/render_delegates/render_delegate.js +386 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/system/benchmark.js +404 -191
- data/lib/frameworks/sproutcore/frameworks/foundation/system/chance.js +65 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/system/cookie.js +176 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/system/core_query.js +20 -2006
- data/lib/frameworks/sproutcore/frameworks/foundation/system/exception_handler.js +9 -3
- data/lib/frameworks/sproutcore/frameworks/foundation/system/gesture.js +363 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/system/image_queue.js +433 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/system/math.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/system/module.js +591 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/system/routes.js +123 -24
- data/lib/frameworks/sproutcore/frameworks/foundation/system/string.js +422 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/system/task_queue.js +19 -16
- data/lib/frameworks/sproutcore/frameworks/foundation/system/text_selection.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/system/user_defaults.js +91 -96
- data/lib/frameworks/sproutcore/frameworks/foundation/system/utils/colors.js +87 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/system/utils/misc.js +157 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/system/utils/range.js +71 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/system/utils/string_measurement.js +254 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tasks/preload_bundle.js +5 -5
- data/lib/frameworks/sproutcore/frameworks/foundation/tasks/task.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/controllers/tree/outline_case.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/controllers/tree/selection_support.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/debug/control_test_pane/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/debug/control_test_pane/ui.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/delegates/inline_text_field/inline_text_field.js +150 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/integration/creating_views.js +9 -4
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/content_display.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/content_value_support/content.js +168 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/control/displayProperties.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/editable/ui.js +44 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_editable/beginEditing.js +194 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_editable/commitEditing.js +150 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_editable/discardEditing.js +151 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_editor/beginEditing.js +114 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_editor/commitEditing.js +151 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_editor/discardEditing.js +152 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_text_field/api.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_text_field/beginEditing.js +13 -22
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_text_field/ui.js +64 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/staticLayout.js +8 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/validatable/ui.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/private/tree_item_observer/flat_case.js +59 -59
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/private/tree_item_observer/group_case.js +114 -114
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/private/tree_item_observer/outline_case.js +74 -74
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/render_delegates/render_delegate.js +78 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/cookie.js +182 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/core_query/setClass.js +19 -3
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/math.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/routes.js +30 -20
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/string.js +34 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/task_queue.js +8 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/user_defaults.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/utils/pointInElement.js +241 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/utils/range.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/validators/credit_card.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/validators/date.js +11 -13
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/validators/not_empty.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/validators/number.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/validators/password.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/validators/validator.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/container/methods.js +10 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/container/ui.js +76 -11
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/image/ui.js +499 -46
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/label/ui.js +32 -7
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/text_field/methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/text_field/nextValidKeyView.js +110 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/text_field/ui.js +87 -3
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/credit_card.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/date.js +39 -12
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/date_time.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/email.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/not_empty.js +6 -10
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/number.js +3 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/password.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/positive_integer.js +3 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/validator.js +5 -3
- data/lib/frameworks/sproutcore/frameworks/foundation/views/container.js +16 -14
- data/lib/frameworks/sproutcore/frameworks/foundation/views/field.js +23 -6
- data/lib/frameworks/sproutcore/frameworks/foundation/views/image.js +307 -105
- data/lib/frameworks/sproutcore/frameworks/foundation/views/inline_text_field.js +654 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/views/label.js +81 -195
- data/lib/frameworks/sproutcore/frameworks/foundation/views/text_field.js +287 -116
- data/lib/frameworks/sproutcore/frameworks/handlebars/handlebars.js +1435 -0
- data/lib/frameworks/sproutcore/frameworks/jquery/jquery-buffer.js +390 -0
- data/lib/frameworks/sproutcore/frameworks/jquery/jquery-buffered.js +210 -0
- data/lib/frameworks/sproutcore/frameworks/jquery/jquery-sc.js +12 -0
- data/lib/frameworks/sproutcore/frameworks/jquery/jquery.js +7179 -0
- data/lib/frameworks/sproutcore/frameworks/jquery/tests/set_class.js +40 -0
- data/lib/frameworks/sproutcore/frameworks/media/views/audio.js +10 -8
- data/lib/frameworks/sproutcore/frameworks/media/views/controls.js +4 -6
- data/lib/frameworks/sproutcore/frameworks/media/views/media_slider.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/media/views/mini_controls.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/media/views/simple_controls.js +4 -5
- data/lib/frameworks/sproutcore/frameworks/media/views/video.js +7 -7
- data/lib/frameworks/sproutcore/frameworks/mini/license.js +30 -28
- data/lib/frameworks/sproutcore/frameworks/qunit/README.md +24 -0
- data/lib/frameworks/sproutcore/frameworks/qunit/package.json +21 -0
- data/lib/frameworks/sproutcore/frameworks/qunit/qunit/qunit.css +215 -0
- data/lib/frameworks/sproutcore/frameworks/qunit/qunit/qunit.js +1442 -0
- data/lib/frameworks/sproutcore/frameworks/qunit/test/headless.html +24 -0
- data/lib/frameworks/sproutcore/frameworks/qunit/test/index.html +18 -0
- data/lib/frameworks/sproutcore/frameworks/qunit/test/logs.html +17 -0
- data/lib/frameworks/sproutcore/frameworks/qunit/test/logs.js +150 -0
- data/lib/frameworks/sproutcore/frameworks/qunit/test/same.js +1421 -0
- data/lib/frameworks/sproutcore/frameworks/qunit/test/test.js +314 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/core.js +232 -537
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array.js +14 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/base.js +163 -4
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/indexOf.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/insertAt.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/objectAt.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/popObject.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/pushObject.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/rangeObserver.js +74 -74
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/removeAt.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/removeObject.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/replace.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/shiftObject.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/unshiftObject.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/ext/array.js +92 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/ext/date.js +15 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/ext/function.js +189 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/ext/string.js +31 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/license.js +29 -28
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/array.js +577 -317
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/comparable.js +16 -13
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/copyable.js +25 -18
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/enumerable.js +351 -308
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/freezable.js +51 -52
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/observable.js +1149 -1001
- data/lib/frameworks/sproutcore/frameworks/runtime/private/chain_observer.js +85 -45
- data/lib/frameworks/sproutcore/frameworks/runtime/private/observer_queue.js +61 -55
- data/lib/frameworks/sproutcore/frameworks/runtime/private/observer_set.js +51 -107
- data/lib/frameworks/sproutcore/frameworks/runtime/private/property_chain.js +195 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/system/binding.js +361 -348
- data/lib/frameworks/sproutcore/frameworks/runtime/system/enumerator.js +24 -24
- data/lib/frameworks/sproutcore/frameworks/runtime/system/error.js +45 -40
- data/lib/frameworks/sproutcore/frameworks/runtime/system/function.js +76 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/system/index_set.js +275 -265
- data/lib/frameworks/sproutcore/frameworks/runtime/system/json.js +515 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/system/logger.js +1337 -204
- data/lib/frameworks/sproutcore/frameworks/runtime/system/object.js +312 -259
- data/lib/frameworks/sproutcore/frameworks/runtime/system/range_observer.js +89 -87
- data/lib/frameworks/sproutcore/frameworks/runtime/system/run_loop.js +119 -106
- data/lib/frameworks/sproutcore/frameworks/runtime/system/set.js +107 -101
- data/lib/frameworks/sproutcore/frameworks/runtime/system/string.js +60 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/IsEqual.js +23 -47
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/beget.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/clone.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/compare.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/console.js +5 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/guidFor.js +59 -126
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/inspect.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/isArray.js +21 -19
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/itemType.js +71 -33
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/keys.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/makeArray.js +21 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/objectForPropertyPath.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/tupleForPropertyPath.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/mixins/array.js +39 -15
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/mixins/comparable.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/mixins/enumerable/enumerable.js +623 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/mixins/enumerable/enumerable_observers.js +81 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/mixins/observable/chained.js +44 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/mixins/observable/observable.js +286 -98
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/mixins/observable/observersForKey.js +36 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/mixins/observable/propertyChanges.js +7 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/mixins/observable/registerDependentKeys.js +78 -2
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/mixins/propertyChanges.js +7 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/private/observer_queue/isObservingSuspended.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/binding.js +87 -8
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/error.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/add.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/addEach.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/clone.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/contains.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/create.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/indexAfter.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/indexBefore.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/intersects.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/max.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/min.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/rangeStartForIndex.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/remove.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/removeEach.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/without.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/json.js +21 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/logger.js +180 -92
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/object/base.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/object/bindings.js +11 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/object/concatenated_properties.js +77 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/object/enhance.js +196 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/observer_set.js +56 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/range_observer/create.js +12 -12
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/range_observer/destroy.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/range_observer/objectPropertyDidChange.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/range_observer/rangeDidChange.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/range_observer/update.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/run_loop.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/set.js +77 -45
- data/lib/frameworks/sproutcore/frameworks/statechart/core.js +4 -10
- data/lib/frameworks/sproutcore/frameworks/statechart/debug/monitor.js +155 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/system/state.js +1241 -97
- data/lib/frameworks/sproutcore/frameworks/statechart/system/statechart.js +1617 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/event_handling/advanced/respond_to_event.js +401 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/event_handling/advanced/without_concurrent_states.js +306 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/event_handling/basic/with_concurrent_states.js +183 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/event_handling/basic/without_concurrent_states.js +122 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/event_handling/responder/pane.js +89 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/event_handling/responder/responder_chain.js +109 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/event_handling/responder/root_responder.js +74 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state/initial_substate.js +67 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state/is_current_state.js +60 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state/namespacing.js +248 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state/plugin/mixin.js +68 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state/plugin/nesting.js +95 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state/state_observes.js +235 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/async/core.js +94 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/async/with_concurrent_states.js +123 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/async/without_concurrent_states.js +191 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/history_state/initial_substate/core.js +48 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/history_state/initial_substate/without_concurrent_states.js +218 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/history_state/standard/with_concurrent_states.js +88 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/history_state/standard/without_concurrent_states/context.js +191 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/history_state/standard/without_concurrent_states/core.js +200 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/standard/with_concurrent_states/advanced.js +239 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/standard/with_concurrent_states/basic.js +131 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/standard/with_concurrent_states/intermediate.js +120 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/standard/without_concurrent_states/context.js +144 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/standard/without_concurrent_states/core.js +281 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/transient/without_concurrent_states.js +162 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/statechart/create/assigned_root_state.js +76 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/statechart/create/unassigned_root_state.js +162 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/statechart/destroy.js +73 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/statechart/invoke_state_method.js +241 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/statechart/owner.js +236 -0
- data/lib/frameworks/sproutcore/frameworks/table/mixins/table_delegate.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/table/system/table_column.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/table/views/table.js +6 -5
- data/lib/frameworks/sproutcore/frameworks/table/views/table_cell.js +3 -2
- data/lib/frameworks/sproutcore/frameworks/table/views/table_head.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/table/views/table_header.js +6 -4
- data/lib/frameworks/sproutcore/frameworks/table/views/table_row.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/testing/core.js +4 -1
- data/lib/frameworks/sproutcore/frameworks/testing/extras.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/testing/system/dump.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/testing/system/equiv.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/testing/system/plan.js +32 -19
- data/lib/frameworks/sproutcore/frameworks/testing/system/runner.js +13 -3
- data/lib/frameworks/sproutcore/frameworks/testing/system/suite.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/testing/utils.js +1 -1
- data/lib/frameworks/sproutcore/lib/index.rhtml +54 -9
- data/lib/frameworks/sproutcore/license.js +32 -30
- data/lib/frameworks/sproutcore/themes/ace/designs/dark.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/dark.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/light.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/light.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/18px/active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/18px/normal_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/18px/selected_active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/18px/selected_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/active_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/normal_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/normal_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/normal_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_active_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/normal_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/normal_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/selected_active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/selected_active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/selected_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/selected_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/44px/active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/44px/normal_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/44px/selected_active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/44px/selected_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/active_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/normal_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/normal_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/normal_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_active_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_button_capsule.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/normal_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/normal_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/selected_active_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/selected_active_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/selected_button.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/selected_button_pointer.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/popup/active_select.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/popup/normal_select.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_checked.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_checked_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_mixed.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_mixed_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_unchecked.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_unchecked_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_checked.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_checked_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_mixed.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_mixed_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_unchecked.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_unchecked_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/collection/source-list/selection.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/disclosure/ace/disclosure_closed.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/disclosure/ace/disclosure_closed_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/disclosure/ace/disclosure_open.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/disclosure/ace/disclosure_open_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/checkmark.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/checkmark_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/down.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/menu.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/menu_item.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/up.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/panel/panel.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/panel/pointers.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/picker/popover/popover.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/picker/popover/popover_empty.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/picker/popover/popover_notoolbar.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/picker/popover/popover_pointers.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/picker/popover/popover_pointers_notoolbar.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/progress/ace/progress_view_content.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/progress/ace/progress_view_indeterminate_content.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/progress/ace/progress_view_track.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_mixed.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_mixed_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_selected.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_selected_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_unselected.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/horizontal/thumb.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/horizontal/track_and_arrows.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/horizontal/track_and_arrows_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/vertical/thumb.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/vertical/track_and_arrows.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/vertical/track_and_arrows_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/18px/segmented_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/18px/segmented_normal.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/18px/segmented_selected.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/18px/segmented_selected_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/24px/segmented_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/24px/segmented_normal.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/24px/segmented_selected.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/24px/segmented_selected_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/30px/segmented_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/30px/segmented_normal.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/30px/segmented_selected.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/30px/segmented_selected_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/44px/segmented_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/44px/segmented_normal.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/44px/segmented_selected.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/44px/segmented_selected_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/14px/knob.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/14px/knob_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/16px/knob.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/16px/knob_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/22px/knob.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/22px/knob_active.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/22px/track.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/track.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/psds/toolbar/toolbar.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch_handle.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch_handle.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch_off.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch_off.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch_on.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch_on.psd +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/body.css +13 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/18px/active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/18px/button.css +33 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/18px/normal_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/18px/selected_active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/18px/selected_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/24px/active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/24px/active_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/24px/active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/24px/button.css +102 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/24px/normal_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/24px/normal_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/24px/normal_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/24px/selected_active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/24px/selected_active_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/24px/selected_active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/24px/selected_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/24px/selected_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/24px/selected_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/30px/active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/30px/active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/30px/button.css +78 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/30px/normal_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/30px/normal_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/30px/selected_active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/30px/selected_active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/30px/selected_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/30px/selected_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/44px/active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/44px/button.css +39 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/44px/normal_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/44px/selected_active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/44px/selected_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/button.css +41 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/24px/active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/24px/active_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/24px/active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/24px/button.css +93 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/24px/normal_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/24px/normal_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/24px/normal_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/24px/selected_active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/24px/selected_active_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/24px/selected_active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/24px/selected_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/24px/selected_button_capsule.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/24px/selected_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/30px/active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/30px/active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/30px/button.css +72 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/30px/normal_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/30px/normal_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/30px/selected_active_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/30px/selected_active_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/30px/selected_button.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/30px/selected_button_pointer.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/button.css +17 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/button.js +5 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/popup/active_select.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/popup/normal_select.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/popup/select.css +21 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/14px/checkbox.css +40 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/14px/checkbox_checked.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/14px/checkbox_checked_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/14px/checkbox_mixed.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/14px/checkbox_mixed_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/14px/checkbox_unchecked.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/14px/checkbox_unchecked_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/16px/checkbox.css +40 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/16px/checkbox_checked.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/16px/checkbox_checked_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/16px/checkbox_mixed.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/16px/checkbox_mixed_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/16px/checkbox_unchecked.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/16px/checkbox_unchecked_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/checkbox.css +7 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/collection/normal/list.css +4 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/collection/normal/list_item.css +17 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/collection/source-list/selection.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/collection/source-list/source-list.js +3 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/collection/source-list/source_list_view.css +36 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/disclosure/ace/disclosure.css +24 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/disclosure/ace/disclosure_closed.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/disclosure/ace/disclosure_closed_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/disclosure/ace/disclosure_open.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/disclosure/ace/disclosure_open_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/imagebutton/ace/imagebutton.css +11 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/loading.css +50 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/master-detail/master-detail.css +27 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/menu/checkmark.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/menu/checkmark_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/menu/down.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/menu/menu.css +79 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/menu/menu.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/menu/menu_item.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/menu/up.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/pane/pane.css +3 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/panel/panel.css +13 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/panel/panel.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/picker/ace/panel.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/picker/ace/picker.css +41 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/picker/ace/picker.js +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/picker/ace/pointers.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/picker/popover/picker.js +32 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/picker/popover/popover.css +111 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/picker/popover/popover.js +12 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/picker/popover/popover.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/picker/popover/popover_empty.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/picker/popover/popover_notoolbar.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/picker/popover/popover_pointers.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/picker/popover/popover_pointers_notoolbar.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/picker/popover/workspace.js +28 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/progress/ace/progress.css +27 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/progress/ace/progress_view_content.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/progress/ace/progress_view_track.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/radio/radio.css +57 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/radio/radio_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/radio/radio_mixed.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/radio/radio_mixed_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/radio/radio_selected.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/radio/radio_selected_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/radio/radio_unselected.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/scroller/horizontal/horizontal.css +78 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/scroller/horizontal/horizontal_touch.css +91 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/scroller/horizontal/thumb.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/scroller/horizontal/track_and_arrows.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/scroller/horizontal/track_and_arrows_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/scroller/vertical/thumb.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/scroller/vertical/track_and_arrows.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/scroller/vertical/track_and_arrows_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/scroller/vertical/vertical.css +80 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/scroller/vertical/vertical_touch.css +92 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/18px/segmented.css +91 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/18px/segmented_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/18px/segmented_normal.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/18px/segmented_selected.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/18px/segmented_selected_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/24px/segmented.css +91 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/24px/segmented_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/24px/segmented_normal.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/24px/segmented_selected.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/24px/segmented_selected_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/30px/segmented.css +91 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/30px/segmented_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/30px/segmented_normal.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/30px/segmented_selected.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/30px/segmented_selected_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/44px/segmented.css +95 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/44px/segmented_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/44px/segmented_normal.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/44px/segmented_selected.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/44px/segmented_selected_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/segmented.css +83 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/14px/knob.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/14px/knob_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/14px/slider.css +27 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/16px/knob.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/16px/knob_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/16px/slider.css +27 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/22px/knob.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/22px/knob_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/22px/slider.css +27 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/22px/track.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/slider.css +8 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/track.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/split/split.css +31 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/tab/tab.css +3 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/toolbar/toolbar.css +8 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/toolbar/toolbar.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/well/well.css +7 -0
- data/lib/frameworks/sproutcore/themes/ace/theme.js +30 -0
- data/lib/frameworks/sproutcore/themes/empty_theme/theme.js +16 -0
- data/lib/frameworks/sproutcore/themes/iphone_theme/english.lproj/strings.js +1 -1
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/Panel.drawit/Data +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/Panel.drawit/QuickLook/Preview.jpg +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/Panel.drawit/QuickLook/Thumbnail.jpg +0 -0
- data/lib/frameworks/sproutcore/themes/standard_theme/Source/SproutCore Theme Buttons.psd b/data/lib/frameworks/sproutcore/themes/legacy_theme/Source/SproutCore Theme → Buttons.psd +0 -0
- data/lib/frameworks/sproutcore/themes/standard_theme/Source/ToolbarView Pattern.drawit/Data b/data/lib/frameworks/sproutcore/themes/legacy_theme/Source/ToolbarView → Pattern.drawit/Data +0 -0
- data/lib/frameworks/sproutcore/themes/standard_theme/Source/ToolbarView Pattern.drawit/QuickLook/Preview.jpg b/data/lib/frameworks/sproutcore/themes/legacy_theme/Source/ToolbarView → Pattern.drawit/QuickLook/Preview.jpg +0 -0
- data/lib/frameworks/sproutcore/themes/standard_theme/Source/ToolbarView Pattern.drawit/QuickLook/Thumbnail.jpg b/data/lib/frameworks/sproutcore/themes/legacy_theme/Source/ToolbarView → Pattern.drawit/QuickLook/Thumbnail.jpg +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/10.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/100.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/102.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/110.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/120.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/127.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/18.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/19.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/2.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/24.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/26.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/27.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/28.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/29.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/30.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/31.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/33.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/37.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/41.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/16/99.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/10.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/100.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/102.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/110.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/120.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/127.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/18.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/19.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/2.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/24.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/26.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/27.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/28.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/29.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/30.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/31.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/33.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/37.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/41.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/24/99.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/10.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/100.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/102.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/110.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/120.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/127.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/18.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/19.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/2.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/24.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/26.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/27.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/28.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/29.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/30.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/31.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/33.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/37.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/41.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/32/99.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/48/10.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/48/18.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/48/19.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/icons/48/2.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/panel-sprite-x.drawit/Data +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/panel-sprite-x.drawit/QuickLook/Preview.jpg +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/panel-sprite-x.drawit/QuickLook/Thumbnail.jpg +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/panel-sprite-y.drawit/Data +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/panel-sprite-y.drawit/QuickLook/Preview.jpg +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/panel-sprite-y.drawit/QuickLook/Thumbnail.jpg +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/sc-theme-repeat-x-2.psd +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/sc-theme-repeat-x.psd +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/sc-theme-sprite.psd +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/sc-theme-ysprite.psd +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/shared-icons.psd +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/sproutcore-logo.psd +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/Source/sticky-note.psd +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/button.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/checkbox.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/collection.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/core.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/disclosure.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/images/icons/mini_222222.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/images/icons/mini_454545.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/images/icons/mini_888888.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/images/icons/mini_ffffff.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/images/panels/sprite-x.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/images/panels/sprite-y.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/images/sc-scroller-repeat-x.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/images/sc-scroller-repeat-y.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/images/sc-scroller-sprite.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/images/sc-theme-repeat-x.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/images/sc-theme-ysprite.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/images/sc-toolbar-view.png +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/label.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/list_item.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/menu.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/menu_item_view.css +0 -0
- data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/pane.css +18 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/panel.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/picker.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/progress.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/radio.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/scroller.css +0 -0
- data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/segmented.css +270 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/slider.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/split_view.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/tab.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/table.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/text_field.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/toolbar.css +0 -0
- data/lib/frameworks/sproutcore/themes/{standard_theme → legacy_theme}/english.lproj/well.css +0 -0
- data/lib/frameworks/sproutcore/themes/legacy_theme/render_delegates/button.js +89 -0
- data/lib/frameworks/sproutcore/themes/legacy_theme/render_delegates/panel.js +28 -0
- data/lib/frameworks/sproutcore/themes/legacy_theme/render_delegates/progress.js +194 -0
- data/lib/frameworks/sproutcore/themes/legacy_theme/render_delegates/slider.js +67 -0
- data/lib/frameworks/sproutcore/themes/legacy_theme/render_delegates/well.js +27 -0
- data/lib/frameworks/sproutcore/themes/legacy_theme/theme.js +13 -0
- data/lib/gen/app/templates/apps/@target_name@/Buildfile +14 -0
- data/lib/gen/app/templates/apps/@target_name@/theme.js +27 -0
- data/lib/gen/html_app/Buildfile +36 -0
- data/lib/gen/html_app/README +1 -0
- data/lib/gen/html_app/USAGE +15 -0
- data/lib/gen/html_app/templates/apps/@target_name@/@target_name@.js +14 -0
- data/lib/gen/html_app/templates/apps/@target_name@/resources/images/.gitkeep +0 -0
- data/lib/gen/html_app/templates/apps/@target_name@/resources/stylesheets/@target_name@.css +4 -0
- data/lib/gen/html_app/templates/apps/@target_name@/resources/templates/@target_name@.handlebars +1 -0
- data/lib/gen/html_project/Buildfile +45 -0
- data/lib/gen/html_project/INIT +3 -0
- data/lib/gen/html_project/README +1 -0
- data/lib/gen/html_project/USAGE +2 -0
- data/lib/gen/html_project/templates/@filename@/Buildfile +8 -0
- data/lib/gen/html_project/templates/@filename@/README +7 -0
- data/lib/gen/project/templates/@filename@/Buildfile +7 -2
- data/lib/gen/theme/templates/themes/@target_name@/Buildfile +3 -0
- data/lib/gen/theme/templates/themes/@target_name@/theme.js +23 -0
- data/lib/sproutcore.rb +11 -2
- data/lib/sproutcore/builders.rb +4 -2
- data/lib/sproutcore/builders/base.rb +10 -3
- data/lib/sproutcore/builders/chance_file.rb +78 -0
- data/lib/sproutcore/builders/combine.rb +6 -5
- data/lib/sproutcore/builders/handlebars.rb +30 -0
- data/lib/sproutcore/builders/html.rb +2 -0
- data/lib/sproutcore/builders/javascript.rb +15 -2
- data/lib/sproutcore/builders/minify.rb +14 -25
- data/lib/sproutcore/builders/module.rb +74 -0
- data/lib/sproutcore/builders/string_wrapper.rb +41 -0
- data/lib/sproutcore/buildfile.rb +17 -17
- data/lib/sproutcore/buildfile/task.rb +4 -12
- data/lib/sproutcore/buildfile/task_manager.rb +13 -4
- data/lib/sproutcore/helpers.rb +1 -1
- data/lib/sproutcore/helpers/entry_sorter.rb +5 -9
- data/lib/sproutcore/helpers/minifier.rb +110 -0
- data/lib/sproutcore/helpers/static_helper.rb +105 -39
- data/lib/sproutcore/models/generator.rb +16 -0
- data/lib/sproutcore/models/manifest.rb +3 -3
- data/lib/sproutcore/models/manifest_entry.rb +10 -3
- data/lib/sproutcore/models/target.rb +146 -34
- data/lib/sproutcore/rack/dev.rb +3 -3
- data/lib/sproutcore/rack/proxy.rb +1 -1
- data/lib/sproutcore/tools.rb +53 -5
- data/lib/sproutcore/tools/build.rb +10 -16
- data/lib/sproutcore/tools/docs.rb +1 -1
- data/lib/sproutcore/tools/gen.rb +1 -1
- data/lib/sproutcore/tools/init.rb +26 -10
- data/lib/sproutcore/tools/server.rb +9 -1
- data/lib/sproutcore/version.rb +1 -0
- data/spec/buildtasks/manifest/prepare_build_tasks/chance_2x_spec.rb +100 -0
- data/spec/buildtasks/manifest/prepare_build_tasks/chance_spec.rb +104 -0
- data/spec/buildtasks/manifest/prepare_build_tasks/combine_spec.rb +86 -9
- data/spec/buildtasks/manifest/prepare_build_tasks/css_spec.rb +1 -1
- data/spec/buildtasks/manifest/prepare_build_tasks/handlebars_spec.rb +39 -0
- data/spec/buildtasks/manifest/prepare_build_tasks/minify_spec.rb +1 -1
- data/spec/buildtasks/manifest/prepare_build_tasks/module_info_spec.rb +96 -0
- data/spec/buildtasks/manifest/prepare_build_tasks/module_spec.rb +83 -0
- data/spec/buildtasks/manifest/prepare_build_tasks/packed_2x_indirect_spec.rb +191 -0
- data/spec/buildtasks/manifest/prepare_build_tasks/packed_2x_spec.rb +185 -0
- data/spec/buildtasks/manifest/prepare_build_tasks/packed_spec.rb +46 -11
- data/spec/buildtasks/manifest/spec_helper.rb +4 -0
- data/spec/fixtures/builder_tests/Buildfile +11 -9
- data/spec/fixtures/builder_tests/apps/chance_test/Buildfile +14 -0
- data/spec/fixtures/builder_tests/apps/chance_test/core.js +27 -0
- data/spec/fixtures/builder_tests/apps/chance_test/main.js +30 -0
- data/spec/fixtures/builder_tests/apps/chance_test/resources/demo.css +6 -0
- data/spec/fixtures/builder_tests/apps/chance_test/resources/force@2x.png +0 -0
- data/spec/fixtures/builder_tests/apps/chance_test/resources/last_file.css +7 -0
- data/spec/fixtures/builder_tests/apps/chance_test/resources/loading.rhtml +9 -0
- data/spec/fixtures/builder_tests/apps/chance_test/resources/main_page.js +24 -0
- data/spec/fixtures/builder_tests/apps/chance_test/resources/z_first_file.css +6 -0
- data/spec/fixtures/builder_tests/apps/chance_test/theme.js +27 -0
- data/spec/fixtures/builder_tests/apps/handlebars_test/template.handlebars +5 -0
- data/spec/fixtures/builder_tests/apps/module_test/module.js +1 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/deferred_module/english.lproj/req_style_2.css +0 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/deferred_module/english.lproj/test.rhtml +1 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/deferred_module/javascript.js +1 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/deferred_module/lib/alt_layout.rhtml +0 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/deferred_module/req_js_2.js +0 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/dynamic_req_target_1/dynamic_req_js_1.js +0 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/dynamic_req_target_1/english.lproj/dynamic_req_style_1.css +0 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/inlined_module/README +0 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/required_target/english.lproj/req_style_1.css +0 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/required_target/english.lproj/strings.js +4 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/required_target/english.lproj/test.rhtml +1 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/required_target/req_js_1.js +0 -0
- data/spec/fixtures/helper_tests/apps/minifier_test/core.js +8 -0
- data/spec/fixtures/real_world/Buildfile +11 -1
- data/spec/fixtures/real_world/apps/account/modules/preferences/README +0 -0
- data/spec/fixtures/real_world/apps/calendar/modules/preferences/README +0 -0
- data/spec/fixtures/real_world/apps/contacts/modules/preferences/README +0 -0
- data/spec/fixtures/real_world/apps/contacts/modules/printing/README +0 -0
- data/spec/fixtures/real_world/apps/mail/modules/preferences/README +0 -0
- data/spec/fixtures/real_world/apps/mail/modules/printing/README +0 -0
- data/spec/fixtures/real_world/apps/photos/modules/email/README +0 -0
- data/spec/fixtures/real_world/apps/photos/modules/preferences/README +0 -0
- data/spec/fixtures/real_world/frameworks/no_2x/resources/test.css +1 -0
- data/spec/fixtures/real_world/frameworks/no_2x/resources/test.png +0 -0
- data/spec/fixtures/real_world/frameworks/sproutcore/english.lproj/templates/demo.handlebars +4 -0
- data/spec/fixtures/real_world/frameworks/sproutcore/resources/force@2x.png +0 -0
- data/spec/lib/builders/chance_file_spec.rb +44 -0
- data/spec/lib/builders/handlebars_spec.rb +29 -0
- data/spec/lib/builders/module_spec.rb +133 -0
- data/spec/lib/builders/strings_spec.rb +1 -0
- data/spec/lib/helpers/minifier.rb +31 -0
- data/spec/lib/models/project/find_targets_for_spec.rb +1 -1
- data/sproutcore.gemspec +11 -4
- data/vendor/chance/.gitignore +5 -0
- data/vendor/chance/Gemfile +4 -0
- data/vendor/chance/Rakefile +2 -0
- data/vendor/chance/bin/chance +46 -0
- data/vendor/chance/chance.gemspec +28 -0
- data/vendor/chance/lib/chance.rb +156 -0
- data/vendor/chance/lib/chance/instance.rb +330 -0
- data/vendor/chance/lib/chance/instance/data_url.rb +85 -0
- data/vendor/chance/lib/chance/instance/javascript.rb +19 -0
- data/vendor/chance/lib/chance/instance/slicing.rb +181 -0
- data/vendor/chance/lib/chance/instance/spriting.rb +311 -0
- data/vendor/chance/lib/chance/parser.rb +835 -0
- data/vendor/chance/lib/chance/perf.rb +17 -0
- data/vendor/chance/lib/chance/version.rb +3 -0
- data/vendor/chance/lib/tester/test.rb +108 -0
- data/vendor/chance/lib/tester/test_runner.rb +27 -0
- data/vendor/chance/test/case/abc.png +0 -0
- data/vendor/chance/test/case/more/abc.png +0 -0
- data/vendor/chance/test/case/more/another.css +4 -0
- data/vendor/chance/test/case/test1.css +22 -0
- data/vendor/chance/test/case/test2.css +6 -0
- data/vendor/chance/tests/parser/basic/input/test.css +4 -0
- data/vendor/chance/tests/parser/basic/output/test.parsed.css +5 -0
- data/vendor/sproutcore/SCCompiler.jar +0 -0
- data/vendor/sproutcore/lib/args4j-2.0.12.jar +0 -0
- data/vendor/sproutcore/lib/htmlcompressor-0.9.3.jar +0 -0
- data/{lib/sproutcore/vendor/yui-compressor → vendor/sproutcore/lib}/yuicompressor-2.4.2.jar +0 -0
- data/vendor/sproutcore/src/SCCompiler/build.xml +74 -0
- data/vendor/sproutcore/src/SCCompiler/lib/args4j-2.0.12.jar +0 -0
- data/vendor/sproutcore/src/SCCompiler/lib/htmlcompressor-0.9.3.jar +0 -0
- data/vendor/sproutcore/src/SCCompiler/lib/yuicompressor-2.4.2.jar +0 -0
- data/vendor/sproutcore/src/SCCompiler/lib/yuicompressor-2.4.4.jar +0 -0
- data/vendor/sproutcore/src/SCCompiler/manifest.mf +3 -0
- data/vendor/sproutcore/src/SCCompiler/nbproject/build-impl.xml +894 -0
- data/vendor/sproutcore/src/SCCompiler/nbproject/genfiles.properties +8 -0
- data/vendor/sproutcore/src/SCCompiler/nbproject/private/config.properties +0 -0
- data/vendor/sproutcore/src/SCCompiler/nbproject/private/private.properties +10 -0
- data/vendor/sproutcore/src/SCCompiler/nbproject/private/private.xml +4 -0
- data/vendor/sproutcore/src/SCCompiler/nbproject/project.properties +90 -0
- data/vendor/sproutcore/src/SCCompiler/nbproject/project.xml +15 -0
- data/vendor/sproutcore/src/SCCompiler/src/com/sproutcore/Main.java +348 -0
- metadata +1236 -560
- data/lib/frameworks/sproutcore/CHANGELOG +0 -93
- data/lib/frameworks/sproutcore/CHANGELOG-1.4.md +0 -170
- data/lib/frameworks/sproutcore/apps/docs/core.js +0 -27
- data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/QuickLook/Preview.pdf +0 -0
- data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/QuickLook/Thumbnail.tiff +0 -0
- data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/data.plist +0 -14378
- data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/image10.png +0 -0
- data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/image14.png +0 -0
- data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/image9.tiff +0 -0
- data/lib/frameworks/sproutcore/apps/docs/english.lproj/loading.rhtml +0 -9
- data/lib/frameworks/sproutcore/apps/docs/english.lproj/main_page.js +0 -22
- data/lib/frameworks/sproutcore/apps/docs/english.lproj/strings.js +0 -15
- data/lib/frameworks/sproutcore/apps/docs/main.js +0 -30
- data/lib/frameworks/sproutcore/apps/greenhouse/README +0 -25
- data/lib/frameworks/sproutcore/apps/greenhouse/TODO +0 -72
- data/lib/frameworks/sproutcore/apps/greenhouse/controllers/file.js +0 -75
- data/lib/frameworks/sproutcore/apps/greenhouse/controllers/library.js +0 -201
- data/lib/frameworks/sproutcore/apps/greenhouse/core.js +0 -67
- data/lib/frameworks/sproutcore/apps/greenhouse/core_file.js +0 -124
- data/lib/frameworks/sproutcore/apps/greenhouse/data_source.js +0 -250
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/app_page.js +0 -377
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/css/app-selector.css +0 -111
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/css/button.css +0 -310
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/css/dock.css +0 -85
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/css/general.css +0 -52
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/css/main-page.css +0 -120
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/css/menu.css +0 -52
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/css/modal.css +0 -40
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/css/picker.css +0 -188
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/css/tabbed.css +0 -68
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/dialogs.js +0 -302
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/inspectors.js +0 -365
- data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/strings.js +0 -87
- data/lib/frameworks/sproutcore/apps/greenhouse/main.js +0 -28
- data/lib/frameworks/sproutcore/apps/greenhouse/models/design.js +0 -22
- data/lib/frameworks/sproutcore/apps/greenhouse/models/dir.js +0 -92
- data/lib/frameworks/sproutcore/apps/greenhouse/models/file.js +0 -51
- data/lib/frameworks/sproutcore/apps/greenhouse/states/inspector.js +0 -144
- data/lib/frameworks/sproutcore/apps/greenhouse/states/library.js +0 -133
- data/lib/frameworks/sproutcore/apps/greenhouse/states/main.js +0 -224
- data/lib/frameworks/sproutcore/apps/greenhouse/states/modals.js +0 -291
- data/lib/frameworks/sproutcore/apps/greenhouse/states/ready.js +0 -197
- data/lib/frameworks/sproutcore/apps/greenhouse/tests/views/list_item.js +0 -15
- data/lib/frameworks/sproutcore/apps/greenhouse/views/plist_item.js +0 -39
- data/lib/frameworks/sproutcore/apps/greenhouse/views/tear_off_picker.js +0 -56
- data/lib/frameworks/sproutcore/design/TestRunner Design.graffle/image11.png +0 -0
- data/lib/frameworks/sproutcore/design/TestRunner Design.graffle/image13.png +0 -0
- data/lib/frameworks/sproutcore/design/TestRunner Design.graffle/image8.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/nested_records/parentless.js +0 -134
- data/lib/frameworks/sproutcore/frameworks/datejs/core.js +0 -865
- data/lib/frameworks/sproutcore/frameworks/datejs/english.lproj/en-US.js +0 -186
- data/lib/frameworks/sproutcore/frameworks/datejs/extras.js +0 -332
- data/lib/frameworks/sproutcore/frameworks/datejs/license.js +0 -25
- data/lib/frameworks/sproutcore/frameworks/datejs/parser.js +0 -1116
- data/lib/frameworks/sproutcore/frameworks/datejs/spanish.lproj/es-CO.js +0 -186
- data/lib/frameworks/sproutcore/frameworks/datejs/sugarpak.js +0 -475
- data/lib/frameworks/sproutcore/frameworks/datejs/time.js +0 -269
- data/lib/frameworks/sproutcore/frameworks/datejs/validators/datejs.js +0 -34
- data/lib/frameworks/sproutcore/frameworks/designer/coders/design.js +0 -20
- data/lib/frameworks/sproutcore/frameworks/designer/coders/localization.js +0 -19
- data/lib/frameworks/sproutcore/frameworks/designer/coders/object.js +0 -347
- data/lib/frameworks/sproutcore/frameworks/designer/controllers/controllers.js +0 -16
- data/lib/frameworks/sproutcore/frameworks/designer/controllers/design.js +0 -37
- data/lib/frameworks/sproutcore/frameworks/designer/controllers/designs.js +0 -134
- data/lib/frameworks/sproutcore/frameworks/designer/controllers/page_design.js +0 -170
- data/lib/frameworks/sproutcore/frameworks/designer/controllers/page_files.js +0 -22
- data/lib/frameworks/sproutcore/frameworks/designer/core.js +0 -26
- data/lib/frameworks/sproutcore/frameworks/designer/css/css_rule.js +0 -22
- data/lib/frameworks/sproutcore/frameworks/designer/css/css_style.js +0 -29
- data/lib/frameworks/sproutcore/frameworks/designer/css/css_style_sheet.js +0 -201
- data/lib/frameworks/sproutcore/frameworks/designer/designers/button.js +0 -21
- data/lib/frameworks/sproutcore/frameworks/designer/designers/label.js +0 -16
- data/lib/frameworks/sproutcore/frameworks/designer/designers/object_designer.js +0 -296
- data/lib/frameworks/sproutcore/frameworks/designer/designers/tab.js +0 -18
- data/lib/frameworks/sproutcore/frameworks/designer/designers/text_field.js +0 -15
- data/lib/frameworks/sproutcore/frameworks/designer/designers/view_designer.js +0 -1259
- data/lib/frameworks/sproutcore/frameworks/designer/english.lproj/design_page.js +0 -55
- data/lib/frameworks/sproutcore/frameworks/designer/ext/object.js +0 -26
- data/lib/frameworks/sproutcore/frameworks/designer/ext/page.js +0 -86
- data/lib/frameworks/sproutcore/frameworks/designer/ext/view.js +0 -54
- data/lib/frameworks/sproutcore/frameworks/designer/mixins/button.js +0 -11
- data/lib/frameworks/sproutcore/frameworks/designer/mixins/snap_lines.js +0 -221
- data/lib/frameworks/sproutcore/frameworks/designer/views/designer_drop_target.js +0 -138
- data/lib/frameworks/sproutcore/frameworks/designer/views/drawing.js +0 -219
- data/lib/frameworks/sproutcore/frameworks/designer/views/selection_handles.js +0 -78
- data/lib/frameworks/sproutcore/frameworks/foundation/controllers/array.js +0 -518
- data/lib/frameworks/sproutcore/frameworks/foundation/controllers/controller.js +0 -44
- data/lib/frameworks/sproutcore/frameworks/foundation/controllers/object.js +0 -342
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/core.css +0 -474
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/strings.js +0 -15
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/view.css +0 -57
- data/lib/frameworks/sproutcore/frameworks/foundation/ext/object.js +0 -83
- data/lib/frameworks/sproutcore/frameworks/foundation/ext/run_loop.js +0 -162
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inline_text_field.js +0 -585
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/responder_context.js +0 -269
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/selection_support.js +0 -250
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/string.js +0 -543
- data/lib/frameworks/sproutcore/frameworks/foundation/panes/main.js +0 -51
- data/lib/frameworks/sproutcore/frameworks/foundation/panes/pane.js +0 -848
- data/lib/frameworks/sproutcore/frameworks/foundation/protocols/inline_editor_delegate.js +0 -84
- data/lib/frameworks/sproutcore/frameworks/foundation/system/application.js +0 -37
- data/lib/frameworks/sproutcore/frameworks/foundation/system/browser.js +0 -59
- data/lib/frameworks/sproutcore/frameworks/foundation/system/builder.js +0 -210
- data/lib/frameworks/sproutcore/frameworks/foundation/system/bundle.js +0 -337
- data/lib/frameworks/sproutcore/frameworks/foundation/system/cursor.js +0 -131
- data/lib/frameworks/sproutcore/frameworks/foundation/system/datetime.js +0 -1140
- data/lib/frameworks/sproutcore/frameworks/foundation/system/device.js +0 -143
- data/lib/frameworks/sproutcore/frameworks/foundation/system/event.js +0 -894
- data/lib/frameworks/sproutcore/frameworks/foundation/system/image_cache.js +0 -433
- data/lib/frameworks/sproutcore/frameworks/foundation/system/json.js +0 -515
- data/lib/frameworks/sproutcore/frameworks/foundation/system/locale.js +0 -293
- data/lib/frameworks/sproutcore/frameworks/foundation/system/page.js +0 -108
- data/lib/frameworks/sproutcore/frameworks/foundation/system/platform.js +0 -298
- data/lib/frameworks/sproutcore/frameworks/foundation/system/ready.js +0 -197
- data/lib/frameworks/sproutcore/frameworks/foundation/system/render_context.js +0 -988
- data/lib/frameworks/sproutcore/frameworks/foundation/system/request.js +0 -599
- data/lib/frameworks/sproutcore/frameworks/foundation/system/responder.js +0 -124
- data/lib/frameworks/sproutcore/frameworks/foundation/system/response.js +0 -538
- data/lib/frameworks/sproutcore/frameworks/foundation/system/root_responder.js +0 -2068
- data/lib/frameworks/sproutcore/frameworks/foundation/system/time.js +0 -473
- data/lib/frameworks/sproutcore/frameworks/foundation/system/timer.js +0 -551
- data/lib/frameworks/sproutcore/frameworks/foundation/system/utils.js +0 -710
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/controllers/array/array_case.js +0 -218
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/controllers/array/enum_case.js +0 -206
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/controllers/array/null_case.js +0 -64
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/controllers/array/selection_support.js +0 -318
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/controllers/array/single_case.js +0 -136
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/controllers/object/empty_case.js +0 -82
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/controllers/object/multiple_case.js +0 -111
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/controllers/object/single_case.js +0 -193
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/controllers/object/single_enumerable_case.js +0 -265
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/button/content.js +0 -195
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/button/displayProperties.js +0 -89
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/button/keyEquivalents.js +0 -57
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/button/ui.js +0 -68
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/control/content.js +0 -168
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/responder_context.js +0 -75
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/string.js +0 -83
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/builder.js +0 -42
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/core_query/jquery_core.js +0 -1334
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/core_query/jquery_dimensions.js +0 -387
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/core_query/jquery_selector.js +0 -405
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/core_query/within.js +0 -66
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/datetime.js +0 -382
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/json.js +0 -14
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/locale.js +0 -134
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/begin.js +0 -47
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/element.js +0 -44
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/end.js +0 -124
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/get.js +0 -51
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/helpers_attr.js +0 -50
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/helpers_basic.js +0 -28
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/helpers_className.js +0 -179
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/helpers_style.js +0 -101
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/init.js +0 -55
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/join.js +0 -28
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/push_text.js +0 -74
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/tag.js +0 -46
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/update.js +0 -218
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/request.js +0 -223
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/root_responder/makeKeyPane.js +0 -124
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/root_responder/makeMainPane.js +0 -68
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/root_responder/makeMenuPane.js +0 -48
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/root_responder/root_responder.js +0 -101
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/root_responder/targetForAction.js +0 -251
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/timer/invalidate.js +0 -38
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/timer/invokeLater.js +0 -201
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/timer/isPaused.js +0 -71
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/timer/performAction.js +0 -69
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/timer/schedule.js +0 -170
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/utils/normalizeURL.js +0 -18
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/utils/rect.js +0 -99
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/main_pane.js +0 -31
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/pane/append_remove.js +0 -124
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/pane/firstResponder.js +0 -148
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/pane/keyPane.js +0 -133
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/pane/layout.js +0 -31
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/pane/sendEvent.js +0 -206
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/clippingFrame.js +0 -133
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/convertFrames.js +0 -246
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/convertLayouts.js +0 -145
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/createChildViews.js +0 -122
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/createLayer.js +0 -97
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/destroyLayer.js +0 -83
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/didAppendToDocument.js +0 -48
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/findLayerInParentLayer.js +0 -50
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/init.js +0 -50
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/insertBefore.js +0 -200
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/isVisible.js +0 -51
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/isVisibleInWindow.js +0 -116
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/layer.js +0 -150
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/layoutChildViews.js +0 -162
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/layoutDidChange.js +0 -127
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/layoutStyle.js +0 -531
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/nextValidKeyView.js +0 -110
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/parentViewDidChange.js +0 -67
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/prepareContext.js +0 -180
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/removeChild.js +0 -189
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/render.js +0 -83
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/replaceChild.js +0 -29
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/updateLayer.js +0 -146
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/updateLayerLocation.js +0 -194
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/viewDidResize.js +0 -202
- data/lib/frameworks/sproutcore/frameworks/foundation/views/view.js +0 -3313
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/delegate_support.js +0 -110
- data/lib/frameworks/sproutcore/frameworks/runtime/protocols/observable_protocol.js +0 -40
- data/lib/frameworks/sproutcore/frameworks/runtime/protocols/sparse_array_delegate.js +0 -131
- data/lib/frameworks/sproutcore/frameworks/runtime/system/cookie.js +0 -160
- data/lib/frameworks/sproutcore/frameworks/runtime/system/selection_set.js +0 -697
- data/lib/frameworks/sproutcore/frameworks/runtime/system/sparse_array.js +0 -379
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/mixins/enumerable.js +0 -622
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/cookie.js +0 -163
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/selection_set/add.js +0 -92
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/selection_set/copy.js +0 -17
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/selection_set/indexSetForSource.js +0 -98
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/selection_set/isEqual.js +0 -60
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/selection_set/remove.js +0 -111
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/sparse_array.js +0 -194
- data/lib/frameworks/sproutcore/frameworks/statechart/mixins/statechart.js +0 -336
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/basic.js +0 -90
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/history.js +0 -71
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/nested.js +0 -59
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/transient.js +0 -148
- data/lib/frameworks/sproutcore/frameworks/testing/jquery.js +0 -3559
- data/lib/frameworks/sproutcore/frameworks/testing/qunit.js +0 -827
- data/lib/frameworks/sproutcore/themes/standard_theme/english.lproj/pane.css +0 -18
- data/lib/frameworks/sproutcore/themes/standard_theme/english.lproj/segmented.css +0 -275
- data/lib/sproutcore/builders/bundle.rb +0 -63
- data/lib/sproutcore/buildfile/cloneable.rb +0 -34
- data/lib/sproutcore/vendor/yui-compressor/SCyuicompressor-2.4.2.jar +0 -0
- data/spec/buildtasks/manifest/prepare_build_tasks/bundle_spec.rb +0 -254
- data/spec/fixtures/builder_tests/apps/bundle_test/bundle.js +0 -1
- data/spec/lib/builders/bundle_spec.rb +0 -295
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// ==========================================================================
|
|
2
2
|
// Project: SproutCore Costello - Property Observing Library
|
|
3
3
|
// Copyright: ©2006-2011 Strobe Inc. and contributors.
|
|
4
|
-
// Portions ©2008-
|
|
4
|
+
// Portions ©2008-2011 Apple Inc. All rights reserved.
|
|
5
5
|
// License: Licensed under MIT license (see license.js)
|
|
6
6
|
// ==========================================================================
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// ==========================================================================
|
|
2
2
|
// Project: SproutCore Costello - Property Observing Library
|
|
3
3
|
// Copyright: ©2006-2011 Strobe Inc. and contributors.
|
|
4
|
-
// Portions ©2008-
|
|
4
|
+
// Portions ©2008-2011 Apple Inc. All rights reserved.
|
|
5
5
|
// License: Licensed under MIT license (see license.js)
|
|
6
6
|
// ==========================================================================
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// ==========================================================================
|
|
2
2
|
// Project: SproutCore Costello - Property Observing Library
|
|
3
3
|
// Copyright: ©2006-2011 Strobe Inc. and contributors.
|
|
4
|
-
// Portions ©2008-
|
|
4
|
+
// Portions ©2008-2011 Apple Inc. All rights reserved.
|
|
5
5
|
// License: Licensed under MIT license (see license.js)
|
|
6
6
|
// ==========================================================================
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// ==========================================================================
|
|
2
2
|
// Project: SproutCore Costello - Property Observing Library
|
|
3
3
|
// Copyright: ©2006-2011 Strobe Inc. and contributors.
|
|
4
|
-
// Portions ©2008-
|
|
4
|
+
// Portions ©2008-2011 Apple Inc. All rights reserved.
|
|
5
5
|
// License: Licensed under MIT license (see license.js)
|
|
6
6
|
// ==========================================================================
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// ==========================================================================
|
|
2
2
|
// Project: SproutCore Costello - Property Observing Library
|
|
3
3
|
// Copyright: ©2006-2011 Strobe Inc. and contributors.
|
|
4
|
-
// Portions ©2008-
|
|
4
|
+
// Portions ©2008-2011 Apple Inc. All rights reserved.
|
|
5
5
|
// License: Licensed under MIT license (see license.js)
|
|
6
6
|
// ==========================================================================
|
|
7
7
|
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
// ==========================================================================
|
|
2
|
+
// Project: SproutCore Costello - Property Observing Library
|
|
3
|
+
// Copyright: ©2006-2011 Strobe Inc. and contributors.
|
|
4
|
+
// Portions ©2008-2011 Apple Inc. All rights reserved.
|
|
5
|
+
// License: Licensed under MIT license (see license.js)
|
|
6
|
+
// ==========================================================================
|
|
7
|
+
|
|
8
|
+
sc_require('mixins/array');
|
|
9
|
+
|
|
10
|
+
SC.supplement(Array.prototype, SC.CoreArray);
|
|
11
|
+
|
|
12
|
+
// Because Arrays are dealt with so much, we add specialized functions.
|
|
13
|
+
|
|
14
|
+
SC.mixin(Array.prototype, {
|
|
15
|
+
|
|
16
|
+
// primitive for array support.
|
|
17
|
+
replace: function(idx, amt, objects) {
|
|
18
|
+
if (this.isFrozen) { throw SC.FROZEN_ERROR ; }
|
|
19
|
+
|
|
20
|
+
var args;
|
|
21
|
+
var len = objects ? (objects.get ? objects.get('length') : objects.length) : 0;
|
|
22
|
+
|
|
23
|
+
// Notify that array content is about to mutate.
|
|
24
|
+
this.arrayContentWillChange(idx, amt, len);
|
|
25
|
+
|
|
26
|
+
if (len === 0) {
|
|
27
|
+
this.splice(idx, amt) ;
|
|
28
|
+
} else {
|
|
29
|
+
args = [idx, amt].concat(objects) ;
|
|
30
|
+
this.splice.apply(this,args) ;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
this.arrayContentDidChange(idx, amt, len);
|
|
34
|
+
this.enumerableContentDidChange(idx, amt, len - amt) ;
|
|
35
|
+
return this ;
|
|
36
|
+
},
|
|
37
|
+
|
|
38
|
+
// If you ask for an unknown property, then try to collect the value
|
|
39
|
+
// from member items.
|
|
40
|
+
unknownProperty: function(key, value) {
|
|
41
|
+
var ret = this.reducedProperty(key, value) ;
|
|
42
|
+
if ((value !== undefined) && ret === undefined) {
|
|
43
|
+
ret = this[key] = value;
|
|
44
|
+
}
|
|
45
|
+
return ret ;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
if (Array.prototype.indexOf === SC.CoreArray.indexOf) {
|
|
51
|
+
/**
|
|
52
|
+
Returns the index for a particular object in the index.
|
|
53
|
+
|
|
54
|
+
@param {Object} object the item to search for
|
|
55
|
+
@param {Number} startAt optional starting location to search, default 0
|
|
56
|
+
@returns {Number} index of -1 if not found
|
|
57
|
+
*/
|
|
58
|
+
Array.prototype.indexOf = function(object, startAt) {
|
|
59
|
+
var idx, len = this.length;
|
|
60
|
+
|
|
61
|
+
if (startAt === undefined) startAt = 0;
|
|
62
|
+
else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
|
|
63
|
+
if (startAt < 0) startAt += len;
|
|
64
|
+
|
|
65
|
+
for(idx=startAt;idx<len;idx++) {
|
|
66
|
+
if (this[idx] === object) return idx ;
|
|
67
|
+
}
|
|
68
|
+
return -1;
|
|
69
|
+
} ;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
if (Array.prototype.lastIndexOf === SC.CoreArray.lastIndexOf) {
|
|
73
|
+
/**
|
|
74
|
+
Returns the last index for a particular object in the index.
|
|
75
|
+
|
|
76
|
+
@param {Object} object the item to search for
|
|
77
|
+
@param {Number} startAt optional starting location to search, default 0
|
|
78
|
+
@returns {Number} index of -1 if not found
|
|
79
|
+
*/
|
|
80
|
+
Array.prototype.lastIndexOf = function(object, startAt) {
|
|
81
|
+
var idx, len = this.length;
|
|
82
|
+
|
|
83
|
+
if (startAt === undefined) startAt = len-1;
|
|
84
|
+
else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
|
|
85
|
+
if (startAt < 0) startAt += len;
|
|
86
|
+
|
|
87
|
+
for(idx=startAt;idx>=0;idx--) {
|
|
88
|
+
if (this[idx] === object) return idx ;
|
|
89
|
+
}
|
|
90
|
+
return -1;
|
|
91
|
+
};
|
|
92
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// ==========================================================================
|
|
2
|
+
// Project: SproutCore Costello - Property Observing Library
|
|
3
|
+
// Copyright: ©2006-2011 Strobe Inc. and contributors.
|
|
4
|
+
// Portions ©2008-2011 Apple Inc. All rights reserved.
|
|
5
|
+
// License: Licensed under MIT license (see license.js)
|
|
6
|
+
// ==========================================================================
|
|
7
|
+
|
|
8
|
+
if (!Date.now) {
|
|
9
|
+
/**
|
|
10
|
+
@ignore
|
|
11
|
+
*/
|
|
12
|
+
Date.now = function() {
|
|
13
|
+
return new Date().getTime() ;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
// ==========================================================================
|
|
2
|
+
// Project: SproutCore Costello - Property Observing Library
|
|
3
|
+
// Copyright: ©2006-2011 Strobe Inc. and contributors.
|
|
4
|
+
// Portions ©2008-2011 Apple Inc. All rights reserved.
|
|
5
|
+
// License: Licensed under MIT license (see license.js)
|
|
6
|
+
// ==========================================================================
|
|
7
|
+
|
|
8
|
+
sc_require('system/function');
|
|
9
|
+
|
|
10
|
+
SC.mixin(Function.prototype,
|
|
11
|
+
/** @lends Function.prototype */ {
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
Indicates that the function should be treated as a computed property.
|
|
15
|
+
|
|
16
|
+
Computed properties are methods that you want to treat as if they were
|
|
17
|
+
static properties. When you use get() or set() on a computed property,
|
|
18
|
+
the object will call the property method and return its value instead of
|
|
19
|
+
returning the method itself. This makes it easy to create "virtual
|
|
20
|
+
properties" that are computed dynamically from other properties.
|
|
21
|
+
|
|
22
|
+
Consider the following example:
|
|
23
|
+
|
|
24
|
+
contact = SC.Object.create({
|
|
25
|
+
|
|
26
|
+
firstName: "Charles",
|
|
27
|
+
lastName: "Jolley",
|
|
28
|
+
|
|
29
|
+
// This is a computed property!
|
|
30
|
+
fullName: function() {
|
|
31
|
+
return this.getEach('firstName','lastName').compact().join(' ') ;
|
|
32
|
+
}.property('firstName', 'lastName'),
|
|
33
|
+
|
|
34
|
+
// this is not
|
|
35
|
+
getFullName: function() {
|
|
36
|
+
return this.getEach('firstName','lastName').compact().join(' ') ;
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
contact.get('firstName') ;
|
|
41
|
+
--> "Charles"
|
|
42
|
+
|
|
43
|
+
contact.get('fullName') ;
|
|
44
|
+
--> "Charles Jolley"
|
|
45
|
+
|
|
46
|
+
contact.get('getFullName') ;
|
|
47
|
+
--> function()
|
|
48
|
+
|
|
49
|
+
Note that when you get the fullName property, SproutCore will call the
|
|
50
|
+
fullName() function and return its value whereas when you get() a property
|
|
51
|
+
that contains a regular method (such as getFullName above), then the
|
|
52
|
+
function itself will be returned instead.
|
|
53
|
+
|
|
54
|
+
Using Dependent Keys
|
|
55
|
+
----
|
|
56
|
+
|
|
57
|
+
Computed properties are often computed dynamically from other member
|
|
58
|
+
properties. Whenever those properties change, you need to notify any
|
|
59
|
+
object that is observing the computed property that the computed property
|
|
60
|
+
has changed also. We call these properties the computed property is based
|
|
61
|
+
upon "dependent keys".
|
|
62
|
+
|
|
63
|
+
For example, in the contact object above, the fullName property depends on
|
|
64
|
+
the firstName and lastName property. If either property value changes,
|
|
65
|
+
any observer watching the fullName property will need to be notified as
|
|
66
|
+
well.
|
|
67
|
+
|
|
68
|
+
You inform SproutCore of these dependent keys by passing the key names
|
|
69
|
+
as parameters to the property() function. Whenever the value of any key
|
|
70
|
+
you name here changes, the computed property will be marked as changed
|
|
71
|
+
also.
|
|
72
|
+
|
|
73
|
+
You should always register dependent keys for computed properties to
|
|
74
|
+
ensure they update.
|
|
75
|
+
|
|
76
|
+
Sometimes you may need to depend on keys that are several objects deep. In
|
|
77
|
+
that case, you can provide a path to property():
|
|
78
|
+
|
|
79
|
+
capitalizedName: function() {
|
|
80
|
+
return this.getPath('person.fullName').toUpper();
|
|
81
|
+
}.property('person.firstName')
|
|
82
|
+
|
|
83
|
+
This will cause observers of +capitalizedName+ to be fired when either
|
|
84
|
+
+fullName+ _or_ +person+ changes.
|
|
85
|
+
|
|
86
|
+
Using Computed Properties as Setters
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
Computed properties can be used to modify the state of an object as well
|
|
90
|
+
as to return a value. Unlike many other key-value system, you use the
|
|
91
|
+
same method to both get and set values on a computed property. To
|
|
92
|
+
write a setter, simply declare two extra parameters: key and value.
|
|
93
|
+
|
|
94
|
+
Whenever your property function is called as a setter, the value
|
|
95
|
+
parameter will be set. Whenever your property is called as a getter the
|
|
96
|
+
value parameter will be undefined.
|
|
97
|
+
|
|
98
|
+
For example, the following object will split any full name that you set
|
|
99
|
+
into a first name and last name components and save them.
|
|
100
|
+
|
|
101
|
+
contact = SC.Object.create({
|
|
102
|
+
|
|
103
|
+
fullName: function(key, value) {
|
|
104
|
+
if (value !== undefined) {
|
|
105
|
+
var parts = value.split(' ') ;
|
|
106
|
+
this.beginPropertyChanges()
|
|
107
|
+
.set('firstName', parts[0])
|
|
108
|
+
.set('lastName', parts[1])
|
|
109
|
+
.endPropertyChanges() ;
|
|
110
|
+
}
|
|
111
|
+
return this.getEach('firstName', 'lastName').compact().join(' ');
|
|
112
|
+
}.property('firstName','lastName')
|
|
113
|
+
|
|
114
|
+
}) ;
|
|
115
|
+
|
|
116
|
+
Why Use The Same Method for Getters and Setters?
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
Most property-based frameworks expect you to write two methods for each
|
|
120
|
+
property but SproutCore only uses one. We do this because most of the time
|
|
121
|
+
when you write a setter is is basically a getter plus some extra work.
|
|
122
|
+
There is little added benefit in writing both methods when you can
|
|
123
|
+
conditionally exclude part of it. This helps to keep your code more
|
|
124
|
+
compact and easier to maintain.
|
|
125
|
+
|
|
126
|
+
@param {String...} dependentKeys optional set of dependent keys
|
|
127
|
+
@returns {Function} the declared function instance
|
|
128
|
+
*/
|
|
129
|
+
property: function() {
|
|
130
|
+
return SC.Function.property(this, arguments);
|
|
131
|
+
},
|
|
132
|
+
|
|
133
|
+
/**
|
|
134
|
+
You can call this method on a computed property to indicate that the
|
|
135
|
+
property is cacheable (or not cacheable). By default all computed
|
|
136
|
+
properties are not cached. Enabling this feature will allow SproutCore
|
|
137
|
+
to cache the return value of your computed property and to use that
|
|
138
|
+
value until one of your dependent properties changes or until you
|
|
139
|
+
invoke propertyDidChange() and name the computed property itself.
|
|
140
|
+
|
|
141
|
+
If you do not specify this option, computed properties are assumed to be
|
|
142
|
+
not cacheable.
|
|
143
|
+
|
|
144
|
+
@param {Boolean} aFlag optionally indicate cacheable or no, default YES
|
|
145
|
+
@returns {Function} reciever, useful for chaining calls.
|
|
146
|
+
*/
|
|
147
|
+
cacheable: function(aFlag) {
|
|
148
|
+
return SC.Function.cacheable(this, aFlag);
|
|
149
|
+
},
|
|
150
|
+
|
|
151
|
+
/**
|
|
152
|
+
Indicates that the computed property is volatile. Normally SproutCore
|
|
153
|
+
assumes that your computed property is idempotent. That is, calling
|
|
154
|
+
set() on your property more than once with the same value has the same
|
|
155
|
+
effect as calling it only once.
|
|
156
|
+
|
|
157
|
+
All non-computed properties are idempotent and normally you should make
|
|
158
|
+
your computed properties behave the same way. However, if you need to
|
|
159
|
+
make your property change its return value everytime your method is
|
|
160
|
+
called, you may chain this to your property to make it volatile.
|
|
161
|
+
|
|
162
|
+
If you do not specify this option, properties are assumed to be
|
|
163
|
+
non-volatile.
|
|
164
|
+
|
|
165
|
+
@param {Boolean} aFlag optionally indicate state, default to YES
|
|
166
|
+
@returns {Function} reciever, useful for chaining calls.
|
|
167
|
+
*/
|
|
168
|
+
idempotent: function(aFlag) {
|
|
169
|
+
return SC.Function.idempotent(this, aFlag);
|
|
170
|
+
},
|
|
171
|
+
|
|
172
|
+
enhance: function() {
|
|
173
|
+
return SC.Function.enhance(this);
|
|
174
|
+
},
|
|
175
|
+
|
|
176
|
+
/**
|
|
177
|
+
Declare that a function should observe an object or property at the named
|
|
178
|
+
path. Note that the path is used only to construct the observation one time.
|
|
179
|
+
|
|
180
|
+
@param {String...} propertyPaths A list of strings which indicate the
|
|
181
|
+
properties being observed
|
|
182
|
+
|
|
183
|
+
@returns {Function} reciever, useful for chaining calls.
|
|
184
|
+
*/
|
|
185
|
+
observes: function(propertyPaths) {
|
|
186
|
+
return SC.Function.observes(this, arguments);
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
});
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// ==========================================================================
|
|
2
|
+
// Project: SproutCore Costello - Property Observing Library
|
|
3
|
+
// Copyright: ©2006-2011 Strobe Inc. and contributors.
|
|
4
|
+
// Portions ©2008-2011 Apple Inc. All rights reserved.
|
|
5
|
+
// License: Licensed under MIT license (see license.js)
|
|
6
|
+
// ==========================================================================
|
|
7
|
+
|
|
8
|
+
sc_require('system/string');
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
@namespace
|
|
12
|
+
Extends String by adding a few helpful methods.
|
|
13
|
+
*/
|
|
14
|
+
SC.mixin(String.prototype,
|
|
15
|
+
/** @scope String.prototype */ {
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
@see SC.String.fmt
|
|
19
|
+
*/
|
|
20
|
+
fmt: function() {
|
|
21
|
+
return SC.String.fmt(this, arguments);
|
|
22
|
+
},
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
@see SC.String.w
|
|
26
|
+
*/
|
|
27
|
+
w: function() {
|
|
28
|
+
return SC.String.w(this);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
});
|
|
@@ -1,28 +1,29 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* ==========================================================================
|
|
4
|
+
* SproutCore Costello -- Property Observing Library
|
|
5
|
+
* Copyright ©2006-2011, Strobe Inc. and contributors.
|
|
6
|
+
* Portions copyright ©2008-2011 Apple Inc. All rights reserved.
|
|
7
|
+
*
|
|
8
|
+
* Permission is hereby granted, free of charge, to any person obtaining a
|
|
9
|
+
* copy of this software and associated documentation files (the "Software"),
|
|
10
|
+
* to deal in the Software without restriction, including without limitation
|
|
11
|
+
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
12
|
+
* and/or sell copies of the Software, and to permit persons to whom the
|
|
13
|
+
* Software is furnished to do so, subject to the following conditions:
|
|
14
|
+
*
|
|
15
|
+
* The above copyright notice and this permission notice shall be included in
|
|
16
|
+
* all copies or substantial portions of the Software.
|
|
17
|
+
*
|
|
18
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
19
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
20
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
21
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
22
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
23
|
+
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
24
|
+
* DEALINGS IN THE SOFTWARE.
|
|
25
|
+
*
|
|
26
|
+
* For more information about SproutCore, visit http://www.sproutcore.com
|
|
27
|
+
*
|
|
28
|
+
* ==========================================================================
|
|
29
|
+
*/
|
|
@@ -1,94 +1,111 @@
|
|
|
1
1
|
// ==========================================================================
|
|
2
2
|
// Project: SproutCore Costello - Property Observing Library
|
|
3
3
|
// Copyright: ©2006-2011 Strobe Inc. and contributors.
|
|
4
|
-
// Portions ©2008-
|
|
4
|
+
// Portions ©2008-2011 Apple Inc. All rights reserved.
|
|
5
5
|
// License: Licensed under MIT license (see license.js)
|
|
6
6
|
// ==========================================================================
|
|
7
7
|
|
|
8
8
|
// note: SC.Observable also enhances array. make sure we are called after
|
|
9
9
|
// SC.Observable so our version of unknownProperty wins.
|
|
10
|
+
sc_require('ext/function');
|
|
10
11
|
sc_require('mixins/observable');
|
|
11
12
|
sc_require('mixins/enumerable');
|
|
12
13
|
sc_require('system/range_observer');
|
|
13
14
|
|
|
14
|
-
SC.OUT_OF_RANGE_EXCEPTION = "Index out of range"
|
|
15
|
+
SC.OUT_OF_RANGE_EXCEPTION = "Index out of range";
|
|
16
|
+
|
|
17
|
+
SC.CoreArray = /** @lends SC.Array.prototype */ {
|
|
15
18
|
|
|
16
|
-
/**
|
|
17
|
-
@namespace
|
|
18
|
-
|
|
19
|
-
This module implements Observer-friendly Array-like behavior. This mixin is
|
|
20
|
-
picked up by the Array class as well as other controllers, etc. that want to
|
|
21
|
-
appear to be arrays.
|
|
22
|
-
|
|
23
|
-
Unlike SC.Enumerable, this mixin defines methods specifically for
|
|
24
|
-
collections that provide index-ordered access to their contents. When you
|
|
25
|
-
are designing code that needs to accept any kind of Array-like object, you
|
|
26
|
-
should use these methods instead of Array primitives because these will
|
|
27
|
-
properly notify observers of changes to the array.
|
|
28
|
-
|
|
29
|
-
Although these methods are efficient, they do add a layer of indirection to
|
|
30
|
-
your application so it is a good idea to use them only when you need the
|
|
31
|
-
flexibility of using both true JavaScript arrays and "virtual" arrays such
|
|
32
|
-
as controllers and collections.
|
|
33
|
-
|
|
34
|
-
You can use the methods defined in this module to access and modify array
|
|
35
|
-
contents in a KVO-friendly way. You can also be notified whenever the
|
|
36
|
-
membership if an array changes by changing the syntax of the property to
|
|
37
|
-
.observes('*myProperty.[]') .
|
|
38
|
-
|
|
39
|
-
To support SC.Array in your own class, you must override two
|
|
40
|
-
primitives to use it: replace() and objectAt().
|
|
41
|
-
|
|
42
|
-
Note that the SC.Array mixin also incorporates the SC.Enumerable mixin. All
|
|
43
|
-
SC.Array-like objects are also enumerable.
|
|
44
|
-
|
|
45
|
-
@extends SC.Enumerable
|
|
46
|
-
@since SproutCore 0.9.0
|
|
47
|
-
*/
|
|
48
|
-
SC.Array = {
|
|
49
|
-
|
|
50
19
|
/**
|
|
51
20
|
Walk like a duck - use isSCArray to avoid conflicts
|
|
21
|
+
@type Boolean
|
|
52
22
|
*/
|
|
53
23
|
isSCArray: YES,
|
|
54
|
-
|
|
24
|
+
|
|
55
25
|
/**
|
|
56
26
|
@field {Number} length
|
|
57
|
-
|
|
27
|
+
|
|
58
28
|
Your array must support the length property. Your replace methods should
|
|
59
29
|
set this property whenever it changes.
|
|
60
30
|
*/
|
|
61
31
|
// length: 0,
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
This is one of the primitves you must implement to support SC.Array. You
|
|
65
|
-
should replace amt objects started at idx with the objects in the passed
|
|
66
|
-
array.
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
This is one of the primitves you must implement to support SC.Array. You
|
|
35
|
+
should replace amt objects started at idx with the objects in the passed
|
|
36
|
+
array.
|
|
37
|
+
|
|
38
|
+
Before mutating the underlying data structure, you must call
|
|
39
|
+
this.arrayContentWillChange(). After the mutation is complete, you must
|
|
40
|
+
call arrayContentDidChange() and enumerableContentDidChange().
|
|
41
|
+
|
|
42
|
+
NOTE: JavaScript arrays already implement SC.Array and automatically call
|
|
43
|
+
the correct callbacks.
|
|
44
|
+
|
|
45
|
+
@param {Number} idx
|
|
46
|
+
Starting index in the array to replace. If idx >= length, then append to
|
|
70
47
|
the end of the array.
|
|
71
|
-
|
|
72
|
-
@param {Number} amt
|
|
73
|
-
Number of elements that should be removed from the array, starting at
|
|
48
|
+
|
|
49
|
+
@param {Number} amt
|
|
50
|
+
Number of elements that should be removed from the array, starting at
|
|
74
51
|
*idx*.
|
|
75
|
-
|
|
76
|
-
@param {Array} objects
|
|
77
|
-
An array of zero or more objects that should be inserted into the array at
|
|
78
|
-
*idx*
|
|
52
|
+
|
|
53
|
+
@param {Array} objects
|
|
54
|
+
An array of zero or more objects that should be inserted into the array at
|
|
55
|
+
*idx*
|
|
79
56
|
*/
|
|
80
57
|
replace: function(idx, amt, objects) {
|
|
81
58
|
throw "replace() must be implemented to support SC.Array" ;
|
|
82
59
|
},
|
|
83
|
-
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
Returns the index for a particular object in the index.
|
|
63
|
+
|
|
64
|
+
@param {Object} object the item to search for
|
|
65
|
+
@param {Number} startAt optional starting location to search, default 0
|
|
66
|
+
@returns {Number} index of -1 if not found
|
|
67
|
+
*/
|
|
68
|
+
indexOf: function(object, startAt) {
|
|
69
|
+
var idx, len = this.get('length');
|
|
70
|
+
|
|
71
|
+
if (startAt === undefined) startAt = 0;
|
|
72
|
+
else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
|
|
73
|
+
if (startAt < 0) startAt += len;
|
|
74
|
+
|
|
75
|
+
for(idx=startAt;idx<len;idx++) {
|
|
76
|
+
if (this.objectAt(idx, YES) === object) return idx ;
|
|
77
|
+
}
|
|
78
|
+
return -1;
|
|
79
|
+
},
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
Returns the last index for a particular object in the index.
|
|
83
|
+
|
|
84
|
+
@param {Object} object the item to search for
|
|
85
|
+
@param {Number} startAt optional starting location to search, default 0
|
|
86
|
+
@returns {Number} index of -1 if not found
|
|
87
|
+
*/
|
|
88
|
+
lastIndexOf: function(object, startAt) {
|
|
89
|
+
var idx, len = this.get('length');
|
|
90
|
+
|
|
91
|
+
if (startAt === undefined) startAt = len-1;
|
|
92
|
+
else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
|
|
93
|
+
if (startAt < 0) startAt += len;
|
|
94
|
+
|
|
95
|
+
for(idx=startAt;idx>=0;idx--) {
|
|
96
|
+
if (this.objectAt(idx) === object) return idx ;
|
|
97
|
+
}
|
|
98
|
+
return -1;
|
|
99
|
+
},
|
|
100
|
+
|
|
84
101
|
/**
|
|
85
|
-
This is one of the primitives you must implement to support SC.Array.
|
|
86
|
-
Returns the object at the named index. If your object supports retrieving
|
|
102
|
+
This is one of the primitives you must implement to support SC.Array.
|
|
103
|
+
Returns the object at the named index. If your object supports retrieving
|
|
87
104
|
the value of an array item using get() (i.e. myArray.get(0)), then you do
|
|
88
105
|
not need to implement this method yourself.
|
|
89
|
-
|
|
106
|
+
|
|
90
107
|
@param {Number} idx
|
|
91
|
-
The index of the item to return. If idx exceeds the current length,
|
|
108
|
+
The index of the item to return. If idx exceeds the current length,
|
|
92
109
|
return null.
|
|
93
110
|
*/
|
|
94
111
|
objectAt: function(idx) {
|
|
@@ -96,27 +113,27 @@ SC.Array = {
|
|
|
96
113
|
if (idx >= this.get('length')) return undefined;
|
|
97
114
|
return this.get(idx);
|
|
98
115
|
},
|
|
99
|
-
|
|
116
|
+
|
|
100
117
|
/**
|
|
101
118
|
@field []
|
|
102
|
-
|
|
119
|
+
|
|
103
120
|
This is the handler for the special array content property. If you get
|
|
104
|
-
this property, it will return this. If you set this property it a new
|
|
121
|
+
this property, it will return this. If you set this property it a new
|
|
105
122
|
array, it will replace the current content.
|
|
106
|
-
|
|
123
|
+
|
|
107
124
|
This property overrides the default property defined in SC.Enumerable.
|
|
108
125
|
*/
|
|
109
126
|
'[]': function(key, value) {
|
|
110
127
|
if (value !== undefined) {
|
|
111
128
|
this.replace(0, this.get('length'), value) ;
|
|
112
|
-
}
|
|
129
|
+
}
|
|
113
130
|
return this ;
|
|
114
131
|
}.property(),
|
|
115
|
-
|
|
132
|
+
|
|
116
133
|
/**
|
|
117
|
-
This will use the primitive replace() method to insert an object at the
|
|
134
|
+
This will use the primitive replace() method to insert an object at the
|
|
118
135
|
specified index.
|
|
119
|
-
|
|
136
|
+
|
|
120
137
|
@param {Number} idx index of insert the object at.
|
|
121
138
|
@param {Object} object object to insert
|
|
122
139
|
*/
|
|
@@ -125,30 +142,30 @@ SC.Array = {
|
|
|
125
142
|
this.replace(idx,0,[object]) ;
|
|
126
143
|
return this ;
|
|
127
144
|
},
|
|
128
|
-
|
|
145
|
+
|
|
129
146
|
/**
|
|
130
|
-
Remove an object at the specified index using the replace() primitive
|
|
147
|
+
Remove an object at the specified index using the replace() primitive
|
|
131
148
|
method. You can pass either a single index, a start and a length or an
|
|
132
149
|
index set.
|
|
133
|
-
|
|
134
|
-
If you pass a single index or a start and length that is beyond the
|
|
150
|
+
|
|
151
|
+
If you pass a single index or a start and length that is beyond the
|
|
135
152
|
length this method will throw an SC.OUT_OF_RANGE_EXCEPTION
|
|
136
|
-
|
|
153
|
+
|
|
137
154
|
@param {Number|SC.IndexSet} start index, start of range, or index set
|
|
138
155
|
@param {Number} length length of passing range
|
|
139
156
|
@returns {Object} receiver
|
|
140
157
|
*/
|
|
141
158
|
removeAt: function(start, length) {
|
|
142
|
-
|
|
159
|
+
|
|
143
160
|
var delta = 0, // used to shift range
|
|
144
161
|
empty = [];
|
|
145
|
-
|
|
162
|
+
|
|
146
163
|
if (typeof start === SC.T_NUMBER) {
|
|
147
|
-
|
|
164
|
+
|
|
148
165
|
if ((start < 0) || (start >= this.get('length'))) {
|
|
149
166
|
throw SC.OUT_OF_RANGE_EXCEPTION;
|
|
150
167
|
}
|
|
151
|
-
|
|
168
|
+
|
|
152
169
|
// fast case
|
|
153
170
|
if (length === undefined) {
|
|
154
171
|
this.replace(start,1,empty);
|
|
@@ -157,7 +174,7 @@ SC.Array = {
|
|
|
157
174
|
start = SC.IndexSet.create(start, length);
|
|
158
175
|
}
|
|
159
176
|
}
|
|
160
|
-
|
|
177
|
+
|
|
161
178
|
this.beginPropertyChanges();
|
|
162
179
|
start.forEachRange(function(start, length) {
|
|
163
180
|
start -= delta ;
|
|
@@ -165,10 +182,10 @@ SC.Array = {
|
|
|
165
182
|
this.replace(start, length, empty); // remove!
|
|
166
183
|
}, this);
|
|
167
184
|
this.endPropertyChanges();
|
|
168
|
-
|
|
185
|
+
|
|
169
186
|
return this ;
|
|
170
187
|
},
|
|
171
|
-
|
|
188
|
+
|
|
172
189
|
/**
|
|
173
190
|
Search the array of this object, removing any occurrences of it.
|
|
174
191
|
@param {object} obj object to remove
|
|
@@ -181,11 +198,11 @@ SC.Array = {
|
|
|
181
198
|
}
|
|
182
199
|
return this ;
|
|
183
200
|
},
|
|
184
|
-
|
|
201
|
+
|
|
185
202
|
/**
|
|
186
203
|
Search the array for the passed set of objects and remove any occurrences
|
|
187
|
-
of the.
|
|
188
|
-
|
|
204
|
+
of the.
|
|
205
|
+
|
|
189
206
|
@param {SC.Enumerable} objects the objects to remove
|
|
190
207
|
@returns {SC.Array} receiver
|
|
191
208
|
*/
|
|
@@ -195,21 +212,46 @@ SC.Array = {
|
|
|
195
212
|
this.endPropertyChanges();
|
|
196
213
|
return this;
|
|
197
214
|
},
|
|
198
|
-
|
|
215
|
+
|
|
199
216
|
/**
|
|
200
|
-
|
|
217
|
+
Returns a new array that is a slice of the receiver. This implementation
|
|
218
|
+
uses the observable array methods to retrieve the objects for the new
|
|
219
|
+
slice.
|
|
220
|
+
|
|
221
|
+
If you don't pass in beginIndex and endIndex, it will act as a copy of the
|
|
222
|
+
array.
|
|
223
|
+
|
|
224
|
+
@param beginIndex {Integer} (Optional) index to begin slicing from.
|
|
225
|
+
@param endIndex {Integer} (Optional) index to end the slice at.
|
|
226
|
+
@returns {Array} New array with specified slice
|
|
227
|
+
*/
|
|
228
|
+
slice: function(beginIndex, endIndex) {
|
|
229
|
+
var ret = [];
|
|
230
|
+
var length = this.get('length') ;
|
|
231
|
+
if (SC.none(beginIndex)) beginIndex = 0 ;
|
|
232
|
+
if (SC.none(endIndex) || (endIndex > length)) endIndex = length ;
|
|
233
|
+
while(beginIndex < endIndex) ret[ret.length] = this.objectAt(beginIndex++) ;
|
|
234
|
+
return ret ;
|
|
235
|
+
},
|
|
236
|
+
|
|
237
|
+
/**
|
|
238
|
+
Push the object onto the end of the array. Works just like push() but it
|
|
201
239
|
is KVO-compliant.
|
|
240
|
+
|
|
241
|
+
@param {Object} object the objects to push
|
|
242
|
+
|
|
243
|
+
@return {Object} The passed object
|
|
202
244
|
*/
|
|
203
245
|
pushObject: function(obj) {
|
|
204
246
|
this.insertAt(this.get('length'), obj) ;
|
|
205
247
|
return obj ;
|
|
206
248
|
},
|
|
207
|
-
|
|
208
|
-
|
|
249
|
+
|
|
250
|
+
|
|
209
251
|
/**
|
|
210
252
|
Add the objects in the passed numerable to the end of the array. Defers
|
|
211
253
|
notifying observers of the change until all objects are added.
|
|
212
|
-
|
|
254
|
+
|
|
213
255
|
@param {SC.Enumerable} objects the objects to add
|
|
214
256
|
@returns {SC.Array} receiver
|
|
215
257
|
*/
|
|
@@ -221,21 +263,25 @@ SC.Array = {
|
|
|
221
263
|
},
|
|
222
264
|
|
|
223
265
|
/**
|
|
224
|
-
Pop object from array or nil if none are left. Works just like pop() but
|
|
266
|
+
Pop object from array or nil if none are left. Works just like pop() but
|
|
225
267
|
it is KVO-compliant.
|
|
268
|
+
|
|
269
|
+
@return {Object} The popped object
|
|
226
270
|
*/
|
|
227
271
|
popObject: function() {
|
|
228
272
|
var len = this.get('length') ;
|
|
229
273
|
if (len === 0) return null ;
|
|
230
|
-
|
|
274
|
+
|
|
231
275
|
var ret = this.objectAt(len-1) ;
|
|
232
276
|
this.removeAt(len-1) ;
|
|
233
277
|
return ret ;
|
|
234
278
|
},
|
|
235
|
-
|
|
279
|
+
|
|
236
280
|
/**
|
|
237
|
-
Shift an object from start of array or nil if none are left. Works just
|
|
281
|
+
Shift an object from start of array or nil if none are left. Works just
|
|
238
282
|
like shift() but it is KVO-compliant.
|
|
283
|
+
|
|
284
|
+
@return {Object} The shifted object
|
|
239
285
|
*/
|
|
240
286
|
shiftObject: function() {
|
|
241
287
|
if (this.get('length') === 0) return null ;
|
|
@@ -243,21 +289,23 @@ SC.Array = {
|
|
|
243
289
|
this.removeAt(0) ;
|
|
244
290
|
return ret ;
|
|
245
291
|
},
|
|
246
|
-
|
|
292
|
+
|
|
247
293
|
/**
|
|
248
|
-
Unshift an object to start of array. Works just like unshift() but it is
|
|
294
|
+
Unshift an object to start of array. Works just like unshift() but it is
|
|
249
295
|
KVO-compliant.
|
|
296
|
+
|
|
297
|
+
@param {Object} obj the object to add
|
|
298
|
+
@return {Object} The passed object
|
|
250
299
|
*/
|
|
251
300
|
unshiftObject: function(obj) {
|
|
252
301
|
this.insertAt(0, obj) ;
|
|
253
302
|
return obj ;
|
|
254
303
|
},
|
|
255
304
|
|
|
256
|
-
|
|
257
305
|
/**
|
|
258
306
|
Adds the named objects to the beginning of the array. Defers notifying
|
|
259
307
|
observers until all objects have been added.
|
|
260
|
-
|
|
308
|
+
|
|
261
309
|
@param {SC.Enumerable} objects the objects to add
|
|
262
310
|
@returns {SC.Array} receiver
|
|
263
311
|
*/
|
|
@@ -267,14 +315,17 @@ SC.Array = {
|
|
|
267
315
|
this.endPropertyChanges();
|
|
268
316
|
return this;
|
|
269
317
|
},
|
|
270
|
-
|
|
271
|
-
/**
|
|
272
|
-
Compares each item in the array
|
|
318
|
+
|
|
319
|
+
/**
|
|
320
|
+
Compares each item in the passed array to this one.
|
|
321
|
+
|
|
322
|
+
@param {Array} ary The array you want to compare to
|
|
323
|
+
@returns {Boolean} true if they are equal.
|
|
273
324
|
*/
|
|
274
325
|
isEqual: function(ary) {
|
|
275
326
|
if (!ary) return false ;
|
|
276
327
|
if (ary == this) return true;
|
|
277
|
-
|
|
328
|
+
|
|
278
329
|
var loc = ary.get('length') ;
|
|
279
330
|
if (loc != this.get('length')) return false ;
|
|
280
331
|
|
|
@@ -283,27 +334,27 @@ SC.Array = {
|
|
|
283
334
|
}
|
|
284
335
|
return true ;
|
|
285
336
|
},
|
|
286
|
-
|
|
337
|
+
|
|
287
338
|
/**
|
|
288
339
|
Generates a new array with the contents of the old array, sans any null
|
|
289
340
|
values.
|
|
290
|
-
|
|
291
|
-
@returns {Array}
|
|
341
|
+
|
|
342
|
+
@returns {Array} The new, compact array
|
|
292
343
|
*/
|
|
293
344
|
compact: function() { return this.without(null); },
|
|
294
|
-
|
|
345
|
+
|
|
295
346
|
/**
|
|
296
347
|
Generates a new array with the contents of the old array, sans the passed
|
|
297
348
|
value.
|
|
298
|
-
|
|
299
|
-
@param {Object} value
|
|
300
|
-
@returns {Array}
|
|
349
|
+
|
|
350
|
+
@param {Object} value The value you want to be removed
|
|
351
|
+
@returns {Array} The new, filtered array
|
|
301
352
|
*/
|
|
302
353
|
without: function(value) {
|
|
303
354
|
if (this.indexOf(value)<0) return this; // value not present.
|
|
304
355
|
var ret = [] ;
|
|
305
|
-
this.forEach(function(k) {
|
|
306
|
-
if (k !== value) ret[ret.length] = k;
|
|
356
|
+
this.forEach(function(k) {
|
|
357
|
+
if (k !== value) ret[ret.length] = k;
|
|
307
358
|
}) ;
|
|
308
359
|
return ret ;
|
|
309
360
|
},
|
|
@@ -311,8 +362,8 @@ SC.Array = {
|
|
|
311
362
|
/**
|
|
312
363
|
Generates a new array with only unique values from the contents of the
|
|
313
364
|
old array.
|
|
314
|
-
|
|
315
|
-
@returns {Array}
|
|
365
|
+
|
|
366
|
+
@returns {Array} The new, de-duped array
|
|
316
367
|
*/
|
|
317
368
|
uniq: function() {
|
|
318
369
|
var ret = [] ;
|
|
@@ -321,51 +372,59 @@ SC.Array = {
|
|
|
321
372
|
});
|
|
322
373
|
return ret ;
|
|
323
374
|
},
|
|
324
|
-
|
|
375
|
+
|
|
325
376
|
/**
|
|
326
377
|
Returns the largest Number in an array of Numbers. Make sure the array
|
|
327
378
|
only contains values of type Number to get expected result.
|
|
328
|
-
|
|
379
|
+
|
|
329
380
|
Note: This only works for dense arrays.
|
|
330
|
-
|
|
381
|
+
|
|
331
382
|
@returns {Number}
|
|
332
383
|
*/
|
|
333
384
|
max: function() {
|
|
334
385
|
return Math.max.apply(Math, this);
|
|
335
386
|
},
|
|
336
|
-
|
|
387
|
+
|
|
337
388
|
/**
|
|
338
389
|
Returns the smallest Number in an array of Numbers. Make sure the array
|
|
339
390
|
only contains values of type Number to get expected result.
|
|
340
|
-
|
|
391
|
+
|
|
341
392
|
Note: This only works for dense arrays.
|
|
342
|
-
|
|
393
|
+
|
|
343
394
|
@returns {Number}
|
|
344
395
|
*/
|
|
345
396
|
min: function() {
|
|
346
397
|
return Math.min.apply(Math, this);
|
|
347
398
|
},
|
|
348
|
-
|
|
399
|
+
|
|
349
400
|
rangeObserverClass: SC.RangeObserver,
|
|
350
|
-
|
|
401
|
+
|
|
402
|
+
/**
|
|
403
|
+
Returns YES if object is in the array
|
|
404
|
+
|
|
405
|
+
@param {Object} object to look for
|
|
406
|
+
@returns {Boolean}
|
|
407
|
+
*/
|
|
408
|
+
contains: function(obj){
|
|
409
|
+
return this.indexOf(obj) >= 0;
|
|
410
|
+
},
|
|
411
|
+
|
|
351
412
|
/**
|
|
352
413
|
Creates a new range observer on the receiver. The target/method callback
|
|
353
|
-
you provide will be invoked anytime any property on the objects in the
|
|
414
|
+
you provide will be invoked anytime any property on the objects in the
|
|
354
415
|
specified range changes. It will also be invoked if the objects in the
|
|
355
416
|
range itself changes also.
|
|
356
|
-
|
|
417
|
+
|
|
357
418
|
The callback for a range observer should have the signature:
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
}}}
|
|
362
|
-
|
|
419
|
+
|
|
420
|
+
function rangePropertyDidChange(array, objects, key, indexes, context)
|
|
421
|
+
|
|
363
422
|
If the passed key is '[]' it means that the object itself changed.
|
|
364
|
-
|
|
365
|
-
The return value from this method is an opaque reference to the
|
|
366
|
-
range observer object. You can use this reference to destroy the
|
|
423
|
+
|
|
424
|
+
The return value from this method is an opaque reference to the
|
|
425
|
+
range observer object. You can use this reference to destroy the
|
|
367
426
|
range observer when you are done with it or to update its range.
|
|
368
|
-
|
|
427
|
+
|
|
369
428
|
@param {SC.IndexSet} indexes indexes to observe
|
|
370
429
|
@param {Object} target object to invoke on change
|
|
371
430
|
@param {String|Function} method the method to invoke
|
|
@@ -381,29 +440,29 @@ SC.Array = {
|
|
|
381
440
|
if (this._array_oldLength===undefined) {
|
|
382
441
|
this._array_oldLength = this.get('length') ;
|
|
383
442
|
}
|
|
384
|
-
|
|
443
|
+
|
|
385
444
|
var C = this.rangeObserverClass ;
|
|
386
445
|
var isDeep = NO; //disable this feature for now
|
|
387
446
|
var ret = C.create(this, indexes, target, method, context, isDeep) ;
|
|
388
447
|
rangeob.add(ret);
|
|
389
|
-
|
|
448
|
+
|
|
390
449
|
// first time a range observer is added, begin observing the [] property
|
|
391
450
|
if (!this._array_isNotifyingRangeObservers) {
|
|
392
451
|
this._array_isNotifyingRangeObservers = YES ;
|
|
393
452
|
this.addObserver('[]', this, this._array_notifyRangeObservers);
|
|
394
453
|
}
|
|
395
|
-
|
|
454
|
+
|
|
396
455
|
return ret ;
|
|
397
456
|
},
|
|
398
|
-
|
|
457
|
+
|
|
399
458
|
/**
|
|
400
|
-
Moves a range observer so that it observes a new range of objects on the
|
|
459
|
+
Moves a range observer so that it observes a new range of objects on the
|
|
401
460
|
array. You must have an existing range observer object from a call to
|
|
402
461
|
addRangeObserver().
|
|
403
|
-
|
|
462
|
+
|
|
404
463
|
The return value should replace the old range observer object that you
|
|
405
464
|
pass in.
|
|
406
|
-
|
|
465
|
+
|
|
407
466
|
@param {SC.RangeObserver} rangeObserver the range observer
|
|
408
467
|
@param {SC.IndexSet} indexes new indexes to observe
|
|
409
468
|
@returns {SC.RangeObserver} the range observer (or a new one)
|
|
@@ -415,10 +474,10 @@ SC.Array = {
|
|
|
415
474
|
/**
|
|
416
475
|
Removes a range observer from the receiver. The range observer must
|
|
417
476
|
already be active on the array.
|
|
418
|
-
|
|
477
|
+
|
|
419
478
|
The return value should replace the old range observer object. It will
|
|
420
479
|
usually be null.
|
|
421
|
-
|
|
480
|
+
|
|
422
481
|
@param {SC.RangeObserver} rangeObserver the range observer
|
|
423
482
|
@returns {SC.RangeObserver} updated range observer or null
|
|
424
483
|
*/
|
|
@@ -428,216 +487,417 @@ SC.Array = {
|
|
|
428
487
|
if (rangeob) rangeob.remove(rangeObserver) ; // clear
|
|
429
488
|
return ret ;
|
|
430
489
|
},
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
var
|
|
445
|
-
|
|
490
|
+
|
|
491
|
+
addArrayObservers: function(options) {
|
|
492
|
+
this._modifyObserverSet('add', options);
|
|
493
|
+
},
|
|
494
|
+
|
|
495
|
+
removeArrayObservers: function(options) {
|
|
496
|
+
this._modifyObserverSet('remove', options);
|
|
497
|
+
},
|
|
498
|
+
|
|
499
|
+
_modifyObserverSet: function(method, options) {
|
|
500
|
+
var willChangeObservers, didChangeObservers;
|
|
501
|
+
|
|
502
|
+
var target = options.target || this;
|
|
503
|
+
var willChange = options.willChange || 'arrayWillChange';
|
|
504
|
+
var didChange = options.didChange || 'arrayDidChange';
|
|
505
|
+
var context = options.context;
|
|
506
|
+
|
|
507
|
+
if (typeof willChange === "string") {
|
|
508
|
+
willChange = target[willChange];
|
|
509
|
+
}
|
|
510
|
+
|
|
511
|
+
if (typeof didChange === "string") {
|
|
512
|
+
didChange = target[didChange];
|
|
513
|
+
}
|
|
514
|
+
|
|
515
|
+
willChangeObservers = this._kvo_for('_kvo_array_will_change', SC.ObserverSet);
|
|
516
|
+
didChangeObservers = this._kvo_for('_kvo_array_did_change', SC.ObserverSet);
|
|
517
|
+
|
|
518
|
+
willChangeObservers[method](target, willChange, context);
|
|
519
|
+
didChangeObservers[method](target, didChange, context);
|
|
520
|
+
},
|
|
521
|
+
|
|
522
|
+
arrayContentWillChange: function(start, removedCount, addedCount) {
|
|
523
|
+
this._teardownContentObservers(start, removedCount);
|
|
524
|
+
|
|
525
|
+
var member, members, membersLen, idx;
|
|
526
|
+
var target, action;
|
|
527
|
+
var willChangeObservers = this._kvo_array_will_change;
|
|
528
|
+
if (willChangeObservers) {
|
|
529
|
+
members = willChangeObservers.members;
|
|
530
|
+
membersLen = members.length;
|
|
531
|
+
|
|
532
|
+
for (idx = 0; idx < membersLen; idx++) {
|
|
533
|
+
member = members[idx];
|
|
534
|
+
target = member[0];
|
|
535
|
+
action = member[1];
|
|
536
|
+
action.call(target, start, removedCount, addedCount, this);
|
|
537
|
+
}
|
|
538
|
+
}
|
|
539
|
+
},
|
|
540
|
+
|
|
541
|
+
arrayContentDidChange: function(start, removedCount, addedCount) {
|
|
542
|
+
var rangeob = this._array_rangeObservers,
|
|
446
543
|
newlen, length, changes ;
|
|
447
544
|
|
|
448
|
-
this.beginPropertyChanges();
|
|
545
|
+
this.beginPropertyChanges();
|
|
449
546
|
this.notifyPropertyChange('length'); // flush caches
|
|
450
547
|
|
|
451
548
|
// schedule info for range observers
|
|
452
549
|
if (rangeob && rangeob.length>0) {
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
if (
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
// normalize input parameters
|
|
459
|
-
// if delta was not passed, assume it is the different between the
|
|
460
|
-
// new and old length.
|
|
461
|
-
if (start === undefined) start = 0;
|
|
462
|
-
if (delta === undefined) delta = newlen - oldlen ;
|
|
463
|
-
if (delta !== 0 || amt === undefined) {
|
|
464
|
-
length = newlen - start ;
|
|
465
|
-
if (delta<0) length -= delta; // cover removed range as well
|
|
550
|
+
changes = this._array_rangeChanges;
|
|
551
|
+
if (!changes) { changes = this._array_rangeChanges = SC.IndexSet.create(); }
|
|
552
|
+
if (removedCount === addedCount) {
|
|
553
|
+
length = removedCount;
|
|
466
554
|
} else {
|
|
467
|
-
length =
|
|
555
|
+
length = this.get('length') - start;
|
|
556
|
+
|
|
557
|
+
if (removedCount > addedCount) {
|
|
558
|
+
length += (removedCount - addedCount);
|
|
559
|
+
}
|
|
468
560
|
}
|
|
469
|
-
|
|
470
|
-
changes = this._array_rangeChanges;
|
|
471
|
-
if (!changes) changes = this._array_rangeChanges = SC.IndexSet.create();
|
|
472
561
|
changes.add(start, length);
|
|
473
562
|
}
|
|
474
|
-
|
|
563
|
+
|
|
564
|
+
this._setupContentObservers(start, addedCount);
|
|
565
|
+
|
|
566
|
+
var member, members, membersLen, idx;
|
|
567
|
+
var target, action;
|
|
568
|
+
var didChangeObservers = this._kvo_array_did_change;
|
|
569
|
+
if (didChangeObservers) {
|
|
570
|
+
members = didChangeObservers.members;
|
|
571
|
+
membersLen = members.length;
|
|
572
|
+
|
|
573
|
+
for (idx = 0; idx < membersLen; idx++) {
|
|
574
|
+
member = members[idx];
|
|
575
|
+
target = member[0];
|
|
576
|
+
action = member[1];
|
|
577
|
+
action.call(target, start, removedCount, addedCount, this);
|
|
578
|
+
}
|
|
579
|
+
}
|
|
580
|
+
|
|
475
581
|
this.notifyPropertyChange('[]') ;
|
|
476
582
|
this.endPropertyChanges();
|
|
477
|
-
|
|
583
|
+
|
|
584
|
+
return this ;
|
|
585
|
+
},
|
|
586
|
+
|
|
587
|
+
/**
|
|
588
|
+
@private
|
|
589
|
+
|
|
590
|
+
When enumerable content has changed, remove enumerable observers from
|
|
591
|
+
items that are no longer in the enumerable, and add observers to newly
|
|
592
|
+
added items.
|
|
593
|
+
|
|
594
|
+
@param {Array} addedObjects the array of objects that have been added
|
|
595
|
+
@param {Array} removedObjects the array of objects that have been removed
|
|
596
|
+
*/
|
|
597
|
+
_setupContentObservers: function(start, addedCount) {
|
|
598
|
+
var observedKeys = this._kvo_for('_kvo_content_observed_keys', SC.CoreSet);
|
|
599
|
+
var addedObjects;
|
|
600
|
+
var kvoKey;
|
|
601
|
+
|
|
602
|
+
// Only setup and teardown enumerable observers if we have keys to observe
|
|
603
|
+
if (observedKeys.get('length') > 0) {
|
|
604
|
+
addedObjects = this.slice(start, start+addedCount);
|
|
605
|
+
|
|
606
|
+
var self = this;
|
|
607
|
+
// added and resume the chain observer.
|
|
608
|
+
observedKeys.forEach(function(key) {
|
|
609
|
+
kvoKey = SC.keyFor('_kvo_content_observers', key);
|
|
610
|
+
|
|
611
|
+
// Get all original ChainObservers associated with the key
|
|
612
|
+
self._kvo_for(kvoKey).forEach(function(observer) {
|
|
613
|
+
addedObjects.forEach(function(item) {
|
|
614
|
+
self._resumeChainObservingForItemWithChainObserver(item, observer);
|
|
615
|
+
});
|
|
616
|
+
});
|
|
617
|
+
});
|
|
618
|
+
}
|
|
619
|
+
},
|
|
620
|
+
|
|
621
|
+
_teardownContentObservers: function(start, removedCount) {
|
|
622
|
+
var observedKeys = this._kvo_for('_kvo_content_observed_keys', SC.CoreSet);
|
|
623
|
+
var removedObjects;
|
|
624
|
+
var kvoKey;
|
|
625
|
+
|
|
626
|
+
// Only setup and teardown enumerable observers if we have keys to observe
|
|
627
|
+
if (observedKeys.get('length') > 0) {
|
|
628
|
+
removedObjects = this.slice(start, start+removedCount);
|
|
629
|
+
|
|
630
|
+
// added and resume the chain observer.
|
|
631
|
+
observedKeys.forEach(function(key) {
|
|
632
|
+
kvoKey = SC.keyFor('_kvo_content_observers', key);
|
|
633
|
+
|
|
634
|
+
// Loop through removed objects and remove any enumerable observers that
|
|
635
|
+
// belong to them.
|
|
636
|
+
removedObjects.forEach(function(item) {
|
|
637
|
+
item._kvo_for(kvoKey).forEach(function(observer) {
|
|
638
|
+
observer.destroyChain();
|
|
639
|
+
});
|
|
640
|
+
});
|
|
641
|
+
});
|
|
642
|
+
}
|
|
643
|
+
},
|
|
644
|
+
|
|
645
|
+
teardownEnumerablePropertyChains: function(removedObjects) {
|
|
646
|
+
var chains = this._kvo_enumerable_property_chains;
|
|
647
|
+
|
|
648
|
+
if (chains) {
|
|
649
|
+
chains.forEach(function(chain) {
|
|
650
|
+
var idx, len = removedObjects.get('length'),
|
|
651
|
+
chainGuid = SC.guidFor(chain),
|
|
652
|
+
clonedChain, item, kvoChainList = '_kvo_enumerable_property_clones';
|
|
653
|
+
|
|
654
|
+
chain.notifyPropertyDidChange();
|
|
655
|
+
|
|
656
|
+
for (idx = 0; idx < len; idx++) {
|
|
657
|
+
item = removedObjects[idx];
|
|
658
|
+
clonedChain = item[kvoChainList][chainGuid];
|
|
659
|
+
clonedChain.deactivate();
|
|
660
|
+
delete item[kvoChainList][chainGuid];
|
|
661
|
+
}
|
|
662
|
+
}, this);
|
|
663
|
+
}
|
|
664
|
+
return this ;
|
|
665
|
+
},
|
|
666
|
+
|
|
667
|
+
/**
|
|
668
|
+
For all registered property chains on this object, removed them from objects
|
|
669
|
+
being removed from the enumerable, and clone them onto newly added objects.
|
|
670
|
+
|
|
671
|
+
@param {Object[]} addedObjects the objects being added to the enumerable
|
|
672
|
+
@param {Object[]} removedObjects the objected being removed from the enumerable
|
|
673
|
+
@returns {Object} receiver
|
|
674
|
+
*/
|
|
675
|
+
setupEnumerablePropertyChains: function(addedObjects) {
|
|
676
|
+
var chains = this._kvo_enumerable_property_chains;
|
|
677
|
+
|
|
678
|
+
if (chains) {
|
|
679
|
+
chains.forEach(function(chain) {
|
|
680
|
+
var idx, len = addedObjects.get('length');
|
|
681
|
+
|
|
682
|
+
chain.notifyPropertyDidChange();
|
|
683
|
+
|
|
684
|
+
len = addedObjects.get('length');
|
|
685
|
+
for (idx = 0; idx < len; idx++) {
|
|
686
|
+
this._clonePropertyChainToItem(chain, addedObjects[idx]);
|
|
687
|
+
}
|
|
688
|
+
}, this);
|
|
689
|
+
}
|
|
478
690
|
return this ;
|
|
479
691
|
},
|
|
480
|
-
|
|
692
|
+
|
|
693
|
+
/**
|
|
694
|
+
Register a property chain to propagate to enumerable content.
|
|
695
|
+
|
|
696
|
+
This will clone the property chain to each item in the enumerable,
|
|
697
|
+
then save it so that it is automatically set up and torn down when
|
|
698
|
+
the enumerable content changes.
|
|
699
|
+
|
|
700
|
+
@param {String} property the property being listened for on this object
|
|
701
|
+
@param {SC._PropertyChain} chain the chain to clone to items
|
|
702
|
+
*/
|
|
703
|
+
registerDependentKeyWithChain: function(property, chain) {
|
|
704
|
+
// Get the set of all existing property chains that should
|
|
705
|
+
// be propagated to enumerable contents. If that set doesn't
|
|
706
|
+
// exist yet, _kvo_for() will create it.
|
|
707
|
+
var kvoChainList = '_kvo_enumerable_property_chains',
|
|
708
|
+
chains, item, clone, cloneList;
|
|
709
|
+
|
|
710
|
+
chains = this._kvo_for(kvoChainList, SC.CoreSet);
|
|
711
|
+
|
|
712
|
+
// Save a reference to the chain on this object. If new objects
|
|
713
|
+
// are added to the enumerable, we will clone this chain and add
|
|
714
|
+
// it to the new object.
|
|
715
|
+
chains.add(chain);
|
|
716
|
+
|
|
717
|
+
this.forEach(function(item) {
|
|
718
|
+
this._clonePropertyChainToItem(chain, item);
|
|
719
|
+
}, this);
|
|
720
|
+
},
|
|
721
|
+
|
|
722
|
+
/**
|
|
723
|
+
Clones an SC._PropertyChain to a content item.
|
|
724
|
+
|
|
725
|
+
@param {SC._PropertyChain} chain
|
|
726
|
+
@param {Object} item
|
|
727
|
+
*/
|
|
728
|
+
_clonePropertyChainToItem: function(chain, item) {
|
|
729
|
+
var clone = SC.clone(chain),
|
|
730
|
+
kvoCloneList = '_kvo_enumerable_property_clones',
|
|
731
|
+
cloneList;
|
|
732
|
+
|
|
733
|
+
clone.object = item;
|
|
734
|
+
|
|
735
|
+
cloneList = item[kvoCloneList] = item[kvoCloneList] || {};
|
|
736
|
+
cloneList[SC.guidFor(chain)] = clone;
|
|
737
|
+
|
|
738
|
+
clone.activate(item);
|
|
739
|
+
},
|
|
740
|
+
|
|
741
|
+
/**
|
|
742
|
+
Removes a dependent key from the enumerable, and tears it down on
|
|
743
|
+
all content objects.
|
|
744
|
+
|
|
745
|
+
@param {String} property
|
|
746
|
+
@param {SC._PropertyChain} chain
|
|
747
|
+
*/
|
|
748
|
+
removeDependentKeyWithChain: function(property, chain) {
|
|
749
|
+
var kvoChainList = '_kvo_enumerable_property_chains',
|
|
750
|
+
kvoCloneList = '_kvo_enumerable_property_clones',
|
|
751
|
+
chains, item, clone, cloneList;
|
|
752
|
+
|
|
753
|
+
this.forEach(function(item) {
|
|
754
|
+
item.removeDependentKeyWithChain(property, chain);
|
|
755
|
+
|
|
756
|
+
cloneList = item[kvoCloneList];
|
|
757
|
+
clone = cloneList[SC.guidFor(chain)];
|
|
758
|
+
|
|
759
|
+
clone.deactivate(item);
|
|
760
|
+
}, this);
|
|
761
|
+
},
|
|
762
|
+
|
|
763
|
+
/**
|
|
764
|
+
@private
|
|
765
|
+
|
|
766
|
+
Clones a segment of an observer chain and applies it
|
|
767
|
+
to an element of this Enumerable.
|
|
768
|
+
|
|
769
|
+
@param {Object} item The element
|
|
770
|
+
@param {SC._ChainObserver} chainObserver the chain segment to begin from
|
|
771
|
+
*/
|
|
772
|
+
_resumeChainObservingForItemWithChainObserver: function(item, chainObserver) {
|
|
773
|
+
var observer = SC.clone(chainObserver.next);
|
|
774
|
+
var key = observer.property;
|
|
775
|
+
|
|
776
|
+
// The chain observer should create new observers on the child object
|
|
777
|
+
observer.object = item;
|
|
778
|
+
item.addObserver(key, observer, observer.propertyDidChange);
|
|
779
|
+
|
|
780
|
+
// if we're in the initial chained observer setup phase, add the tail
|
|
781
|
+
// of the current observer segment to the list of tracked tails.
|
|
782
|
+
if(chainObserver.root.tails) {
|
|
783
|
+
chainObserver.root.tails.pushObject(observer.tail());
|
|
784
|
+
}
|
|
785
|
+
|
|
786
|
+
observer.propertyDidChange();
|
|
787
|
+
|
|
788
|
+
// Maintain a list of observers on the item so we can remove them
|
|
789
|
+
// if it is removed from the enumerable.
|
|
790
|
+
item._kvo_for(SC.keyFor('_kvo_content_observers', key)).push(observer);
|
|
791
|
+
},
|
|
792
|
+
|
|
793
|
+
/**
|
|
794
|
+
@private
|
|
795
|
+
|
|
796
|
+
Adds a content observer. Content observers are able to
|
|
797
|
+
propagate chain observers to each member item in the enumerable,
|
|
798
|
+
so that the observer is fired whenever a single item changes.
|
|
799
|
+
|
|
800
|
+
You should never call this method directly. Instead, you should
|
|
801
|
+
call addObserver() with the special '@each' property in the path.
|
|
802
|
+
|
|
803
|
+
For example, if you wanted to observe changes to each item's isDone
|
|
804
|
+
property, you could call:
|
|
805
|
+
|
|
806
|
+
arrayController.addObserver('@each.isDone');
|
|
807
|
+
|
|
808
|
+
@param {SC._ChainObserver} chainObserver the chain observer to propagate
|
|
809
|
+
*/
|
|
810
|
+
_addContentObserver: function(chainObserver) {
|
|
811
|
+
var key = chainObserver.next.property;
|
|
812
|
+
|
|
813
|
+
// Add the key to a set so we know what we are observing
|
|
814
|
+
this._kvo_for('_kvo_content_observed_keys', SC.CoreSet).push(key);
|
|
815
|
+
|
|
816
|
+
// Add the passed ChainObserver to an ObserverSet for that key
|
|
817
|
+
var kvoKey = SC.keyFor('_kvo_content_observers', key);
|
|
818
|
+
this._kvo_for(kvoKey).push(chainObserver);
|
|
819
|
+
|
|
820
|
+
// set up chained observers on the initial content
|
|
821
|
+
this._setupContentObservers(0, chainObserver.object.get('length'));
|
|
822
|
+
},
|
|
823
|
+
|
|
824
|
+
/**
|
|
825
|
+
@private
|
|
826
|
+
|
|
827
|
+
Removes a content observer. Pass the same chain observer
|
|
828
|
+
that was used to add the content observer.
|
|
829
|
+
|
|
830
|
+
@param {SC._ChainObserver} chainObserver the chain observer to propagate
|
|
831
|
+
*/
|
|
832
|
+
|
|
833
|
+
_removeContentObserver: function(chainObserver) {
|
|
834
|
+
var observers, kvoKey;
|
|
835
|
+
var observedKeys = this._kvo_content_observed_keys;
|
|
836
|
+
var key = chainObserver.next.property;
|
|
837
|
+
|
|
838
|
+
if (observedKeys.contains(key)) {
|
|
839
|
+
|
|
840
|
+
kvoKey = SC.keyFor('_kvo_content_observers', key);
|
|
841
|
+
observers = this._kvo_for(kvoKey);
|
|
842
|
+
|
|
843
|
+
observers.removeObject(chainObserver);
|
|
844
|
+
|
|
845
|
+
this._teardownContentObservers(0, chainObserver.object.get('length'));
|
|
846
|
+
|
|
847
|
+
if (observers.length === 0) {
|
|
848
|
+
this._kvo_for('_kvo_content_observed_keys').remove(key);
|
|
849
|
+
}
|
|
850
|
+
}
|
|
851
|
+
},
|
|
852
|
+
|
|
481
853
|
/** @private
|
|
482
|
-
Observer fires whenever the '[]' property changes. If there are
|
|
854
|
+
Observer fires whenever the '[]' property changes. If there are
|
|
483
855
|
range observers, will notify observers of change.
|
|
484
856
|
*/
|
|
485
857
|
_array_notifyRangeObservers: function() {
|
|
486
858
|
var rangeob = this._array_rangeObservers,
|
|
487
859
|
changes = this._array_rangeChanges,
|
|
488
|
-
len = rangeob ? rangeob.length : 0,
|
|
860
|
+
len = rangeob ? rangeob.length : 0,
|
|
489
861
|
idx, cur;
|
|
490
|
-
|
|
862
|
+
|
|
491
863
|
if (len > 0 && changes && changes.length > 0) {
|
|
492
864
|
for(idx=0;idx<len;idx++) rangeob[idx].rangeDidChange(changes);
|
|
493
865
|
changes.clear(); // reset for later notifications
|
|
494
866
|
}
|
|
495
867
|
}
|
|
496
|
-
|
|
497
|
-
} ;
|
|
498
868
|
|
|
499
|
-
|
|
500
|
-
// since built-in Array's are already enumerable.
|
|
501
|
-
SC.mixin(Array.prototype, SC.Array) ;
|
|
502
|
-
SC.Array = SC.mixin({}, SC.Enumerable, SC.Array) ;
|
|
869
|
+
} ;
|
|
503
870
|
|
|
504
|
-
// Add any extra methods to SC.Array that are native to the built-in Array.
|
|
505
871
|
/**
|
|
506
|
-
|
|
507
|
-
uses the observable array methods to retrieve the objects for the new
|
|
508
|
-
slice.
|
|
509
|
-
|
|
510
|
-
@param beginIndex {Integer} (Optional) index to begin slicing from.
|
|
511
|
-
@param endIndex {Integer} (Optional) index to end the slice at.
|
|
512
|
-
@returns {Array} New array with specified slice
|
|
513
|
-
*/
|
|
514
|
-
SC.Array.slice = function(beginIndex, endIndex) {
|
|
515
|
-
var ret = [];
|
|
516
|
-
var length = this.get('length') ;
|
|
517
|
-
if (SC.none(beginIndex)) beginIndex = 0 ;
|
|
518
|
-
if (SC.none(endIndex) || (endIndex > length)) endIndex = length ;
|
|
519
|
-
while(beginIndex < endIndex) ret[ret.length] = this.objectAt(beginIndex++) ;
|
|
520
|
-
return ret ;
|
|
521
|
-
} ;
|
|
872
|
+
@namespace
|
|
522
873
|
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
@param {Object} object the item to search for
|
|
527
|
-
@param {NUmber} startAt optional starting location to search, default 0
|
|
528
|
-
@returns {Number} index of -1 if not found
|
|
529
|
-
*/
|
|
530
|
-
SC.Array.indexOf = function(object, startAt) {
|
|
531
|
-
var idx, len = this.get('length');
|
|
532
|
-
|
|
533
|
-
if (startAt === undefined) startAt = 0;
|
|
534
|
-
else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
|
|
535
|
-
if (startAt < 0) startAt += len;
|
|
536
|
-
|
|
537
|
-
for(idx=startAt;idx<len;idx++) {
|
|
538
|
-
if (this.objectAt(idx) === object) return idx ;
|
|
539
|
-
}
|
|
540
|
-
return -1;
|
|
541
|
-
};
|
|
874
|
+
This module implements Observer-friendly Array-like behavior. This mixin is
|
|
875
|
+
picked up by the Array class as well as other controllers, etc. that want to
|
|
876
|
+
appear to be arrays.
|
|
542
877
|
|
|
543
|
-
|
|
544
|
-
|
|
878
|
+
Unlike SC.Enumerable, this mixin defines methods specifically for
|
|
879
|
+
collections that provide index-ordered access to their contents. When you
|
|
880
|
+
are designing code that needs to accept any kind of Array-like object, you
|
|
881
|
+
should use these methods instead of Array primitives because these will
|
|
882
|
+
properly notify observers of changes to the array.
|
|
545
883
|
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
884
|
+
Although these methods are efficient, they do add a layer of indirection to
|
|
885
|
+
your application so it is a good idea to use them only when you need the
|
|
886
|
+
flexibility of using both true JavaScript arrays and "virtual" arrays such
|
|
887
|
+
as controllers and collections.
|
|
888
|
+
|
|
889
|
+
You can use the methods defined in this module to access and modify array
|
|
890
|
+
contents in a KVO-friendly way. You can also be notified whenever the
|
|
891
|
+
membership if an array changes by changing the syntax of the property to
|
|
892
|
+
.observes('*myProperty.[]') .
|
|
893
|
+
|
|
894
|
+
To support SC.Array in your own class, you must override two
|
|
895
|
+
primitives to use it: replace() and objectAt().
|
|
896
|
+
|
|
897
|
+
Note that the SC.Array mixin also incorporates the SC.Enumerable mixin. All
|
|
898
|
+
SC.Array-like objects are also enumerable.
|
|
899
|
+
|
|
900
|
+
@extends SC.Enumerable
|
|
901
|
+
@since SproutCore 0.9.0
|
|
552
902
|
*/
|
|
553
|
-
SC.Array
|
|
554
|
-
var idx, len = this.get('length');
|
|
555
|
-
|
|
556
|
-
if (startAt === undefined) startAt = len-1;
|
|
557
|
-
else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
|
|
558
|
-
if (startAt < 0) startAt += len;
|
|
559
|
-
|
|
560
|
-
for(idx=startAt;idx>=0;idx--) {
|
|
561
|
-
if (this.objectAt(idx) === object) return idx ;
|
|
562
|
-
}
|
|
563
|
-
return -1;
|
|
564
|
-
};
|
|
565
|
-
|
|
566
|
-
// Some browsers do not support lastIndexOf natively. Patch if needed
|
|
567
|
-
if (!Array.prototype.lastIndexOf) {
|
|
568
|
-
Array.prototype.lastIndexOf = SC.Array.lastIndexOf;
|
|
569
|
-
}
|
|
570
|
-
|
|
571
|
-
// ......................................................
|
|
572
|
-
// ARRAY SUPPORT
|
|
573
|
-
//
|
|
574
|
-
// Implement the same enhancements on Array. We use specialized methods
|
|
575
|
-
// because working with arrays are so common.
|
|
576
|
-
(function() {
|
|
577
|
-
SC.mixin(Array.prototype, {
|
|
578
|
-
|
|
579
|
-
// primitive for array support.
|
|
580
|
-
replace: function(idx, amt, objects) {
|
|
581
|
-
if (this.isFrozen) throw SC.FROZEN_ERROR ;
|
|
582
|
-
if (!objects || objects.length === 0) {
|
|
583
|
-
this.splice(idx, amt) ;
|
|
584
|
-
} else {
|
|
585
|
-
var args = [idx, amt].concat(objects) ;
|
|
586
|
-
this.splice.apply(this,args) ;
|
|
587
|
-
}
|
|
588
|
-
|
|
589
|
-
// if we replaced exactly the same number of items, then pass only the
|
|
590
|
-
// replaced range. Otherwise, pass the full remaining array length
|
|
591
|
-
// since everything has shifted
|
|
592
|
-
var len = objects ? (objects.get ? objects.get('length') : objects.length) : 0;
|
|
593
|
-
this.enumerableContentDidChange(idx, amt, len - amt) ;
|
|
594
|
-
return this ;
|
|
595
|
-
},
|
|
596
|
-
|
|
597
|
-
// If you ask for an unknown property, then try to collect the value
|
|
598
|
-
// from member items.
|
|
599
|
-
unknownProperty: function(key, value) {
|
|
600
|
-
var ret = this.reducedProperty(key, value) ;
|
|
601
|
-
if ((value !== undefined) && ret === undefined) {
|
|
602
|
-
ret = this[key] = value;
|
|
603
|
-
}
|
|
604
|
-
return ret ;
|
|
605
|
-
}
|
|
606
|
-
|
|
607
|
-
});
|
|
608
|
-
|
|
609
|
-
// If browser did not implement indexOf natively, then override with
|
|
610
|
-
// specialized version
|
|
611
|
-
var indexOf = Array.prototype.indexOf;
|
|
612
|
-
if (!indexOf || (indexOf === SC.Array.indexOf)) {
|
|
613
|
-
Array.prototype.indexOf = function(object, startAt) {
|
|
614
|
-
var idx, len = this.length;
|
|
615
|
-
|
|
616
|
-
if (startAt === undefined) startAt = 0;
|
|
617
|
-
else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
|
|
618
|
-
if (startAt < 0) startAt += len;
|
|
619
|
-
|
|
620
|
-
for(idx=startAt;idx<len;idx++) {
|
|
621
|
-
if (this[idx] === object) return idx ;
|
|
622
|
-
}
|
|
623
|
-
return -1;
|
|
624
|
-
} ;
|
|
625
|
-
}
|
|
626
|
-
|
|
627
|
-
var lastIndexOf = Array.prototype.lastIndexOf ;
|
|
628
|
-
if (!lastIndexOf || (lastIndexOf === SC.Array.lastIndexOf)) {
|
|
629
|
-
Array.prototype.lastIndexOf = function(object, startAt) {
|
|
630
|
-
var idx, len = this.length;
|
|
631
|
-
|
|
632
|
-
if (startAt === undefined) startAt = len-1;
|
|
633
|
-
else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
|
|
634
|
-
if (startAt < 0) startAt += len;
|
|
635
|
-
|
|
636
|
-
for(idx=startAt;idx>=0;idx--) {
|
|
637
|
-
if (this[idx] === object) return idx ;
|
|
638
|
-
}
|
|
639
|
-
return -1;
|
|
640
|
-
};
|
|
641
|
-
}
|
|
642
|
-
|
|
643
|
-
})();
|
|
903
|
+
SC.Array = SC.mixin({}, SC.Enumerable, SC.CoreArray);
|