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,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @class Ext.dom.AbstractQuery
|
|
3
|
+
* @private
|
|
4
|
+
*/
|
|
5
|
+
Ext.define('Ext.dom.AbstractQuery', {
|
|
6
|
+
/**
|
|
7
|
+
* Selects a group of elements.
|
|
8
|
+
* @param {String} selector The selector/xpath query (can be a comma separated list of selectors)
|
|
9
|
+
* @param {HTMLElement/String} [root] The start of the query (defaults to document).
|
|
10
|
+
* @return {HTMLElement[]} An Array of DOM elements which match the selector. If there are
|
|
11
|
+
* no matches, and empty Array is returned.
|
|
12
|
+
*/
|
|
13
|
+
select: function(q, root) {
|
|
14
|
+
var results = [],
|
|
15
|
+
nodes,
|
|
16
|
+
i,
|
|
17
|
+
j,
|
|
18
|
+
qlen,
|
|
19
|
+
nlen;
|
|
20
|
+
|
|
21
|
+
root = root || document;
|
|
22
|
+
|
|
23
|
+
if (typeof root == 'string') {
|
|
24
|
+
root = document.getElementById(root);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
q = q.split(",");
|
|
28
|
+
|
|
29
|
+
for (i = 0,qlen = q.length; i < qlen; i++) {
|
|
30
|
+
if (typeof q[i] == 'string') {
|
|
31
|
+
|
|
32
|
+
//support for node attribute selection
|
|
33
|
+
if (typeof q[i][0] == '@') {
|
|
34
|
+
nodes = root.getAttributeNode(q[i].substring(1));
|
|
35
|
+
results.push(nodes);
|
|
36
|
+
} else {
|
|
37
|
+
nodes = root.querySelectorAll(q[i]);
|
|
38
|
+
|
|
39
|
+
for (j = 0,nlen = nodes.length; j < nlen; j++) {
|
|
40
|
+
results.push(nodes[j]);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
return results;
|
|
47
|
+
},
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Selects a single element.
|
|
51
|
+
* @param {String} selector The selector/xpath query
|
|
52
|
+
* @param {HTMLElement/String} [root] The start of the query (defaults to document).
|
|
53
|
+
* @return {HTMLElement} The DOM element which matched the selector.
|
|
54
|
+
*/
|
|
55
|
+
selectNode: function(q, root) {
|
|
56
|
+
return this.select(q, root)[0];
|
|
57
|
+
},
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Returns true if the passed element(s) match the passed simple selector (e.g. div.some-class or span:first-child)
|
|
61
|
+
* @param {String/HTMLElement/Array} el An element id, element or array of elements
|
|
62
|
+
* @param {String} selector The simple selector to test
|
|
63
|
+
* @return {Boolean}
|
|
64
|
+
*/
|
|
65
|
+
is: function(el, q) {
|
|
66
|
+
if (typeof el == "string") {
|
|
67
|
+
el = document.getElementById(el);
|
|
68
|
+
}
|
|
69
|
+
return this.select(q).indexOf(el) !== -1;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
});
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @class Ext.dom.CompositeElement
|
|
3
|
+
* <p>This class encapsulates a <i>collection</i> of DOM elements, providing methods to filter
|
|
4
|
+
* members, or to perform collective actions upon the whole set.</p>
|
|
5
|
+
* <p>Although they are not listed, this class supports all of the methods of {@link Ext.dom.Element} and
|
|
6
|
+
* {@link Ext.fx.Anim}. The methods from these classes will be performed on all the elements in this collection.</p>
|
|
7
|
+
* <p>All methods return <i>this</i> and can be chained.</p>
|
|
8
|
+
* Usage:
|
|
9
|
+
<pre><code>
|
|
10
|
+
var els = Ext.select("#some-el div.some-class", true);
|
|
11
|
+
// or select directly from an existing element
|
|
12
|
+
var el = Ext.get('some-el');
|
|
13
|
+
el.select('div.some-class', true);
|
|
14
|
+
|
|
15
|
+
els.setWidth(100); // all elements become 100 width
|
|
16
|
+
els.hide(true); // all elements fade out and hide
|
|
17
|
+
// or
|
|
18
|
+
els.setWidth(100).hide(true);
|
|
19
|
+
</code></pre>
|
|
20
|
+
*/
|
|
21
|
+
Ext.define('Ext.dom.CompositeElement', {
|
|
22
|
+
alternateClassName: 'Ext.CompositeElement',
|
|
23
|
+
|
|
24
|
+
extend: 'Ext.dom.CompositeElementLite',
|
|
25
|
+
|
|
26
|
+
// private
|
|
27
|
+
getElement: function(el) {
|
|
28
|
+
// In this case just return it, since we already have a reference to it
|
|
29
|
+
return el;
|
|
30
|
+
},
|
|
31
|
+
|
|
32
|
+
// private
|
|
33
|
+
transformElement: function(el) {
|
|
34
|
+
return Ext.get(el);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
}, function() {
|
|
38
|
+
/**
|
|
39
|
+
* Selects elements based on the passed CSS selector to enable {@link Ext.Element Element} methods
|
|
40
|
+
* to be applied to many related elements in one statement through the returned {@link Ext.CompositeElement CompositeElement} or
|
|
41
|
+
* {@link Ext.CompositeElementLite CompositeElementLite} object.
|
|
42
|
+
* @param {String/HTMLElement[]} selector The CSS selector or an array of elements
|
|
43
|
+
* @param {Boolean} [unique] true to create a unique Ext.Element for each element (defaults to a shared flyweight object)
|
|
44
|
+
* @param {HTMLElement/String} [root] The root element of the query or id of the root
|
|
45
|
+
* @return {Ext.CompositeElementLite/Ext.CompositeElement}
|
|
46
|
+
* @member Ext.dom.Element
|
|
47
|
+
* @method select
|
|
48
|
+
* @static
|
|
49
|
+
*/
|
|
50
|
+
|
|
51
|
+
Ext.dom.Element.select = function(selector, unique, root) {
|
|
52
|
+
var elements;
|
|
53
|
+
|
|
54
|
+
if (typeof selector == "string") {
|
|
55
|
+
elements = Ext.dom.Element.selectorFunction(selector, root);
|
|
56
|
+
}
|
|
57
|
+
else if (selector.length !== undefined) {
|
|
58
|
+
elements = selector;
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
//<debug>
|
|
62
|
+
throw new Error("[Ext.select] Invalid selector specified: " + selector);
|
|
63
|
+
//</debug>
|
|
64
|
+
}
|
|
65
|
+
return (unique === true) ? new Ext.CompositeElement(elements) : new Ext.CompositeElementLite(elements);
|
|
66
|
+
};
|
|
67
|
+
});
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Shorthand of {@link Ext.Element#method-select}.
|
|
71
|
+
* @member Ext
|
|
72
|
+
* @method select
|
|
73
|
+
* @inheritdoc Ext.Element#select
|
|
74
|
+
*/
|
|
75
|
+
Ext.select = Ext.Element.select;
|
|
@@ -0,0 +1,436 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This class encapsulates a *collection* of DOM elements, providing methods to filter members, or to perform collective
|
|
3
|
+
* actions upon the whole set.
|
|
4
|
+
*
|
|
5
|
+
* Although they are not listed, this class supports all of the methods of {@link Ext.dom.Element} and
|
|
6
|
+
* {@link Ext.fx.Anim}. The methods from these classes will be performed on all the elements in this collection.
|
|
7
|
+
*
|
|
8
|
+
* Example:
|
|
9
|
+
*
|
|
10
|
+
* var els = Ext.select("#some-el div.some-class");
|
|
11
|
+
* // or select directly from an existing element
|
|
12
|
+
* var el = Ext.get('some-el');
|
|
13
|
+
* el.select('div.some-class');
|
|
14
|
+
*
|
|
15
|
+
* els.setWidth(100); // all elements become 100 width
|
|
16
|
+
* els.hide(true); // all elements fade out and hide
|
|
17
|
+
* // or
|
|
18
|
+
* els.setWidth(100).hide(true);
|
|
19
|
+
*/
|
|
20
|
+
Ext.define('Ext.dom.CompositeElementLite', {
|
|
21
|
+
alternateClassName: 'Ext.CompositeElementLite',
|
|
22
|
+
|
|
23
|
+
requires: ['Ext.dom.Element'],
|
|
24
|
+
|
|
25
|
+
statics: {
|
|
26
|
+
/**
|
|
27
|
+
* @private
|
|
28
|
+
* Copies all of the functions from Ext.dom.Element's prototype onto CompositeElementLite's prototype.
|
|
29
|
+
* This is called twice - once immediately below, and once again after additional Ext.dom.Element
|
|
30
|
+
* are added in Ext JS
|
|
31
|
+
*/
|
|
32
|
+
importElementMethods: function() {
|
|
33
|
+
var name,
|
|
34
|
+
elementPrototype = Ext.dom.Element.prototype,
|
|
35
|
+
prototype = this.prototype;
|
|
36
|
+
|
|
37
|
+
for (name in elementPrototype) {
|
|
38
|
+
if (typeof elementPrototype[name] == 'function'){
|
|
39
|
+
(function(key) {
|
|
40
|
+
prototype[key] = prototype[key] || function() {
|
|
41
|
+
return this.invoke(key, arguments);
|
|
42
|
+
};
|
|
43
|
+
}).call(prototype, name);
|
|
44
|
+
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
|
|
50
|
+
constructor: function(elements, root) {
|
|
51
|
+
/**
|
|
52
|
+
* @property {HTMLElement[]} elements
|
|
53
|
+
* The Array of DOM elements which this CompositeElement encapsulates.
|
|
54
|
+
*
|
|
55
|
+
* This will not *usually* be accessed in developers' code, but developers wishing to augment the capabilities
|
|
56
|
+
* of the CompositeElementLite class may use it when adding methods to the class.
|
|
57
|
+
*
|
|
58
|
+
* For example to add the `nextAll` method to the class to **add** all following siblings of selected elements,
|
|
59
|
+
* the code would be
|
|
60
|
+
*
|
|
61
|
+
* Ext.override(Ext.dom.CompositeElementLite, {
|
|
62
|
+
* nextAll: function() {
|
|
63
|
+
* var elements = this.elements, i, l = elements.length, n, r = [], ri = -1;
|
|
64
|
+
*
|
|
65
|
+
* // Loop through all elements in this Composite, accumulating
|
|
66
|
+
* // an Array of all siblings.
|
|
67
|
+
* for (i = 0; i < l; i++) {
|
|
68
|
+
* for (n = elements[i].nextSibling; n; n = n.nextSibling) {
|
|
69
|
+
* r[++ri] = n;
|
|
70
|
+
* }
|
|
71
|
+
* }
|
|
72
|
+
*
|
|
73
|
+
* // Add all found siblings to this Composite
|
|
74
|
+
* return this.add(r);
|
|
75
|
+
* }
|
|
76
|
+
* });
|
|
77
|
+
*
|
|
78
|
+
* @readonly
|
|
79
|
+
*/
|
|
80
|
+
this.elements = [];
|
|
81
|
+
this.add(elements, root);
|
|
82
|
+
this.el = new Ext.dom.AbstractElement.Fly();
|
|
83
|
+
},
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* @property {Boolean} isComposite
|
|
87
|
+
* `true` in this class to identify an object as an instantiated CompositeElement, or subclass thereof.
|
|
88
|
+
*/
|
|
89
|
+
isComposite: true,
|
|
90
|
+
|
|
91
|
+
// private
|
|
92
|
+
getElement: function(el) {
|
|
93
|
+
// Set the shared flyweight dom property to the current element
|
|
94
|
+
return this.el.attach(el);
|
|
95
|
+
},
|
|
96
|
+
|
|
97
|
+
// private
|
|
98
|
+
transformElement: function(el) {
|
|
99
|
+
return Ext.getDom(el);
|
|
100
|
+
},
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Returns the number of elements in this Composite.
|
|
104
|
+
* @return {Number}
|
|
105
|
+
*/
|
|
106
|
+
getCount: function() {
|
|
107
|
+
return this.elements.length;
|
|
108
|
+
},
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Adds elements to this Composite object.
|
|
112
|
+
* @param {HTMLElement[]/Ext.dom.CompositeElement} els Either an Array of DOM elements to add, or another Composite
|
|
113
|
+
* object who's elements should be added.
|
|
114
|
+
* @return {Ext.dom.CompositeElement} This Composite object.
|
|
115
|
+
*/
|
|
116
|
+
add: function(els, root) {
|
|
117
|
+
var elements = this.elements,
|
|
118
|
+
i, ln;
|
|
119
|
+
|
|
120
|
+
if (!els) {
|
|
121
|
+
return this;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
if (typeof els == "string") {
|
|
125
|
+
els = Ext.dom.Element.selectorFunction(els, root);
|
|
126
|
+
}
|
|
127
|
+
else if (els.isComposite) {
|
|
128
|
+
els = els.elements;
|
|
129
|
+
}
|
|
130
|
+
else if (!Ext.isIterable(els)) {
|
|
131
|
+
els = [els];
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
for (i = 0, ln = els.length; i < ln; ++i) {
|
|
135
|
+
elements.push(this.transformElement(els[i]));
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
return this;
|
|
139
|
+
},
|
|
140
|
+
|
|
141
|
+
invoke: function(fn, args) {
|
|
142
|
+
var elements = this.elements,
|
|
143
|
+
ln = elements.length,
|
|
144
|
+
element,
|
|
145
|
+
i;
|
|
146
|
+
|
|
147
|
+
fn = Ext.dom.Element.prototype[fn];
|
|
148
|
+
for (i = 0; i < ln; i++) {
|
|
149
|
+
element = elements[i];
|
|
150
|
+
|
|
151
|
+
if (element) {
|
|
152
|
+
fn.apply(this.getElement(element), args);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
return this;
|
|
156
|
+
},
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
* Returns a flyweight Element of the dom element object at the specified index
|
|
160
|
+
* @param {Number} index
|
|
161
|
+
* @return {Ext.dom.Element}
|
|
162
|
+
*/
|
|
163
|
+
item: function(index) {
|
|
164
|
+
var el = this.elements[index],
|
|
165
|
+
out = null;
|
|
166
|
+
|
|
167
|
+
if (el) {
|
|
168
|
+
out = this.getElement(el);
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
return out;
|
|
172
|
+
},
|
|
173
|
+
|
|
174
|
+
// fixes scope with flyweight
|
|
175
|
+
addListener: function(eventName, handler, scope, opt) {
|
|
176
|
+
var els = this.elements,
|
|
177
|
+
len = els.length,
|
|
178
|
+
i, e;
|
|
179
|
+
|
|
180
|
+
for (i = 0; i < len; i++) {
|
|
181
|
+
e = els[i];
|
|
182
|
+
if (e) {
|
|
183
|
+
Ext.EventManager.on(e, eventName, handler, scope || e, opt);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
return this;
|
|
187
|
+
},
|
|
188
|
+
/**
|
|
189
|
+
* Calls the passed function for each element in this composite.
|
|
190
|
+
* @param {Function} fn The function to call.
|
|
191
|
+
* @param {Ext.dom.Element} fn.el The current Element in the iteration. **This is the flyweight
|
|
192
|
+
* (shared) Ext.dom.Element instance, so if you require a a reference to the dom node, use el.dom.**
|
|
193
|
+
* @param {Ext.dom.CompositeElement} fn.c This Composite object.
|
|
194
|
+
* @param {Number} fn.index The zero-based index in the iteration.
|
|
195
|
+
* @param {Object} [scope] The scope (this reference) in which the function is executed.
|
|
196
|
+
* Defaults to the Element.
|
|
197
|
+
* @return {Ext.dom.CompositeElement} this
|
|
198
|
+
*/
|
|
199
|
+
each: function(fn, scope) {
|
|
200
|
+
var me = this,
|
|
201
|
+
els = me.elements,
|
|
202
|
+
len = els.length,
|
|
203
|
+
i, e;
|
|
204
|
+
|
|
205
|
+
for (i = 0; i < len; i++) {
|
|
206
|
+
e = els[i];
|
|
207
|
+
if (e) {
|
|
208
|
+
e = this.getElement(e);
|
|
209
|
+
if (fn.call(scope || e, e, me, i) === false) {
|
|
210
|
+
break;
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
return me;
|
|
215
|
+
},
|
|
216
|
+
|
|
217
|
+
/**
|
|
218
|
+
* Clears this Composite and adds the elements passed.
|
|
219
|
+
* @param {HTMLElement[]/Ext.dom.CompositeElement} els Either an array of DOM elements, or another Composite from which
|
|
220
|
+
* to fill this Composite.
|
|
221
|
+
* @return {Ext.dom.CompositeElement} this
|
|
222
|
+
*/
|
|
223
|
+
fill: function(els) {
|
|
224
|
+
var me = this;
|
|
225
|
+
me.elements = [];
|
|
226
|
+
me.add(els);
|
|
227
|
+
return me;
|
|
228
|
+
},
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* Filters this composite to only elements that match the passed selector.
|
|
232
|
+
* @param {String/Function} selector A string CSS selector or a comparison function. The comparison function will be
|
|
233
|
+
* called with the following arguments:
|
|
234
|
+
* @param {Ext.dom.Element} selector.el The current DOM element.
|
|
235
|
+
* @param {Number} selector.index The current index within the collection.
|
|
236
|
+
* @return {Ext.dom.CompositeElement} this
|
|
237
|
+
*/
|
|
238
|
+
filter: function(selector) {
|
|
239
|
+
var me = this,
|
|
240
|
+
els = me.elements,
|
|
241
|
+
len = els.length,
|
|
242
|
+
out = [],
|
|
243
|
+
i = 0,
|
|
244
|
+
isFunc = typeof selector == 'function',
|
|
245
|
+
add,
|
|
246
|
+
el;
|
|
247
|
+
|
|
248
|
+
for (; i < len; i++) {
|
|
249
|
+
el = els[i];
|
|
250
|
+
add = false;
|
|
251
|
+
if (el) {
|
|
252
|
+
el = me.getElement(el);
|
|
253
|
+
|
|
254
|
+
if (isFunc) {
|
|
255
|
+
add = selector.call(el, el, me, i) !== false;
|
|
256
|
+
} else {
|
|
257
|
+
add = el.is(selector);
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
if (add) {
|
|
261
|
+
out.push(me.transformElement(el));
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
me.elements = out;
|
|
267
|
+
return me;
|
|
268
|
+
},
|
|
269
|
+
|
|
270
|
+
/**
|
|
271
|
+
* Find the index of the passed element within the composite collection.
|
|
272
|
+
* @param {String/HTMLElement/Ext.Element/Number} el The id of an element, or an Ext.dom.Element, or an HtmlElement
|
|
273
|
+
* to find within the composite collection.
|
|
274
|
+
* @return {Number} The index of the passed Ext.dom.Element in the composite collection, or -1 if not found.
|
|
275
|
+
*/
|
|
276
|
+
indexOf: function(el) {
|
|
277
|
+
return Ext.Array.indexOf(this.elements, this.transformElement(el));
|
|
278
|
+
},
|
|
279
|
+
|
|
280
|
+
/**
|
|
281
|
+
* Replaces the specified element with the passed element.
|
|
282
|
+
* @param {String/HTMLElement/Ext.Element/Number} el The id of an element, the Element itself, the index of the
|
|
283
|
+
* element in this composite to replace.
|
|
284
|
+
* @param {String/Ext.Element} replacement The id of an element or the Element itself.
|
|
285
|
+
* @param {Boolean} [domReplace] True to remove and replace the element in the document too.
|
|
286
|
+
* @return {Ext.dom.CompositeElement} this
|
|
287
|
+
*/
|
|
288
|
+
replaceElement: function(el, replacement, domReplace) {
|
|
289
|
+
var index = !isNaN(el) ? el : this.indexOf(el),
|
|
290
|
+
d;
|
|
291
|
+
if (index > -1) {
|
|
292
|
+
replacement = Ext.getDom(replacement);
|
|
293
|
+
if (domReplace) {
|
|
294
|
+
d = this.elements[index];
|
|
295
|
+
d.parentNode.insertBefore(replacement, d);
|
|
296
|
+
Ext.removeNode(d);
|
|
297
|
+
}
|
|
298
|
+
Ext.Array.splice(this.elements, index, 1, replacement);
|
|
299
|
+
}
|
|
300
|
+
return this;
|
|
301
|
+
},
|
|
302
|
+
|
|
303
|
+
/**
|
|
304
|
+
* Removes all elements.
|
|
305
|
+
*/
|
|
306
|
+
clear: function() {
|
|
307
|
+
this.elements = [];
|
|
308
|
+
},
|
|
309
|
+
|
|
310
|
+
addElements: function(els, root) {
|
|
311
|
+
if (!els) {
|
|
312
|
+
return this;
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
if (typeof els == "string") {
|
|
316
|
+
els = Ext.dom.Element.selectorFunction(els, root);
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
var yels = this.elements,
|
|
320
|
+
eLen = els.length,
|
|
321
|
+
e;
|
|
322
|
+
|
|
323
|
+
for (e = 0; e < eLen; e++) {
|
|
324
|
+
yels.push(Ext.get(els[e]));
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
return this;
|
|
328
|
+
},
|
|
329
|
+
|
|
330
|
+
/**
|
|
331
|
+
* Returns the first Element
|
|
332
|
+
* @return {Ext.dom.Element}
|
|
333
|
+
*/
|
|
334
|
+
first: function() {
|
|
335
|
+
return this.item(0);
|
|
336
|
+
},
|
|
337
|
+
|
|
338
|
+
/**
|
|
339
|
+
* Returns the last Element
|
|
340
|
+
* @return {Ext.dom.Element}
|
|
341
|
+
*/
|
|
342
|
+
last: function() {
|
|
343
|
+
return this.item(this.getCount() - 1);
|
|
344
|
+
},
|
|
345
|
+
|
|
346
|
+
/**
|
|
347
|
+
* Returns true if this composite contains the passed element
|
|
348
|
+
* @param {String/HTMLElement/Ext.Element/Number} el The id of an element, or an Ext.Element, or an HtmlElement to
|
|
349
|
+
* find within the composite collection.
|
|
350
|
+
* @return {Boolean}
|
|
351
|
+
*/
|
|
352
|
+
contains: function(el) {
|
|
353
|
+
return this.indexOf(el) != -1;
|
|
354
|
+
},
|
|
355
|
+
|
|
356
|
+
/**
|
|
357
|
+
* Removes the specified element(s).
|
|
358
|
+
* @param {String/HTMLElement/Ext.Element/Number} el The id of an element, the Element itself, the index of the
|
|
359
|
+
* element in this composite or an array of any of those.
|
|
360
|
+
* @param {Boolean} [removeDom] True to also remove the element from the document
|
|
361
|
+
* @return {Ext.dom.CompositeElement} this
|
|
362
|
+
*/
|
|
363
|
+
removeElement: function(keys, removeDom) {
|
|
364
|
+
keys = [].concat(keys);
|
|
365
|
+
|
|
366
|
+
var me = this,
|
|
367
|
+
elements = me.elements,
|
|
368
|
+
kLen = keys.length,
|
|
369
|
+
val, el, k;
|
|
370
|
+
|
|
371
|
+
for (k = 0; k < kLen; k++) {
|
|
372
|
+
val = keys[k];
|
|
373
|
+
|
|
374
|
+
if ((el = (elements[val] || elements[val = me.indexOf(val)]))) {
|
|
375
|
+
if (removeDom) {
|
|
376
|
+
if (el.dom) {
|
|
377
|
+
el.remove();
|
|
378
|
+
} else {
|
|
379
|
+
Ext.removeNode(el);
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
Ext.Array.erase(elements, val, 1);
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
return me;
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
}, function() {
|
|
390
|
+
this.importElementMethods();
|
|
391
|
+
|
|
392
|
+
this.prototype.on = this.prototype.addListener;
|
|
393
|
+
|
|
394
|
+
if (Ext.DomQuery){
|
|
395
|
+
Ext.dom.Element.selectorFunction = Ext.DomQuery.select;
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
/**
|
|
399
|
+
* Selects elements based on the passed CSS selector to enable {@link Ext.Element Element} methods
|
|
400
|
+
* to be applied to many related elements in one statement through the returned
|
|
401
|
+
* {@link Ext.dom.CompositeElement CompositeElement} or
|
|
402
|
+
* {@link Ext.dom.CompositeElementLite CompositeElementLite} object.
|
|
403
|
+
* @param {String/HTMLElement[]} selector The CSS selector or an array of elements
|
|
404
|
+
* @param {HTMLElement/String} [root] The root element of the query or id of the root
|
|
405
|
+
* @return {Ext.dom.CompositeElementLite/Ext.dom.CompositeElement}
|
|
406
|
+
* @member Ext.dom.Element
|
|
407
|
+
* @method select
|
|
408
|
+
* @static
|
|
409
|
+
*/
|
|
410
|
+
Ext.dom.Element.select = function(selector, root) {
|
|
411
|
+
var elements;
|
|
412
|
+
|
|
413
|
+
if (typeof selector == "string") {
|
|
414
|
+
elements = Ext.dom.Element.selectorFunction(selector, root);
|
|
415
|
+
}
|
|
416
|
+
else if (selector.length !== undefined) {
|
|
417
|
+
elements = selector;
|
|
418
|
+
}
|
|
419
|
+
else {
|
|
420
|
+
//<debug>
|
|
421
|
+
throw new Error("[Ext.select] Invalid selector specified: " + selector);
|
|
422
|
+
//</debug>
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
return new Ext.CompositeElementLite(elements);
|
|
426
|
+
};
|
|
427
|
+
|
|
428
|
+
/**
|
|
429
|
+
* @member Ext
|
|
430
|
+
* @method select
|
|
431
|
+
* @inheritdoc Ext.dom.Element#select
|
|
432
|
+
*/
|
|
433
|
+
Ext.select = function() {
|
|
434
|
+
return Ext.dom.Element.select.apply(Ext.dom.Element, arguments);
|
|
435
|
+
};
|
|
436
|
+
});
|