aboutsummaryrefslogtreecommitdiff
path: root/includes/js/dijit/tests/layout/test_AccordionContainer.html
blob: d8351e7fad21a89e37818b908730d04bb635f2d6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
	"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
	<title>Accordion Widget Demo</title>

	<style type="text/css">
		@import "../../../dojo/resources/dojo.css";
		@import "../css/dijitTests.css";
	</style>

	<script type="text/javascript" src="../../../dojo/dojo.js"
		djConfig="isDebug: true, parseOnLoad: true"></script>
	<script type="text/javascript" src="../_testCommon.js"></script>

	<!-- uncomment for profiling
		<script type="text/javascript"
			src="../../../dojo/_base/html.js"></script>
		<script type="text/javascript"
			src="../../base/Layout.js"></script>
	-->

	<script type="text/javascript">
		dojo.require("dijit.layout.AccordionContainer");
		dojo.require("dijit.layout.ContentPane");
		dojo.require("dijit.layout.BorderContainer");
		dojo.require("dijit.form.ComboBox");
	 	dojo.require("dijit.form.Button");
		dojo.require("dojo.parser");	// scan page for widgets and instantiate them

		var accordion, pane4;

		function init(){
			accordion = new dijit.layout.AccordionContainer({}, dojo.byId("accordionShell"));
			dojo.forEach([ "pane 1", "pane 2", "pane 3" ], function(title, i){
				// add a node that will be promoted to the content widget
				var refNode = document.createElement("span");
				refNode.innerHTML = "this is " + title;
				document.body.appendChild(refNode);
				var content = new dijit.layout.AccordionPane({title: title, selected: i==1}, refNode);
				console.debug("adding content pane " + content.id);
				accordion.addChild(content);
			});
			accordion.startup();
			var refNode = document.createElement("span");
			var title = "pane 4";
			refNode.innerHTML = "this is " + title;
			accordion.addChild(pane4=new dijit.layout.AccordionPane({title: title}, refNode));
		}

		dojo.addOnLoad(init);

		function destroyChildren(){
			accordion.destroyDescendants();
		}
		function selectPane4(){
			accordion.selectChild(pane4);
		}
	</script>
</head>
<body style="padding: 50px;">

	<h1 class="testTitle">AccordionContainer Tests</h1>

	<h2>Accordion from markup:</h2>
	<p>HTML before</p>
	<p>HTML before</p>
	<p>HTML before</p>

	<div dojoType="dijit.layout.AccordionContainer" duration="200"
		style="float: left; margin-right: 30px;  width: 400px; height: 300px; overflow: hidden">
		<div dojoType="dijit.layout.AccordionPane" title="a">
			Hello World
		</div>
		<div dojoType="dijit.layout.AccordionPane" title="b">
			<p>
				Nunc consequat nisi vitae quam. Suspendisse sed nunc. Proin
				suscipit porta magna. Duis accumsan nunc in velit. Nam et nibh.
				Nulla facilisi. Cras venenatis urna et magna. Aenean magna mauris,
				bibendum sit amet, semper quis, aliquet nec, sapien.  Aliquam
				aliquam odio quis erat. Etiam est nisi, condimentum non, lacinia
				ac, vehicula laoreet, elit. Sed interdum augue sit amet quam
				dapibus semper. Nulla facilisi. Pellentesque lobortis erat nec
				quam.
			</p>
			<p>
				Sed arcu magna, molestie at, <input value="fringilla in, sodales"/> eu, elit.
				Curabitur mattis lorem et est. Quisque et tortor. Integer bibendum
				vulputate odio. Nam nec ipsum. Vestibulum mollis eros feugiat
				augue. Integer fermentum odio lobortis odio. Nullam mollis nisl non
				metus. Maecenas nec nunc eget pede ultrices blandit. Ut non purus
				ut elit convallis eleifend. Fusce tincidunt, justo quis tempus
				euismod, magna nulla viverra libero, sit amet lacinia odio diam id
				risus. Ut varius viverra turpis. Morbi urna elit, imperdiet eu,
				porta ac, pharetra sed, nisi. Etiam ante libero, ultrices ac,
				faucibus ac, cursus sodales, nisl. Praesent nisl sem, fermentum eu,
				consequat quis, varius interdum, nulla. Donec neque tortor,
				sollicitudin sed, consequat nec, facilisis sit amet, orci. Aenean
				ut eros sit amet ante pharetra interdum.
			</p>
		</div>
		<div dojoType="dijit.layout.AccordionPane" title="c">
			<p>The quick brown fox jumps over the lazy dog.  The quick brown fox jumps over the lazy dog.  The quick brown fox jumps over the lazy dog.</p>
		</div>
	</div>

	<p style="clear: both;">HTML after</p>
	<p>HTML after</p>
	<p>HTML after</p>
	<p></p>
	<p>Accordion with widgets</p>
	<div dojoType="dijit.layout.AccordionContainer" duration="200"
		style="float: left; margin-right: 30px; width: 400px; height: 300px; overflow: hidden">
		<div dojoType="dijit.layout.AccordionPane" selected="true"
			title="Pane 1" >
				<select>
					<option>red</option>
					<option>blue</option>
					<option>green</option>
				</select>
				<p>
				Nunc consequat nisi vitae quam. Suspendisse sed nunc. Proin
				suscipit porta magna. Duis accumsan nunc in velit. Nam et nibh.
				Nulla facilisi. Cras venenatis urna et magna. Aenean magna mauris,
				bibendum sit amet, semper quis, aliquet nec, sapien.  Aliquam
				aliquam odio quis erat. Etiam est nisi, condimentum non, lacinia
				ac, vehicula laoreet, elit. Sed interdum augue sit amet quam
				dapibus semper. Nulla facilisi. Pellentesque lobortis erat nec
				quam.
				</p>
				<p>
				Sed arcu magna, molestie at, fringilla in, sodales eu, elit.
				Curabitur mattis lorem et est. Quisque et tortor. Integer bibendum
				vulputate odio. Nam nec ipsum. Vestibulum mollis eros feugiat
				augue. Integer fermentum odio lobortis odio. Nullam mollis nisl non
				metus. Maecenas nec nunc eget pede ultrices blandit. Ut non purus
				ut elit convallis eleifend. Fusce tincidunt, justo quis tempus
				euismod, magna nulla viverra libero, sit amet lacinia odio diam id
				risus. Ut varius viverra turpis. Morbi urna elit, imperdiet eu,
				porta ac, pharetra sed, nisi. Etiam ante libero, ultrices ac,
				faucibus ac, cursus sodales, nisl. Praesent nisl sem, fermentum eu,
				consequat quis, varius interdum, nulla. Donec neque tortor,
				sollicitudin sed, consequat nec, facilisis sit amet, orci. Aenean
				ut eros sit amet ante pharetra interdum.
				</p>
		</div>

		<!-- test lazy loading -->
		<div dojoType="dijit.layout.AccordionPane" id="lazyLoadPane" title="Pane 2 (lazy load)" href="tab1.html"></div>

		<div dojoType="dijit.layout.AccordionPane" title="Pane 3 (split pane)">
			<div dojoType="dijit.layout.BorderContainer" style="height:100%; width:100%">
				<div dojoType="dijit.layout.ContentPane" region="left" style="width:50%" splitter="true">
				1Sed arcu magna, molestie at, fringilla in, sodales eu, elit.
				Curabitur mattis lorem et est. Quisque et tortor. Integer bibendum
				vulputate odio. Nam nec ipsum. Vestibulum mollis eros feugiat
				augue. Integer fermentum odio lobortis odio. Nullam mollis nisl non
				metus. Maecenas nec nunc eget pede ultrices blandit. Ut non purus
				ut elit convallis eleifend. Fusce tincidunt, justo quis tempus
				euismod, magna nulla viverra libero, sit amet lacinia odio diam id
				risus. Ut varius viverra turpis. Morbi urna elit, imperdiet eu,
				porta ac, pharetra sed, nisi. Etiam ante libero, ultrices ac,
				faucibus ac, cursus sodales, nisl. Praesent nisl sem, fermentum eu,
				consequat quis, varius interdum, nulla. Donec neque tortor,
				sollicitudin sed, consequat nec, facilisis sit amet, orci. Aenean
				ut eros sit amet ante pharetra interdum.
				</div>
				<div dojoType="dijit.layout.ContentPane" region="center">
				2Sed arcu magna, molestie at, fringilla in, sodales eu, elit.
				Curabitur mattis lorem et est. Quisque et tortor. Integer bibendum
				vulputate odio. Nam nec ipsum. Vestibulum mollis eros feugiat
				augue. Integer fermentum odio lobortis odio. Nullam mollis nisl non
				metus. Maecenas nec nunc eget pede ultrices blandit. Ut non purus
				ut elit convallis eleifend. Fusce tincidunt, justo quis tempus
				euismod, magna nulla viverra libero, sit amet lacinia odio diam id
				risus. Ut varius viverra turpis. Morbi urna elit, imperdiet eu,
				porta ac, pharetra sed, nisi. Etiam ante libero, ultrices ac,
				faucibus ac, cursus sodales, nisl. Praesent nisl sem, fermentum eu,
				consequat quis, varius interdum, nulla. Donec neque tortor,
				sollicitudin sed, consequat nec, facilisis sit amet, orci. Aenean
				ut eros sit amet ante pharetra interdum.
				</div>
			</div>
		</div>
	</div>

	<h2>Programatically created:</h2>
	<button onclick="destroyChildren();">destroy children</button>
	<button onclick="selectPane4();">select pane 4</button>
	<br>

	<div id="accordionShell" style="width: 400px; height: 400px;"></div>

</body>
</html>