1 if(!dojo._hasResource["dojox.dtl._HtmlTemplated"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
2 dojo._hasResource["dojox.dtl._HtmlTemplated"] = true;
3 dojo.provide("dojox.dtl._HtmlTemplated");
4 dojo.require("dijit._Templated");
5 dojo.require("dojox.dtl.html");
6 dojo.require("dojox.dtl.render.html");
7 dojo.require("dojox.dtl.contrib.dijit");
9 dojox.dtl._HtmlTemplated = {
11 _dijitTemplateCompat: false,
12 buildRendering: function(){
13 this.domNode = this.srcNodeRef;
16 var ddcd = dojox.dtl.contrib.dijit;
17 var old = ddcd.widgetsInTemplate;
18 ddcd.widgetsInTemplate = this.widgetsInTemplate;
19 this._template = this._getCachedTemplate(this.templatePath, this.templateString);
20 this._render = new dojox.dtl.render.html.Render(this.domNode, this._template);
21 ddcd.widgetsInTemplate = old;
25 this._rendering = setTimeout(function(){ self.render(); }, 10);
27 setTemplate: function(/*String|dojo._Url*/ template, /*dojox.dtl.Context?*/ context){
29 // Quickly switch between templated by location
30 if(dojox.dtl.text._isTemplate(template)){
31 this._template = this._getCachedTemplate(null, template);
33 this._template = this._getCachedTemplate(template);
37 render: function(/*dojox.dtl.Context?*/ context){
39 clearTimeout(this._rendering);
40 delete this._rendering;
42 this._render.render(this._getContext(context));
44 _getContext: function(context){
45 if (!(context instanceof dojox.dtl.Context)) {
48 context = context || new dojox.dtl.Context(this);
49 context.setThis(this);
52 _getCachedTemplate: function(templatePath, templateString){
56 var key = templateString || templatePath.toString();
57 var tmplts = this._templates;
61 return (tmplts[key] = new dojox.dtl.HtmlTemplate(
62 dijit._Templated.getCachedTemplate(