Blame | Last modification | View Log | RSS feed
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Dialog Widget Dojo Tests</title>
<style type="text/css">
@import "../../dojo/resources/dojo.css";
@import "css/dijitTests.css";
table { border: none; }
</style>
<script type="text/javascript"
djConfig="parseOnLoad: true, isDebug: true"
src="../../dojo/dojo.js"></script>
<script type="text/javascript" src="_testCommon.js"></script>
<script type="text/javascript">
dojo.require("dijit.Dialog");
dojo.require("dijit.form.Button");
dojo.require("dijit.form.TextBox");
dojo.require("dijit.form.DateTextBox");
dojo.require("dijit.form.TimeTextBox");
dojo.require("dijit.form.FilteringSelect");
dojo.require("dijit.Menu");
dojo.require("dojo.parser"); // scan page for widgets and instantiate them
// create a do nothing, only for test widget
dojo.declare("dijit.TestWidget",
[dijit._Widget, dijit._Templated], {
templateString: "<div style='margin: 10px; border: inset #700 4px; padding: 5px;' dojoAttachPoint='containerNode'></div>"
});
</script>
<script type="text/javascript">
// make dojo.toJson() print dates correctly (this feels a bit dirty)
Date.prototype.json = function(){ return dojo.date.stamp.toISOString(this, {selector: 'date'});};
var thirdDlg;
function createDialog() {
if(!thirdDlg){
var pane = dojo.byId('thirdDialog');
pane.style.width = "300px";
thirdDlg = new dijit.Dialog({
title: "Programatic Dialog Creation"
},pane);
}
setTimeout("thirdDlg.show()","3000");
}
</script>
<style type="text/css">
body { font-family : sans-serif; }
form { margin-bottom : 0; }
</style>
</head>
<body>
<h1 class="testTitle">Dijit layout.Dialog tests</h1>
<button dojoType="dijit.form.Button" onclick="dijit.byId('dialog1').show()">Show Dialog</button> |
<div dojoType="dijit.Dialog" id="dialog1" title="First Dialog"
execute="alert('submitted w/args:\n' + dojo.toJson(arguments[0], true));">
<table>
<tr>
<td><label for="name">Name: </label></td>
<td><input dojoType=dijit.form.TextBox type="text" name="name" id="name"></td>
</tr>
<tr>
<td><label for="loc">Location: </label></td>
<td><input dojoType=dijit.form.TextBox type="text" name="loc" id="loc"></td>
</tr>
<tr>
<td><label for="date">Date: </label></td>
<td><input dojoType=dijit.form.DateTextBox type="text" name="date" id="date"></td>
</tr>
<tr>
<td><label for="date">Time: </label></td>
<td><input dojoType=dijit.form.TimeTextBox type="text" name="time" id="time"></td>
</tr>
<tr>
<td><label for="desc">Description: </label></td>
<td><input dojoType=dijit.form.TextBox type="text" name="desc" id="desc"></td>
</tr>
<tr>
<td colspan="2" align="center">
<button dojoType=dijit.form.Button type="submit">OK</button></td>
</tr>
</table>
</div>
<div dojoType="dijit.form.DropDownButton">
<span>Show Tooltip Dialog</span>
<div dojoType="dijit.TooltipDialog" id="tooltipDlg" title="Enter Login information"
execute="alert('submitted w/args:\n' + dojo.toJson(arguments[0], true));">
<table>
<tr>
<td><label for="user">User:</label></td>
<td><input dojoType=dijit.form.TextBox type="text" name="user" id="user"></td>
</tr>
<tr>
<td><label for="pwd">Password:</label></td>
<td><input dojoType=dijit.form.TextBox type="password" name="pwd" id="pwd"></td>
</tr>
<tr>
<td><label for="date2">Date:</label></td>
<td><input dojoType=dijit.form.DateTextBox name="date" id="date2"></td>
</tr>
<tr>
<td><label for="time2">Time:</label></td>
<td><input dojoType=dijit.form.TimeTextBox name="time" id="time2"></td>
</tr>
<tr>
<td><label for="combo">Pizza:</label></td>
<td>
<select dojoType=dijit.form.FilteringSelect name="combo" id="combo" hasDownArrow="true">
<option value="cheese">cheese</option>
<option value="pepperoni">pepperoni</option>
<option value="sausage">sausage</option>
</select>
</td>
</tr>
<tr>
<td colspan="2" align="center">
<button dojoType=dijit.form.Button type="submit" name="submit">Order</button>
</td>
</tr>
</table>
<div style="width: 300px;">Note: This tooltip dialog has a bunch of nested drop downs for testing keyboard and click handling</div>
</div>
</div> |
<button dojoType="dijit.form.Button" onclick="createDialog()" title="shows after 3 second delay">Programatic Dialog (3 second delay)</button> |
<div id="thirdDialog" style="display: none;">
<form>
<input>
<br>
<button>hello</button>
<br>
<select>
<option>Lorem</option>
<option>ipsum</option>
<option>dolor</option>
<option>sit</option>
<option>amet</option>
</select>
</form>
<p>
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
semper sagittis velit. Cras in mi. Duis porta mauris ut ligula. Proin
porta rutrum lacus. Etiam consequat scelerisque quam. Nulla facilisi.
Maecenas luctus venenatis nulla. In sit amet dui non mi semper iaculis.
Sed molestie tortor at ipsum. Morbi dictum rutrum magna. Sed vitae
risus.
</p>
</div>
<button dojoType="dijit.form.Button" onclick="dijit.byId('fifthDlg').show();">Test slow loading HREF Dialog</button>
<div dojoType="dijit.Dialog" id="fifthDlg" href="layout/getResponse.php?delay=3000&messId=3" title="From HREF (slow network emulated)"></div>
<div dojoType="dijit.form.DropDownButton">
<span>Test slowloading HREF Tooltip Dialog</span>
<div dojoType="dijit.TooltipDialog" href="layout/getResponse.php?delay=500&messId=2">
</div>
</div> |
<p><b><i>(scroll down to see more links to click, for testing positioning / scroll handling)</i></b></p>
<p>
Here's a form. Try clicking the programatic dialog link, then focusing on the form.
After the dialog closes focus should be returned to the form
</p>
<form>
<input>
<br>
<button>hello</button>
<br>
<select>
<option>Lorem</option>
<option>ipsum</option>
<option>dolor</option>
<option>sit</option>
<option>amet</option>
</select>
</form>
<p>Aliquam vitae enim. Duis scelerisque metus auctor est venenatis
imperdiet. Fusce dignissim porta augue. Nulla vestibulum. Integer lorem
nunc, ullamcorper a, commodo ac, malesuada sed, dolor. Aenean id mi in
massa bibendum suscipit. Integer eros. Nullam suscipit mauris. In
pellentesque. Mauris ipsum est, pharetra semper, pharetra in, viverra
quis, tellus. Etiam purus. Quisque egestas, tortor ac cursus lacinia,
felis leo adipiscing nisi, et rhoncus elit dolor eget eros. Fusce ut
quam. Suspendisse eleifend leo vitae ligula. Nulla facilisi. Nulla
rutrum, erat vitae lacinia dictum, pede purus imperdiet lacus, ut
semper velit ante id metus. Praesent massa dolor, porttitor sed,
pulvinar in, consequat ut, leo. Nullam nec est. Aenean id risus blandit
tortor pharetra congue. Suspendisse pulvinar.
</p>
<p>Vestibulum convallis eros ac justo. Proin dolor. Etiam aliquam. Nam
ornare elit vel augue. Suspendisse potenti. Etiam sed mauris eu neque
nonummy mollis. Vestibulum vel purus ac pede semper accumsan. Vivamus
lobortis, sem vitae nonummy lacinia, nisl est gravida magna, non cursus
est quam sed urna. Phasellus adipiscing justo in ipsum. Duis sagittis
dolor sit amet magna. Suspendisse suscipit, neque eu dictum auctor,
nisi augue tincidunt arcu, non lacinia magna purus nec magna. Praesent
pretium sollicitudin sapien. Suspendisse imperdiet. Class aptent taciti
sociosqu ad litora torquent per conubia nostra, per inceptos
hymenaeos.
</p>
<form>
<center>
<select>
<option>1</option>
<option>2</option>
</select>
</center>
</form>
<p>Mauris pharetra lorem sit amet sapien. Nulla libero metus, tristique
et, dignissim a, tempus et, metus. Ut libero. Vivamus tempus purus vel
ipsum. Quisque mauris urna, vestibulum commodo, rutrum vitae, ultrices
vitae, nisl. Class aptent taciti sociosqu ad litora torquent per
conubia nostra, per inceptos hymenaeos. Nulla id erat sit amet odio
luctus eleifend. Proin massa libero, ultricies non, tincidunt a,
vestibulum non, tellus. Nunc nunc purus, lobortis a, pulvinar at,
egestas a, mi. Cras adipiscing velit a mauris. Morbi felis. Etiam at
felis. Cras eget eros et justo mattis pulvinar. Nullam at justo id
risus porttitor dignissim. Vestibulum sed velit vel metus tincidunt
tempus. Nunc euismod nisl id dolor tristique tincidunt. Nullam placerat
turpis sed odio. Curabitur in est id nibh tempus ultrices. Aliquam
consectetuer dapibus eros. Aliquam nisl.
</p>
<div style="float:right;clear:right;" dojoType="dijit.form.DropDownButton">
<span>dropdown at right</span>
<div dojoType="dijit.TooltipDialog" id="dialogright">
<div style="white-space:nowrap;">Aliquam vitae enim. Duis scelerisque metus auctor est venenatis</div>
</div>
</div>
<p>
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
semper sagittis velit. Cras in mi. Duis porta mauris ut ligula. Proin
porta rutrum lacus. Etiam consequat scelerisque quam. Nulla facilisi.
Maecenas luctus venenatis nulla. In sit amet dui non mi semper iaculis.
Sed molestie tortor at ipsum. Morbi dictum rutrum magna. Sed vitae
risus.
</p>
<p>Aliquam vitae enim. Duis scelerisque metus auctor est venenatis
imperdiet. Fusce dignissim porta augue. Nulla vestibulum. Integer lorem
nunc, ullamcorper a, commodo ac, malesuada sed, dolor. Aenean id mi in
massa bibendum suscipit. Integer eros. Nullam suscipit mauris. In
pellentesque. Mauris ipsum est, pharetra semper, pharetra in, viverra
quis, tellus. Etiam purus. Quisque egestas, tortor ac cursus lacinia,
felis leo adipiscing nisi, et rhoncus elit dolor eget eros. Fusce ut
quam. Suspendisse eleifend leo vitae ligula. Nulla facilisi. Nulla
rutrum, erat vitae lacinia dictum, pede purus imperdiet lacus, ut
semper velit ante id metus. Praesent massa dolor, porttitor sed,
pulvinar in, consequat ut, leo. Nullam nec est. Aenean id risus blandit
tortor pharetra congue. Suspendisse pulvinar.
</p>
<div dojoType="dijit.form.DropDownButton" title="Enter Login information2">
<span>Show Tooltip Dialog pointing upwards, with links</span>
<div dojoType="dijit.TooltipDialog" title="General Information Dialog">
<p>Vestibulum convallis eros ac justo. Proin dolor. Etiam aliquam. Nam
ornare elit vel augue. Suspendisse potenti. Etiam sed mauris eu neque
nonummy mollis. <a href="http://www.lipsum.com/">Vestibulum</a> vel purus ac pede semper accumsan. Vivamus
lobortis, sem vitae nonummy lacinia, nisl est gravida magna, non cursus
est quam sed urna. Phasellus adipiscing justo in <a href="http://www.lipsum.com/">ipsum</a>. Duis sagittis
dolor sit amet magna. Suspendisse suscipit, neque eu dictum auctor,
nisi augue tincidunt arcu, non lacinia magna purus nec magna. Praesent
pretium sollicitudin sapien. <a href="http://www.lipsum.com/">Suspendisse imperdiet</a>. Class aptent taciti
sociosqu ad litora torquent per conubia nostra, per inceptos
hymenaeos.
</p>
</div>
</div>
(will go up if there isn't enough space on the bottom of the screen)
<p>Vestibulum convallis eros ac justo. Proin dolor. Etiam aliquam. Nam
ornare elit vel augue. Suspendisse potenti. Etiam sed mauris eu neque
nonummy mollis. Vestibulum vel purus ac pede semper accumsan. Vivamus
lobortis, sem vitae nonummy lacinia, nisl est gravida magna, non cursus
est quam sed urna. Phasellus adipiscing justo in ipsum. Duis sagittis
dolor sit amet magna. Suspendisse suscipit, neque eu dictum auctor,
nisi augue tincidunt arcu, non lacinia magna purus nec magna. Praesent
pretium sollicitudin sapien. Suspendisse imperdiet. Class aptent taciti
sociosqu ad litora torquent per conubia nostra, per inceptos
hymenaeos.
</p>
<form>
<center>
<select>
<option>1</option>
<option>2</option>
</select>
</center>
</form>
<p>Mauris pharetra lorem sit amet sapien. Nulla libero metus, tristique
et, dignissim a, tempus et, metus. Ut libero. Vivamus tempus purus vel
ipsum. Quisque mauris urna, vestibulum commodo, rutrum vitae, ultrices
vitae, nisl. Class aptent taciti sociosqu ad litora torquent per
conubia nostra, per inceptos hymenaeos. Nulla id erat sit amet odio
luctus eleifend. Proin massa libero, ultricies non, tincidunt a,
vestibulum non, tellus. Nunc nunc purus, lobortis a, pulvinar at,
egestas a, mi. Cras adipiscing velit a mauris. Morbi felis. Etiam at
felis. Cras eget eros et justo mattis pulvinar. Nullam at justo id
risus porttitor dignissim. Vestibulum sed velit vel metus tincidunt
tempus. Nunc euismod nisl id dolor tristique tincidunt. Nullam placerat
turpis sed odio. Curabitur in est id nibh tempus ultrices. Aliquam
consectetuer dapibus eros. Aliquam nisl.
</p>
<a href="javascript:dijit.byId('dialog1').show()">Show Dialog</a>
<p>
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
semper sagittis velit. Cras in mi. Duis porta mauris ut ligula. Proin
porta rutrum lacus. Etiam consequat scelerisque quam. Nulla facilisi.
Maecenas luctus venenatis nulla. In sit amet dui non mi semper iaculis.
Sed molestie tortor at ipsum. Morbi dictum rutrum magna. Sed vitae
risus.
</p>
<p>Aliquam vitae enim. Duis scelerisque metus auctor est venenatis
imperdiet. Fusce dignissim porta augue. Nulla vestibulum. Integer lorem
nunc, ullamcorper a, commodo ac, malesuada sed, dolor. Aenean id mi in
massa bibendum suscipit. Integer eros. Nullam suscipit mauris. In
pellentesque. Mauris ipsum est, pharetra semper, pharetra in, viverra
quis, tellus. Etiam purus. Quisque egestas, tortor ac cursus lacinia,
felis leo adipiscing nisi, et rhoncus elit dolor eget eros. Fusce ut
quam. Suspendisse eleifend leo vitae ligula. Nulla facilisi. Nulla
rutrum, erat vitae lacinia dictum, pede purus imperdiet lacus, ut
semper velit ante id metus. Praesent massa dolor, porttitor sed,
pulvinar in, consequat ut, leo. Nullam nec est. Aenean id risus blandit
tortor pharetra congue. Suspendisse pulvinar.
</p>
<p>Vestibulum convallis eros ac justo. Proin dolor. Etiam aliquam. Nam
ornare elit vel augue. Suspendisse potenti. Etiam sed mauris eu neque
nonummy mollis. Vestibulum vel purus ac pede semper accumsan. Vivamus
lobortis, sem vitae nonummy lacinia, nisl est gravida magna, non cursus
est quam sed urna. Phasellus adipiscing justo in ipsum. Duis sagittis
dolor sit amet magna. Suspendisse suscipit, neque eu dictum auctor,
nisi augue tincidunt arcu, non lacinia magna purus nec magna. Praesent
pretium sollicitudin sapien. Suspendisse imperdiet. Class aptent taciti
sociosqu ad litora torquent per conubia nostra, per inceptos
hymenaeos.
</p>
<p>Mauris pharetra lorem sit amet sapien. Nulla libero metus, tristique
et, dignissim a, tempus et, metus. Ut libero. Vivamus tempus purus vel
ipsum. Quisque mauris urna, vestibulum commodo, rutrum vitae, ultrices
vitae, nisl. Class aptent taciti sociosqu ad litora torquent per
conubia nostra, per inceptos hymenaeos. Nulla id erat sit amet odio
luctus eleifend. Proin massa libero, ultricies non, tincidunt a,
vestibulum non, tellus. Nunc nunc purus, lobortis a, pulvinar at,
egestas a, mi. Cras adipiscing velit a mauris. Morbi felis. Etiam at
felis. Cras eget eros et justo mattis pulvinar. Nullam at justo id
risus porttitor dignissim. Vestibulum sed velit vel metus tincidunt
tempus. Nunc euismod nisl id dolor tristique tincidunt. Nullam placerat
turpis sed odio. Curabitur in est id nibh tempus ultrices. Aliquam
consectetuer dapibus eros. Aliquam nisl.
</p>
<p>
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
semper sagittis velit. Cras in mi. Duis porta mauris ut ligula. Proin
porta rutrum lacus. Etiam consequat scelerisque quam. Nulla facilisi.
Maecenas luctus venenatis nulla. In sit amet dui non mi semper iaculis.
Sed molestie tortor at ipsum. Morbi dictum rutrum magna. Sed vitae
risus.
</p>
<p>Aliquam vitae enim. Duis scelerisque metus auctor est venenatis
imperdiet. Fusce dignissim porta augue. Nulla vestibulum. Integer lorem
nunc, ullamcorper a, commodo ac, malesuada sed, dolor. Aenean id mi in
massa bibendum suscipit. Integer eros. Nullam suscipit mauris. In
pellentesque. Mauris ipsum est, pharetra semper, pharetra in, viverra
quis, tellus. Etiam purus. Quisque egestas, tortor ac cursus lacinia,
felis leo adipiscing nisi, et rhoncus elit dolor eget eros. Fusce ut
quam. Suspendisse eleifend leo vitae ligula. Nulla facilisi. Nulla
rutrum, erat vitae lacinia dictum, pede purus imperdiet lacus, ut
semper velit ante id metus. Praesent massa dolor, porttitor sed,
pulvinar in, consequat ut, leo. Nullam nec est. Aenean id risus blandit
tortor pharetra congue. Suspendisse pulvinar.
</p>
<p>Vestibulum convallis eros ac justo. Proin dolor. Etiam aliquam. Nam
ornare elit vel augue. Suspendisse potenti. Etiam sed mauris eu neque
nonummy mollis. Vestibulum vel purus ac pede semper accumsan. Vivamus
lobortis, sem vitae nonummy lacinia, nisl est gravida magna, non cursus
est quam sed urna. Phasellus adipiscing justo in ipsum. Duis sagittis
dolor sit amet magna. Suspendisse suscipit, neque eu dictum auctor,
nisi augue tincidunt arcu, non lacinia magna purus nec magna. Praesent
pretium sollicitudin sapien. Suspendisse imperdiet. Class aptent taciti
sociosqu ad litora torquent per conubia nostra, per inceptos
hymenaeos.
</p>
<p>Mauris pharetra lorem sit amet sapien. Nulla libero metus, tristique
et, dignissim a, tempus et, metus. Ut libero. Vivamus tempus purus vel
ipsum. Quisque mauris urna, vestibulum commodo, rutrum vitae, ultrices
vitae, nisl. Class aptent taciti sociosqu ad litora torquent per
conubia nostra, per inceptos hymenaeos. Nulla id erat sit amet odio
luctus eleifend. Proin massa libero, ultricies non, tincidunt a,
vestibulum non, tellus. Nunc nunc purus, lobortis a, pulvinar at,
egestas a, mi. Cras adipiscing velit a mauris. Morbi felis. Etiam at
felis. Cras eget eros et justo mattis pulvinar. Nullam at justo id
risus porttitor dignissim. Vestibulum sed velit vel metus tincidunt
tempus. Nunc euismod nisl id dolor tristique tincidunt. Nullam placerat
turpis sed odio. Curabitur in est id nibh tempus ultrices. Aliquam
consectetuer dapibus eros. Aliquam nisl.
</p>
</body>
</html>