Approved! -Max
P T Withington wrote: > Change change.1uZRTnwsB.txt by [EMAIL PROTECTED] > /Users/ptw/pending-changes/ on 2006-09-28 19:36:44 EDT > > Summary: Move tag constructors out of global > > New Features: Tags created with <class name="tagname"> now define > lz.tagname, rather than global.tagname. (global.tagname will still > exists so long as there is no conflict with the underlying runtime, > but will give a deprecation warning when used as a constructor.) All > built-in tags now have an alias to their constructor as lz.tagname. > > Bugs Fixed: > LPP-2757 Defining a user class named `top` breaks DHTML in Safari > > Technical Reviewer: hminsky (pending) > QA Reviewer: max (pending) > Doc Reviewer: jsundman (pending) > > Documentation: The documentation for instantiating a tag dynamically > needs to be updated to say you use `new lz.tagname`. > > Details: > > Make it so our node instantiator can find node classes without > them having to be globals. Global constructors still are defined > when they do not conflict with runtime globals, but using them > will give a deprecation warning to use lz.whatever in the future. > There is also a warning for the case where you define a tag that > would clobber a runtime global, telling you that you won't have a > global constructor for that tag and that you will have to use > lz.whatever. Finally, while `new LzNode` will continue to work > without a warning, `new lz.node` will also work, eliminating that > source of complexity. > > LzLibrary, LzScript, LzInputText, LzText, LzDrawView, LzView, > LzCanvas, LzSelectionManager, LzDataSelectionManager, LzState, > LzAnimatorGroup, LzAnimator, LzLayout, LzConnectionDatasource, > LzDatapointer, LzDataset, LzDatapath, LzHTTPDatasource, LzParam : > define tagname for class > > LzCSSStyle, LzNode, LzView : global -> ConstructorMap > > LzNode: the class initializer will install the constructor in > ConstructorMap if the class defines static tagname. > > LzUserClass: Use tagname to install class, implement deprecated > global constructor, warn on global conflict, continue > UserClassPlacementObject kludge with a big FIXME > > Class: Add override diagnostics (off for now), apply static > initializer to class, demote trait overrides to debug rather than > warn (for now). > > LzDefs: Define empty ConstructorMap here, so it can be filled in > as LzNode subclasses are created. Alias lz to ConstructorMap. > > LaszloInitiator: Remove hand-generated ConstructorMap, obsolete > TagFunctionMap, unnecesary FixTag tag name adjustment > > LzReplicationManager, LzDataset: be more careful about global > adjustmenst, use the correct tag name for datapath > > ClassCompiler: use correct tag for class > > Tests: > LZPIX still works! > > Files: > M lfc/kernel/swf/LzLibrary.lzs > M lfc/services/LzCSSStyle.js > M lfc/core/LzNode.lzs > M lfc/core/UserClass.lzs > M lfc/core/Class.lzs > M lfc/core/LzDefs.lzs > M lfc/glue/LaszloInitiator.lzs > M lfc/views/LzScript.lzs > M lfc/views/LzInputText.lzs > M lfc/views/LzText.lzs > M lfc/views/platform/swf/LzDrawView.lzs > M lfc/views/LaszloView.lzs > M lfc/views/LaszloCanvas.lzs > M lfc/helpers/LzSelectionManager.lzs > M lfc/helpers/LzState.lzs > M lfc/controllers/LzAnimatorGroup.lzs > M lfc/controllers/LaszloLayout.lzs > M lfc/controllers/LaszloAnimation.lzs > M lfc/data/LzReplicationManager.lzs > M lfc/data/platform/swf/LzConnectionDatasource.lzs > M lfc/data/LzDatapointer.lzs > M lfc/data/LzDataset.lzs > M lfc/data/LzDatapath.lzs > M lfc/data/LzHTTPDatasource.lzs > M lfc/data/LzParam.lzs > M server/src/org/openlaszlo/compiler/ClassCompiler.java _______________________________________________ Laszlo-dev mailing list [email protected] http://www.openlaszlo.org/mailman/listinfo/laszlo-dev
