]> git.pond.sub.org Git - eow/blobdiff - static/dojo-release-1.1.1/dijit/tests/widgetsInTemplate.html
add Dojo 1.1.1
[eow] / static / dojo-release-1.1.1 / dijit / tests / widgetsInTemplate.html
diff --git a/static/dojo-release-1.1.1/dijit/tests/widgetsInTemplate.html b/static/dojo-release-1.1.1/dijit/tests/widgetsInTemplate.html
new file mode 100644 (file)
index 0000000..ae3b6f9
--- /dev/null
@@ -0,0 +1,112 @@
+<html>\r
+       <head>\r
+               <title>testing widgetsInTemplate support</title>\r
+               <script type="text/javascript" src="../../dojo/dojo.js" \r
+                       djConfig="parseOnLoad: true, isDebug: true"></script>\r
+               <script type="text/javascript">\r
+                       dojo.require("doh.runner");\r
+\r
+                       dojo.require("dijit.form.Button");\r
+                       dojo.require("dijit.form.CheckBox");\r
+                       dojo.require("dijit.ProgressBar");\r
+\r
+                       dojo.addOnLoad(function(){\r
+                               var testW;\r
+                               doh.register("t",\r
+                                       [\r
+                                               {\r
+                                                       name: "dojoAttachPoint",\r
+                                                       runTest: function(t){\r
+                                                               var testW = dijit.byId("test1Widget");\r
+                                                               t.t(testW.normalNode);\r
+                                                               t.f(isNaN(testW.normalNode.nodeType));\r
+                                                               t.t(testW.buttonWidget instanceof dijit.form.Button);\r
+                                                               t.t(testW.checkboxWidget instanceof dijit.form.CheckBox);\r
+                                                               t.t(testW.progressBarWidget instanceof dijit.ProgressBar);\r
+//                                                             alert((testW.buttonWidget instanceof dijit.form.Button)+(testW.checkboxWidget instanceof dijit.form.CheckBox)+(testW.progressBarWidget instanceof dijit.ProgressBar)+\r
+//                                                             (testW.buttonWidget._counter==1)+(testW.checkboxWidget._counter==1)+(testW.progressBarWidget._counter==1));\r
+                                                               testW = dijit.byId("test2Widget");\r
+                                                               t.t(testW.containerNode);\r
+                                                               t.f(isNaN(testW.containerNode.nodeType));\r
+                                                               t.is(undefined,testW.buttonWidget);\r
+                                                               t.t(testW.checkboxWidget instanceof dijit.form.CheckBox);\r
+                                                       }\r
+                                               },\r
+                                               {\r
+                                                       name: "dojoAttachEvent",\r
+                                                       runTest: function(t){\r
+                                                               var testW = dijit.byId("test1Widget");\r
+                                                               testW.buttonWidget._counter=0;\r
+                                                               testW.buttonWidget.onClick(testW.buttonWidget);\r
+                                                               testW.checkboxWidget._counter=0;\r
+                                                               testW.checkboxWidget.onClick(testW.checkboxWidget);\r
+                                                               testW.progressBarWidget._counter=0;\r
+                                                               testW.progressBarWidget.onChange(testW.progressBarWidget);\r
+                                                               t.is(1,testW.buttonWidget._counter);\r
+                                                               t.is(1,testW.checkboxWidget._counter);\r
+                                                               t.is(1,testW.progressBarWidget._counter);\r
+                                                       }\r
+                                               }\r
+                                       ]\r
+                               );\r
+                               doh.run();\r
+                       });\r
+               </script>\r
+       <style type="text/css">\r
+               @import "../themes/tundra/tundra.css";\r
+       </style>\r
+       </head>\r
+       <body>\r
+               <h1>testing widgetsInTemplate support</h1>\r
+               <xmp id="Test1Template" style="display:none;">\r
+                       <div>\r
+                               <div dojoAttachPoint="normalNode" >normal node</div>\r
+                               <button dojoAttachPoint="buttonWidget" dojoAttachEvent="onClick:onClick" dojoType="dijit.form.Button">button #1</button>\r
+                               <div dojoAttachPoint="checkboxWidget" dojoAttachEvent="onClick:onClick" dojoType="dijit.form.CheckBox"></div> checkbox #1\r
+                               <div dojoAttachPoint="progressBarWidget" dojoAttachEvent="onChange:onClick" style="width:400px" annotate="true"\r
+                                       maximum="200" progress="20" dojoType="dijit.ProgressBar"></div>\r
+                       </div>\r
+               </xmp>\r
+               <script>\r
+                       dojo.declare('Test1Widget',\r
+                               [dijit._Widget, dijit._Templated],\r
+                       {\r
+                               widgetsInTemplate: true,\r
+               //              isContainer: true,\r
+\r
+                               templateString: dojo.byId('Test1Template').textContent || dojo.byId('Test1Template').innerText,\r
+                               onClick: function(e){\r
+                                       if(e.target){\r
+                                               alert('onClick widgetId='+e.target.id);\r
+                                       }else{\r
+                                               if(e._counter == undefined){\r
+                                                       e._counter = 1;\r
+                                               }else{\r
+                                                       e._counter++;\r
+                                               }\r
+                                       }\r
+                               }\r
+                       });\r
+               </script>\r
+       <!-- can use widget immediately in markup - no parsing occurs until document loaded and scripts run -->\r
+       <div dojoType="Test1Widget" id="test1Widget" ></div>\r
+\r
+\r
+       <xmp id="Test2Template" style="display:none;">\r
+               <div>\r
+                       <div dojoAttachPoint="containerNode" ><div dojoAttachPoint="checkboxWidget" dojoType="dijit.form.CheckBox"></div> checkbox #2</div>\r
+               </div>\r
+       </xmp>\r
+               <script>\r
+                       dojo.declare('Test2Widget',\r
+                               [dijit._Widget, dijit._Templated],\r
+                       {\r
+                               widgetsInTemplate: true,\r
+\r
+                               templateString: dojo.byId('Test2Template').textContent || dojo.byId('Test2Template').innerText\r
+                       });\r
+               </script>\r
+       <div dojoType="Test2Widget" id="test2Widget" ><button dojoAttachPoint="buttonWidget" dojoType="dijit.form.Button">button #2</button></div>\r
+       </body>\r
+</html>\r
+\r