1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
\r
2 "http://www.w3.org/TR/html4/strict.dtd">
\r
5 <title>Dijit Theme Tester</title>
\r
7 <style type="text/css">
\r
8 @import "../../dojo/resources/dojo.css";
\r
9 @import "../tests/css/dijitTests.css";
\r
11 html, body { height: 100%; width: 100%; padding: 0; border: 0; }
\r
12 #main { height: 100%; width: 100%; padding: 0; border: 0; }
\r
13 /* #header, #mainSplit { margin: 10px; } */
\r
14 #leftAccordion { width: 25%; }
\r
15 #bottomTabs { height: 40%; }
\r
16 #main .dijitSplitterH { height: 7px }
\r
17 #main .dijitSplitterV { width: 7px }
\r
19 /* pre-loader specific stuff to prevent unsightly flash of unstyled content */
\r
25 width:100%; height:100%;
\r
26 background:#ededed;
\r
28 vertical-align:center;
\r
41 hr.spacer { border:0; background-color:#ededed; width:80%; height:1px; }
\r
43 /* for custom menu buttons, do not appear to have any effect */
\r
44 .myCustomTheme .dijitButtonNode {
\r
45 border:1px solid #000;
\r
46 vertical-align: middle;
\r
47 padding: 0.2em 0.2em;
\r
48 background: url("themeTesterImages/blackButtonEnabled.gif") repeat-x bottom left #474747;
\r
52 .myCustomTheme .dijitButtonHover .dijitButtonNode,
\r
53 .myCustomTheme .dijitToggleButtonHover .dijitButtonNode {
\r
54 background: url("themeTesterImages/blackButtonHover.gif") repeat-x bottom left #3b3b3b !important;
\r
58 <script type="text/javascript">
\r
59 window.__globalList = {dojo: true, dijit: true, dojox: true, djConfig: true};
\r
60 for(var i in window){
\r
61 window.__globalList[i] = true;
\r
65 <script type="text/javascript" src="../../dojo/dojo.js"
\r
66 djConfig="parseOnLoad: false, isDebug: true"></script>
\r
68 <script type="text/javascript" src="http://prototypejs.org/assets/2007/10/16/prototype.js"></script>
\r
70 <script type="text/javascript" src="../dijit.js"></script>
\r
71 <script type="text/javascript" src="../dijit-all.js" charset="utf-8"></script>
\r
73 <script type="text/javascript" src="../tests/_testCommon.js"></script>
\r
74 <script type="text/javascript"> // dojo.requires()
\r
76 dojo.require("dijit.Menu");
\r
77 dojo.require("dijit._Calendar");
\r
78 dojo.require("dijit.ColorPalette");
\r
79 dojo.require("dijit.ProgressBar");
\r
80 dojo.require("dijit.TitlePane");
\r
81 dojo.require("dijit.Tooltip");
\r
82 dojo.require("dijit.Tree");
\r
85 dojo.require("dijit.Editor");
\r
88 dojo.require("dojo.dnd.Source");
\r
90 // various Form elemetns
\r
91 dojo.require("dijit.form.CheckBox");
\r
92 dojo.require("dijit.form.Textarea");
\r
93 dojo.require("dijit.form.FilteringSelect");
\r
94 dojo.require("dijit.form.TextBox");
\r
95 dojo.require("dijit.form.DateTextBox");
\r
96 dojo.require("dijit.form.TimeTextBox");
\r
97 dojo.require("dijit.form.Button");
\r
98 dojo.require("dijit.InlineEditBox");
\r
99 dojo.require("dijit.form.NumberSpinner");
\r
100 dojo.require("dijit.form.Slider");
\r
102 // layouts used in page
\r
103 dojo.require("dijit.layout.AccordionContainer");
\r
104 dojo.require("dijit.layout.ContentPane");
\r
105 dojo.require("dijit.layout.TabContainer");
\r
106 dojo.require("dijit.layout.BorderContainer");
\r
107 dojo.require("dijit.Dialog");
\r
109 // scan page for widgets and instantiate them
\r
110 dojo.require("dojo.parser");
\r
113 dojo.require("dojo.date.locale");
\r
116 dojo.require("dojo.data.ItemFileReadStore");
\r
118 // for the colorpalette
\r
119 function setColor(color){
\r
120 var theSpan = dojo.byId("outputSpan");
\r
121 dojo.style(theSpan,"color",color);
\r
122 theSpan.innerHTML = color;
\r
125 // for the calendar
\r
126 function myHandler(id,newValue){
\r
127 console.debug("onChange for id = " + id + ", value: " + newValue);
\r
130 dojo.addOnLoad(function() {
\r
132 // this is just a list of 'official' dijit themes, you can use ?theme=String
\r
133 // for 'un-supported' themes, too. (eg: yours)
\r
134 var availableThemes = [
\r
135 { theme:"tundra", author:"Dojo", baseUri:"../themes/" },
\r
136 { theme:"soria", author:"nikolai", baseUri:"../themes/" },
\r
137 //{ theme:"noir", author:"owen", baseUri:"../themes/"},
\r
138 { theme:"nihilo", author:"nikolai", baseUri:"../themes/" }
\r
141 var holder = dojo.byId('themeData');
\r
143 dojo.forEach(availableThemes,function(theme){
\r
144 tmpString += '<a href="?theme='+theme.theme+'">'+theme.theme+'</'+'a> - by: '+theme.author+' <br>';
\r
146 holder.innerHTML = tmpString;
\r
148 var start = new Date().getTime();
\r
149 dojo.parser.parse(dojo.byId('container'));
\r
150 console.info("Total parse time: " + (new Date().getTime() - start) + "ms");
\r
152 dojo.byId('loaderInner').innerHTML += " done.";
\r
153 setTimeout(function hideLoader(){
\r
154 var loader = dojo.byId('loader');
\r
155 dojo.fadeOut({ node: loader, duration:500,
\r
156 onEnd: function(){
\r
157 loader.style.display = "none";
\r
162 var strayGlobals = [];
\r
163 for(var i in window){
\r
164 if(!window.__globalList[i]){ strayGlobals.push(i); }
\r
166 if(strayGlobals.length){
\r
167 console.warn("Stray globals: "+strayGlobals.join(", "));
\r
172 dojo.addOnLoad(function(){
\r
173 // use "before advice" to print log message each time resize is called on a layout widget
\r
174 var origResize = dijit.layout._LayoutWidget.prototype.resize;
\r
175 dijit.layout._LayoutWidget.prototype.resize = function(mb){
\r
176 console.log(this + ": resize({w:"+ mb.w + ", h:" + mb.h + "})");
\r
177 origResize.apply(this, arguments);
\r
180 // content pane has no children so just use dojo's builtin after advice
\r
181 dojo.connect(dijit.layout.ContentPane.prototype, "resize", function(mb){
\r
182 console.log(this + ": resize({w:"+ mb.w + ", h:" + mb.h + "})");
\r
189 <!-- basic preloader: -->
\r
190 <div id="loader"><div id="loaderInner">Loading themeTester ... </div></div>
\r
192 <!-- data for tree and combobox -->
\r
193 <div dojoType="dojo.data.ItemFileReadStore" jsId="continentStore"
\r
194 url="../tests/_data/countries.json"></div>
\r
195 <div dojoType="dojo.data.ItemFileReadStore" jsId="stateStore"
\r
196 url="../tests/_data/states.json"></div>
\r
197 <!-- contentMenu popup -->
\r
198 <div dojoType="dijit.Menu" id="submenu1" contextMenuForWindow="true" style="display: none;">
\r
199 <div dojoType="dijit.MenuItem" onClick="alert('Hello world');">Enabled Item</div>
\r
200 <div dojoType="dijit.MenuItem" disabled="true">Disabled Item</div>
\r
201 <div dojoType="dijit.MenuSeparator"></div>
\r
202 <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCut"
\r
203 onClick="alert('not actually cutting anything, just a test!')">Cut</div>
\r
204 <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy"
\r
205 onClick="alert('not actually copying anything, just a test!')">Copy</div>
\r
206 <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconPaste"
\r
207 onClick="alert('not actually pasting anything, just a test!')">Paste</div>
\r
208 <div dojoType="dijit.MenuSeparator"></div>
\r
209 <div dojoType="dijit.PopupMenuItem">
\r
210 <span>Enabled Submenu</span>
\r
211 <div dojoType="dijit.Menu" id="submenu2">
\r
212 <div dojoType="dijit.MenuItem" onClick="alert('Submenu 1!')">Submenu Item One</div>
\r
213 <div dojoType="dijit.MenuItem" onClick="alert('Submenu 2!')">Submenu Item Two</div>
\r
214 <div dojoType="dijit.PopupMenuItem">
\r
215 <span>Deeper Submenu</span>
\r
216 <div dojoType="dijit.Menu" id="submenu4">
\r
217 <div dojoType="dijit.MenuItem" onClick="alert('Sub-submenu 1!')">Sub-sub-menu Item One</div>
\r
218 <div dojoType="dijit.MenuItem" onClick="alert('Sub-submenu 2!')">Sub-sub-menu Item Two</div>
\r
223 <div dojoType="dijit.PopupMenuItem" disabled="true">
\r
224 <span>Disabled Submenu</span>
\r
225 <div dojoType="dijit.Menu" id="submenu3" style="display: none;">
\r
226 <div dojoType="dijit.MenuItem" onClick="alert('Submenu 1!')">Submenu Item One</div>
\r
227 <div dojoType="dijit.MenuItem" onClick="alert('Submenu 2!')">Submenu Item Two</div>
\r
230 <div dojoType="dijit.PopupMenuItem">
\r
231 <span>Different popup</span>
\r
232 <div dojoType="dijit.ColorPalette"></div>
\r
234 <div dojoType="dijit.PopupMenuItem">
\r
235 <span>Different popup</span>
\r
236 <div dojoType="dijit._Calendar"></div>
\r
239 <!-- end contextMenu -->
\r
241 <!-- "main" BorderContainer just contains page title and another BorderContainer -->
\r
242 <div id="main" dojoType="dijit.layout.BorderContainer">
\r
244 <h1 id="header" dojoType="dijit.layout.ContentPane" region="top">Dijit Theme Test Page</h1>
\r
246 <!-- "mainSplit" BorderContainer has all the real content -->
\r
247 <div dojoType="dijit.layout.BorderContainer" liveSplitters="false" design="sidebar"
\r
248 region="center" id="mainSplit">
\r
250 <div dojoType="dijit.layout.AccordionContainer" duration="200"
\r
251 minSize="20" style="width: 300px;" id="leftAccordion" region="leading" splitter="true">
\r
253 <div dojoType="dijit.layout.AccordionPane" title="Popups and Alerts"><div style="padding:8px">
\r
257 <span id="ttRich">rich text tooltip</span>
\r
258 <span dojoType="dijit.Tooltip" connectId="ttRich" style="display:none;">
\r
259 Embedded <b>bold</b> <i>RICH</i> text <span style="color:#309; font-size:x-large;">weirdness!</span>
\r
263 <li><a id="ttOne" href="#bogus">anchor tooltip</a>
\r
264 <span dojoType="dijit.Tooltip" connectId="ttOne" style="display:none;">tooltip on anchor</span>
\r
269 <hr class="spacer">
\r
273 <li><a href="#" onclick="dijit.byId('dialog1').show()">show Modal Dialog</a></li>
\r
276 <div dojoType="dijit.form.DropDownButton">
\r
277 <span>Show Tooltip Dialog</span>
\r
278 <div dojoType="dijit.TooltipDialog" id="tooltipDlg" title="Enter Login information"
\r
279 execute="alert('submitted w/args:\n' + dojo.toJson(arguments[0], true));">
\r
282 <td><label for="user">User:</label></td>
\r
283 <td><input dojoType=dijit.form.TextBox type="text" id="user" name="user" ></td>
\r
286 <td><label for="pwd">Password:</label></td>
\r
287 <td><input dojoType=dijit.form.TextBox type="password" id="pwd" name="pwd"></td>
\r
290 <td colspan="2" align="center">
\r
291 <button dojoType=dijit.form.Button type="submit" name="submit">Login</button>
\r
299 <div dojoType="dijit.layout.AccordionPane" title="Dojo Tree from Store">
\r
300 <!-- tree widget -->
\r
301 <div dojoType="dijit.Tree" store="continentStore" query="{type:'continent'}"
\r
302 label="Continents">
\r
306 <div dojoType="dijit.layout.AccordionPane" title="Calendar" selected="true">
\r
307 <!-- calendar widget pane -->
\r
308 <input id="calendar1" dojoType="dijit._Calendar" onChange="myHandler(this.id,arguments[0])">
\r
311 <div dojoType="dijit.layout.AccordionPane" title="Color Picker">
\r
312 <!-- color palette picker -->
\r
313 <h2 class="testHeader">Dijit Color Palette(7x10)</h2>
\r
314 <div dojoType="dijit.ColorPalette" onChange="setColor(this.value);"></div>
\r
316 Test color is: <span id="outputSpan"></span>
\r
319 <div dojoType="dijit.ColorPalette" palette="3x4"></div>
\r
324 </div><!-- end AccordionContainer -->
\r
326 <!-- top tabs (marked as "center" to take up the main part of the BorderContainer) -->
\r
327 <div dojoType="dijit.layout.TabContainer" region="center" id="topTabs">
\r
328 <!-- first tab? -->
\r
329 <div id="tab1" dojoType="dijit.layout.ContentPane" title="Form Feel" style="padding:10px;display:none;">
\r
330 <h2>Various Form Elements:</h2>
\r
332 <form name="dijitFormTest">
\r
334 <p><input type="checkBox" dojoType="dijit.form.CheckBox" checked="checked"> Standard Dijit CheckBox
\r
335 <br><input type="checkBox" dojoType="dijit.form.CheckBox" disabled="disabled"> Disabled Dijit
\r
336 <br><input type="checkBox" dojoType="dijit.form.CheckBox" disabled="disabled" checked="checked"> Checked and Disabled Dijit
\r
340 <span>Radio group #1:</span>
\r
341 <input type="radio" name="g1" id="g1rb1" value="news" dojoType="dijit.form.RadioButton">
\r
342 <label for="g1rb1">news</label>
\r
343 <input type="radio" name="g1" id="g1rb2" value="talk" dojoType="dijit.form.RadioButton" checked="checked"/>
\r
344 <label for="g1rb2">talk</label>
\r
345 <input type="radio" name="g1" id="g1rb3" value="weather" dojoType="dijit.form.RadioButton" disabled="disabled"/>
\r
346 <label for="g1rb3">weather (disabled)</label>
\r
350 <span>Radio group #2: (no default value, and has breaks)</span><br>
\r
351 <input type="radio" name="g2" id="g2rb1" value="top40" dojoType="dijit.form.RadioButton">
\r
352 <label for="g2rb1">top 40</label><br>
\r
353 <input type="radio" name="g2" id="g2rb2" value="oldies" dojoType="dijit.form.RadioButton">
\r
354 <label for="g2rb2">oldies</label><br>
\r
356 <input type="radio" name="g2" id="g2rb3" value="country" dojoType="dijit.form.RadioButton">
\r
357 <label for="g2rb3">country</label><br>
\r
360 (Note if using keyboard: tab to navigate, and use arrow or space to select)
\r
363 <hr class="spacer">
\r
365 <h2>dijit.form.NumberSpinner max=100</h2>
\r
366 <input dojoType="dijit.form.NumberSpinner" constraints="{max:100,places:0}" id="integertextbox3" value="10">
\r
368 <hr class="spacer">
\r
370 <h2>dijit.form.Textarea: (sans <i>any</i> styling...)</h2>
\r
371 <textarea dojoType="dijit.form.Textarea" name="areText">Lorem ipsum dolor sit amet,
\r
372 consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet
\r
373 dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci
\r
374 tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis
\r
375 autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat,
\r
376 vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio
\r
377 dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait
\r
381 <hr class="spacer">
\r
383 <h2>dijit.form.ComboBox</h2>
\r
384 <label for="datatestComboBox">US State test 2: </label>
\r
385 <input dojoType="dijit.form.ComboBox"
\r
390 style="width: 300px;"
\r
392 id="datatestComboBox"
\r
397 </div><!-- end first tab -->
\r
399 <!-- second upper tab -->
\r
400 <div id="tab2" dojoType="dijit.layout.ContentPane" title="Various Dijits"
\r
401 style="padding:10px; display:none;">
\r
404 <div style="float:right;">
\r
405 <div dojoType="dijit.form.VerticalSlider" name="vertical1"
\r
406 onChange="dojo.byId('slider2input').value=arguments[0];"
\r
410 discreteValues="11"
\r
411 style="height:175px; clear:both"
\r
413 <ol dojoType="dijit.form.VerticalRuleLabels" container="leftDecoration"style="width:2em;color:gray;" labelStyle="right:0px;">
\r
418 <div dojoType="dijit.form.VerticalRule" container="leftDecoration" count=11 style="width:5px;" ruleStyle="border-color:gray;"></div>
\r
419 <div dojoType="dijit.form.VerticalRule" container="rightDecoration" count=11 style="width:5px;" ruleStyle="border-color:gray;"></div>
\r
420 <ol dojoType="dijit.form.VerticalRuleLabels" container="rightDecoration"style="width:2em;color:gray;" maximum="100" count="6" numericMargin="1" constraints="{pattern:'#'}"></ol>
\r
422 <br> Slider2 Value:<input readonly id="slider2input" size="3" value="10">
\r
425 <div dojoType="dijit.form.HorizontalSlider" name="horizontal1"
\r
426 onChange="dojo.byId('slider1input').value=dojo.number.format(arguments[0]/100,{places:1,pattern:'#%'});"
\r
430 showButtons="false"
\r
431 intermediateChanges="true"
\r
432 style="width:50%; height: 20px;"
\r
434 <ol dojoType="dijit.form.HorizontalRuleLabels" container="topDecoration" style="height:1.2em;font-size:75%;color:gray;" numericMargin="1" count="6"></ol>
\r
435 <div dojoType="dijit.form.HorizontalRule" container="topDecoration" count=11 style="height:5px;"></div>
\r
436 <div dojoType="dijit.form.HorizontalRule" container="bottomDecoration" count=5 style="height:5px;"></div>
\r
437 <ol dojoType="dijit.form.HorizontalRuleLabels" container="bottomDecoration" style="height:1em;font-size:75%;color:gray;">
\r
444 <br>Value: <input readonly id="slider1input" size="5" value="10.0%">
\r
446 <div dojoType="dijit.form.HorizontalSlider" name="horizontal2"
\r
451 showButtons="false"
\r
452 intermediateChanges="true"
\r
453 style="width:300px; height: 40px;"
\r
455 <div dojoType="dijit.form.HorizontalRule" container="bottomDecoration" count=3 style="height:5px;"></div>
\r
456 <ol dojoType="dijit.form.HorizontalRuleLabels" container="bottomDecoration"style="height:1em;font-size:75%;color:gray;">
\r
457 <li><img width=10 height=10 src="../tests/images/note.gif"><br><span style="font-size: small">small</span>
\r
458 <li><img width=15 height=15 src="../tests/images/note.gif"><br><span style="font-size: medium">medium</span>
\r
460 <li><img width=20 height=20 src="../tests/images/note.gif"><br><span style="font-size: large">large</span>
\r
464 <br style="clear:both;">
\r
465 <hr class="spacer">
\r
467 <h2>ProgressBar</h2>
\r
468 <div style="width:400px; height:20px;" annotate="true" maximum="200" id="setTestBar"
\r
469 progress="20" dojoType="dijit.ProgressBar"></div>
\r
472 <div style="width:400px; height:20px" indeterminate="true" dojoType="dijit.ProgressBar"></div>
\r
474 <hr class="spacer">
\r
476 <h2>TitlePane (nested)</h2>
\r
477 <div dojoType="dijit.TitlePane" title="Outer pane" width="275">
\r
478 <p>This is a title pane, containing another title pane ...</p>
\r
479 <div dojoType="dijit.TitlePane" title="Inner pane" width="125">
\r
481 <p>And this is the inner title pane...</p>
\r
483 <p>Sed sollicitudin suscipit risus. Nam
\r
484 ullamcorper. Sed nisl lectus, pellentesque nec,
\r
485 malesuada eget, ornare a, libero. Lorem ipsum dolor
\r
486 sit amet, consectetuer adipiscing elit.</p>
\r
488 </div><!-- end inner titlepane -->
\r
489 <p>And this is the closing line for the outer title pane.</p>
\r
490 </div><!-- end outer title pane -->
\r
491 <h2>HTML After, check indent</h2>
\r
492 </div><!-- end:second upper tab -->
\r
494 <!-- start third upper tab -->
\r
495 <div id="tab3" dojoType="dijit.layout.ContentPane" title="Buttons"
\r
496 style="padding:10px; display:none; ">
\r
498 <h2>Simple, drop down & combo buttons</h2>
\r
499 <p>Buttons can do an action, display a menu, or both:</p>
\r
502 <button dojoType="dijit.form.Button" iconClass="plusIcon" onClick='console.debug("clicked simple")'>
\r
506 <button dojoType="dijit.form.DropDownButton" iconClass="noteIcon">
\r
508 <div dojoType="dijit.Menu" id="editMenu" style="display: none;">
\r
509 <div dojoType="dijit.MenuItem"
\r
510 iconClass="dijitEditorIcon dijitEditorIconCut"
\r
511 onClick="console.debug('not actually cutting anything, just a test!')">
\r
515 <div dojoType="dijit.MenuItem"
\r
516 iconClass="dijitEditorIcon dijitEditorIconCopy"
\r
517 onClick="console.debug('not actually copying anything, just a test!')">
\r
521 <div dojoType="dijit.MenuItem"
\r
522 iconClass="dijitEditorIcon dijitEditorIconPaste"
\r
523 onClick="console.debug('not actually pasting anything, just a test!')">
\r
529 <button dojoType="dijit.form.ComboButton" iconClass="noteIcon"
\r
530 optionsTitle='save options'
\r
531 onClick='console.debug("clicked combo save")'>
\r
533 <div dojoType="dijit.Menu" id="saveMenu" style="display: none;">
\r
534 <div dojoType="dijit.MenuItem"
\r
535 iconClass="dijitEditorIcon dijitEditorIconSave"
\r
536 onClick="console.debug('not actually saving anything, just a test!')">
\r
539 <div dojoType="dijit.MenuItem"
\r
540 onClick="console.debug('not actually saving anything, just a test!')">
\r
546 <button dojoType="dijit.form.Button" iconClass="plusIcon" onClick='console.debug("clicked simple")'
\r
550 </div><!-- end:box -->
\r
552 <hr class="spacer">
\r
555 <p>Short button, tall buttons, big buttons, small buttons... These buttons
\r
556 size to their content (just like <button>).</p>
\r
559 <button dojoType="dijit.form.Button" iconClass="flatScreenIcon" onclick='console.debug("big");'>
\r
560 <span style="font-size:xx-large">big</span>
\r
563 <button id="smallButton1" dojoType="dijit.form.Button" onclick='console.debug("small");'>
\r
564 <img src="../tests/images/arrowSmall.gif" width="15" height="5">
\r
565 <span style="font-size:x-small">small</span>
\r
568 <button dojoType="dijit.form.Button" onclick='console.debug("long");'>
\r
569 <img src="../tests/images/tube.gif" width="150" height="16"> long
\r
572 <button dojoType="dijit.form.Button" onclick='console.debug("tall");' width2height="0.1">
\r
573 <img src="../tests/images/tubeTall.gif" height="75" width="35"><br>
\r
574 <span style="font-size:medium">tall</span>
\r
576 <div style="clear: both;"></div>
\r
577 </div><!-- end box -->
\r
579 <hr class="spacer">
\r
581 <h2>Customized buttons</h2>
\r
582 <p>Dojo users can mix in their styles. Here's an example:</p>
\r
584 <div><!-- custom styled button tests -->
\r
585 <button dojoType="dijit.form.Button" class="myCustomTheme"
\r
586 onclick='console.debug("short");'>
\r
587 <div class="dc">short</div>
\r
590 <button dojoType="dijit.form.Button" class="myCustomTheme"
\r
591 onclick='console.debug("longer");'>
\r
592 <div class="dc">bit longer</div>
\r
595 <button dojoType="dijit.form.Button" class="myCustomTheme"
\r
596 onclick='console.debug("longer yet");'>
\r
597 <div class="dc">ridiculously long</div>
\r
600 <div style="clear: both;"></div>
\r
601 </div><!-- end styled buttons -->
\r
603 </div><!-- end third upper tab-->
\r
605 <!-- fourth upper tab -->
\r
606 <div id="tab" dojoType="dijit.layout.ContentPane" title="Editable Text" style="padding:10px;" selected="selected">
\r
608 <h2>dijit.Editor:</h2>
\r
610 set height on this node to size the whole editor, but causes the tab to not scroll
\r
611 until you select another tab and come back. alternative is no height: here, but that
\r
612 causes editor to become VERY tall, and size to a normal height when selected (like the
\r
613 dijit.form.TextArea in "Form Feel" Tab), but in reverse. refs #3980 and is maybe new bug?
\r
615 <div style="border:1px solid #ededed;">
\r
616 <textarea height="175" dojoType="dijit.Editor" styleSheets="../../dojo/resources/dojo.css" sytle="width:400px; height:175px; overflow:auto; ">
\r
618 <li>Lorem <a href="http://dojotoolkit.org">and a link</a>, what do you think?</li>
\r
619 <li>This is the Editor with a Toolbar attached.</li>
\r
623 <hr class="spacer">
\r
626 <h2 class="testTitle">dijit.InlineEditBox + dijit.form.TextBox on <h3></h2>
\r
629 <h3 id="editable" style="font-size:larger;" dojoType="dijit.InlineEditBox" onChange="myHandler(this.id,arguments[0])">
\r
630 Edit me - I trigger the onChange callback
\r
634 <hr class="spacer">
\r
636 <h2>dijit.InlineEditBox + dijit.form.Textarea</h2>
\r
639 <p id="areaEditable" dojoType="dijit.InlineEditBox" editor="dijit.form.Textarea" autoSave="false">
\r
640 I'm one big paragraph. Go ahead and edit me. I dare you.
\r
641 The quick brown fox jumped over the lazy dog. Blah blah blah blah blah blah blah ...
\r
647 <a href="#" onClick="dijit.byId('areaEditable').setDisabled(true)">disable</a> /
\r
648 <a href="#" onClick="dijit.byId('areaEditable').setDisabled(false)">enable</a>
\r
649 the text area above.
\r
652 <hr class="spacer">
\r
654 <h2>dijit.form.DateTextBox:</h2>
\r
656 (HTML inline before)
\r
657 <span id="backgroundArea" dojoType="dijit.InlineEditBox" editor="dijit.form.DateTextBox" width="170px">12/30/2005</span>
\r
660 <hr class="spacer">
\r
662 <h2>dijit.form.TimeTextBox:</h2>
\r
664 (HTML inline before)
\r
665 <span id="timePicker" dojoType="dijit.InlineEditBox" editor="dijit.form.TimeTextBox" width="150px">9:00 AM</span>
\r
668 <hr class="spacer">
\r
671 <h2>dijit.form.FilteringSelect + Inline + remote data store:</h2>
\r
672 (HTML inline before)
\r
673 <span id="backgroundArea2" dojoType="dijit.InlineEditBox" editor="dijit.form.FilteringSelect"
\r
674 editorParams="{store: stateStore, autoComplete: true, promptMessage: 'Please enter a state'}"
\r
680 </div><!-- end fourth upper tab -->
\r
682 <!-- fifth upper tab -->
\r
683 <div id="tab5" dojoType="dijit.layout.ContentPane" title="DnD"
\r
684 style="padding:10px; display:none; ">
\r
685 <div style="float:left; margin:5px; ">
\r
687 <div dojoType="dojo.dnd.Source" style="border:3px solid #ccc; padding: 1em 3em; ">
\r
688 <div class="dojoDndItem">Item <strong>X</strong></div>
\r
689 <div class="dojoDndItem">Item <strong>Y</strong></div>
\r
690 <div class="dojoDndItem">Item <strong>Z</strong></div>
\r
693 <div style="float:left; margin:5px; ">
\r
695 <div dojoType="dojo.dnd.Source" style="border:3px solid #ccc; padding: 1em 3em; ">
\r
696 <div class="dojoDndItem">Item <strong>1</strong></div>
\r
697 <div class="dojoDndItem">Item <strong>2</strong></div>
\r
698 <div class="dojoDndItem">Item <strong>3</strong></div>
\r
703 <!-- sixth upper tab -->
\r
704 <div id="tab6" dojoType="dijit.layout.ContentPane" title="Closable"
\r
705 style="display:none; padding:10px; " closable="true">
\r
706 This pane is closable, just for the icon ...
\r
708 </div><!-- end of region="center" TabContainer -->
\r
710 <!-- bottom right tabs -->
\r
711 <div dojoType="dijit.layout.TabContainer" id="bottomTabs" tabPosition="bottom" selectedChild="btab1" region="bottom" splitter="true">
\r
714 <div id="btab1" dojoType="dijit.layout.ContentPane" title="Info" style=" padding:10px; ">
\r
715 <p>You can explore this single page after applying a Theme
\r
716 for use in creation of your own theme.</p>
\r
718 <p>I am whole slew of Widgets on a page. Jump to <a href="../tests/">dijit tests</a> to
\r
719 test individual components.</p>
\r
721 <p>There is a right-click [context] pop-up menu here, as well.</p>
\r
722 </div><!-- end:info btab1 -->
\r
724 <div id="btab2" dojoType="dijit.layout.ContentPane" title="Alternate Themes" style="padding:20px;">
\r
725 <span id="themeData"></span>
\r
726 </div><!-- btab2 -->
\r
728 <div id="btab3" dojoType="dijit.layout.ContentPane" title="Bottom 3" closable="true">
\r
729 <p>I am the last Tab</p>
\r
730 <div id="dialog2" dojoType="dijit.Dialog" title="Encased Dialog" style="display:none;">
\r
731 I am the second dialog. I am
\r
732 parented by the Low Tab Pane #3
\r
734 </div><!-- btab3 -->
\r
736 </div><!-- end Bottom TabContainer -->
\r
738 </div> <!-- end of "mainSplit" BorderContainer -->
\r
739 </div><!-- end of "main" BorderContainer -->
\r
741 <!-- dialog in body -->
\r
742 <div id="dialog1" dojoType="dijit.Dialog" title="Floating Modal Dialog" style="display:none;" href="../tests/layout/doc0.html"></div>
\r