sproutcore 1.5.0 → 1.6.0.beta.1
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 +8 -1
- data/Rakefile +16 -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 +13 -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/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/panes/pane.js +3 -3
- 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/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_collection.js +2 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/animation.js +4 -3
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/layout.js +1 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view.js +38 -41
- 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/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/lib/sproutcore.rb +2 -9
- 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/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/frame.js +0 -0
- data/{lib/sproutcore/vendor → vendor}/jsdoc/app/handlers/FOODOC.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/handlers/XMLDOC.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/lib/JSDOC.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/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/app/test.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/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/{lib/sproutcore/vendor → vendor}/jsdoc/test.js +0 -0
- data/vendor/sproutcore/{src/SCCompiler/lib/yuicompressor-2.4.4.jar → lib/yuicompressor-2.4.6.jar} +0 -0
- metadata +176 -202
- 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
@@ -1293,29 +1293,14 @@ SC.Query.mixin( /** @scope SC.Query */ {
|
|
1293
1293
|
orderStoreKeys: function(storeKeys, query, store) {
|
1294
1294
|
// apply the sort if there is one
|
1295
1295
|
if (storeKeys) {
|
1296
|
-
|
1297
|
-
|
1298
|
-
|
1299
|
-
// We'll use a stack-based approach in case our sort routine ends up
|
1300
|
-
// calling code that triggers a recursive invocation of orderStoreKeys.
|
1301
|
-
var K = SC.Query,
|
1302
|
-
tempStores = K._TMP_STORES,
|
1303
|
-
tempQueries = K._TMP_QUERIES;
|
1304
|
-
if (!tempStores) tempStores = K._TMP_STORES = [];
|
1305
|
-
if (!tempQueries) tempQueries = K._TMP_QUERIES = [];
|
1306
|
-
|
1307
|
-
tempStores.push(store);
|
1308
|
-
tempQueries.push(query);
|
1309
|
-
|
1310
|
-
var res = storeKeys.sort(SC.Query.compareStoreKeys);
|
1311
|
-
|
1312
|
-
K._TMP_STORES.pop();
|
1313
|
-
K._TMP_QUERIES.pop();
|
1296
|
+
var res = storeKeys.sort(function(a, b) {
|
1297
|
+
return SC.Query.compareStoreKeys(query, store, a, b);
|
1298
|
+
});
|
1314
1299
|
}
|
1315
1300
|
|
1316
1301
|
return storeKeys;
|
1317
1302
|
},
|
1318
|
-
|
1303
|
+
|
1319
1304
|
/**
|
1320
1305
|
Default sort method that is used when calling `containsStoreKeys()`
|
1321
1306
|
or `containsRecords()` on this query. Simply materializes two records
|
@@ -1325,71 +1310,11 @@ SC.Query.mixin( /** @scope SC.Query */ {
|
|
1325
1310
|
@param {Number} storeKey2 a store key
|
1326
1311
|
@returns {Number} -1 if record1 < record2, +1 if record1 > record2, 0 if equal
|
1327
1312
|
*/
|
1328
|
-
compareStoreKeys: function(storeKey1, storeKey2) {
|
1329
|
-
var
|
1330
|
-
tempStores = K._TMP_STORES,
|
1331
|
-
tempQueries = K._TMP_QUERIES,
|
1332
|
-
store = tempStores[tempStores.length - 1],
|
1333
|
-
query = tempQueries[tempQueries.length - 1],
|
1334
|
-
compareFunc = query.compare,
|
1335
|
-
record1 = store.materializeRecord(storeKey1),
|
1313
|
+
compareStoreKeys: function(query, store, storeKey1, storeKey2) {
|
1314
|
+
var record1 = store.materializeRecord(storeKey1),
|
1336
1315
|
record2 = store.materializeRecord(storeKey2);
|
1337
1316
|
|
1338
|
-
|
1339
|
-
// Otherwise, we have the logic from the standard version inlined here.
|
1340
|
-
if (compareFunc !== K.prototype.compare) {
|
1341
|
-
return compareFunc.call(query, record1, record2);
|
1342
|
-
}
|
1343
|
-
else {
|
1344
|
-
// THIS CODE IS THE SAME AS THE 'compare' METHOD, EXCEPT THAT 'this' HAS
|
1345
|
-
// BEEN CHANGED TO 'query'.
|
1346
|
-
//
|
1347
|
-
// It is inlined here to avoid the extra method invocation in the
|
1348
|
-
// typical case where the client does not supply a custom 'compare'
|
1349
|
-
// function.
|
1350
|
-
|
1351
|
-
var result = 0,
|
1352
|
-
propertyName, order, len, i;
|
1353
|
-
|
1354
|
-
// fast cases go here
|
1355
|
-
if (record1 === record2) return 0;
|
1356
|
-
|
1357
|
-
// if called for the first time we have to build the order array
|
1358
|
-
if (!query._isReady) query.parse();
|
1359
|
-
if (!query._isReady) { // can't parse. guid is wrong but consistent
|
1360
|
-
return SC.compare(record1.get('id'),record2.get('id'));
|
1361
|
-
}
|
1362
|
-
|
1363
|
-
// For every property specified in orderBy until non-eql result is found.
|
1364
|
-
// Or, if orderBy is a comparison function, simply invoke it with the
|
1365
|
-
// records.
|
1366
|
-
order = query._order;
|
1367
|
-
if (SC.typeOf(order) === SC.T_FUNCTION) {
|
1368
|
-
result = order.call(null, record1, record2);
|
1369
|
-
}
|
1370
|
-
else {
|
1371
|
-
len = order ? order.length : 0;
|
1372
|
-
for (i=0; result===0 && (i < len); i++) {
|
1373
|
-
propertyName = order[i].propertyName;
|
1374
|
-
// if query property has a registered comparison use that
|
1375
|
-
if (SC.Query.comparisons[propertyName]) {
|
1376
|
-
result = SC.Query.comparisons[propertyName](
|
1377
|
-
record1.get(propertyName),record2.get(propertyName));
|
1378
|
-
|
1379
|
-
// if not use default SC.compare()
|
1380
|
-
} else {
|
1381
|
-
result = SC.compare(
|
1382
|
-
record1.get(propertyName), record2.get(propertyName) );
|
1383
|
-
}
|
1384
|
-
|
1385
|
-
if ((result!==0) && order[i].descending) result = (-1) * result;
|
1386
|
-
}
|
1387
|
-
}
|
1388
|
-
|
1389
|
-
// return result or compare by guid
|
1390
|
-
if (result !== 0) return result ;
|
1391
|
-
else return SC.compare(record1.get('id'),record2.get('id'));
|
1392
|
-
}
|
1317
|
+
return query.compare(record1, record2);
|
1393
1318
|
},
|
1394
1319
|
|
1395
1320
|
/**
|
@@ -438,13 +438,10 @@ SC.RecordArray = SC.Object.extend(SC.Enumerable, SC.Array,
|
|
438
438
|
|
439
439
|
this.set('needsFlush', YES);
|
440
440
|
|
441
|
-
// if we have storeKeys already, then flush immediately because
|
442
|
-
// it will not be as expensive as if we are starting from scratch
|
443
441
|
if (this.get('storeKeys')) {
|
444
442
|
this.flush();
|
445
|
-
}
|
446
|
-
|
447
|
-
this.enumerableContentDidChange();
|
443
|
+
} else {
|
444
|
+
this.arrayContentDidChange();
|
448
445
|
}
|
449
446
|
|
450
447
|
return this;
|
@@ -712,6 +709,16 @@ SC.RecordArray = SC.Object.extend(SC.Enumerable, SC.Array,
|
|
712
709
|
|
713
710
|
}.observes('storeKeys'),
|
714
711
|
|
712
|
+
/** @private
|
713
|
+
If anyone adds an array observer on to the record array, make sure
|
714
|
+
we flush so that the observers don't fire the first time length is
|
715
|
+
calculated.
|
716
|
+
*/
|
717
|
+
addArrayObservers: function() {
|
718
|
+
this.flush();
|
719
|
+
return SC.Array.addArrayObservers.apply(this, arguments);
|
720
|
+
},
|
721
|
+
|
715
722
|
/** @private
|
716
723
|
Invoked whenever the content of the `storeKeys` array changes. This will
|
717
724
|
dump any cached record lookup and then notify that the enumerable content
|
@@ -1406,7 +1406,7 @@ SC.Store = SC.Object.extend( /** @scope SC.Store.prototype */ {
|
|
1406
1406
|
},
|
1407
1407
|
|
1408
1408
|
/**
|
1409
|
-
function that
|
1409
|
+
function that propagates a function call to all children
|
1410
1410
|
*/
|
1411
1411
|
_propagateToChildren: function(storeKey, func){
|
1412
1412
|
// Handle all the child Records
|
data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/record_array/array_observers.js
ADDED
@@ -0,0 +1,82 @@
|
|
1
|
+
(function(root) {
|
2
|
+
var store;
|
3
|
+
var query;
|
4
|
+
var recordArray;
|
5
|
+
|
6
|
+
module("SC.RecordArray - implements array content observers", {
|
7
|
+
setup: function() {
|
8
|
+
},
|
9
|
+
|
10
|
+
teardown: function() {
|
11
|
+
root.MyRecord = undefined;
|
12
|
+
}
|
13
|
+
});
|
14
|
+
|
15
|
+
test("notifies when a record is added to the store that matches a query", function() {
|
16
|
+
var callCount = 0,
|
17
|
+
lastRemovedCount = 0,
|
18
|
+
lastAddedCount = 0;
|
19
|
+
|
20
|
+
SC.run(function() {
|
21
|
+
store = SC.Store.create();
|
22
|
+
root.MyRecord = SC.Record.extend();
|
23
|
+
query = SC.Query.local(MyRecord);
|
24
|
+
|
25
|
+
recordArray = store.find(query);
|
26
|
+
|
27
|
+
recordArray.addArrayObservers({
|
28
|
+
didChange: function(start, removedCount, addedCount) {
|
29
|
+
lastRemovedCount = removedCount;
|
30
|
+
lastAddedCount = addedCount;
|
31
|
+
},
|
32
|
+
|
33
|
+
willChange: function() {}
|
34
|
+
});
|
35
|
+
|
36
|
+
store.createRecord(MyRecord, {});
|
37
|
+
});
|
38
|
+
|
39
|
+
equals(lastAddedCount, 1);
|
40
|
+
equals(lastRemovedCount, 0);
|
41
|
+
equals(recordArray.get('length'), 1);
|
42
|
+
});
|
43
|
+
|
44
|
+
test("notifies when a record is removed from the store that matches a query", function() {
|
45
|
+
var lastRemovedCount = 0,
|
46
|
+
lastAddedCount = 0;
|
47
|
+
|
48
|
+
var record;
|
49
|
+
|
50
|
+
SC.run(function() {
|
51
|
+
store = SC.Store.create();
|
52
|
+
root.MyRecord = SC.Record.extend();
|
53
|
+
query = SC.Query.local(MyRecord);
|
54
|
+
|
55
|
+
recordArray = store.find(query);
|
56
|
+
|
57
|
+
recordArray.addArrayObservers({
|
58
|
+
didChange: function(start, removedCount, addedCount) {
|
59
|
+
lastRemovedCount = removedCount;
|
60
|
+
lastAddedCount = addedCount;
|
61
|
+
},
|
62
|
+
|
63
|
+
willChange: function() {}
|
64
|
+
});
|
65
|
+
|
66
|
+
record = store.createRecord(MyRecord, {
|
67
|
+
guid: 1
|
68
|
+
});
|
69
|
+
});
|
70
|
+
|
71
|
+
equals(lastAddedCount, 1);
|
72
|
+
equals(lastRemovedCount, 0);
|
73
|
+
|
74
|
+
SC.run(function() {
|
75
|
+
record.destroy();
|
76
|
+
});
|
77
|
+
|
78
|
+
equals(lastAddedCount, 0);
|
79
|
+
equals(lastRemovedCount, 1);
|
80
|
+
equals(recordArray.get('length'), 0);
|
81
|
+
});
|
82
|
+
})(this);
|
@@ -165,6 +165,23 @@ test("calling storeDidChangeStoreKeys() with a matching recordType should not un
|
|
165
165
|
equals(fooRecsController.get('bigCost'), NO, 'fooRecsController should not have spent big cost');
|
166
166
|
});
|
167
167
|
|
168
|
+
test("adding an array observer to a SC.RecordArray should cause the array to flush", function() {
|
169
|
+
var callCount = 0;
|
170
|
+
debugger;
|
171
|
+
|
172
|
+
recs.addArrayObservers({
|
173
|
+
didChange: function() {
|
174
|
+
callCount++;
|
175
|
+
},
|
176
|
+
|
177
|
+
willChange: function() { }
|
178
|
+
});
|
179
|
+
|
180
|
+
recs.get('length');
|
181
|
+
|
182
|
+
equals(callCount, 0, "does not cause array observers to be fired when getting length");
|
183
|
+
});
|
184
|
+
|
168
185
|
|
169
186
|
// ..........................................................
|
170
187
|
// SPECIAL CASES
|
@@ -19,7 +19,7 @@ SC.mapDisplayNames = function(obj, level, path, seenHash, seenArray) {
|
|
19
19
|
// Lazily instantiate the hash of types we'll use a hash for the "have we
|
20
20
|
// seen this before?" structure. (Some types are not safe to put in a hash
|
21
21
|
// in this manner, so we'll use the hash for its algorithmic advantage when
|
22
|
-
// possible, but fall back to an array using indexOf() when necessary.)
|
22
|
+
// possible, but fall back to an array using `indexOf()` when necessary.)
|
23
23
|
if (!SC._mapDisplayNamesUseHashForSeenTypesHash) {
|
24
24
|
var types = SC._mapDisplayNamesUseHashForSeenTypes ;
|
25
25
|
var typesHash = {} ;
|
@@ -7,7 +7,7 @@
|
|
7
7
|
|
8
8
|
// When in debug mode, it’s useful for our observer sets (which are used by
|
9
9
|
// invokeOnce and invokeLast) to record which code scheduled the
|
10
|
-
// invokeOnce
|
10
|
+
// `invokeOnce`/`invokeLast` targets/methods.
|
11
11
|
|
12
12
|
window.SC = window.SC || {};
|
13
13
|
|
@@ -7,10 +7,10 @@
|
|
7
7
|
|
8
8
|
|
9
9
|
/**
|
10
|
-
If set to NO
|
10
|
+
If set to `NO`, then pressing backspace will NOT navigate to the previous
|
11
11
|
page in the browser history, which is the default behavior in most browsers.
|
12
12
|
|
13
|
-
Usually it is best to leave this property set to NO in order to
|
13
|
+
Usually it is best to leave this property set to `NO` in order to prevent the
|
14
14
|
user from inadvertantly losing data by pressing the backspace key.
|
15
15
|
|
16
16
|
@static
|
@@ -1,9 +1,8 @@
|
|
1
1
|
/* @override http://localhost:4020/static/sproutcore/en/desktop/_cache/sc.theme/1228020574/slider.css */
|
2
2
|
|
3
3
|
/* @group SC.SliderView */
|
4
|
-
|
5
4
|
.sc-slider-view {
|
6
|
-
|
5
|
+
height: 21px;
|
7
6
|
}
|
8
7
|
|
9
8
|
.blur .sc-slider-view,
|
@@ -14,46 +13,50 @@
|
|
14
13
|
}
|
15
14
|
|
16
15
|
/* sc-inner is the slider bar */
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
16
|
+
.sc-slider-view .track {
|
17
|
+
position: absolute;
|
18
|
+
left: 8px;
|
19
|
+
right: 8px;
|
20
|
+
height: 5px;
|
21
|
+
top: 6px;
|
22
|
+
background: gray;
|
23
|
+
-webkit-border-radius: 3px;
|
24
|
+
-moz-border-radius: 3px;
|
25
|
+
border-radius: 3px;
|
26
|
+
}
|
27
|
+
.sc-slider-view .track .middle {
|
28
|
+
|
27
29
|
}
|
28
30
|
|
29
|
-
.sc-slider-view .
|
30
|
-
.sc-slider-view .
|
31
|
+
.sc-slider-view .track .left,
|
32
|
+
.sc-slider-view .track .right {
|
31
33
|
display: none;
|
32
34
|
}
|
33
35
|
|
34
|
-
.blur .sc-slider-view .
|
35
|
-
.focus .sc-slider-view.disabled .
|
36
|
-
|
36
|
+
.blur .sc-slider-view .track,
|
37
|
+
.focus .sc-slider-view.disabled .track {
|
38
|
+
border: 1px #ccc solid;
|
37
39
|
}
|
38
40
|
|
39
|
-
.focus .sc-slider-view .
|
40
|
-
|
41
|
+
.focus .sc-slider-view .track {
|
42
|
+
border: 1px #999 solid;
|
41
43
|
}
|
42
44
|
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
45
|
+
.sc-slider-view .sc-handle {
|
46
|
+
height: 12px;
|
47
|
+
width: 12px;
|
48
|
+
margin-left: -9px;
|
49
|
+
top: -4px;
|
50
|
+
position: absolute;
|
51
|
+
background: black;
|
52
|
+
border-radius: 6px;
|
53
|
+
-moz-border-radius: 6px;
|
54
|
+
-webkit-transform: translate3d(0, 0, 0);
|
55
|
+
-webkit-transition: left 0.01s ease-in-out;
|
54
56
|
}
|
55
57
|
|
56
58
|
.focus .sc-slider-view .sc-handle {
|
59
|
+
|
57
60
|
}
|
58
61
|
|
59
62
|
.blur .sc-slider-view .sc-handle,
|
@@ -17,8 +17,8 @@ SC.BORDER_NONE = null ;
|
|
17
17
|
@namespace
|
18
18
|
@deprecated
|
19
19
|
|
20
|
-
The SC.Border mixin has be deprecated in favour of applying border properties
|
21
|
-
to an SC.View's layout object. See {@link SC.View#layout}.
|
20
|
+
The `SC.Border` mixin has be deprecated in favour of applying border properties
|
21
|
+
to an `SC.View`'s layout object. See {@link SC.View#layout}.
|
22
22
|
|
23
23
|
The Border mixin can be applied to any view to give it a visual border.
|
24
24
|
In addition to specifying the mixin itself, you should specify the border
|
@@ -27,17 +27,18 @@ SC.BORDER_NONE = null ;
|
|
27
27
|
Border style can be any predefined CSS class name or a border color.
|
28
28
|
|
29
29
|
If you specify a CSS class name, it must end in "-border". Additionally,
|
30
|
-
you should set the borderTop
|
31
|
-
properties so SproutCore can accurately account for the size
|
30
|
+
you should set the `borderTop`, `borderRight`, `borderBottom`, and
|
31
|
+
`borderLeft` properties so SproutCore can accurately account for the size
|
32
|
+
of your view.
|
32
33
|
|
33
34
|
SproutCore pre-defines several useful border styles including:
|
34
35
|
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
36
|
+
- `SC.BORDER_BEZEL` -- displays an inlaid bezel
|
37
|
+
- `SC.BORDER_BLACK` -- displays a black border
|
38
|
+
- `SC.BORDER_GRAY` -- displays a gray border
|
39
|
+
- `SC.BORDER_TOP` -- displays a border on the top only
|
40
|
+
- `SC.BORDER_BOTTOM` -- displays a border on the bottom only
|
41
|
+
- `SC.BORDER_NONE` -- disables the border
|
41
42
|
|
42
43
|
@since SproutCore 1.0
|
43
44
|
*/
|
@@ -98,7 +99,7 @@ SC.Border = {
|
|
98
99
|
hasBorder: YES,
|
99
100
|
|
100
101
|
/**
|
101
|
-
Make sure we re-render if the borderStyle property changes.
|
102
|
+
Make sure we re-render if the `borderStyle` property changes.
|
102
103
|
@private
|
103
104
|
*/
|
104
105
|
displayProperties: ['borderStyle'],
|
@@ -8,7 +8,7 @@
|
|
8
8
|
/**
|
9
9
|
@namespace
|
10
10
|
|
11
|
-
An experimental CollectionView mixin that makes it extremely fast under
|
11
|
+
An experimental `CollectionView` mixin that makes it extremely fast under
|
12
12
|
certain circumstances, including for mobile devices.
|
13
13
|
*/
|
14
14
|
SC.CollectionFastPath = {
|
@@ -80,7 +80,7 @@ SC.CollectionFastPath = {
|
|
80
80
|
},
|
81
81
|
|
82
82
|
/**
|
83
|
-
Configures a pooled view, calling
|
83
|
+
Configures a pooled view, calling `.awakeFromPool` if it is defined.
|
84
84
|
|
85
85
|
@param {SC.View} itemView
|
86
86
|
@param {Hash} attrs
|
@@ -123,7 +123,7 @@ SC.CollectionFastPath = {
|
|
123
123
|
|
124
124
|
/**
|
125
125
|
Releases an item view. If the item view is pooled, it puts it into the pool;
|
126
|
-
otherwise, this calls
|
126
|
+
otherwise, this calls `.destroy()`.
|
127
127
|
|
128
128
|
This is called for one of two purposes: to release a view that is no longer displaying,
|
129
129
|
or to release an older cached version of a view that needed to be replaced because the
|
@@ -163,7 +163,7 @@ SC.CollectionFastPath = {
|
|
163
163
|
|
164
164
|
/** @private
|
165
165
|
Determines the example view for a content index. There are two optional parameters that will
|
166
|
-
speed things up: contentObject and isGroupView
|
166
|
+
speed things up: `contentObject` and `isGroupView`. If you don't supply them, they must be computed.
|
167
167
|
*/
|
168
168
|
exampleViewForItem: function(item, index) {
|
169
169
|
var del = this.get('contentDelegate'),
|
@@ -190,7 +190,7 @@ SC.CollectionFastPath = {
|
|
190
190
|
This may seem somewhat awkward, but it is for memory performance: this fills in a hash
|
191
191
|
YOU provide with the properties for the given content index.
|
192
192
|
|
193
|
-
Properties include both the attributes given to the view and some CollectionView tracking
|
193
|
+
Properties include both the attributes given to the view and some `CollectionView` tracking
|
194
194
|
properties, most importantly the exampleView.
|
195
195
|
*/
|
196
196
|
setAttributesForItem: function(item, index, attrs) {
|
@@ -563,7 +563,7 @@ SC.CollectionFastPath = {
|
|
563
563
|
|
564
564
|
/** @private
|
565
565
|
Tries to find an item for the given example view in a dom pool.
|
566
|
-
If one could not be found, returns null
|
566
|
+
If one could not be found, returns `null`.
|
567
567
|
*/
|
568
568
|
itemFromDOMPool: function(exampleView) {
|
569
569
|
var pool = this.domPoolForExampleView(exampleView);
|
@@ -663,7 +663,7 @@ SC.CollectionFastPath = {
|
|
663
663
|
|
664
664
|
|
665
665
|
/** @private
|
666
|
-
Tells ScrollView that this should receive live updates during touch scrolling.
|
666
|
+
Tells `ScrollView` that this should receive live updates during touch scrolling.
|
667
667
|
We are so fast, aren't we?
|
668
668
|
*/
|
669
669
|
_lastTopUpdate: 0,
|
@@ -9,7 +9,7 @@
|
|
9
9
|
/**
|
10
10
|
@namespace
|
11
11
|
|
12
|
-
|
12
|
+
`CollectionRowDelegate`s are consulted by `SC.ListView` and `SC.TableView` to
|
13
13
|
control the height of rows, including specifying custom heights for
|
14
14
|
specific rows.
|
15
15
|
|
@@ -45,7 +45,7 @@ SC.CollectionRowDelegate = {
|
|
45
45
|
|
46
46
|
/**
|
47
47
|
This is useful if you are using a custom item view that needs to be padded.
|
48
|
-
This value is added to the top and bottom of the itemHeight
|
48
|
+
This value is added to the top and bottom of the `itemHeight`.
|
49
49
|
|
50
50
|
@type Number
|
51
51
|
@default 0
|
@@ -53,7 +53,7 @@ SC.CollectionRowDelegate = {
|
|
53
53
|
rowPadding: 0,
|
54
54
|
|
55
55
|
/**
|
56
|
-
Total row height used for calculation. Equal to itemHeight +
|
56
|
+
Total row height used for calculation. Equal to `itemHeight + (2 * rowPadding)`.
|
57
57
|
|
58
58
|
@type Number
|
59
59
|
*/
|
@@ -79,7 +79,7 @@ SC.CollectionRowDelegate = {
|
|
79
79
|
customRowHeightIndexes: null,
|
80
80
|
|
81
81
|
/**
|
82
|
-
Called for each index in the customRowHeightIndexes set to get the
|
82
|
+
Called for each index in the `customRowHeightIndexes` set to get the
|
83
83
|
actual row height for the index. This method should return the default
|
84
84
|
rowHeight if you don't want the row to have a custom height.
|
85
85
|
|
@@ -8,10 +8,10 @@
|
|
8
8
|
/**
|
9
9
|
@namespace
|
10
10
|
|
11
|
-
A Collection View Delegate is consulted by a SC.CollectionView to make
|
11
|
+
A Collection View Delegate is consulted by a `SC.CollectionView` to make
|
12
12
|
policy decisions about certain behaviors such as selection control and
|
13
13
|
drag and drop. If you need to control other aspects of your data, you may
|
14
|
-
also want to add the SC.CollectionContent mixin.
|
14
|
+
also want to add the `SC.CollectionContent` mixin.
|
15
15
|
|
16
16
|
To act as a Collection Delegate, just apply this mixin to your class. You
|
17
17
|
must then set the "delegate" property on the CollectionView to your object.
|
@@ -74,7 +74,7 @@ SC.CollectionViewDelegate = {
|
|
74
74
|
|
75
75
|
/**
|
76
76
|
Called by the collection when attempting to deselect an item. Return the
|
77
|
-
actual indexes you want to allow to be deselected. Return null to
|
77
|
+
actual indexes you want to allow to be deselected. Return `null` to
|
78
78
|
disallow the change. The default allows all selection.
|
79
79
|
|
80
80
|
Note that you should not modify the passed in IndexSet. clone it instead.
|
@@ -93,11 +93,11 @@ SC.CollectionViewDelegate = {
|
|
93
93
|
//
|
94
94
|
|
95
95
|
/**
|
96
|
-
Called by the collection view whenever the deleteSelection() method is
|
96
|
+
Called by the collection view whenever the `deleteSelection()` method is
|
97
97
|
called. You can implement this method to get fine-grained control over
|
98
98
|
which items can be deleted. To prevent deletion, return null.
|
99
99
|
|
100
|
-
This method is only called if canDeleteContent is YES on the collection
|
100
|
+
This method is only called if canDeleteContent is `YES` on the collection
|
101
101
|
view.
|
102
102
|
|
103
103
|
@param {SC.CollectionView} view the collection view
|
@@ -116,8 +116,8 @@ SC.CollectionViewDelegate = {
|
|
116
116
|
deletion method.
|
117
117
|
|
118
118
|
If you simply want to control the items to be deleted, you should instead
|
119
|
-
implement collectionViewShouldDeleteItems()
|
120
|
-
called if canDeleteContent is YES and collectionViewShouldDeleteIndexes()
|
119
|
+
implement `collectionViewShouldDeleteItems()`. This method will only be
|
120
|
+
called if canDeleteContent is `YES` and `collectionViewShouldDeleteIndexes()`
|
121
121
|
returns a non-empty index set
|
122
122
|
|
123
123
|
@param {SC.CollectionView} view collection view
|
@@ -154,7 +154,7 @@ SC.CollectionViewDelegate = {
|
|
154
154
|
may enable content reordering but then implement this method to prevent
|
155
155
|
reordering of certain items in the view.
|
156
156
|
|
157
|
-
The default implementation always returns YES
|
157
|
+
The default implementation always returns `YES`.
|
158
158
|
|
159
159
|
@param {SC.CollectionView} view the collection view
|
160
160
|
@returns {Boolean} YES to alow, NO to prevent it
|
@@ -170,13 +170,13 @@ SC.CollectionViewDelegate = {
|
|
170
170
|
You can implement this method to return an array of the data types you
|
171
171
|
will provide for the drag data.
|
172
172
|
|
173
|
-
If you return null or an empty array, can you have set canReorderContent
|
174
|
-
to YES on the CollectionView, then the drag will go ahead but only
|
175
|
-
reordering will be allowed. If canReorderContent is NO
|
173
|
+
If you return `null` or an empty array, can you have set `canReorderContent`
|
174
|
+
to `YES` on the CollectionView, then the drag will go ahead but only
|
175
|
+
reordering will be allowed. If `canReorderContent` is `NO`, then the drag
|
176
176
|
will not be allowed to start.
|
177
177
|
|
178
178
|
If you simply want to control whether a drag is allowed or not, you
|
179
|
-
should instead implement collectionViewShouldBeginDrag()
|
179
|
+
should instead implement `collectionViewShouldBeginDrag()`.
|
180
180
|
|
181
181
|
The default returns an empty array.
|
182
182
|
|
@@ -192,7 +192,7 @@ SC.CollectionViewDelegate = {
|
|
192
192
|
to provide the drag data for the drop.
|
193
193
|
|
194
194
|
This method should be implemented essentially as you would implement the
|
195
|
-
dragDataForType() if you were a drag data source. You will never be asked
|
195
|
+
`dragDataForType()` if you were a drag data source. You will never be asked
|
196
196
|
to provide drag data for a reorder event, only for other types of data.
|
197
197
|
|
198
198
|
The default implementation returns null.
|
@@ -230,14 +230,14 @@ SC.CollectionViewDelegate = {
|
|
230
230
|
general which operations you might support and specifically the operations
|
231
231
|
you would support if the user dropped an item over a specific location.
|
232
232
|
|
233
|
-
If the proposedDropOperation parameter is SC.DROP_ON or SC.DROP_BEFORE
|
234
|
-
then the proposedInsertionPoint will be a non-negative value and you
|
233
|
+
If the `proposedDropOperation` parameter is `SC.DROP_ON` or `SC.DROP_BEFORE`,
|
234
|
+
then the `proposedInsertionPoint` will be a non-negative value and you
|
235
235
|
should determine the specific operations you will support if the user
|
236
236
|
dropped the drag item at that point.
|
237
237
|
|
238
238
|
If you do not like the proposed drop operation or insertion point, you
|
239
|
-
can override these properties as well by setting the proposedDropOperation
|
240
|
-
and proposedInsertionIndex properties on the collection view during this
|
239
|
+
can override these properties as well by setting the `proposedDropOperation`
|
240
|
+
and `proposedInsertionIndex` properties on the collection view during this
|
241
241
|
method. These properties are ignored all other times.
|
242
242
|
|
243
243
|
@param {SC.CollectionView} view the collection view
|
@@ -254,12 +254,12 @@ SC.CollectionViewDelegate = {
|
|
254
254
|
|
255
255
|
/**
|
256
256
|
Called by the collection view to actually accept a drop. This method will
|
257
|
-
only be invoked AFTER your validateDrop method has been called to
|
257
|
+
only be invoked AFTER your `validateDrop method has been called to
|
258
258
|
determine if you want to even allow the drag operation to go through.
|
259
259
|
|
260
260
|
You should actually make changes to the data model if needed here and
|
261
261
|
then return the actual drag operation that was performed. If you return
|
262
|
-
SC.DRAG_NONE and the dragOperation was SC.DRAG_REORDER
|
262
|
+
`SC.DRAG_NONE` and the dragOperation was `SC.DRAG_REORDER`, then the default
|
263
263
|
reorder behavior will be provided by the collection view.
|
264
264
|
|
265
265
|
@param {SC.CollectionView} view
|
@@ -288,7 +288,7 @@ SC.CollectionViewDelegate = {
|
|
288
288
|
},
|
289
289
|
|
290
290
|
/**
|
291
|
-
Allows the ghost view created in collectionViewDragViewFor to be displayed
|
291
|
+
Allows the ghost view created in `collectionViewDragViewFor` to be displayed
|
292
292
|
like a cursor instead of the default implementation. This sets the view
|
293
293
|
origin to be the location of the mouse cursor.
|
294
294
|
|