extjs-rails 4.1.0.alpha1
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/.gitignore +18 -0
- data/Gemfile +4 -0
- data/LICENSE +36 -0
- data/README.md +29 -0
- data/Rakefile +2 -0
- data/app/assets/javascripts/extjs-rails/extjs-rails.js +1 -0
- data/app/assets/javascripts/extjs-rails/index.js.erb +9 -0
- data/app/assets/javascripts/extjs-rails/sdk.jsb3 +2017 -0
- data/app/assets/javascripts/extjs-rails/src/AbstractComponent.js +3290 -0
- data/app/assets/javascripts/extjs-rails/src/AbstractManager.js +144 -0
- data/app/assets/javascripts/extjs-rails/src/AbstractPlugin.js +72 -0
- data/app/assets/javascripts/extjs-rails/src/Action.js +276 -0
- data/app/assets/javascripts/extjs-rails/src/Ajax.js +99 -0
- data/app/assets/javascripts/extjs-rails/src/Component.js +1344 -0
- data/app/assets/javascripts/extjs-rails/src/ComponentLoader.js +202 -0
- data/app/assets/javascripts/extjs-rails/src/ComponentManager.js +47 -0
- data/app/assets/javascripts/extjs-rails/src/ComponentQuery.js +521 -0
- data/app/assets/javascripts/extjs-rails/src/Editor.js +494 -0
- data/app/assets/javascripts/extjs-rails/src/ElementLoader.js +404 -0
- data/app/assets/javascripts/extjs-rails/src/FocusManager.js +712 -0
- data/app/assets/javascripts/extjs-rails/src/Img.js +111 -0
- data/app/assets/javascripts/extjs-rails/src/Layer.js +543 -0
- data/app/assets/javascripts/extjs-rails/src/LoadMask.js +432 -0
- data/app/assets/javascripts/extjs-rails/src/ModelManager.js +186 -0
- data/app/assets/javascripts/extjs-rails/src/PluginManager.js +110 -0
- data/app/assets/javascripts/extjs-rails/src/ProgressBar.js +336 -0
- data/app/assets/javascripts/extjs-rails/src/Shadow.js +233 -0
- data/app/assets/javascripts/extjs-rails/src/ShadowPool.js +43 -0
- data/app/assets/javascripts/extjs-rails/src/Template.js +331 -0
- data/app/assets/javascripts/extjs-rails/src/XTemplate.js +365 -0
- data/app/assets/javascripts/extjs-rails/src/XTemplateCompiler.js +450 -0
- data/app/assets/javascripts/extjs-rails/src/XTemplateParser.js +249 -0
- data/app/assets/javascripts/extjs-rails/src/ZIndexManager.js +519 -0
- data/app/assets/javascripts/extjs-rails/src/app/Application.js +271 -0
- data/app/assets/javascripts/extjs-rails/src/app/Controller.js +458 -0
- data/app/assets/javascripts/extjs-rails/src/app/EventBus.js +112 -0
- data/app/assets/javascripts/extjs-rails/src/button/Button.js +1483 -0
- data/app/assets/javascripts/extjs-rails/src/button/Cycle.js +215 -0
- data/app/assets/javascripts/extjs-rails/src/button/Split.js +99 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Callout.js +140 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Chart.js +966 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Highlight.js +172 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Label.js +241 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Legend.js +474 -0
- data/app/assets/javascripts/extjs-rails/src/chart/LegendItem.js +217 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Mask.js +230 -0
- data/app/assets/javascripts/extjs-rails/src/chart/MaskLayer.js +48 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Navigation.js +79 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Shape.js +106 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Tip.js +98 -0
- data/app/assets/javascripts/extjs-rails/src/chart/TipSurface.js +42 -0
- data/app/assets/javascripts/extjs-rails/src/chart/axis/Abstract.js +73 -0
- data/app/assets/javascripts/extjs-rails/src/chart/axis/Axis.js +961 -0
- data/app/assets/javascripts/extjs-rails/src/chart/axis/Category.js +130 -0
- data/app/assets/javascripts/extjs-rails/src/chart/axis/Gauge.js +203 -0
- data/app/assets/javascripts/extjs-rails/src/chart/axis/Numeric.js +235 -0
- data/app/assets/javascripts/extjs-rails/src/chart/axis/Radial.js +204 -0
- data/app/assets/javascripts/extjs-rails/src/chart/axis/Time.js +135 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Area.js +803 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Bar.js +853 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Cartesian.js +328 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Column.js +104 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Gauge.js +490 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Line.js +1104 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Pie.js +1072 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Radar.js +440 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Scatter.js +668 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Series.js +443 -0
- data/app/assets/javascripts/extjs-rails/src/chart/theme/Base.js +175 -0
- data/app/assets/javascripts/extjs-rails/src/chart/theme/Theme.js +253 -0
- data/app/assets/javascripts/extjs-rails/src/container/AbstractContainer.js +1062 -0
- data/app/assets/javascripts/extjs-rails/src/container/ButtonGroup.js +143 -0
- data/app/assets/javascripts/extjs-rails/src/container/Container.js +212 -0
- data/app/assets/javascripts/extjs-rails/src/container/DockingContainer.js +265 -0
- data/app/assets/javascripts/extjs-rails/src/container/Viewport.js +184 -0
- data/app/assets/javascripts/extjs-rails/src/core/dom/Element.form.js +50 -0
- data/app/assets/javascripts/extjs-rails/src/core/dom/Element.static-more.js +159 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/index.html +321 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/index.js +6 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/CTO.js +25 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/CoolGuy.js +20 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/Developer.js +43 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/Gun.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/HumanResource.js +23 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/Musician.js +20 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/Person.js +50 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/ability/CanComposeSongs.js +9 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/ability/CanPlayGuitar.js +9 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/ability/CanSing.js +18 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/deadlock/A.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/deadlock/B.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/deadlock/C.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/deadlock/D.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/deadlock/E.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/notdeadlock/A.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/notdeadlock/B.js +4 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/notdeadlock/C.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/EventManager.js +1167 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/EventObject.js +883 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/Ext-more.js +1283 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/Ext.js +736 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/Support.js +662 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/class/Base.js +1085 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/class/Class.js +676 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/class/ClassManager.js +1591 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/class/Loader.js +1423 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractElement.alignment.js +173 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractElement.insertion.js +193 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractElement.js +681 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractElement.position.js +356 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractElement.static.js +474 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractElement.style.js +851 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractElement.traversal.js +180 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractHelper.js +291 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractQuery.js +72 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/CompositeElement.js +75 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/CompositeElementLite.js +436 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/DomQuery-aria.js +1049 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/env/Browser.js +186 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/env/FeatureDetector.js +274 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/env/OS.js +141 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/lang/Array.js +1205 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/lang/Date.js +1463 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/lang/Error.js +326 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/lang/Function.js +485 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/lang/Number.js +175 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/lang/Object.js +606 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/lang/String.js +333 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/misc/JSON.js +236 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/perf/Accumulator.js +244 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/perf/Monitor.js +197 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/util/DelayedTask.js +71 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/util/Event.js +215 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/util/Format.js +551 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/util/TaskManager.js +417 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/version/Version.js +364 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/README.MD +91 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/bootstrap.js +39 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/build/build-data.js +34 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/build/build.sh +2 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/data.js +27 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/index.html +15 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/other_specs/dom.html +40 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/other_specs/dom/extjs-api.js +12 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/other_specs/dom/platform-api.js +134 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/other_specs/dom/sanity.js +4 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/other_specs/dom/touch-api-out.js +128 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/other_specs/dom/touch-api.js +89 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/other_specs/env/Environment.js +357 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/resources/APITest.js +37 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/resources/jsb3.js +14 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/resources/test-setup.js +137 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/EventManager.js +629 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/Ext-mess.backup +198 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/Ext-more.js +520 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/Ext.js +1550 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/Support.js +250 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/class/Base.js +47 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/class/Class.js +561 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/class/ClassManager.js +555 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/dom/CompositeElementLite.js +409 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/dom/DomHelper.js +444 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/dom/Element.insertion.js +342 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/dom/Element.js +731 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/dom/Element.static.js +201 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/dom/Element.style.js +118 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/dom/Element.traversal.js +336 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/lang/Array.js +1229 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/lang/Date.js +697 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/lang/Error.js +277 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/lang/Function.js +536 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/lang/Number.js +323 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/lang/Object.js +591 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/lang/String.js +451 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/misc/JSON.js +252 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/util/Format.js +521 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/version/Version.js +148 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/specs.html +19 -0
- data/app/assets/javascripts/extjs-rails/src/data/AbstractStore.js +887 -0
- data/app/assets/javascripts/extjs-rails/src/data/ArrayStore.js +74 -0
- data/app/assets/javascripts/extjs-rails/src/data/Batch.js +236 -0
- data/app/assets/javascripts/extjs-rails/src/data/BufferStore.js +13 -0
- data/app/assets/javascripts/extjs-rails/src/data/Connection.js +969 -0
- data/app/assets/javascripts/extjs-rails/src/data/DirectStore.js +50 -0
- data/app/assets/javascripts/extjs-rails/src/data/Errors.js +52 -0
- data/app/assets/javascripts/extjs-rails/src/data/Field.js +341 -0
- data/app/assets/javascripts/extjs-rails/src/data/IdGenerator.js +198 -0
- data/app/assets/javascripts/extjs-rails/src/data/JsonP.js +253 -0
- data/app/assets/javascripts/extjs-rails/src/data/JsonPStore.js +51 -0
- data/app/assets/javascripts/extjs-rails/src/data/JsonStore.js +60 -0
- data/app/assets/javascripts/extjs-rails/src/data/Model.js +1673 -0
- data/app/assets/javascripts/extjs-rails/src/data/NodeInterface.js +1294 -0
- data/app/assets/javascripts/extjs-rails/src/data/NodeStore.js +254 -0
- data/app/assets/javascripts/extjs-rails/src/data/Operation.js +331 -0
- data/app/assets/javascripts/extjs-rails/src/data/Request.js +40 -0
- data/app/assets/javascripts/extjs-rails/src/data/ResultSet.js +56 -0
- data/app/assets/javascripts/extjs-rails/src/data/SequentialIdGenerator.js +61 -0
- data/app/assets/javascripts/extjs-rails/src/data/SortTypes.js +125 -0
- data/app/assets/javascripts/extjs-rails/src/data/Store.js +2609 -0
- data/app/assets/javascripts/extjs-rails/src/data/StoreManager.js +156 -0
- data/app/assets/javascripts/extjs-rails/src/data/Tree.js +290 -0
- data/app/assets/javascripts/extjs-rails/src/data/TreeStore.js +655 -0
- data/app/assets/javascripts/extjs-rails/src/data/Types.js +190 -0
- data/app/assets/javascripts/extjs-rails/src/data/UuidGenerator.js +215 -0
- data/app/assets/javascripts/extjs-rails/src/data/XmlStore.js +76 -0
- data/app/assets/javascripts/extjs-rails/src/data/association/Association.js +243 -0
- data/app/assets/javascripts/extjs-rails/src/data/association/BelongsTo.js +291 -0
- data/app/assets/javascripts/extjs-rails/src/data/association/HasMany.js +289 -0
- data/app/assets/javascripts/extjs-rails/src/data/association/HasOne.js +304 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/Ajax.js +282 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/Client.js +21 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/Direct.js +181 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/JsonP.js +313 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/LocalStorage.js +69 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/Memory.js +156 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/Proxy.js +433 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/Rest.js +173 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/Server.js +460 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/SessionStorage.js +39 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/WebStorage.js +546 -0
- data/app/assets/javascripts/extjs-rails/src/data/reader/Array.js +68 -0
- data/app/assets/javascripts/extjs-rails/src/data/reader/Json.js +383 -0
- data/app/assets/javascripts/extjs-rails/src/data/reader/Reader.js +735 -0
- data/app/assets/javascripts/extjs-rails/src/data/reader/Xml.js +292 -0
- data/app/assets/javascripts/extjs-rails/src/data/validations.js +149 -0
- data/app/assets/javascripts/extjs-rails/src/data/writer/Json.js +81 -0
- data/app/assets/javascripts/extjs-rails/src/data/writer/Writer.js +147 -0
- data/app/assets/javascripts/extjs-rails/src/data/writer/Xml.js +88 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DD.js +300 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DDProxy.js +204 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DDTarget.js +171 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DragDrop.js +1101 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DragDropManager.js +1264 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DragSource.js +392 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DragTracker.js +562 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DragZone.js +137 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DropTarget.js +118 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DropZone.js +254 -0
- data/app/assets/javascripts/extjs-rails/src/dd/Registry.js +117 -0
- data/app/assets/javascripts/extjs-rails/src/dd/ScrollManager.js +218 -0
- data/app/assets/javascripts/extjs-rails/src/dd/StatusProxy.js +179 -0
- data/app/assets/javascripts/extjs-rails/src/diag/layout/Context.js +523 -0
- data/app/assets/javascripts/extjs-rails/src/diag/layout/ContextItem.js +179 -0
- data/app/assets/javascripts/extjs-rails/src/direct/Event.js +35 -0
- data/app/assets/javascripts/extjs-rails/src/direct/ExceptionEvent.js +16 -0
- data/app/assets/javascripts/extjs-rails/src/direct/JsonProvider.js +82 -0
- data/app/assets/javascripts/extjs-rails/src/direct/Manager.js +263 -0
- data/app/assets/javascripts/extjs-rails/src/direct/PollingProvider.js +156 -0
- data/app/assets/javascripts/extjs-rails/src/direct/Provider.js +96 -0
- data/app/assets/javascripts/extjs-rails/src/direct/RemotingEvent.js +24 -0
- data/app/assets/javascripts/extjs-rails/src/direct/RemotingMethod.js +100 -0
- data/app/assets/javascripts/extjs-rails/src/direct/RemotingProvider.js +510 -0
- data/app/assets/javascripts/extjs-rails/src/direct/Transaction.js +41 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.alignment.js +378 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.anim.js +962 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.dd.js +40 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.fx.js +194 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.js +1407 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.position.js +501 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.scroll.js +214 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.style.js +792 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.traversal.js +8 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Helper.js +466 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Query.js +1067 -0
- data/app/assets/javascripts/extjs-rails/src/draw/Color.js +303 -0
- data/app/assets/javascripts/extjs-rails/src/draw/Component.js +245 -0
- data/app/assets/javascripts/extjs-rails/src/draw/CompositeSprite.js +299 -0
- data/app/assets/javascripts/extjs-rails/src/draw/Draw.js +1217 -0
- data/app/assets/javascripts/extjs-rails/src/draw/Matrix.js +183 -0
- data/app/assets/javascripts/extjs-rails/src/draw/Sprite.js +554 -0
- data/app/assets/javascripts/extjs-rails/src/draw/SpriteDD.js +87 -0
- data/app/assets/javascripts/extjs-rails/src/draw/Surface.js +1001 -0
- data/app/assets/javascripts/extjs-rails/src/draw/Text.js +175 -0
- data/app/assets/javascripts/extjs-rails/src/draw/engine/ImageExporter.js +106 -0
- data/app/assets/javascripts/extjs-rails/src/draw/engine/Svg.js +734 -0
- data/app/assets/javascripts/extjs-rails/src/draw/engine/SvgExporter.js +280 -0
- data/app/assets/javascripts/extjs-rails/src/draw/engine/Vml.js +916 -0
- data/app/assets/javascripts/extjs-rails/src/flash/Component.js +248 -0
- data/app/assets/javascripts/extjs-rails/src/form/Basic.js +1018 -0
- data/app/assets/javascripts/extjs-rails/src/form/CheckboxGroup.js +441 -0
- data/app/assets/javascripts/extjs-rails/src/form/CheckboxManager.js +26 -0
- data/app/assets/javascripts/extjs-rails/src/form/FieldAncestor.js +210 -0
- data/app/assets/javascripts/extjs-rails/src/form/FieldContainer.js +290 -0
- data/app/assets/javascripts/extjs-rails/src/form/FieldSet.js +506 -0
- data/app/assets/javascripts/extjs-rails/src/form/Label.js +110 -0
- data/app/assets/javascripts/extjs-rails/src/form/Labelable.js +764 -0
- data/app/assets/javascripts/extjs-rails/src/form/Panel.js +335 -0
- data/app/assets/javascripts/extjs-rails/src/form/RadioGroup.js +124 -0
- data/app/assets/javascripts/extjs-rails/src/form/RadioManager.js +26 -0
- data/app/assets/javascripts/extjs-rails/src/form/action/Action.js +307 -0
- data/app/assets/javascripts/extjs-rails/src/form/action/DirectLoad.js +107 -0
- data/app/assets/javascripts/extjs-rails/src/form/action/DirectSubmit.js +119 -0
- data/app/assets/javascripts/extjs-rails/src/form/action/Load.js +120 -0
- data/app/assets/javascripts/extjs-rails/src/form/action/StandardSubmit.js +34 -0
- data/app/assets/javascripts/extjs-rails/src/form/action/Submit.js +257 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Base.js +813 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Checkbox.js +505 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/ComboBox.js +1427 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Date.js +578 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Display.js +155 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Field.js +430 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/File.js +265 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Hidden.js +75 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/HtmlEditor.js +1439 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Number.js +380 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Picker.js +321 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Radio.js +279 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Spinner.js +321 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Text.js +727 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/TextArea.js +228 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Time.js +459 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Trigger.js +469 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/VTypes.js +172 -0
- data/app/assets/javascripts/extjs-rails/src/fx/Anim.js +472 -0
- data/app/assets/javascripts/extjs-rails/src/fx/Animator.js +410 -0
- data/app/assets/javascripts/extjs-rails/src/fx/CubicBezier.js +77 -0
- data/app/assets/javascripts/extjs-rails/src/fx/Easing.js +136 -0
- data/app/assets/javascripts/extjs-rails/src/fx/Manager.js +353 -0
- data/app/assets/javascripts/extjs-rails/src/fx/PropertyHandler.js +381 -0
- data/app/assets/javascripts/extjs-rails/src/fx/Queue.js +123 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/Component.js +118 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/CompositeElement.js +46 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/CompositeElementCSS.js +22 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/CompositeSprite.js +34 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/Element.js +83 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/ElementCSS.js +77 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/Sprite.js +128 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/Target.js +36 -0
- data/app/assets/javascripts/extjs-rails/src/grid/CellEditor.js +172 -0
- data/app/assets/javascripts/extjs-rails/src/grid/ColumnComponentLayout.js +34 -0
- data/app/assets/javascripts/extjs-rails/src/grid/ColumnLayout.js +201 -0
- data/app/assets/javascripts/extjs-rails/src/grid/Lockable.js +863 -0
- data/app/assets/javascripts/extjs-rails/src/grid/LockingView.js +169 -0
- data/app/assets/javascripts/extjs-rails/src/grid/PagingScroller.js +539 -0
- data/app/assets/javascripts/extjs-rails/src/grid/Panel.js +393 -0
- data/app/assets/javascripts/extjs-rails/src/grid/RowEditor.js +731 -0
- data/app/assets/javascripts/extjs-rails/src/grid/RowNumberer.js +76 -0
- data/app/assets/javascripts/extjs-rails/src/grid/Scroller.js +5 -0
- data/app/assets/javascripts/extjs-rails/src/grid/View.js +44 -0
- data/app/assets/javascripts/extjs-rails/src/grid/ViewDropZone.js +41 -0
- data/app/assets/javascripts/extjs-rails/src/grid/column/Action.js +318 -0
- data/app/assets/javascripts/extjs-rails/src/grid/column/Boolean.js +82 -0
- data/app/assets/javascripts/extjs-rails/src/grid/column/Column.js +835 -0
- data/app/assets/javascripts/extjs-rails/src/grid/column/Date.js +63 -0
- data/app/assets/javascripts/extjs-rails/src/grid/column/Number.js +52 -0
- data/app/assets/javascripts/extjs-rails/src/grid/column/Template.js +58 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/AbstractSummary.js +154 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/Chunking.js +77 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/Feature.js +158 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/Grouping.js +822 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/GroupingSummary.js +243 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/RowBody.js +116 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/RowWrap.js +120 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/Summary.js +167 -0
- data/app/assets/javascripts/extjs-rails/src/grid/header/Container.js +965 -0
- data/app/assets/javascripts/extjs-rails/src/grid/header/DragZone.js +69 -0
- data/app/assets/javascripts/extjs-rails/src/grid/header/DropZone.js +265 -0
- data/app/assets/javascripts/extjs-rails/src/grid/plugin/CellEditing.js +453 -0
- data/app/assets/javascripts/extjs-rails/src/grid/plugin/DragDrop.js +254 -0
- data/app/assets/javascripts/extjs-rails/src/grid/plugin/Editing.js +561 -0
- data/app/assets/javascripts/extjs-rails/src/grid/plugin/HeaderReorderer.js +49 -0
- data/app/assets/javascripts/extjs-rails/src/grid/plugin/HeaderResizer.js +292 -0
- data/app/assets/javascripts/extjs-rails/src/grid/plugin/RowEditing.js +339 -0
- data/app/assets/javascripts/extjs-rails/src/grid/property/Grid.js +351 -0
- data/app/assets/javascripts/extjs-rails/src/grid/property/HeaderContainer.js +109 -0
- data/app/assets/javascripts/extjs-rails/src/grid/property/Property.js +36 -0
- data/app/assets/javascripts/extjs-rails/src/grid/property/Store.js +141 -0
- data/app/assets/javascripts/extjs-rails/src/layout/ClassList.js +90 -0
- data/app/assets/javascripts/extjs-rails/src/layout/Context.js +1232 -0
- data/app/assets/javascripts/extjs-rails/src/layout/ContextItem.js +1470 -0
- data/app/assets/javascripts/extjs-rails/src/layout/Layout.js +761 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/Auto.js +220 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/Body.js +80 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/BoundList.js +95 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/Button.js +261 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/Component.js +427 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/Dock.js +1132 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/Draw.js +79 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/FieldSet.js +62 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/ProgressBar.js +54 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/Tab.js +23 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/ComboBox.js +52 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/Field.js +372 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/FieldContainer.js +48 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/HtmlEditor.js +54 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/Slider.js +58 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/Text.js +75 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/TextArea.js +51 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/Trigger.js +132 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Absolute.js +121 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Accordion.js +308 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Anchor.js +403 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Auto.js +70 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Border-old-js +1079 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Border.js +816 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Box.js +929 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Card.js +361 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/CheckboxGroup.js +376 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Column.js +234 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Container.js +961 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Editor.js +74 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Fit.js +287 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Form.js +157 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/HBox.js +134 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Table.js +412 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/VBox.js +139 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/boxOverflow/Menu.js +365 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/boxOverflow/None.js +83 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/boxOverflow/Scroller.js +475 -0
- data/app/assets/javascripts/extjs-rails/src/menu/CheckItem.js +169 -0
- data/app/assets/javascripts/extjs-rails/src/menu/ColorPicker.js +110 -0
- data/app/assets/javascripts/extjs-rails/src/menu/DatePicker.js +100 -0
- data/app/assets/javascripts/extjs-rails/src/menu/Item.js +553 -0
- data/app/assets/javascripts/extjs-rails/src/menu/KeyNav.js +134 -0
- data/app/assets/javascripts/extjs-rails/src/menu/Manager.js +219 -0
- data/app/assets/javascripts/extjs-rails/src/menu/Menu.js +579 -0
- data/app/assets/javascripts/extjs-rails/src/menu/Separator.js +126 -0
- data/app/assets/javascripts/extjs-rails/src/panel/AbstractPanel.js +323 -0
- data/app/assets/javascripts/extjs-rails/src/panel/DD.js +99 -0
- data/app/assets/javascripts/extjs-rails/src/panel/Header.js +518 -0
- data/app/assets/javascripts/extjs-rails/src/panel/Panel.js +2150 -0
- data/app/assets/javascripts/extjs-rails/src/panel/Proxy.js +131 -0
- data/app/assets/javascripts/extjs-rails/src/panel/Table.js +1018 -0
- data/app/assets/javascripts/extjs-rails/src/panel/Tool.js +304 -0
- data/app/assets/javascripts/extjs-rails/src/picker/Color.js +219 -0
- data/app/assets/javascripts/extjs-rails/src/picker/Date.js +1140 -0
- data/app/assets/javascripts/extjs-rails/src/picker/Month.js +490 -0
- data/app/assets/javascripts/extjs-rails/src/picker/Time.js +165 -0
- data/app/assets/javascripts/extjs-rails/src/resizer/BorderSplitter.js +22 -0
- data/app/assets/javascripts/extjs-rails/src/resizer/BorderSplitterTracker.js +210 -0
- data/app/assets/javascripts/extjs-rails/src/resizer/Handle.js +29 -0
- data/app/assets/javascripts/extjs-rails/src/resizer/ResizeTracker.js +346 -0
- data/app/assets/javascripts/extjs-rails/src/resizer/Resizer.js +477 -0
- data/app/assets/javascripts/extjs-rails/src/resizer/Splitter.js +242 -0
- data/app/assets/javascripts/extjs-rails/src/resizer/SplitterTracker.js +230 -0
- data/app/assets/javascripts/extjs-rails/src/selection/CellModel.js +395 -0
- data/app/assets/javascripts/extjs-rails/src/selection/CheckboxModel.js +234 -0
- data/app/assets/javascripts/extjs-rails/src/selection/DataViewModel.js +160 -0
- data/app/assets/javascripts/extjs-rails/src/selection/Model.js +646 -0
- data/app/assets/javascripts/extjs-rails/src/selection/RowModel.js +499 -0
- data/app/assets/javascripts/extjs-rails/src/selection/TreeModel.js +78 -0
- data/app/assets/javascripts/extjs-rails/src/slider/Multi.js +835 -0
- data/app/assets/javascripts/extjs-rails/src/slider/Single.js +56 -0
- data/app/assets/javascripts/extjs-rails/src/slider/Thumb.js +259 -0
- data/app/assets/javascripts/extjs-rails/src/slider/Tip.js +130 -0
- data/app/assets/javascripts/extjs-rails/src/state/CookieProvider.js +120 -0
- data/app/assets/javascripts/extjs-rails/src/state/LocalStorageProvider.js +72 -0
- data/app/assets/javascripts/extjs-rails/src/state/Manager.js +70 -0
- data/app/assets/javascripts/extjs-rails/src/state/Provider.js +182 -0
- data/app/assets/javascripts/extjs-rails/src/state/Stateful.js +364 -0
- data/app/assets/javascripts/extjs-rails/src/tab/Bar.js +258 -0
- data/app/assets/javascripts/extjs-rails/src/tab/Panel.js +654 -0
- data/app/assets/javascripts/extjs-rails/src/tab/Tab.js +358 -0
- data/app/assets/javascripts/extjs-rails/src/tail.js +10 -0
- data/app/assets/javascripts/extjs-rails/src/tip/QuickTip.js +335 -0
- data/app/assets/javascripts/extjs-rails/src/tip/QuickTipManager.js +239 -0
- data/app/assets/javascripts/extjs-rails/src/tip/Tip.js +160 -0
- data/app/assets/javascripts/extjs-rails/src/tip/ToolTip.js +691 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/Fill.js +28 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/Item.js +16 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/Paging.js +600 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/Separator.js +23 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/Spacer.js +33 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/TextItem.js +57 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/Toolbar-legacy.js +123 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/Toolbar.js +447 -0
- data/app/assets/javascripts/extjs-rails/src/tree/Column.js +90 -0
- data/app/assets/javascripts/extjs-rails/src/tree/Panel.js +505 -0
- data/app/assets/javascripts/extjs-rails/src/tree/View.js +658 -0
- data/app/assets/javascripts/extjs-rails/src/tree/ViewDragZone.js +49 -0
- data/app/assets/javascripts/extjs-rails/src/tree/ViewDropZone.js +287 -0
- data/app/assets/javascripts/extjs-rails/src/tree/plugin/TreeViewDragDrop.js +244 -0
- data/app/assets/javascripts/extjs-rails/src/util/AbstractMixedCollection.js +772 -0
- data/app/assets/javascripts/extjs-rails/src/util/Animate.js +426 -0
- data/app/assets/javascripts/extjs-rails/src/util/Bindable.js +102 -0
- data/app/assets/javascripts/extjs-rails/src/util/CSS.js +185 -0
- data/app/assets/javascripts/extjs-rails/src/util/ClickRepeater.js +238 -0
- data/app/assets/javascripts/extjs-rails/src/util/ComponentDragger.js +126 -0
- data/app/assets/javascripts/extjs-rails/src/util/Cookies.js +91 -0
- data/app/assets/javascripts/extjs-rails/src/util/ElementContainer.js +293 -0
- data/app/assets/javascripts/extjs-rails/src/util/Filter.js +159 -0
- data/app/assets/javascripts/extjs-rails/src/util/Floating.js +321 -0
- data/app/assets/javascripts/extjs-rails/src/util/Grouper.js +26 -0
- data/app/assets/javascripts/extjs-rails/src/util/HashMap.js +356 -0
- data/app/assets/javascripts/extjs-rails/src/util/History.js +285 -0
- data/app/assets/javascripts/extjs-rails/src/util/Inflector.js +297 -0
- data/app/assets/javascripts/extjs-rails/src/util/KeyMap.js +427 -0
- data/app/assets/javascripts/extjs-rails/src/util/KeyNav.js +239 -0
- data/app/assets/javascripts/extjs-rails/src/util/LruCache.js +257 -0
- data/app/assets/javascripts/extjs-rails/src/util/Memento.js +131 -0
- data/app/assets/javascripts/extjs-rails/src/util/MixedCollection.js +239 -0
- data/app/assets/javascripts/extjs-rails/src/util/Observable.js +1003 -0
- data/app/assets/javascripts/extjs-rails/src/util/Offset.js +60 -0
- data/app/assets/javascripts/extjs-rails/src/util/Point.js +93 -0
- data/app/assets/javascripts/extjs-rails/src/util/ProtoElement.js +205 -0
- data/app/assets/javascripts/extjs-rails/src/util/Queue.js +76 -0
- data/app/assets/javascripts/extjs-rails/src/util/Region.js +388 -0
- data/app/assets/javascripts/extjs-rails/src/util/Renderable.js +1079 -0
- data/app/assets/javascripts/extjs-rails/src/util/Sortable.js +248 -0
- data/app/assets/javascripts/extjs-rails/src/util/Sorter.js +179 -0
- data/app/assets/javascripts/extjs-rails/src/util/TextMetrics.js +148 -0
- data/app/assets/javascripts/extjs-rails/src/view/AbstractView.js +1103 -0
- data/app/assets/javascripts/extjs-rails/src/view/BoundList.js +207 -0
- data/app/assets/javascripts/extjs-rails/src/view/BoundListKeyNav.js +92 -0
- data/app/assets/javascripts/extjs-rails/src/view/DragZone.js +106 -0
- data/app/assets/javascripts/extjs-rails/src/view/DropZone.js +240 -0
- data/app/assets/javascripts/extjs-rails/src/view/Table.js +1229 -0
- data/app/assets/javascripts/extjs-rails/src/view/TableChunker.js +139 -0
- data/app/assets/javascripts/extjs-rails/src/view/View.js +636 -0
- data/app/assets/javascripts/extjs-rails/src/window/MessageBox.js +880 -0
- data/app/assets/javascripts/extjs-rails/src/window/Window-legacy.js +56 -0
- data/app/assets/javascripts/extjs-rails/src/window/Window.js +793 -0
- data/extjs-rails.gemspec +24 -0
- data/lib/extjs-rails.rb +7 -0
- data/lib/extjs-rails/engine.rb +7 -0
- data/lib/extjs-rails/version.rb +5 -0
- metadata +660 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @private
|
|
3
|
+
*/
|
|
4
|
+
Ext.define('Ext.tree.ViewDragZone', {
|
|
5
|
+
extend: 'Ext.view.DragZone',
|
|
6
|
+
|
|
7
|
+
isPreventDrag: function(e, record) {
|
|
8
|
+
return (record.get('allowDrag') === false) || !!e.getTarget(this.view.expanderSelector);
|
|
9
|
+
},
|
|
10
|
+
|
|
11
|
+
afterRepair: function() {
|
|
12
|
+
var me = this,
|
|
13
|
+
view = me.view,
|
|
14
|
+
selectedRowCls = view.selectedItemCls,
|
|
15
|
+
records = me.dragData.records,
|
|
16
|
+
r,
|
|
17
|
+
rLen = records.length,
|
|
18
|
+
fly = Ext.fly,
|
|
19
|
+
item;
|
|
20
|
+
|
|
21
|
+
if (Ext.enableFx && me.repairHighlight) {
|
|
22
|
+
// Roll through all records and highlight all the ones we attempted to drag.
|
|
23
|
+
for (r = 0; r < rLen; r++) {
|
|
24
|
+
// anonymous fns below, don't hoist up unless below is wrapped in
|
|
25
|
+
// a self-executing function passing in item.
|
|
26
|
+
item = view.getNode(records[r]);
|
|
27
|
+
|
|
28
|
+
// We must remove the selected row class before animating, because
|
|
29
|
+
// the selected row class declares !important on its background-color.
|
|
30
|
+
fly(item.firstChild).highlight(me.repairHighlightColor, {
|
|
31
|
+
listeners: {
|
|
32
|
+
beforeanimate: function() {
|
|
33
|
+
if (view.isSelected(item)) {
|
|
34
|
+
fly(item).removeCls(selectedRowCls);
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
afteranimate: function() {
|
|
38
|
+
if (view.isSelected(item)) {
|
|
39
|
+
fly(item).addCls(selectedRowCls);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
}
|
|
47
|
+
me.dragging = false;
|
|
48
|
+
}
|
|
49
|
+
});
|
|
@@ -0,0 +1,287 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @private
|
|
3
|
+
*/
|
|
4
|
+
Ext.define('Ext.tree.ViewDropZone', {
|
|
5
|
+
extend: 'Ext.view.DropZone',
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @cfg {Boolean} allowParentInsert
|
|
9
|
+
* Allow inserting a dragged node between an expanded parent node and its first child that will become a
|
|
10
|
+
* sibling of the parent when dropped.
|
|
11
|
+
*/
|
|
12
|
+
allowParentInserts: false,
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* @cfg {String} allowContainerDrop
|
|
16
|
+
* True if drops on the tree container (outside of a specific tree node) are allowed.
|
|
17
|
+
*/
|
|
18
|
+
allowContainerDrops: false,
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* @cfg {String} appendOnly
|
|
22
|
+
* True if the tree should only allow append drops (use for trees which are sorted).
|
|
23
|
+
*/
|
|
24
|
+
appendOnly: false,
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* @cfg {String} expandDelay
|
|
28
|
+
* The delay in milliseconds to wait before expanding a target tree node while dragging a droppable node
|
|
29
|
+
* over the target.
|
|
30
|
+
*/
|
|
31
|
+
expandDelay : 500,
|
|
32
|
+
|
|
33
|
+
indicatorCls: Ext.baseCSSPrefix + 'tree-ddindicator',
|
|
34
|
+
|
|
35
|
+
// private
|
|
36
|
+
expandNode : function(node) {
|
|
37
|
+
var view = this.view;
|
|
38
|
+
if (!node.isLeaf() && !node.isExpanded()) {
|
|
39
|
+
view.expand(node);
|
|
40
|
+
this.expandProcId = false;
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
|
|
44
|
+
// private
|
|
45
|
+
queueExpand : function(node) {
|
|
46
|
+
this.expandProcId = Ext.Function.defer(this.expandNode, this.expandDelay, this, [node]);
|
|
47
|
+
},
|
|
48
|
+
|
|
49
|
+
// private
|
|
50
|
+
cancelExpand : function() {
|
|
51
|
+
if (this.expandProcId) {
|
|
52
|
+
clearTimeout(this.expandProcId);
|
|
53
|
+
this.expandProcId = false;
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
|
|
57
|
+
getPosition: function(e, node) {
|
|
58
|
+
var view = this.view,
|
|
59
|
+
record = view.getRecord(node),
|
|
60
|
+
y = e.getPageY(),
|
|
61
|
+
noAppend = record.isLeaf(),
|
|
62
|
+
noBelow = false,
|
|
63
|
+
region = Ext.fly(node).getRegion(),
|
|
64
|
+
fragment;
|
|
65
|
+
|
|
66
|
+
// If we are dragging on top of the root node of the tree, we always want to append.
|
|
67
|
+
if (record.isRoot()) {
|
|
68
|
+
return 'append';
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
// Return 'append' if the node we are dragging on top of is not a leaf else return false.
|
|
72
|
+
if (this.appendOnly) {
|
|
73
|
+
return noAppend ? false : 'append';
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
if (!this.allowParentInsert) {
|
|
77
|
+
noBelow = record.hasChildNodes() && record.isExpanded();
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
fragment = (region.bottom - region.top) / (noAppend ? 2 : 3);
|
|
81
|
+
if (y >= region.top && y < (region.top + fragment)) {
|
|
82
|
+
return 'before';
|
|
83
|
+
}
|
|
84
|
+
else if (!noBelow && (noAppend || (y >= (region.bottom - fragment) && y <= region.bottom))) {
|
|
85
|
+
return 'after';
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
return 'append';
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
|
|
92
|
+
isValidDropPoint : function(node, position, dragZone, e, data) {
|
|
93
|
+
if (!node || !data.item) {
|
|
94
|
+
return false;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
var view = this.view,
|
|
98
|
+
targetNode = view.getRecord(node),
|
|
99
|
+
draggedRecords = data.records,
|
|
100
|
+
dataLength = draggedRecords.length,
|
|
101
|
+
ln = draggedRecords.length,
|
|
102
|
+
i, record;
|
|
103
|
+
|
|
104
|
+
// No drop position, or dragged records: invalid drop point
|
|
105
|
+
if (!(targetNode && position && dataLength)) {
|
|
106
|
+
return false;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
// If the targetNode is within the folder we are dragging
|
|
110
|
+
for (i = 0; i < ln; i++) {
|
|
111
|
+
record = draggedRecords[i];
|
|
112
|
+
if (record.isNode && record.contains(targetNode)) {
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
// Respect the allowDrop field on Tree nodes
|
|
118
|
+
if (position === 'append' && targetNode.get('allowDrop') === false) {
|
|
119
|
+
return false;
|
|
120
|
+
}
|
|
121
|
+
else if (position != 'append' && targetNode.parentNode.get('allowDrop') === false) {
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
// If the target record is in the dragged dataset, then invalid drop
|
|
126
|
+
if (Ext.Array.contains(draggedRecords, targetNode)) {
|
|
127
|
+
return false;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
// @TODO: fire some event to notify that there is a valid drop possible for the node you're dragging
|
|
131
|
+
// Yes: this.fireViewEvent(blah....) fires an event through the owning View.
|
|
132
|
+
return true;
|
|
133
|
+
},
|
|
134
|
+
|
|
135
|
+
onNodeOver : function(node, dragZone, e, data) {
|
|
136
|
+
var position = this.getPosition(e, node),
|
|
137
|
+
returnCls = this.dropNotAllowed,
|
|
138
|
+
view = this.view,
|
|
139
|
+
targetNode = view.getRecord(node),
|
|
140
|
+
indicator = this.getIndicator(),
|
|
141
|
+
indicatorX = 0,
|
|
142
|
+
indicatorY = 0;
|
|
143
|
+
|
|
144
|
+
// auto node expand check
|
|
145
|
+
this.cancelExpand();
|
|
146
|
+
if (position == 'append' && !this.expandProcId && !Ext.Array.contains(data.records, targetNode) && !targetNode.isLeaf() && !targetNode.isExpanded()) {
|
|
147
|
+
this.queueExpand(targetNode);
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
if (this.isValidDropPoint(node, position, dragZone, e, data)) {
|
|
152
|
+
this.valid = true;
|
|
153
|
+
this.currentPosition = position;
|
|
154
|
+
this.overRecord = targetNode;
|
|
155
|
+
|
|
156
|
+
indicator.setWidth(Ext.fly(node).getWidth());
|
|
157
|
+
indicatorY = Ext.fly(node).getY() - Ext.fly(view.el).getY() - 1;
|
|
158
|
+
|
|
159
|
+
/*
|
|
160
|
+
* In the code below we show the proxy again. The reason for doing this is showing the indicator will
|
|
161
|
+
* call toFront, causing it to get a new z-index which can sometimes push the proxy behind it. We always
|
|
162
|
+
* want the proxy to be above, so calling show on the proxy will call toFront and bring it forward.
|
|
163
|
+
*/
|
|
164
|
+
if (position == 'before') {
|
|
165
|
+
returnCls = targetNode.isFirst() ? Ext.baseCSSPrefix + 'tree-drop-ok-above' : Ext.baseCSSPrefix + 'tree-drop-ok-between';
|
|
166
|
+
indicator.showAt(0, indicatorY);
|
|
167
|
+
dragZone.proxy.show();
|
|
168
|
+
} else if (position == 'after') {
|
|
169
|
+
returnCls = targetNode.isLast() ? Ext.baseCSSPrefix + 'tree-drop-ok-below' : Ext.baseCSSPrefix + 'tree-drop-ok-between';
|
|
170
|
+
indicatorY += Ext.fly(node).getHeight();
|
|
171
|
+
indicator.showAt(0, indicatorY);
|
|
172
|
+
dragZone.proxy.show();
|
|
173
|
+
} else {
|
|
174
|
+
returnCls = Ext.baseCSSPrefix + 'tree-drop-ok-append';
|
|
175
|
+
// @TODO: set a class on the parent folder node to be able to style it
|
|
176
|
+
indicator.hide();
|
|
177
|
+
}
|
|
178
|
+
} else {
|
|
179
|
+
this.valid = false;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
this.currentCls = returnCls;
|
|
183
|
+
return returnCls;
|
|
184
|
+
},
|
|
185
|
+
|
|
186
|
+
onContainerOver : function(dd, e, data) {
|
|
187
|
+
return e.getTarget('.' + this.indicatorCls) ? this.currentCls : this.dropNotAllowed;
|
|
188
|
+
},
|
|
189
|
+
|
|
190
|
+
notifyOut: function() {
|
|
191
|
+
this.callParent(arguments);
|
|
192
|
+
this.cancelExpand();
|
|
193
|
+
},
|
|
194
|
+
|
|
195
|
+
handleNodeDrop : function(data, targetNode, position) {
|
|
196
|
+
var me = this,
|
|
197
|
+
view = me.view,
|
|
198
|
+
parentNode = targetNode.parentNode,
|
|
199
|
+
store = view.getStore(),
|
|
200
|
+
recordDomNodes = [],
|
|
201
|
+
records, i, len,
|
|
202
|
+
insertionMethod, argList,
|
|
203
|
+
needTargetExpand,
|
|
204
|
+
transferData,
|
|
205
|
+
processDrop;
|
|
206
|
+
|
|
207
|
+
// If the copy flag is set, create a copy of the Models with the same IDs
|
|
208
|
+
if (data.copy) {
|
|
209
|
+
records = data.records;
|
|
210
|
+
data.records = [];
|
|
211
|
+
for (i = 0, len = records.length; i < len; i++) {
|
|
212
|
+
data.records.push(Ext.apply({}, records[i].data));
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
// Cancel any pending expand operation
|
|
217
|
+
me.cancelExpand();
|
|
218
|
+
|
|
219
|
+
// Grab a reference to the correct node insertion method.
|
|
220
|
+
// Create an arg list array intended for the apply method of the
|
|
221
|
+
// chosen node insertion method.
|
|
222
|
+
// Ensure the target object for the method is referenced by 'targetNode'
|
|
223
|
+
if (position == 'before') {
|
|
224
|
+
insertionMethod = parentNode.insertBefore;
|
|
225
|
+
argList = [null, targetNode];
|
|
226
|
+
targetNode = parentNode;
|
|
227
|
+
}
|
|
228
|
+
else if (position == 'after') {
|
|
229
|
+
if (targetNode.nextSibling) {
|
|
230
|
+
insertionMethod = parentNode.insertBefore;
|
|
231
|
+
argList = [null, targetNode.nextSibling];
|
|
232
|
+
}
|
|
233
|
+
else {
|
|
234
|
+
insertionMethod = parentNode.appendChild;
|
|
235
|
+
argList = [null];
|
|
236
|
+
}
|
|
237
|
+
targetNode = parentNode;
|
|
238
|
+
}
|
|
239
|
+
else {
|
|
240
|
+
if (!targetNode.isExpanded()) {
|
|
241
|
+
needTargetExpand = true;
|
|
242
|
+
}
|
|
243
|
+
insertionMethod = targetNode.appendChild;
|
|
244
|
+
argList = [null];
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
// A function to transfer the data into the destination tree
|
|
248
|
+
transferData = function() {
|
|
249
|
+
var node,
|
|
250
|
+
r, rLen, color, n;
|
|
251
|
+
for (i = 0, len = data.records.length; i < len; i++) {
|
|
252
|
+
argList[0] = data.records[i];
|
|
253
|
+
node = insertionMethod.apply(targetNode, argList);
|
|
254
|
+
|
|
255
|
+
if (Ext.enableFx && me.dropHighlight) {
|
|
256
|
+
recordDomNodes.push(view.getNode(node));
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
// Kick off highlights after everything's been inserted, so they are
|
|
261
|
+
// more in sync without insertion/render overhead.
|
|
262
|
+
if (Ext.enableFx && me.dropHighlight) {
|
|
263
|
+
//FIXME: the check for n.firstChild is not a great solution here. Ideally the line should simply read
|
|
264
|
+
//Ext.fly(n.firstChild) but this yields errors in IE6 and 7. See ticket EXTJSIV-1705 for more details
|
|
265
|
+
rLen = recordDomNodes.length;
|
|
266
|
+
color = me.dropHighlightColor;
|
|
267
|
+
|
|
268
|
+
for (r = 0; r < rLen; r++) {
|
|
269
|
+
n = recordDomNodes[r];
|
|
270
|
+
|
|
271
|
+
if (n) {
|
|
272
|
+
Ext.fly(n.firstChild ? n.firstChild : n).highlight(color);
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
};
|
|
277
|
+
|
|
278
|
+
// If dropping right on an unexpanded node, transfer the data after it is expanded.
|
|
279
|
+
if (needTargetExpand) {
|
|
280
|
+
targetNode.expand(false, transferData);
|
|
281
|
+
}
|
|
282
|
+
// Otherwise, call the data transfer function immediately
|
|
283
|
+
else {
|
|
284
|
+
transferData();
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
});
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This plugin provides drag and/or drop functionality for a TreeView.
|
|
3
|
+
*
|
|
4
|
+
* It creates a specialized instance of {@link Ext.dd.DragZone DragZone} which knows how to drag out of a
|
|
5
|
+
* {@link Ext.tree.View TreeView} and loads the data object which is passed to a cooperating
|
|
6
|
+
* {@link Ext.dd.DragZone DragZone}'s methods with the following properties:
|
|
7
|
+
*
|
|
8
|
+
* - copy : Boolean
|
|
9
|
+
*
|
|
10
|
+
* The value of the TreeView's `copy` property, or `true` if the TreeView was configured with `allowCopy: true` *and*
|
|
11
|
+
* the control key was pressed when the drag operation was begun.
|
|
12
|
+
*
|
|
13
|
+
* - view : TreeView
|
|
14
|
+
*
|
|
15
|
+
* The source TreeView from which the drag originated.
|
|
16
|
+
*
|
|
17
|
+
* - ddel : HtmlElement
|
|
18
|
+
*
|
|
19
|
+
* The drag proxy element which moves with the mouse
|
|
20
|
+
*
|
|
21
|
+
* - item : HtmlElement
|
|
22
|
+
*
|
|
23
|
+
* The TreeView node upon which the mousedown event was registered.
|
|
24
|
+
*
|
|
25
|
+
* - records : Array
|
|
26
|
+
*
|
|
27
|
+
* An Array of {@link Ext.data.Model Models} representing the selected data being dragged from the source TreeView.
|
|
28
|
+
*
|
|
29
|
+
* It also creates a specialized instance of {@link Ext.dd.DropZone} which cooperates with other DropZones which are
|
|
30
|
+
* members of the same ddGroup which processes such data objects.
|
|
31
|
+
*
|
|
32
|
+
* Adding this plugin to a view means that two new events may be fired from the client TreeView, {@link #beforedrop} and
|
|
33
|
+
* {@link #drop}.
|
|
34
|
+
*
|
|
35
|
+
* Note that the plugin must be added to the tree view, not to the tree panel. For example using viewConfig:
|
|
36
|
+
*
|
|
37
|
+
* viewConfig: {
|
|
38
|
+
* plugins: { ptype: 'treeviewdragdrop' }
|
|
39
|
+
* }
|
|
40
|
+
*/
|
|
41
|
+
Ext.define('Ext.tree.plugin.TreeViewDragDrop', {
|
|
42
|
+
extend: 'Ext.AbstractPlugin',
|
|
43
|
+
alias: 'plugin.treeviewdragdrop',
|
|
44
|
+
|
|
45
|
+
uses: [
|
|
46
|
+
'Ext.tree.ViewDragZone',
|
|
47
|
+
'Ext.tree.ViewDropZone'
|
|
48
|
+
],
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* @event beforedrop
|
|
52
|
+
*
|
|
53
|
+
* **This event is fired through the TreeView. Add listeners to the TreeView object**
|
|
54
|
+
*
|
|
55
|
+
* Fired when a drop gesture has been triggered by a mouseup event in a valid drop position in the TreeView.
|
|
56
|
+
*
|
|
57
|
+
* @param {HTMLElement} node The TreeView node **if any** over which the mouse was positioned.
|
|
58
|
+
*
|
|
59
|
+
* Returning `false` to this event signals that the drop gesture was invalid, and if the drag proxy will animate
|
|
60
|
+
* back to the point from which the drag began.
|
|
61
|
+
*
|
|
62
|
+
* Returning `0` To this event signals that the data transfer operation should not take place, but that the gesture
|
|
63
|
+
* was valid, and that the repair operation should not take place.
|
|
64
|
+
*
|
|
65
|
+
* Any other return value continues with the data transfer operation.
|
|
66
|
+
*
|
|
67
|
+
* @param {Object} data The data object gathered at mousedown time by the cooperating
|
|
68
|
+
* {@link Ext.dd.DragZone DragZone}'s {@link Ext.dd.DragZone#getDragData getDragData} method it contains the following
|
|
69
|
+
* properties:
|
|
70
|
+
* @param {Boolean} data.copy The value of the TreeView's `copy` property, or `true` if the TreeView was configured with
|
|
71
|
+
* `allowCopy: true` and the control key was pressed when the drag operation was begun
|
|
72
|
+
* @param {Ext.tree.View} data.view The source TreeView from which the drag originated.
|
|
73
|
+
* @param {HTMLElement} data.ddel The drag proxy element which moves with the mouse
|
|
74
|
+
* @param {HTMLElement} data.item The TreeView node upon which the mousedown event was registered.
|
|
75
|
+
* @param {Ext.data.Model[]} data.records An Array of {@link Ext.data.Model Model}s representing the selected data being
|
|
76
|
+
* dragged from the source TreeView.
|
|
77
|
+
*
|
|
78
|
+
* @param {Ext.data.Model} overModel The Model over which the drop gesture took place.
|
|
79
|
+
*
|
|
80
|
+
* @param {String} dropPosition `"before"`, `"after"` or `"append"` depending on whether the mouse is above or below
|
|
81
|
+
* the midline of the node, or the node is a branch node which accepts new child nodes.
|
|
82
|
+
*
|
|
83
|
+
* @param {Object} dropHandler An object containing methods to complete/cancel the data transfer operation and either
|
|
84
|
+
* move or copy Model instances from the source View's Store to the destination View's Store.
|
|
85
|
+
*
|
|
86
|
+
* This is useful when you want to perform some kind of asynchronous processing before confirming/cancelling
|
|
87
|
+
* the drop, such as an {@link Ext.window.MessageBox#confirm confirm} call, or an Ajax request.
|
|
88
|
+
*
|
|
89
|
+
* Set dropHandler.wait = true in this event handler to delay processing. When you want to complete the event, call
|
|
90
|
+
* dropHandler.processDrop(). To cancel the drop, call dropHandler.cancelDrop.
|
|
91
|
+
*/
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* @event drop
|
|
95
|
+
*
|
|
96
|
+
* **This event is fired through the TreeView. Add listeners to the TreeView object** Fired when a drop operation
|
|
97
|
+
* has been completed and the data has been moved or copied.
|
|
98
|
+
*
|
|
99
|
+
* @param {HTMLElement} node The TreeView node **if any** over which the mouse was positioned.
|
|
100
|
+
*
|
|
101
|
+
* @param {Object} data The data object gathered at mousedown time by the cooperating
|
|
102
|
+
* {@link Ext.dd.DragZone DragZone}'s {@link Ext.dd.DragZone#getDragData getDragData} method it contains the following
|
|
103
|
+
* properties:
|
|
104
|
+
* @param {Boolean} data.copy The value of the TreeView's `copy` property, or `true` if the TreeView was configured with
|
|
105
|
+
* `allowCopy: true` and the control key was pressed when the drag operation was begun
|
|
106
|
+
* @param {Ext.tree.View} data.view The source TreeView from which the drag originated.
|
|
107
|
+
* @param {HTMLElement} data.ddel The drag proxy element which moves with the mouse
|
|
108
|
+
* @param {HTMLElement} data.item The TreeView node upon which the mousedown event was registered.
|
|
109
|
+
* @param {Ext.data.Model[]} data.records An Array of {@link Ext.data.Model Model}s representing the selected data being
|
|
110
|
+
* dragged from the source TreeView.
|
|
111
|
+
*
|
|
112
|
+
* @param {Ext.data.Model} overModel The Model over which the drop gesture took place.
|
|
113
|
+
*
|
|
114
|
+
* @param {String} dropPosition `"before"`, `"after"` or `"append"` depending on whether the mouse is above or below
|
|
115
|
+
* the midline of the node, or the node is a branch node which accepts new child nodes.
|
|
116
|
+
*/
|
|
117
|
+
//<locale>
|
|
118
|
+
dragText : '{0} selected node{1}',
|
|
119
|
+
//</locale>
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* @cfg {Boolean} allowParentInsert
|
|
123
|
+
* Allow inserting a dragged node between an expanded parent node and its first child that will become a sibling of
|
|
124
|
+
* the parent when dropped.
|
|
125
|
+
*/
|
|
126
|
+
allowParentInserts: false,
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* @cfg {String} allowContainerDrop
|
|
130
|
+
* True if drops on the tree container (outside of a specific tree node) are allowed.
|
|
131
|
+
*/
|
|
132
|
+
allowContainerDrops: false,
|
|
133
|
+
|
|
134
|
+
/**
|
|
135
|
+
* @cfg {String} appendOnly
|
|
136
|
+
* True if the tree should only allow append drops (use for trees which are sorted).
|
|
137
|
+
*/
|
|
138
|
+
appendOnly: false,
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* @cfg {String} ddGroup
|
|
142
|
+
* A named drag drop group to which this object belongs. If a group is specified, then both the DragZones and
|
|
143
|
+
* DropZone used by this plugin will only interact with other drag drop objects in the same group.
|
|
144
|
+
*/
|
|
145
|
+
ddGroup : "TreeDD",
|
|
146
|
+
|
|
147
|
+
/**
|
|
148
|
+
* @cfg {String} dragGroup
|
|
149
|
+
* The ddGroup to which the DragZone will belong.
|
|
150
|
+
*
|
|
151
|
+
* This defines which other DropZones the DragZone will interact with. Drag/DropZones only interact with other
|
|
152
|
+
* Drag/DropZones which are members of the same ddGroup.
|
|
153
|
+
*/
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* @cfg {String} dropGroup
|
|
157
|
+
* The ddGroup to which the DropZone will belong.
|
|
158
|
+
*
|
|
159
|
+
* This defines which other DragZones the DropZone will interact with. Drag/DropZones only interact with other
|
|
160
|
+
* Drag/DropZones which are members of the same ddGroup.
|
|
161
|
+
*/
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* @cfg {String} expandDelay
|
|
165
|
+
* The delay in milliseconds to wait before expanding a target tree node while dragging a droppable node over the
|
|
166
|
+
* target.
|
|
167
|
+
*/
|
|
168
|
+
expandDelay : 1000,
|
|
169
|
+
|
|
170
|
+
/**
|
|
171
|
+
* @cfg {Boolean} enableDrop
|
|
172
|
+
* Set to `false` to disallow the View from accepting drop gestures.
|
|
173
|
+
*/
|
|
174
|
+
enableDrop: true,
|
|
175
|
+
|
|
176
|
+
/**
|
|
177
|
+
* @cfg {Boolean} enableDrag
|
|
178
|
+
* Set to `false` to disallow dragging items from the View.
|
|
179
|
+
*/
|
|
180
|
+
enableDrag: true,
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* @cfg {String} nodeHighlightColor
|
|
184
|
+
* The color to use when visually highlighting the dragged or dropped node (default value is light blue).
|
|
185
|
+
* The color must be a 6 digit hex value, without a preceding '#'. See also {@link #nodeHighlightOnDrop} and
|
|
186
|
+
* {@link #nodeHighlightOnRepair}.
|
|
187
|
+
*/
|
|
188
|
+
nodeHighlightColor: 'c3daf9',
|
|
189
|
+
|
|
190
|
+
/**
|
|
191
|
+
* @cfg {Boolean} nodeHighlightOnDrop
|
|
192
|
+
* Whether or not to highlight any nodes after they are
|
|
193
|
+
* successfully dropped on their target. Defaults to the value of `Ext.enableFx`.
|
|
194
|
+
* See also {@link #nodeHighlightColor} and {@link #nodeHighlightOnRepair}.
|
|
195
|
+
*/
|
|
196
|
+
nodeHighlightOnDrop: Ext.enableFx,
|
|
197
|
+
|
|
198
|
+
/**
|
|
199
|
+
* @cfg {Boolean} nodeHighlightOnRepair
|
|
200
|
+
* Whether or not to highlight any nodes after they are
|
|
201
|
+
* repaired from an unsuccessful drag/drop. Defaults to the value of `Ext.enableFx`.
|
|
202
|
+
* See also {@link #nodeHighlightColor} and {@link #nodeHighlightOnDrop}.
|
|
203
|
+
*/
|
|
204
|
+
nodeHighlightOnRepair: Ext.enableFx,
|
|
205
|
+
|
|
206
|
+
init : function(view) {
|
|
207
|
+
view.on('render', this.onViewRender, this, {single: true});
|
|
208
|
+
},
|
|
209
|
+
|
|
210
|
+
/**
|
|
211
|
+
* @private
|
|
212
|
+
* AbstractComponent calls destroy on all its plugins at destroy time.
|
|
213
|
+
*/
|
|
214
|
+
destroy: function() {
|
|
215
|
+
Ext.destroy(this.dragZone, this.dropZone);
|
|
216
|
+
},
|
|
217
|
+
|
|
218
|
+
onViewRender : function(view) {
|
|
219
|
+
var me = this;
|
|
220
|
+
|
|
221
|
+
if (me.enableDrag) {
|
|
222
|
+
me.dragZone = new Ext.tree.ViewDragZone({
|
|
223
|
+
view: view,
|
|
224
|
+
ddGroup: me.dragGroup || me.ddGroup,
|
|
225
|
+
dragText: me.dragText,
|
|
226
|
+
repairHighlightColor: me.nodeHighlightColor,
|
|
227
|
+
repairHighlight: me.nodeHighlightOnRepair
|
|
228
|
+
});
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
if (me.enableDrop) {
|
|
232
|
+
me.dropZone = new Ext.tree.ViewDropZone({
|
|
233
|
+
view: view,
|
|
234
|
+
ddGroup: me.dropGroup || me.ddGroup,
|
|
235
|
+
allowContainerDrops: me.allowContainerDrops,
|
|
236
|
+
appendOnly: me.appendOnly,
|
|
237
|
+
allowParentInserts: me.allowParentInserts,
|
|
238
|
+
expandDelay: me.expandDelay,
|
|
239
|
+
dropHighlightColor: me.nodeHighlightColor,
|
|
240
|
+
dropHighlight: me.nodeHighlightOnDrop
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
});
|