sproutcore 1.5.0-java → 1.6.0.beta.2-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/.mailmap +32 -0
- data/CHANGELOG +15 -0
- data/Rakefile +18 -0
- data/VERSION.yml +2 -2
- data/bin/sc-build +0 -5
- data/bin/sc-build-number +0 -5
- data/bin/sc-docs +0 -5
- data/bin/sc-gen +0 -5
- data/bin/sc-init +0 -5
- data/bin/sc-manifest +0 -5
- data/bin/sc-server +0 -5
- data/bin/sproutcore +0 -5
- data/lib/frameworks/sproutcore/Buildfile +3 -3
- data/lib/frameworks/sproutcore/CHANGELOG.md +21 -0
- data/lib/frameworks/sproutcore/README.md +77 -7
- data/lib/frameworks/sproutcore/frameworks/ajax/system/request.js +0 -2
- data/lib/frameworks/sproutcore/frameworks/animation/core.js +3 -2
- data/lib/frameworks/sproutcore/frameworks/bootstrap/system/browser.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/controllers/array.js +1 -17
- data/lib/frameworks/sproutcore/frameworks/core_foundation/controllers/controller.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/controllers/object.js +4 -4
- data/lib/frameworks/sproutcore/frameworks/core_foundation/controls/button.js +49 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/handlebars/collection.js +23 -21
- data/lib/frameworks/sproutcore/frameworks/core_foundation/mixins/delegate_support.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/mixins/template_helpers/checkbox_support.js +36 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/mixins/template_helpers/text_field_support.js +126 -7
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/pane.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/template.js +13 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/device.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/event.js +16 -16
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/platform.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/render_context.js +1 -34
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/root_responder.js +29 -23
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/sparse_array.js +8 -4
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/string.js +20 -23
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/controls/button.js +78 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/mixins/template_helpers/checkbox_support.js +26 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/mixins/template_helpers/text_field_support.js +115 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/sparse_array.js +55 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/template/collection.js +49 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/template/handlebars.js +19 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/template.js +1 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/template_collection.js +2 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view.js +38 -41
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/animation.js +4 -3
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/base.js +1 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/layout.js +1 -0
- data/lib/frameworks/sproutcore/frameworks/datastore/system/query.js +7 -82
- data/lib/frameworks/sproutcore/frameworks/datastore/system/record_array.js +12 -5
- data/lib/frameworks/sproutcore/frameworks/datastore/system/store.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/record_array/array_observers.js +82 -0
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/record_array/flush.js +17 -0
- data/lib/frameworks/sproutcore/frameworks/debug/core.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/debug/invoke_once_last_debugging.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/core.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/slider.css +33 -30
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/border.js +12 -11
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/collection_fast_path.js +7 -7
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/collection_row_delegate.js +4 -4
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/collection_view_delegate.js +20 -20
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/navigation_builder.js +5 -5
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/scrollable.js +10 -10
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/alert.js +24 -23
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/menu.js +51 -54
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/modal.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/panel.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/select_button.js +29 -29
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/sheet.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/protocols/drag_source.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/protocols/drop_target.js +6 -6
- data/lib/frameworks/sproutcore/frameworks/desktop/protocols/responder.js +4 -4
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/checkbox.js +5 -5
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/master_detail.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/progress.js +5 -5
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/radio.js +7 -7
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/radio_group.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/slider.js +7 -5
- data/lib/frameworks/sproutcore/frameworks/desktop/system/drag.js +31 -31
- data/lib/frameworks/sproutcore/frameworks/desktop/system/undo_manager.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/views/button.js +35 -29
- data/lib/frameworks/sproutcore/frameworks/desktop/views/checkbox.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/views/collection.js +61 -50
- data/lib/frameworks/sproutcore/frameworks/desktop/views/segmented.js +9 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/views/select.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/views/select_field.js +6 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/views/static_content.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/Buildfile +2 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/coders/object.js +12 -12
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/controllers/designs.js +6 -6
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/controllers/page_files.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/css/css_style_sheet.js +7 -9
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/designers/object_designer.js +13 -13
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/designers/view_designer.js +37 -37
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/ext/object.js +3 -2
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/ext/page.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/ext/view.js +4 -3
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/mixins/snap_lines.js +7 -6
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/views/designer_drop_target.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/views/drawing.js +49 -42
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/views/high_light.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/views/page_item_view.js +6 -6
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/device_motion/device.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/{forms → experimental/frameworks/forms}/english.lproj/default_styles.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/{forms → experimental/frameworks/forms}/english.lproj/strings.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{forms → experimental/frameworks/forms}/mixins/edit_mode.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{forms → experimental/frameworks/forms}/mixins/emptiness.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{forms → experimental/frameworks/forms}/render_delegates/form.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{forms → experimental/frameworks/forms}/render_delegates/form_row.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{forms → experimental/frameworks/forms}/tests/views/form.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{forms → experimental/frameworks/forms}/tests/views/form_checkbox_field.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{forms → experimental/frameworks/forms}/tests/views/form_field.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{forms → experimental/frameworks/forms}/tests/views/form_label.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{forms → experimental/frameworks/forms}/tests/views/form_radio_field.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{forms → experimental/frameworks/forms}/tests/views/form_row.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{forms → experimental/frameworks/forms}/tests/views/form_text_field.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{forms → experimental/frameworks/forms}/views/form.js +13 -14
- data/lib/frameworks/sproutcore/frameworks/{forms → experimental/frameworks/forms}/views/form_row.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/polymorphism/models/record.js +4 -6
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/static_layout.js +0 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/private/tree_item_observer.js +2 -4
- data/lib/frameworks/sproutcore/frameworks/foundation/system/image_queue.js +8 -12
- data/lib/frameworks/sproutcore/frameworks/foundation/views/inline_text_field.js +28 -34
- data/lib/frameworks/sproutcore/frameworks/{foundation → routing}/system/routes.js +31 -47
- data/lib/frameworks/sproutcore/frameworks/{foundation → routing}/tests/system/routes.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/core.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/base.js +15 -21
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/array.js +8 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/enumerable.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/mixins/array_observers.js +23 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/binding.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/contains.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/intersects.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/statechart/system/state.js +66 -133
- data/lib/frameworks/sproutcore/frameworks/statechart/system/statechart.js +68 -139
- data/lib/frameworks/sproutcore/frameworks/testing/system/plan.js +11 -11
- data/lib/frameworks/sproutcore/frameworks/testing/system/suite.js +23 -29
- data/lib/frameworks/sproutcore/lib/index.rhtml +5 -2
- data/lib/sproutcore.rb +2 -9
- data/lib/sproutcore/builders/minify.rb +5 -5
- data/lib/sproutcore/helpers/minifier.rb +6 -10
- data/lib/sproutcore/models/target.rb +2 -2
- data/lib/sproutcore/rack/proxy.rb +8 -7
- data/lib/sproutcore/tools.rb +16 -5
- data/spec/lib/builders/html_spec.rb +5 -5
- data/sproutcore.gemspec +11 -5
- data/vendor/chance/lib/chance.rb +4 -2
- data/{lib/sproutcore/vendor → vendor}/jsdoc/README.txt +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/frame.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/frame/Chain.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/frame/Dumper.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/frame/Hash.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/frame/Link.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/frame/Namespace.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/frame/Opt.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/frame/Reflection.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/frame/String.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/frame/Testrun.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/handlers/FOODOC.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/handlers/XMLDOC.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/handlers/XMLDOC/DomReader.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/handlers/XMLDOC/XMLDoc.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/handlers/XMLDOC/XMLParse.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC/DocComment.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC/DocTag.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC/JsDoc.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC/JsPlate.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC/Lang.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC/Parser.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC/PluginManager.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC/Symbol.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC/SymbolSet.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC/TextStream.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC/Token.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC/TokenReader.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC/TokenStream.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC/Util.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/lib/JSDOC/Walker.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/main.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/plugins/commentSrcJson.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/plugins/frameworkPrototype.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/plugins/functionCall.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/plugins/publishSrcHilite.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/plugins/sproutcoreTags.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/plugins/symbolLink.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/plugins/tagParamConfig.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/plugins/tagSynonyms.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/run.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/t/TestDoc.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/t/runner.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/addon.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/anon_inner.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/augments.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/augments2.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/borrows.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/borrows2.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/config.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/constructs.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/encoding.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/encoding_other.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/functions_anon.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/functions_nested.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/global.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/globals.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/ignore.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/inner.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/jsdoc_test.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/lend.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/memberof.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/memberof_constructor.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/name.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/namespace_nested.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/nocode.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/oblit_anon.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/overview.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/param_inline.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/params_optional.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/prototype.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/prototype_nested.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/prototype_oblit.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/prototype_oblit_constructor.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/public.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/shared.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/shared2.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/shortcuts.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/static_this.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/synonyms.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/tosource.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/test/variable_redefine.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/changes.txt +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/conf/sample.conf +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/java/build.xml +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/java/build_1.4.xml +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/java/classes/js.jar +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/java/src/JsDebugRun.java +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/java/src/JsRun.java +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/jsdebug.jar +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/jsrun.jar +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/t/TestDoc.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/t/runner.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/addon.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/anon_inner.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/augments.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/augments2.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/borrows.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/borrows2.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/config.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/constructs.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/encoding.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/encoding_other.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/functions_anon.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/functions_nested.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/global.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/globals.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/ignore.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/inner.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/jsdoc_test.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/lend.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/memberof.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/memberof_constructor.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/name.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/namespace_nested.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/nocode.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/oblit_anon.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/overview.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/param_inline.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/params_optional.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/prototype.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/prototype_nested.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/prototype_oblit.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/prototype_oblit_constructor.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/public.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/shared.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/shared2.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/shortcuts.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/static_this.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/synonyms.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/tosource.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/test/variable_redefine.js +0 -0
- data/vendor/sproutcore/{src/SCCompiler/lib/yuicompressor-2.4.4.jar → lib/yuicompressor-2.4.6.jar} +0 -0
- metadata +169 -178
- data/lib/frameworks/sproutcore/frameworks/desktop/views/file.js +0 -148
- data/lib/sproutcore/vendor/github_gem_lint.rb +0 -22
- data/vendor/sproutcore/SCCompiler.jar +0 -0
- data/vendor/sproutcore/lib/args4j-2.0.12.jar +0 -0
- data/vendor/sproutcore/lib/yuicompressor-2.4.2.jar +0 -0
- data/vendor/sproutcore/src/SCCompiler/build.xml +0 -74
- 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/manifest.mf +0 -3
- data/vendor/sproutcore/src/SCCompiler/nbproject/build-impl.xml +0 -894
- data/vendor/sproutcore/src/SCCompiler/nbproject/genfiles.properties +0 -8
- data/vendor/sproutcore/src/SCCompiler/nbproject/private/config.properties +0 -0
- data/vendor/sproutcore/src/SCCompiler/nbproject/private/private.properties +0 -10
- data/vendor/sproutcore/src/SCCompiler/nbproject/private/private.xml +0 -4
- data/vendor/sproutcore/src/SCCompiler/nbproject/project.properties +0 -90
- data/vendor/sproutcore/src/SCCompiler/nbproject/project.xml +0 -15
- data/vendor/sproutcore/src/SCCompiler/src/com/sproutcore/Main.java +0 -348
|
@@ -21,62 +21,58 @@ sc_require('mixins/inline_editor');
|
|
|
21
21
|
editing. If you would like to use the inline editor for your own views,
|
|
22
22
|
you can do that also by using the editing API described here.
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
## Using the Inline Editor in Your Own Views
|
|
25
25
|
|
|
26
26
|
To use the inlineEditor on a custom view you should mixin SC.InlineEditable on
|
|
27
27
|
it. SC.InlineTextFieldView is the default editor so you do not need to do any
|
|
28
28
|
other setup. The class methods beginEditing, commitEditing, and discardEditing
|
|
29
29
|
still exist for backwards compatibility but should not be used on new views.
|
|
30
30
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
});
|
|
34
|
-
}}}
|
|
31
|
+
MyProject.MyView = SC.View.extend(SC.InlineEditable, {
|
|
32
|
+
});
|
|
35
33
|
|
|
36
|
-
|
|
34
|
+
### Starting the Editor
|
|
37
35
|
|
|
38
36
|
The inline editor works by positioning itself over the top of your view
|
|
39
37
|
with the same offset, width, and font information.
|
|
40
38
|
|
|
41
39
|
To start it simply call beginEditing on your view.
|
|
42
40
|
|
|
43
|
-
|
|
44
|
-
myView.beginEditing();
|
|
45
|
-
}}}
|
|
41
|
+
myView.beginEditing();
|
|
46
42
|
|
|
47
43
|
By default, if the inline editor is currently in use elsewhere, it will automatically
|
|
48
44
|
close itself over there and begin editing for your view instead. This behavior
|
|
49
45
|
is defined by the inlineEditorDelegate of your view, and can be changed by using
|
|
50
46
|
one other than the default.
|
|
51
47
|
|
|
52
|
-
|
|
48
|
+
## Customizing the editor
|
|
53
49
|
|
|
54
50
|
The editor has several parameters that can be used to customize it to your
|
|
55
51
|
needs. These options should be set on the editor passed to your delegate's (or
|
|
56
52
|
view's) inlineEditorWillBeginEditing method:
|
|
57
53
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
54
|
+
- `exampleFrame` -- The editors initial frame in viewport coordinates.
|
|
55
|
+
- `value` -- Initial value of the edit field.
|
|
56
|
+
- `exampleElement` -- A DOM element to use when copying styles.
|
|
57
|
+
- `multiline` -- If YES then the hitting return will add to the value instead
|
|
58
|
+
of exiting the inline editor.
|
|
59
|
+
- `commitOnBlur` -- If YES then blurring will commit the value, otherwise it
|
|
60
|
+
will discard the current value. Defaults to YES.
|
|
61
|
+
- `validator` -- Validator to be attached to the field.
|
|
64
62
|
|
|
65
63
|
For backwards compatibility, calling the class method beginEditing with an
|
|
66
64
|
options hash will translate the values in the hash to the correct settings on
|
|
67
65
|
the editor.
|
|
68
66
|
|
|
69
|
-
|
|
67
|
+
## Committing or Discarding Changes
|
|
70
68
|
|
|
71
69
|
Normally the editor will automatically commit or discard its changes
|
|
72
70
|
whenever the user exits the edit mode by pressing enter, escape, or clicking
|
|
73
71
|
elsewhere on the page. If you need to force the editor to end editing, you can
|
|
74
72
|
do so by calling commitEditing() or discardEditing():
|
|
75
73
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
myView.discardEditing();
|
|
79
|
-
}}}
|
|
74
|
+
myView.commitEditing();
|
|
75
|
+
myView.discardEditing();
|
|
80
76
|
|
|
81
77
|
Both methods will try to end the editing context and will call the
|
|
82
78
|
relevant delegate methods on the inlineEditorDelegate set on your view.
|
|
@@ -515,23 +511,21 @@ SC.mixin(SC.InlineTextFieldView, {
|
|
|
515
511
|
* To trigger compatibility mode, call this method with a hash of options. The
|
|
516
512
|
* required options are:
|
|
517
513
|
*
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
}) ;
|
|
524
|
-
}}}
|
|
514
|
+
SC.InlineTextFieldView.beginEditing({
|
|
515
|
+
delegate: myView,
|
|
516
|
+
frame: myView.get('frame'),
|
|
517
|
+
exampleElement: myView.$()
|
|
518
|
+
}) ;
|
|
525
519
|
*
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
520
|
+
- `delegate` -- The view that should be notified of events on the editor.
|
|
521
|
+
- `frame` -- The frame of the view that you want the editor to position itself over.
|
|
522
|
+
- `exampleElement` -- A DOM element to use when copying styles.
|
|
529
523
|
|
|
530
524
|
* Other options may be passed to further customize the editor:
|
|
531
525
|
*
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
526
|
+
- `multiline` -- If YES then the hitting return will add to the value instead of exiting the inline editor.
|
|
527
|
+
- `commitOnBlur` -- If YES then blurring will commit the value, otherwise it will discard the current value. Defaults to YES.
|
|
528
|
+
- `validator` -- Validator to be attached to the field.
|
|
535
529
|
|
|
536
530
|
The editor expects your source view to implement the InlineTextFieldViewDelegate protocol.
|
|
537
531
|
|
|
@@ -9,24 +9,18 @@
|
|
|
9
9
|
SC.routes manages the browser location. You can change the hash part of the
|
|
10
10
|
current location. The following code
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
SC.routes.set('location', 'notes/edit/4');
|
|
14
|
-
}}}
|
|
12
|
+
SC.routes.set('location', 'notes/edit/4');
|
|
15
13
|
|
|
16
14
|
will change the location to http://domain.tld/my_app#notes/edit/4. Adding
|
|
17
15
|
routes will register a handler that will be called whenever the location
|
|
18
16
|
changes and matches the route:
|
|
19
17
|
|
|
20
|
-
|
|
21
|
-
SC.routes.add(':controller/:action/:id', MyApp, MyApp.route);
|
|
22
|
-
}}}
|
|
18
|
+
SC.routes.add(':controller/:action/:id', MyApp, MyApp.route);
|
|
23
19
|
|
|
24
20
|
You can pass additional parameters in the location hash that will be relayed
|
|
25
21
|
to the route handler:
|
|
26
22
|
|
|
27
|
-
|
|
28
|
-
SC.routes.set('location', 'notes/show/4?format=xml&language=fr');
|
|
29
|
-
}}}
|
|
23
|
+
SC.routes.set('location', 'notes/show/4?format=xml&language=fr');
|
|
30
24
|
|
|
31
25
|
The syntax for the location hash is described in the location property
|
|
32
26
|
documentation, and the syntax for adding handlers is described in the
|
|
@@ -51,15 +45,13 @@ SC.routes = SC.Object.create({
|
|
|
51
45
|
event.
|
|
52
46
|
|
|
53
47
|
By default it is NO, so your URLs will look like:
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
}}}
|
|
48
|
+
|
|
49
|
+
http://domain.tld/my_app#notes/edit/4
|
|
57
50
|
|
|
58
51
|
If set to YES and the browser supports pushState(), your URLs will look
|
|
59
52
|
like:
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
}}}
|
|
53
|
+
|
|
54
|
+
http://domain.tld/my_app/notes/edit/4
|
|
63
55
|
|
|
64
56
|
You will also need to make sure that baseURI is properly configured, as
|
|
65
57
|
well as your server so that your routes are properly pointing to your
|
|
@@ -87,15 +79,13 @@ SC.routes = SC.Object.create({
|
|
|
87
79
|
|
|
88
80
|
The build tools automatically configure this value if you have the
|
|
89
81
|
html5_history option activated in the Buildfile:
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
}}}
|
|
82
|
+
|
|
83
|
+
config :my_app, :html5_history => true
|
|
93
84
|
|
|
94
85
|
Alternatively, it uses by default the value of the href attribute of the
|
|
95
86
|
<base> tag of the HTML document. For example:
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
}}}
|
|
87
|
+
|
|
88
|
+
<base href="http://domain.tld/my_app">
|
|
99
89
|
|
|
100
90
|
The value can also be customized before or during the exectution of the
|
|
101
91
|
main() method.
|
|
@@ -183,9 +173,7 @@ SC.routes = SC.Object.create({
|
|
|
183
173
|
|
|
184
174
|
The following code
|
|
185
175
|
|
|
186
|
-
|
|
187
|
-
SC.routes.set('location', 'notes/edit/4');
|
|
188
|
-
}}}
|
|
176
|
+
SC.routes.set('location', 'notes/edit/4');
|
|
189
177
|
|
|
190
178
|
will change the location to http://domain.tld/my_app#notes/edit/4 and call
|
|
191
179
|
the correct route handler if it has been registered with the add method.
|
|
@@ -193,31 +181,25 @@ SC.routes = SC.Object.create({
|
|
|
193
181
|
You can also pass additional parameters. They will be relayed to the route
|
|
194
182
|
handler. For example, the following code
|
|
195
183
|
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
SC.routes.set('location', 'notes/show/4?format=xml&language=fr');
|
|
199
|
-
}}}
|
|
184
|
+
SC.routes.add(':controller/:action/:id', MyApp, MyApp.route);
|
|
185
|
+
SC.routes.set('location', 'notes/show/4?format=xml&language=fr');
|
|
200
186
|
|
|
201
187
|
will change the location to
|
|
202
188
|
http://domain.tld/my_app#notes/show/4?format=xml&language=fr and call the
|
|
203
189
|
MyApp.route method with the following argument:
|
|
204
190
|
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
language: 'fr' }
|
|
213
|
-
}}}
|
|
191
|
+
{ route: 'notes/show/4',
|
|
192
|
+
params: '?format=xml&language=fr',
|
|
193
|
+
controller: 'notes',
|
|
194
|
+
action: 'show',
|
|
195
|
+
id: '4',
|
|
196
|
+
format: 'xml',
|
|
197
|
+
language: 'fr' }
|
|
214
198
|
|
|
215
199
|
The location can also be set with a hash, the following code
|
|
216
200
|
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
{ route: 'notes/edit/4', format: 'xml', language: 'fr' });
|
|
220
|
-
}}}
|
|
201
|
+
SC.routes.set('location',
|
|
202
|
+
{ route: 'notes/edit/4', format: 'xml', language: 'fr' });
|
|
221
203
|
|
|
222
204
|
will change the location to
|
|
223
205
|
http://domain.tld/my_app#notes/show/4?format=xml&language=fr.
|
|
@@ -341,17 +323,19 @@ SC.routes = SC.Object.create({
|
|
|
341
323
|
|
|
342
324
|
/**
|
|
343
325
|
Adds a route handler. Routes have the following format:
|
|
344
|
-
|
|
345
|
-
|
|
326
|
+
|
|
327
|
+
- 'users/show/5' is a static route and only matches this exact string,
|
|
328
|
+
- ':action/:controller/:id' is a dynamic route and the handler will be
|
|
346
329
|
called with the 'action', 'controller' and 'id' parameters passed in a
|
|
347
330
|
hash,
|
|
348
|
-
|
|
331
|
+
- '*url' is a wildcard route, it matches the whole route and the handler
|
|
349
332
|
will be called with the 'url' parameter passed in a hash.
|
|
350
333
|
|
|
351
334
|
Route types can be combined, the following are valid routes:
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
335
|
+
|
|
336
|
+
- 'users/:action/:id'
|
|
337
|
+
- ':controller/show/:id'
|
|
338
|
+
- ':controller/ *url' (ignore the space, because of jslint)
|
|
355
339
|
|
|
356
340
|
@param {String} route the route to be registered
|
|
357
341
|
@param {Object} target the object on which the method will be called, or
|
|
File without changes
|
|
@@ -36,7 +36,7 @@ if (typeof console === 'undefined') {
|
|
|
36
36
|
// rest of the methods go into the mixin defined below.
|
|
37
37
|
|
|
38
38
|
/**
|
|
39
|
-
@version 1.
|
|
39
|
+
@version 1.6.0.beta.2
|
|
40
40
|
@namespace
|
|
41
41
|
|
|
42
42
|
All SproutCore methods and functions are defined
|
|
@@ -57,7 +57,7 @@ if (typeof console === 'undefined') {
|
|
|
57
57
|
window.SC = window.SC || {} ;
|
|
58
58
|
window.SproutCore = window.SproutCore || SC ;
|
|
59
59
|
|
|
60
|
-
SC.VERSION = '1.
|
|
60
|
+
SC.VERSION = '1.6.0.beta.2';
|
|
61
61
|
|
|
62
62
|
/**
|
|
63
63
|
@private
|
|
@@ -17,11 +17,9 @@
|
|
|
17
17
|
instance of the object you want to have tested. You can also implement the
|
|
18
18
|
destroyObject() method, which should destroy a passed object.
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
});
|
|
24
|
-
}}}
|
|
20
|
+
SC.ArrayTests.generate("Array", {
|
|
21
|
+
newObject: function() { return []; }
|
|
22
|
+
});
|
|
25
23
|
|
|
26
24
|
newObject must accept an optional array indicating the number of items
|
|
27
25
|
that should be in the array. You should initialize the the item with
|
|
@@ -31,16 +29,14 @@
|
|
|
31
29
|
function you pass will be invoked whenever the ArrayTests are generated. The
|
|
32
30
|
parameter passed will be the instance of ArrayTests you should work with.
|
|
33
31
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
T.module("length");
|
|
32
|
+
SC.ArrayTests.define(function(T) {
|
|
33
|
+
T.module("length");
|
|
37
34
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
}}}
|
|
35
|
+
test("verify length", function() {
|
|
36
|
+
var ary = T.newObject();
|
|
37
|
+
equals(ary.get('length'), 0, 'should have 0 initial length');
|
|
38
|
+
});
|
|
39
|
+
}
|
|
44
40
|
*/
|
|
45
41
|
|
|
46
42
|
SC.TestSuite = /** @scope SC.TestSuite.prototype */ {
|
|
@@ -182,13 +178,11 @@ SC.TestSuite = /** @scope SC.TestSuite.prototype */ {
|
|
|
182
178
|
a convenience function for use inside of a definition function. You could
|
|
183
179
|
do the same thing by calling:
|
|
184
180
|
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
}
|
|
191
|
-
}}}
|
|
181
|
+
var T = this ;
|
|
182
|
+
module(T.desc(description), {
|
|
183
|
+
setup: function() { T.setup(); },
|
|
184
|
+
teardown: function() { T.teardown(); }
|
|
185
|
+
}
|
|
192
186
|
|
|
193
187
|
@param {String} desc detailed descrition
|
|
194
188
|
@returns {SC.TestSuite} receiver
|
|
@@ -567,6 +567,14 @@ SC.CoreArray = /** @lends SC.Array.prototype */ {
|
|
|
567
567
|
var target, action;
|
|
568
568
|
var didChangeObservers = this._kvo_array_did_change;
|
|
569
569
|
if (didChangeObservers) {
|
|
570
|
+
// If arrayContentDidChange is called with no parameters, assume the
|
|
571
|
+
// entire array has changed.
|
|
572
|
+
if (start === undefined) {
|
|
573
|
+
start = 0;
|
|
574
|
+
removedCount = this.get('length');
|
|
575
|
+
addedCount = 0;
|
|
576
|
+
}
|
|
577
|
+
|
|
570
578
|
members = didChangeObservers.members;
|
|
571
579
|
membersLen = members.length;
|
|
572
580
|
|
|
@@ -62,7 +62,7 @@ SC.Enumerable = /** @scope SC.Enumerable.prototype */{
|
|
|
62
62
|
/**
|
|
63
63
|
Implement this method to make your class enumerable.
|
|
64
64
|
|
|
65
|
-
This method will be
|
|
65
|
+
This method will be called repeatedly during enumeration. The index value
|
|
66
66
|
will always begin with 0 and increment monotonically. You don't have to
|
|
67
67
|
rely on the index value to determine what object to return, but you should
|
|
68
68
|
always check the value and start from the beginning when you see the
|
|
@@ -72,7 +72,7 @@ SC.Enumerable = /** @scope SC.Enumerable.prototype */{
|
|
|
72
72
|
to nextObject for the current iteration. This is a useful way to
|
|
73
73
|
manage iteration if you are tracing a linked list, for example.
|
|
74
74
|
|
|
75
|
-
Finally the context
|
|
75
|
+
Finally the context parameter will always contain a hash you can use as
|
|
76
76
|
a "scratchpad" to maintain any other state you need in order to iterate
|
|
77
77
|
properly. The context object is reused and is not reset between
|
|
78
78
|
iterations so make sure you setup the context with a fresh state whenever
|
|
@@ -82,7 +82,7 @@ SC.Enumerable = /** @scope SC.Enumerable.prototype */{
|
|
|
82
82
|
reaches the your current length-1. If you run out of data before this
|
|
83
83
|
time for some reason, you should simply return undefined.
|
|
84
84
|
|
|
85
|
-
The default
|
|
85
|
+
The default implementation of this method simply looks up the index.
|
|
86
86
|
This works great on any Array-like objects.
|
|
87
87
|
|
|
88
88
|
@param {Number} index the current index of the iteration
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
module("SC.Array mixin - Array observers");
|
|
2
|
+
|
|
3
|
+
(function(root) {
|
|
4
|
+
test("notifies entire array has changed when arrayContentDidChange() is called with no arguments", function() {
|
|
5
|
+
var content = [1, 2, 3, 4, 5];
|
|
6
|
+
var start, added, removed;
|
|
7
|
+
|
|
8
|
+
content.addArrayObservers({
|
|
9
|
+
didChange: function(s, r, a) {
|
|
10
|
+
start = s;
|
|
11
|
+
added = a;
|
|
12
|
+
removed = r;
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
content.arrayContentDidChange();
|
|
17
|
+
|
|
18
|
+
equals(start, 0, "change starts at index 0");
|
|
19
|
+
equals(removed, 5, "five items were removed");
|
|
20
|
+
equals(added, 0, "zero items were added");
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
})(this);
|
|
@@ -53,17 +53,17 @@ test("handle range partially inside set", function() {
|
|
|
53
53
|
// INDEX SET
|
|
54
54
|
//
|
|
55
55
|
|
|
56
|
-
test("handle set inside
|
|
56
|
+
test("handle set inside IndexSet", function() {
|
|
57
57
|
var test = SC.IndexSet.create().add(1001,4).add(1005,2);
|
|
58
58
|
equals(set.contains(test), YES, '%@ should be in %@'.fmt(test, set));
|
|
59
59
|
});
|
|
60
60
|
|
|
61
|
-
test("handle range outside of
|
|
61
|
+
test("handle range outside of IndexSet", function() {
|
|
62
62
|
var test = SC.IndexSet.create().add(100,4).add(105,2);
|
|
63
63
|
equals(set.contains(test), NO, '%@ should be in %@'.fmt(test, set));
|
|
64
64
|
});
|
|
65
65
|
|
|
66
|
-
test("handle range partially inside
|
|
66
|
+
test("handle range partially inside IndexSet", function() {
|
|
67
67
|
var test = SC.IndexSet.create().add(1001,4).add(100,2);
|
|
68
68
|
equals(set.contains(test), NO, '%@ should be in %@'.fmt(test, set));
|
|
69
69
|
});
|
|
@@ -53,17 +53,17 @@ test("handle range partially inside set", function() {
|
|
|
53
53
|
// INDEX SET
|
|
54
54
|
//
|
|
55
55
|
|
|
56
|
-
test("handle set inside
|
|
56
|
+
test("handle set inside IndexSet", function() {
|
|
57
57
|
var test = SC.IndexSet.create().add(1001,4).add(1005,2);
|
|
58
58
|
equals(set.intersects(test), YES, '%@ should be in %@'.fmt(test, set));
|
|
59
59
|
});
|
|
60
60
|
|
|
61
|
-
test("handle range outside of
|
|
61
|
+
test("handle range outside of IndexSet", function() {
|
|
62
62
|
var test = SC.IndexSet.create().add(100,4).add(105,2);
|
|
63
63
|
equals(set.intersects(test), NO, '%@ should be in %@'.fmt(test, set));
|
|
64
64
|
});
|
|
65
65
|
|
|
66
|
-
test("handle range partially inside
|
|
66
|
+
test("handle range partially inside IndexSet", function() {
|
|
67
67
|
var test = SC.IndexSet.create().add(1001,4).add(100,2);
|
|
68
68
|
equals(set.intersects(test), YES, '%@ should be in %@'.fmt(test, set));
|
|
69
69
|
});
|