[Dojo-checkins] r929 - src/webui/widgets
dojo-checkins at dojotoolkit.org
dojo-checkins at dojotoolkit.org
Wed Jul 20 23:26:36 PDT 2005
Author: alex
Date: Wed Jul 20 23:26:34 2005
New Revision: 929
Modified:
src/webui/widgets/Parse.js
Log:
some hints should now get passed around that make things slightly faster
Modified: src/webui/widgets/Parse.js
==============================================================================
--- src/webui/widgets/Parse.js (original)
+++ src/webui/widgets/Parse.js Wed Jul 20 23:26:34 2005
@@ -34,6 +34,7 @@
}
}
}*/
+ var tot = 0;
for(var item in fragment){
// if we have items to parse/create at this level, do it!
try{
@@ -46,8 +47,10 @@
for(var x=0; x<tna.length; x++){
var ltn = dojo.text.trim(tna[x]).toLowerCase();
if(djTags[ltn]){
+ // var tic = new Date();
fragment[item].tagName = ltn;
returnValue.push(djTags[ltn](fragment[item], this, parentComp));
+ // dj_debug(ltn, ": ", new Date()-tic, "ms");
}else{
if(ltn.substr(0, 5)=="dojo:"){
dj_debug("no tag handler registed for type: ", ltn);
@@ -76,6 +79,7 @@
propertySets that it finds.
*/
this.parsePropertySets = function(fragment) {
+ return [];
var propertySets = [];
for(var item in fragment){
if( (fragment[item]["tagName"] == "dojo:propertyset") ) {
@@ -120,15 +124,6 @@
properties[property] = nestedProperties[property];
}
}catch(e){ dj_debug(e); }
- /*
- }else if((fragment[item])&&(fragment[item].value!="")){
- //dj_debug(item+": "+fragment[item]);
- if(typeof fragment[item] == "object"){
- for(var x in fragment[item]){
- dj_debug("- "+x+": "+fragment[item][x]);
- }
- }
- */
}
}
}
@@ -219,7 +214,7 @@
properties is an object of name value pairs
*/
- this.createComponentFromScript = function(nodeRef, componentName, properties){
+ this.createComponentFromScript = function(nodeRef, componentName, properties, fastMixIn){
var frag = {};
var tagName = "dojo:" + componentName.toLowerCase();
frag[tagName] = {};
@@ -233,6 +228,9 @@
frag[tagName].nodeRef = nodeRef;
frag.tagName = tagName;
var fragContainer = [frag];
+ if(fastMixIn){
+ fragContainer[0].fastMixIn = true;
+ }
// FIXME: should this really return an array?
return this.createComponents(fragContainer);
}
@@ -249,6 +247,17 @@
}
dojo.webui.widgets.fromScript = function(parentNode, name, props){
+ var ln = name.toLowerCase();
+ var tn = "dojo:"+ln;
+ props[tn] = {
+ dojotype: [{value: ln}],
+ nodeRef: parentNode,
+ fastMixIn: true
+ };
+ // var twidget = dojo.webui.widgetManager.getImplementation(ln);
+ // return twidget.create(props, props);
+
+ // return dojo.webui.widgets.tags[tn](props, dojo.webui.widgets.getParser());
return dojo.webui.widgets.getParser().createComponentFromScript(parentNode, name, props);
}
More information about the Dojo-checkins
mailing list