Port to 0.9 core
Submitted by bill on Sun, 07/08/2007 - 16:13.
This is the code which I had to pull from the old repository in to make Dijit work on 0.9:
Code added to dojo.*
- dojo.date format, parse, add, plus some other things from common
- dojo.number
- dojo.currency
- dojo.string (limited - pad, substitute)
- dojo.regexp (limited - escapeString, group, buildGroupRE)
Code added to dijit.util.* (do we promote to dojo.*?)
- BackgroundIFrame.js (from dojo.html)
- bidi.js (isLeftToRight from dojo.html)
- place.js (getViewport, getScroll, placeOnScreen, placeOnScreenAroundElement from dojo.html.util)
- sniff.js (dojo.html.applyBrowserClass from dojo.html.style -- Morris' so-called csshack, now run inline to set attribute on HTML element)
- window.js (getDocumentWindow)
Other code added to dijit.*
Local methods which perhaps should be promoted:- Menu uses iframeContentWindow, iframeContentDocument,
- popupMenu uses scrollIntoView, getElementsByClass (inline)
- TemplatedWidget uses createNodesFromText, isNode (inline)
- BackgroundIFrame also uses isNode (inline)
- Widget uses disableSelection (Menu also)
- Tooltip and PopupManager use isDescendent of from dojo.dom
- PopupManager uses overElement, getCursorPosition, and getScroll (inline)
- FocusManager uses isCollapsed, getBookmark, moveToBookmark from dojo.html
- TemplatedWidget._addClass
- TemplatedWidget._removeClass
Missing Code
- dojo.html.stabile.setState and getState? Combobox was using them so when the user pressed back, the Combobox would go back to the option the user selected.
Issues
Key handling is a problem. Minimally, we need to expose things like dojo._keys. We probably need to write an additional layer to enhance or replace what's in base to give Doug all the functionality he had before. removeChild and friends leak on IE. We no longer have a quirks layer to help with this. Do we need one? how about dojo.browser.event.clean?Caveats
Haven't looked at or touched widgets which have yet to be populated in dijit (e.g. TreeV3, Editor2) which are among the most complex widgets and probably have the most dependencies.- Printer-friendly version
- Login or register to post comments
- Unsubscribe post
