Subversion Repositories Applications.papyrus

Rev

Rev 1372 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1372 Rev 1422
1
/*
1
/*
2
	Copyright (c) 2004-2006, The Dojo Foundation
2
	Copyright (c) 2004-2006, The Dojo Foundation
3
	All Rights Reserved.
3
	All Rights Reserved.
4
 
4
 
5
	Licensed under the Academic Free License version 2.1 or above OR the
5
	Licensed under the Academic Free License version 2.1 or above OR the
6
	modified BSD license. For more information on Dojo licensing, see:
6
	modified BSD license. For more information on Dojo licensing, see:
7
 
7
 
8
		http://dojotoolkit.org/community/licensing.shtml
8
		http://dojotoolkit.org/community/licensing.shtml
9
*/
9
*/
-
 
10
 
-
 
11
 
10
 
12
 
11
dojo.provide("dojo.widget.Editor2Toolbar");
13
dojo.provide("dojo.widget.Editor2Toolbar");
12
dojo.require("dojo.lang.*");
14
dojo.require("dojo.lang.*");
13
dojo.require("dojo.widget.*");
15
dojo.require("dojo.widget.*");
14
dojo.require("dojo.event.*");
16
dojo.require("dojo.event.*");
15
dojo.require("dojo.html.layout");
17
dojo.require("dojo.html.layout");
16
dojo.require("dojo.html.display");
18
dojo.require("dojo.html.display");
17
dojo.require("dojo.widget.RichText");
19
dojo.require("dojo.widget.RichText");
18
dojo.require("dojo.widget.PopupContainer");
20
dojo.require("dojo.widget.PopupContainer");
19
dojo.require("dojo.widget.ColorPalette");
21
dojo.require("dojo.widget.ColorPalette");
20
dojo.lang.declare("dojo.widget.HandlerManager", null, function () {
22
dojo.lang.declare("dojo.widget.HandlerManager", null, function () {
21
	this._registeredHandlers = [];
23
	this._registeredHandlers = [];
22
}, {registerHandler:function (obj, func) {
24
}, {registerHandler:function (obj, func) {
23
	if (arguments.length == 2) {
25
	if (arguments.length == 2) {
24
		this._registeredHandlers.push(function () {
26
		this._registeredHandlers.push(function () {
25
			return obj[func].apply(obj, arguments);
27
			return obj[func].apply(obj, arguments);
26
		});
28
		});
27
	} else {
29
	} else {
28
		this._registeredHandlers.push(obj);
30
		this._registeredHandlers.push(obj);
29
	}
31
	}
30
}, removeHandler:function (func) {
32
}, removeHandler:function (func) {
31
	for (var i = 0; i < this._registeredHandlers.length; i++) {
33
	for (var i = 0; i < this._registeredHandlers.length; i++) {
32
		if (func === this._registeredHandlers[i]) {
34
		if (func === this._registeredHandlers[i]) {
33
			delete this._registeredHandlers[i];
35
			delete this._registeredHandlers[i];
34
			return;
36
			return;
35
		}
37
		}
36
	}
38
	}
37
	dojo.debug("HandlerManager handler " + func + " is not registered, can not remove.");
39
	dojo.debug("HandlerManager handler " + func + " is not registered, can not remove.");
38
}, destroy:function () {
40
}, destroy:function () {
39
	for (var i = 0; i < this._registeredHandlers.length; i++) {
41
	for (var i = 0; i < this._registeredHandlers.length; i++) {
40
		delete this._registeredHandlers[i];
42
		delete this._registeredHandlers[i];
41
	}
43
	}
42
}});
44
}});
43
dojo.widget.Editor2ToolbarItemManager = new dojo.widget.HandlerManager;
45
dojo.widget.Editor2ToolbarItemManager = new dojo.widget.HandlerManager;
44
dojo.lang.mixin(dojo.widget.Editor2ToolbarItemManager, {getToolbarItem:function (name) {
46
dojo.lang.mixin(dojo.widget.Editor2ToolbarItemManager, {getToolbarItem:function (name) {
45
	var item;
47
	var item;
46
	name = name.toLowerCase();
48
	name = name.toLowerCase();
47
	for (var i = 0; i < this._registeredHandlers.length; i++) {
49
	for (var i = 0; i < this._registeredHandlers.length; i++) {
48
		item = this._registeredHandlers[i](name);
50
		item = this._registeredHandlers[i](name);
49
		if (item) {
51
		if (item) {
50
			return item;
52
			return item;
51
		}
53
		}
52
	}
54
	}
53
	switch (name) {
55
	switch (name) {
54
	  case "bold":
56
	  case "bold":
55
	  case "copy":
57
	  case "copy":
56
	  case "cut":
58
	  case "cut":
57
	  case "delete":
59
	  case "delete":
58
	  case "indent":
60
	  case "indent":
59
	  case "inserthorizontalrule":
61
	  case "inserthorizontalrule":
60
	  case "insertorderedlist":
62
	  case "insertorderedlist":
61
	  case "insertunorderedlist":
63
	  case "insertunorderedlist":
62
	  case "italic":
64
	  case "italic":
63
	  case "justifycenter":
65
	  case "justifycenter":
64
	  case "justifyfull":
66
	  case "justifyfull":
65
	  case "justifyleft":
67
	  case "justifyleft":
66
	  case "justifyright":
68
	  case "justifyright":
67
	  case "outdent":
69
	  case "outdent":
68
	  case "paste":
70
	  case "paste":
69
	  case "redo":
71
	  case "redo":
70
	  case "removeformat":
72
	  case "removeformat":
71
	  case "selectall":
73
	  case "selectall":
72
	  case "strikethrough":
74
	  case "strikethrough":
73
	  case "subscript":
75
	  case "subscript":
74
	  case "superscript":
76
	  case "superscript":
75
	  case "underline":
77
	  case "underline":
76
	  case "undo":
78
	  case "undo":
77
	  case "unlink":
79
	  case "unlink":
78
	  case "createlink":
80
	  case "createlink":
79
	  case "insertimage":
81
	  case "insertimage":
80
	  case "htmltoggle":
82
	  case "htmltoggle":
81
		item = new dojo.widget.Editor2ToolbarButton(name);
83
		item = new dojo.widget.Editor2ToolbarButton(name);
82
		break;
84
		break;
83
	  case "forecolor":
85
	  case "forecolor":
84
	  case "hilitecolor":
86
	  case "hilitecolor":
85
		item = new dojo.widget.Editor2ToolbarColorPaletteButton(name);
87
		item = new dojo.widget.Editor2ToolbarColorPaletteButton(name);
86
		break;
88
		break;
87
	  case "plainformatblock":
89
	  case "plainformatblock":
88
		item = new dojo.widget.Editor2ToolbarFormatBlockPlainSelect("formatblock");
90
		item = new dojo.widget.Editor2ToolbarFormatBlockPlainSelect("formatblock");
89
		break;
91
		break;
90
	  case "formatblock":
92
	  case "formatblock":
91
		item = new dojo.widget.Editor2ToolbarFormatBlockSelect("formatblock");
93
		item = new dojo.widget.Editor2ToolbarFormatBlockSelect("formatblock");
92
		break;
94
		break;
93
	  case "fontsize":
95
	  case "fontsize":
94
		item = new dojo.widget.Editor2ToolbarFontSizeSelect("fontsize");
96
		item = new dojo.widget.Editor2ToolbarFontSizeSelect("fontsize");
95
		break;
97
		break;
96
	  case "fontname":
98
	  case "fontname":
97
		item = new dojo.widget.Editor2ToolbarFontNameSelect("fontname");
99
		item = new dojo.widget.Editor2ToolbarFontNameSelect("fontname");
98
		break;
100
		break;
99
	  case "inserttable":
101
	  case "inserttable":
100
	  case "insertcell":
102
	  case "insertcell":
101
	  case "insertcol":
103
	  case "insertcol":
102
	  case "insertrow":
104
	  case "insertrow":
103
	  case "deletecells":
105
	  case "deletecells":
104
	  case "deletecols":
106
	  case "deletecols":
105
	  case "deleterows":
107
	  case "deleterows":
106
	  case "mergecells":
108
	  case "mergecells":
107
	  case "splitcell":
109
	  case "splitcell":
108
		dojo.debug(name + " is implemented in dojo.widget.Editor2Plugin.TableOperation, please require it first.");
110
		dojo.debug(name + " is implemented in dojo.widget.Editor2Plugin.TableOperation, please require it first.");
109
		break;
111
		break;
110
	  case "inserthtml":
112
	  case "inserthtml":
111
	  case "blockdirltr":
113
	  case "blockdirltr":
112
	  case "blockdirrtl":
114
	  case "blockdirrtl":
113
	  case "dirltr":
115
	  case "dirltr":
114
	  case "dirrtl":
116
	  case "dirrtl":
115
	  case "inlinedirltr":
117
	  case "inlinedirltr":
116
	  case "inlinedirrtl":
118
	  case "inlinedirrtl":
117
		dojo.debug("Not yet implemented toolbar item: " + name);
119
		dojo.debug("Not yet implemented toolbar item: " + name);
118
		break;
120
		break;
119
	  default:
121
	  default:
120
		dojo.debug("dojo.widget.Editor2ToolbarItemManager.getToolbarItem: Unknown toolbar item: " + name);
122
		dojo.debug("dojo.widget.Editor2ToolbarItemManager.getToolbarItem: Unknown toolbar item: " + name);
121
	}
123
	}
122
	return item;
124
	return item;
123
}});
125
}});
124
dojo.addOnUnload(dojo.widget.Editor2ToolbarItemManager, "destroy");
126
dojo.addOnUnload(dojo.widget.Editor2ToolbarItemManager, "destroy");
125
dojo.declare("dojo.widget.Editor2ToolbarButton", null, function (name) {
127
dojo.declare("dojo.widget.Editor2ToolbarButton", null, function (name) {
126
	this._name = name;
128
	this._name = name;
127
}, {create:function (node, toolbar, nohover) {
129
}, {create:function (node, toolbar, nohover) {
128
	this._domNode = node;
130
	this._domNode = node;
129
	var cmd = toolbar.parent.getCommand(this._name);
131
	var cmd = toolbar.parent.getCommand(this._name);
130
	if (cmd) {
132
	if (cmd) {
131
		this._domNode.title = cmd.getText();
133
		this._domNode.title = cmd.getText();
132
	}
134
	}
133
	this.disableSelection(this._domNode);
135
	this.disableSelection(this._domNode);
134
	this._parentToolbar = toolbar;
136
	this._parentToolbar = toolbar;
135
	dojo.event.connect(this._domNode, "onclick", this, "onClick");
137
	dojo.event.connect(this._domNode, "onclick", this, "onClick");
136
	if (!nohover) {
138
	if (!nohover) {
137
		dojo.event.connect(this._domNode, "onmouseover", this, "onMouseOver");
139
		dojo.event.connect(this._domNode, "onmouseover", this, "onMouseOver");
138
		dojo.event.connect(this._domNode, "onmouseout", this, "onMouseOut");
140
		dojo.event.connect(this._domNode, "onmouseout", this, "onMouseOut");
139
	}
141
	}
140
}, disableSelection:function (rootnode) {
142
}, disableSelection:function (rootnode) {
141
	dojo.html.disableSelection(rootnode);
143
	dojo.html.disableSelection(rootnode);
142
	var nodes = rootnode.all || rootnode.getElementsByTagName("*");
144
	var nodes = rootnode.all || rootnode.getElementsByTagName("*");
143
	for (var x = 0; x < nodes.length; x++) {
145
	for (var x = 0; x < nodes.length; x++) {
144
		dojo.html.disableSelection(nodes[x]);
146
		dojo.html.disableSelection(nodes[x]);
145
	}
147
	}
146
}, onMouseOver:function () {
148
}, onMouseOver:function () {
147
	var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
149
	var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
148
	if (curInst) {
150
	if (curInst) {
149
		var _command = curInst.getCommand(this._name);
151
		var _command = curInst.getCommand(this._name);
150
		if (_command && _command.getState() != dojo.widget.Editor2Manager.commandState.Disabled) {
152
		if (_command && _command.getState() != dojo.widget.Editor2Manager.commandState.Disabled) {
151
			this.highlightToolbarItem();
153
			this.highlightToolbarItem();
152
		}
154
		}
153
	}
155
	}
154
}, onMouseOut:function () {
156
}, onMouseOut:function () {
155
	this.unhighlightToolbarItem();
157
	this.unhighlightToolbarItem();
156
}, destroy:function () {
158
}, destroy:function () {
157
	this._domNode = null;
159
	this._domNode = null;
158
	this._parentToolbar = null;
160
	this._parentToolbar = null;
159
}, onClick:function (e) {
161
}, onClick:function (e) {
160
	if (this._domNode && !this._domNode.disabled && this._parentToolbar.checkAvailability()) {
162
	if (this._domNode && !this._domNode.disabled && this._parentToolbar.checkAvailability()) {
161
		e.preventDefault();
163
		e.preventDefault();
162
		e.stopPropagation();
164
		e.stopPropagation();
163
		var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
165
		var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
164
		if (curInst) {
166
		if (curInst) {
165
			var _command = curInst.getCommand(this._name);
167
			var _command = curInst.getCommand(this._name);
166
			if (_command) {
168
			if (_command) {
167
				_command.execute();
169
				_command.execute();
168
			}
170
			}
169
		}
171
		}
170
	}
172
	}
171
}, refreshState:function () {
173
}, refreshState:function () {
172
	var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
174
	var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
173
	var em = dojo.widget.Editor2Manager;
175
	var em = dojo.widget.Editor2Manager;
174
	if (curInst) {
176
	if (curInst) {
175
		var _command = curInst.getCommand(this._name);
177
		var _command = curInst.getCommand(this._name);
176
		if (_command) {
178
		if (_command) {
177
			var state = _command.getState();
179
			var state = _command.getState();
178
			if (state != this._lastState) {
180
			if (state != this._lastState) {
179
				switch (state) {
181
				switch (state) {
180
				  case em.commandState.Latched:
182
				  case em.commandState.Latched:
181
					this.latchToolbarItem();
183
					this.latchToolbarItem();
182
					break;
184
					break;
183
				  case em.commandState.Enabled:
185
				  case em.commandState.Enabled:
184
					this.enableToolbarItem();
186
					this.enableToolbarItem();
185
					break;
187
					break;
186
				  case em.commandState.Disabled:
188
				  case em.commandState.Disabled:
187
				  default:
189
				  default:
188
					this.disableToolbarItem();
190
					this.disableToolbarItem();
189
				}
191
				}
190
				this._lastState = state;
192
				this._lastState = state;
191
			}
193
			}
192
		}
194
		}
193
	}
195
	}
194
	return em.commandState.Enabled;
196
	return em.commandState.Enabled;
195
}, latchToolbarItem:function () {
197
}, latchToolbarItem:function () {
196
	this._domNode.disabled = false;
198
	this._domNode.disabled = false;
197
	this.removeToolbarItemStyle(this._domNode);
199
	this.removeToolbarItemStyle(this._domNode);
198
	dojo.html.addClass(this._domNode, this._parentToolbar.ToolbarLatchedItemStyle);
200
	dojo.html.addClass(this._domNode, this._parentToolbar.ToolbarLatchedItemStyle);
199
}, enableToolbarItem:function () {
201
}, enableToolbarItem:function () {
200
	this._domNode.disabled = false;
202
	this._domNode.disabled = false;
201
	this.removeToolbarItemStyle(this._domNode);
203
	this.removeToolbarItemStyle(this._domNode);
202
	dojo.html.addClass(this._domNode, this._parentToolbar.ToolbarEnabledItemStyle);
204
	dojo.html.addClass(this._domNode, this._parentToolbar.ToolbarEnabledItemStyle);
203
}, disableToolbarItem:function () {
205
}, disableToolbarItem:function () {
204
	this._domNode.disabled = true;
206
	this._domNode.disabled = true;
205
	this.removeToolbarItemStyle(this._domNode);
207
	this.removeToolbarItemStyle(this._domNode);
206
	dojo.html.addClass(this._domNode, this._parentToolbar.ToolbarDisabledItemStyle);
208
	dojo.html.addClass(this._domNode, this._parentToolbar.ToolbarDisabledItemStyle);
207
}, highlightToolbarItem:function () {
209
}, highlightToolbarItem:function () {
208
	dojo.html.addClass(this._domNode, this._parentToolbar.ToolbarHighlightedItemStyle);
210
	dojo.html.addClass(this._domNode, this._parentToolbar.ToolbarHighlightedItemStyle);
209
}, unhighlightToolbarItem:function () {
211
}, unhighlightToolbarItem:function () {
210
	dojo.html.removeClass(this._domNode, this._parentToolbar.ToolbarHighlightedItemStyle);
212
	dojo.html.removeClass(this._domNode, this._parentToolbar.ToolbarHighlightedItemStyle);
211
}, removeToolbarItemStyle:function () {
213
}, removeToolbarItemStyle:function () {
212
	dojo.html.removeClass(this._domNode, this._parentToolbar.ToolbarEnabledItemStyle);
214
	dojo.html.removeClass(this._domNode, this._parentToolbar.ToolbarEnabledItemStyle);
213
	dojo.html.removeClass(this._domNode, this._parentToolbar.ToolbarLatchedItemStyle);
215
	dojo.html.removeClass(this._domNode, this._parentToolbar.ToolbarLatchedItemStyle);
214
	dojo.html.removeClass(this._domNode, this._parentToolbar.ToolbarDisabledItemStyle);
216
	dojo.html.removeClass(this._domNode, this._parentToolbar.ToolbarDisabledItemStyle);
215
	this.unhighlightToolbarItem();
217
	this.unhighlightToolbarItem();
216
}});
218
}});
217
dojo.declare("dojo.widget.Editor2ToolbarDropDownButton", dojo.widget.Editor2ToolbarButton, {onClick:function () {
219
dojo.declare("dojo.widget.Editor2ToolbarDropDownButton", dojo.widget.Editor2ToolbarButton, {onClick:function () {
218
	if (this._domNode && !this._domNode.disabled && this._parentToolbar.checkAvailability()) {
220
	if (this._domNode && !this._domNode.disabled && this._parentToolbar.checkAvailability()) {
219
		if (!this._dropdown) {
221
		if (!this._dropdown) {
220
			this._dropdown = dojo.widget.createWidget("PopupContainer", {});
222
			this._dropdown = dojo.widget.createWidget("PopupContainer", {});
221
			this._domNode.appendChild(this._dropdown.domNode);
223
			this._domNode.appendChild(this._dropdown.domNode);
222
		}
224
		}
223
		if (this._dropdown.isShowingNow) {
225
		if (this._dropdown.isShowingNow) {
224
			this._dropdown.close();
226
			this._dropdown.close();
225
		} else {
227
		} else {
226
			this.onDropDownShown();
228
			this.onDropDownShown();
227
			this._dropdown.open(this._domNode, null, this._domNode);
229
			this._dropdown.open(this._domNode, null, this._domNode);
228
		}
230
		}
229
	}
231
	}
230
}, destroy:function () {
232
}, destroy:function () {
231
	this.onDropDownDestroy();
233
	this.onDropDownDestroy();
232
	if (this._dropdown) {
234
	if (this._dropdown) {
233
		this._dropdown.destroy();
235
		this._dropdown.destroy();
234
	}
236
	}
235
	dojo.widget.Editor2ToolbarDropDownButton.superclass.destroy.call(this);
237
	dojo.widget.Editor2ToolbarDropDownButton.superclass.destroy.call(this);
236
}, onDropDownShown:function () {
238
}, onDropDownShown:function () {
237
}, onDropDownDestroy:function () {
239
}, onDropDownDestroy:function () {
238
}});
240
}});
239
dojo.declare("dojo.widget.Editor2ToolbarColorPaletteButton", dojo.widget.Editor2ToolbarDropDownButton, {onDropDownShown:function () {
241
dojo.declare("dojo.widget.Editor2ToolbarColorPaletteButton", dojo.widget.Editor2ToolbarDropDownButton, {onDropDownShown:function () {
240
	if (!this._colorpalette) {
242
	if (!this._colorpalette) {
241
		this._colorpalette = dojo.widget.createWidget("ColorPalette", {});
243
		this._colorpalette = dojo.widget.createWidget("ColorPalette", {});
242
		this._dropdown.addChild(this._colorpalette);
244
		this._dropdown.addChild(this._colorpalette);
243
		this.disableSelection(this._dropdown.domNode);
245
		this.disableSelection(this._dropdown.domNode);
244
		this.disableSelection(this._colorpalette.domNode);
246
		this.disableSelection(this._colorpalette.domNode);
245
		dojo.event.connect(this._colorpalette, "onColorSelect", this, "setColor");
247
		dojo.event.connect(this._colorpalette, "onColorSelect", this, "setColor");
246
		dojo.event.connect(this._dropdown, "open", this, "latchToolbarItem");
248
		dojo.event.connect(this._dropdown, "open", this, "latchToolbarItem");
247
		dojo.event.connect(this._dropdown, "close", this, "enableToolbarItem");
249
		dojo.event.connect(this._dropdown, "close", this, "enableToolbarItem");
248
	}
250
	}
249
}, setColor:function (color) {
251
}, setColor:function (color) {
250
	this._dropdown.close();
252
	this._dropdown.close();
251
	var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
253
	var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
252
	if (curInst) {
254
	if (curInst) {
253
		var _command = curInst.getCommand(this._name);
255
		var _command = curInst.getCommand(this._name);
254
		if (_command) {
256
		if (_command) {
255
			_command.execute(color);
257
			_command.execute(color);
256
		}
258
		}
257
	}
259
	}
258
}});
260
}});
259
dojo.declare("dojo.widget.Editor2ToolbarFormatBlockPlainSelect", dojo.widget.Editor2ToolbarButton, {create:function (node, toolbar) {
261
dojo.declare("dojo.widget.Editor2ToolbarFormatBlockPlainSelect", dojo.widget.Editor2ToolbarButton, {create:function (node, toolbar) {
260
	this._domNode = node;
262
	this._domNode = node;
261
	this._parentToolbar = toolbar;
263
	this._parentToolbar = toolbar;
262
	this._domNode = node;
264
	this._domNode = node;
263
	this.disableSelection(this._domNode);
265
	this.disableSelection(this._domNode);
264
	dojo.event.connect(this._domNode, "onchange", this, "onChange");
266
	dojo.event.connect(this._domNode, "onchange", this, "onChange");
265
}, destroy:function () {
267
}, destroy:function () {
266
	this._domNode = null;
268
	this._domNode = null;
267
}, onChange:function () {
269
}, onChange:function () {
268
	if (this._parentToolbar.checkAvailability()) {
270
	if (this._parentToolbar.checkAvailability()) {
269
		var sv = this._domNode.value.toLowerCase();
271
		var sv = this._domNode.value.toLowerCase();
270
		var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
272
		var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
271
		if (curInst) {
273
		if (curInst) {
272
			var _command = curInst.getCommand(this._name);
274
			var _command = curInst.getCommand(this._name);
273
			if (_command) {
275
			if (_command) {
274
				_command.execute(sv);
276
				_command.execute(sv);
275
			}
277
			}
276
		}
278
		}
277
	}
279
	}
278
}, refreshState:function () {
280
}, refreshState:function () {
279
	if (this._domNode) {
281
	if (this._domNode) {
280
		dojo.widget.Editor2ToolbarFormatBlockPlainSelect.superclass.refreshState.call(this);
282
		dojo.widget.Editor2ToolbarFormatBlockPlainSelect.superclass.refreshState.call(this);
281
		var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
283
		var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
282
		if (curInst) {
284
		if (curInst) {
283
			var _command = curInst.getCommand(this._name);
285
			var _command = curInst.getCommand(this._name);
284
			if (_command) {
286
			if (_command) {
285
				var format = _command.getValue();
287
				var format = _command.getValue();
286
				if (!format) {
288
				if (!format) {
287
					format = "";
289
					format = "";
288
				}
290
				}
289
				dojo.lang.forEach(this._domNode.options, function (item) {
291
				dojo.lang.forEach(this._domNode.options, function (item) {
290
					if (item.value.toLowerCase() == format.toLowerCase()) {
292
					if (item.value.toLowerCase() == format.toLowerCase()) {
291
						item.selected = true;
293
						item.selected = true;
292
					}
294
					}
293
				});
295
				});
294
			}
296
			}
295
		}
297
		}
296
	}
298
	}
297
}});
299
}});
298
dojo.declare("dojo.widget.Editor2ToolbarComboItem", dojo.widget.Editor2ToolbarDropDownButton, {href:null, create:function (node, toolbar) {
300
dojo.declare("dojo.widget.Editor2ToolbarComboItem", dojo.widget.Editor2ToolbarDropDownButton, {href:null, create:function (node, toolbar) {
299
	dojo.widget.Editor2ToolbarComboItem.superclass.create.apply(this, arguments);
301
	dojo.widget.Editor2ToolbarComboItem.superclass.create.apply(this, arguments);
300
	if (!this._contentPane) {
302
	if (!this._contentPane) {
301
		dojo.require("dojo.widget.ContentPane");
303
		dojo.require("dojo.widget.ContentPane");
302
		this._contentPane = dojo.widget.createWidget("ContentPane", {preload:"true"});
304
		this._contentPane = dojo.widget.createWidget("ContentPane", {preload:"true"});
303
		this._contentPane.addOnLoad(this, "setup");
305
		this._contentPane.addOnLoad(this, "setup");
304
		this._contentPane.setUrl(this.href);
306
		this._contentPane.setUrl(this.href);
305
	}
307
	}
306
}, onMouseOver:function (e) {
308
}, onMouseOver:function (e) {
307
	if (this._lastState != dojo.widget.Editor2Manager.commandState.Disabled) {
309
	if (this._lastState != dojo.widget.Editor2Manager.commandState.Disabled) {
308
		dojo.html.addClass(e.currentTarget, this._parentToolbar.ToolbarHighlightedSelectStyle);
310
		dojo.html.addClass(e.currentTarget, this._parentToolbar.ToolbarHighlightedSelectStyle);
309
	}
311
	}
310
}, onMouseOut:function (e) {
312
}, onMouseOut:function (e) {
311
	dojo.html.removeClass(e.currentTarget, this._parentToolbar.ToolbarHighlightedSelectStyle);
313
	dojo.html.removeClass(e.currentTarget, this._parentToolbar.ToolbarHighlightedSelectStyle);
312
}, onDropDownShown:function () {
314
}, onDropDownShown:function () {
313
	if (!this._dropdown.__addedContentPage) {
315
	if (!this._dropdown.__addedContentPage) {
314
		this._dropdown.addChild(this._contentPane);
316
		this._dropdown.addChild(this._contentPane);
315
		this._dropdown.__addedContentPage = true;
317
		this._dropdown.__addedContentPage = true;
316
	}
318
	}
317
}, setup:function () {
319
}, setup:function () {
318
}, onChange:function (e) {
320
}, onChange:function (e) {
319
	if (this._parentToolbar.checkAvailability()) {
321
	if (this._parentToolbar.checkAvailability()) {
320
		var name = e.currentTarget.getAttribute("dropDownItemName");
322
		var name = e.currentTarget.getAttribute("dropDownItemName");
321
		var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
323
		var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
322
		if (curInst) {
324
		if (curInst) {
323
			var _command = curInst.getCommand(this._name);
325
			var _command = curInst.getCommand(this._name);
324
			if (_command) {
326
			if (_command) {
325
				_command.execute(name);
327
				_command.execute(name);
326
			}
328
			}
327
		}
329
		}
328
	}
330
	}
329
	this._dropdown.close();
331
	this._dropdown.close();
330
}, onMouseOverItem:function (e) {
332
}, onMouseOverItem:function (e) {
331
	dojo.html.addClass(e.currentTarget, this._parentToolbar.ToolbarHighlightedSelectItemStyle);
333
	dojo.html.addClass(e.currentTarget, this._parentToolbar.ToolbarHighlightedSelectItemStyle);
332
}, onMouseOutItem:function (e) {
334
}, onMouseOutItem:function (e) {
333
	dojo.html.removeClass(e.currentTarget, this._parentToolbar.ToolbarHighlightedSelectItemStyle);
335
	dojo.html.removeClass(e.currentTarget, this._parentToolbar.ToolbarHighlightedSelectItemStyle);
334
}});
336
}});
335
dojo.declare("dojo.widget.Editor2ToolbarFormatBlockSelect", dojo.widget.Editor2ToolbarComboItem, {href:dojo.uri.moduleUri("dojo.widget", "templates/Editor2/EditorToolbar_FormatBlock.html"), setup:function () {
337
dojo.declare("dojo.widget.Editor2ToolbarFormatBlockSelect", dojo.widget.Editor2ToolbarComboItem, {href:dojo.uri.moduleUri("dojo.widget", "templates/Editor2/EditorToolbar_FormatBlock.html"), setup:function () {
336
	dojo.widget.Editor2ToolbarFormatBlockSelect.superclass.setup.call(this);
338
	dojo.widget.Editor2ToolbarFormatBlockSelect.superclass.setup.call(this);
337
	var nodes = this._contentPane.domNode.all || this._contentPane.domNode.getElementsByTagName("*");
339
	var nodes = this._contentPane.domNode.all || this._contentPane.domNode.getElementsByTagName("*");
338
	this._blockNames = {};
340
	this._blockNames = {};
339
	this._blockDisplayNames = {};
341
	this._blockDisplayNames = {};
340
	for (var x = 0; x < nodes.length; x++) {
342
	for (var x = 0; x < nodes.length; x++) {
341
		var node = nodes[x];
343
		var node = nodes[x];
342
		dojo.html.disableSelection(node);
344
		dojo.html.disableSelection(node);
343
		var name = node.getAttribute("dropDownItemName");
345
		var name = node.getAttribute("dropDownItemName");
344
		if (name) {
346
		if (name) {
345
			this._blockNames[name] = node;
347
			this._blockNames[name] = node;
346
			var childrennodes = node.getElementsByTagName(name);
348
			var childrennodes = node.getElementsByTagName(name);
347
			this._blockDisplayNames[name] = childrennodes[childrennodes.length - 1].innerHTML;
349
			this._blockDisplayNames[name] = childrennodes[childrennodes.length - 1].innerHTML;
348
		}
350
		}
349
	}
351
	}
350
	for (var name in this._blockNames) {
352
	for (var name in this._blockNames) {
351
		dojo.event.connect(this._blockNames[name], "onclick", this, "onChange");
353
		dojo.event.connect(this._blockNames[name], "onclick", this, "onChange");
352
		dojo.event.connect(this._blockNames[name], "onmouseover", this, "onMouseOverItem");
354
		dojo.event.connect(this._blockNames[name], "onmouseover", this, "onMouseOverItem");
353
		dojo.event.connect(this._blockNames[name], "onmouseout", this, "onMouseOutItem");
355
		dojo.event.connect(this._blockNames[name], "onmouseout", this, "onMouseOutItem");
354
	}
356
	}
355
}, onDropDownDestroy:function () {
357
}, onDropDownDestroy:function () {
356
	if (this._blockNames) {
358
	if (this._blockNames) {
357
		for (var name in this._blockNames) {
359
		for (var name in this._blockNames) {
358
			delete this._blockNames[name];
360
			delete this._blockNames[name];
359
			delete this._blockDisplayNames[name];
361
			delete this._blockDisplayNames[name];
360
		}
362
		}
361
	}
363
	}
362
}, refreshState:function () {
364
}, refreshState:function () {
363
	dojo.widget.Editor2ToolbarFormatBlockSelect.superclass.refreshState.call(this);
365
	dojo.widget.Editor2ToolbarFormatBlockSelect.superclass.refreshState.call(this);
364
	if (this._lastState != dojo.widget.Editor2Manager.commandState.Disabled) {
366
	if (this._lastState != dojo.widget.Editor2Manager.commandState.Disabled) {
365
		var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
367
		var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
366
		if (curInst) {
368
		if (curInst) {
367
			var _command = curInst.getCommand(this._name);
369
			var _command = curInst.getCommand(this._name);
368
			if (_command) {
370
			if (_command) {
369
				var format = _command.getValue();
371
				var format = _command.getValue();
370
				if (format == this._lastSelectedFormat && this._blockDisplayNames) {
372
				if (format == this._lastSelectedFormat && this._blockDisplayNames) {
371
					return this._lastState;
373
					return this._lastState;
372
				}
374
				}
373
				this._lastSelectedFormat = format;
375
				this._lastSelectedFormat = format;
374
				var label = this._domNode.getElementsByTagName("label")[0];
376
				var label = this._domNode.getElementsByTagName("label")[0];
375
				var isSet = false;
377
				var isSet = false;
376
				if (this._blockDisplayNames) {
378
				if (this._blockDisplayNames) {
377
					for (var name in this._blockDisplayNames) {
379
					for (var name in this._blockDisplayNames) {
378
						if (name == format) {
380
						if (name == format) {
379
							label.innerHTML = this._blockDisplayNames[name];
381
							label.innerHTML = this._blockDisplayNames[name];
380
							isSet = true;
382
							isSet = true;
381
							break;
383
							break;
382
						}
384
						}
383
					}
385
					}
384
					if (!isSet) {
386
					if (!isSet) {
385
						label.innerHTML = "&nbsp;";
387
						label.innerHTML = "&nbsp;";
386
					}
388
					}
387
				}
389
				}
388
			}
390
			}
389
		}
391
		}
390
	}
392
	}
391
	return this._lastState;
393
	return this._lastState;
392
}});
394
}});
393
dojo.declare("dojo.widget.Editor2ToolbarFontSizeSelect", dojo.widget.Editor2ToolbarComboItem, {href:dojo.uri.moduleUri("dojo.widget", "templates/Editor2/EditorToolbar_FontSize.html"), setup:function () {
395
dojo.declare("dojo.widget.Editor2ToolbarFontSizeSelect", dojo.widget.Editor2ToolbarComboItem, {href:dojo.uri.moduleUri("dojo.widget", "templates/Editor2/EditorToolbar_FontSize.html"), setup:function () {
394
	dojo.widget.Editor2ToolbarFormatBlockSelect.superclass.setup.call(this);
396
	dojo.widget.Editor2ToolbarFormatBlockSelect.superclass.setup.call(this);
395
	var nodes = this._contentPane.domNode.all || this._contentPane.domNode.getElementsByTagName("*");
397
	var nodes = this._contentPane.domNode.all || this._contentPane.domNode.getElementsByTagName("*");
396
	this._fontsizes = {};
398
	this._fontsizes = {};
397
	this._fontSizeDisplayNames = {};
399
	this._fontSizeDisplayNames = {};
398
	for (var x = 0; x < nodes.length; x++) {
400
	for (var x = 0; x < nodes.length; x++) {
399
		var node = nodes[x];
401
		var node = nodes[x];
400
		dojo.html.disableSelection(node);
402
		dojo.html.disableSelection(node);
401
		var name = node.getAttribute("dropDownItemName");
403
		var name = node.getAttribute("dropDownItemName");
402
		if (name) {
404
		if (name) {
403
			this._fontsizes[name] = node;
405
			this._fontsizes[name] = node;
404
			this._fontSizeDisplayNames[name] = node.getElementsByTagName("font")[0].innerHTML;
406
			this._fontSizeDisplayNames[name] = node.getElementsByTagName("font")[0].innerHTML;
405
		}
407
		}
406
	}
408
	}
407
	for (var name in this._fontsizes) {
409
	for (var name in this._fontsizes) {
408
		dojo.event.connect(this._fontsizes[name], "onclick", this, "onChange");
410
		dojo.event.connect(this._fontsizes[name], "onclick", this, "onChange");
409
		dojo.event.connect(this._fontsizes[name], "onmouseover", this, "onMouseOverItem");
411
		dojo.event.connect(this._fontsizes[name], "onmouseover", this, "onMouseOverItem");
410
		dojo.event.connect(this._fontsizes[name], "onmouseout", this, "onMouseOutItem");
412
		dojo.event.connect(this._fontsizes[name], "onmouseout", this, "onMouseOutItem");
411
	}
413
	}
412
}, onDropDownDestroy:function () {
414
}, onDropDownDestroy:function () {
413
	if (this._fontsizes) {
415
	if (this._fontsizes) {
414
		for (var name in this._fontsizes) {
416
		for (var name in this._fontsizes) {
415
			delete this._fontsizes[name];
417
			delete this._fontsizes[name];
416
			delete this._fontSizeDisplayNames[name];
418
			delete this._fontSizeDisplayNames[name];
417
		}
419
		}
418
	}
420
	}
419
}, refreshState:function () {
421
}, refreshState:function () {
420
	dojo.widget.Editor2ToolbarFormatBlockSelect.superclass.refreshState.call(this);
422
	dojo.widget.Editor2ToolbarFormatBlockSelect.superclass.refreshState.call(this);
421
	if (this._lastState != dojo.widget.Editor2Manager.commandState.Disabled) {
423
	if (this._lastState != dojo.widget.Editor2Manager.commandState.Disabled) {
422
		var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
424
		var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
423
		if (curInst) {
425
		if (curInst) {
424
			var _command = curInst.getCommand(this._name);
426
			var _command = curInst.getCommand(this._name);
425
			if (_command) {
427
			if (_command) {
426
				var size = _command.getValue();
428
				var size = _command.getValue();
427
				if (size == this._lastSelectedSize && this._fontSizeDisplayNames) {
429
				if (size == this._lastSelectedSize && this._fontSizeDisplayNames) {
428
					return this._lastState;
430
					return this._lastState;
429
				}
431
				}
430
				this._lastSelectedSize = size;
432
				this._lastSelectedSize = size;
431
				var label = this._domNode.getElementsByTagName("label")[0];
433
				var label = this._domNode.getElementsByTagName("label")[0];
432
				var isSet = false;
434
				var isSet = false;
433
				if (this._fontSizeDisplayNames) {
435
				if (this._fontSizeDisplayNames) {
434
					for (var name in this._fontSizeDisplayNames) {
436
					for (var name in this._fontSizeDisplayNames) {
435
						if (name == size) {
437
						if (name == size) {
436
							label.innerHTML = this._fontSizeDisplayNames[name];
438
							label.innerHTML = this._fontSizeDisplayNames[name];
437
							isSet = true;
439
							isSet = true;
438
							break;
440
							break;
439
						}
441
						}
440
					}
442
					}
441
					if (!isSet) {
443
					if (!isSet) {
442
						label.innerHTML = "&nbsp;";
444
						label.innerHTML = "&nbsp;";
443
					}
445
					}
444
				}
446
				}
445
			}
447
			}
446
		}
448
		}
447
	}
449
	}
448
	return this._lastState;
450
	return this._lastState;
449
}});
451
}});
450
dojo.declare("dojo.widget.Editor2ToolbarFontNameSelect", dojo.widget.Editor2ToolbarFontSizeSelect, {href:dojo.uri.moduleUri("dojo.widget", "templates/Editor2/EditorToolbar_FontName.html")});
452
dojo.declare("dojo.widget.Editor2ToolbarFontNameSelect", dojo.widget.Editor2ToolbarFontSizeSelect, {href:dojo.uri.moduleUri("dojo.widget", "templates/Editor2/EditorToolbar_FontName.html")});
451
dojo.widget.defineWidget("dojo.widget.Editor2Toolbar", dojo.widget.HtmlWidget, function () {
453
dojo.widget.defineWidget("dojo.widget.Editor2Toolbar", dojo.widget.HtmlWidget, function () {
452
	dojo.event.connect(this, "fillInTemplate", dojo.lang.hitch(this, function () {
454
	dojo.event.connect(this, "fillInTemplate", dojo.lang.hitch(this, function () {
453
		if (dojo.render.html.ie) {
455
		if (dojo.render.html.ie) {
454
			this.domNode.style.zoom = 1;
456
			this.domNode.style.zoom = 1;
455
		}
457
		}
456
	}));
458
	}));
457
}, {templateString:"<div dojoAttachPoint=\"domNode\" class=\"EditorToolbarDomNode\" unselectable=\"on\">\n\t<table cellpadding=\"3\" cellspacing=\"0\" border=\"0\">\n\t\t<!--\n\t\t\tour toolbar should look something like:\n\n\t\t\t+=======+=======+=======+=============================================+\n\t\t\t| w   w | style | copy  | bo | it | un | le | ce | ri |\n\t\t\t| w w w | style |=======|==============|==============|\n\t\t\t|  w w  | style | paste |  undo | redo | change style |\n\t\t\t+=======+=======+=======+=============================================+\n\t\t-->\n\t\t<tbody>\n\t\t\t<tr valign=\"top\">\n\t\t\t\t<td rowspan=\"2\">\n\t\t\t\t\t<div class=\"bigIcon\" dojoAttachPoint=\"wikiWordButton\"\n\t\t\t\t\t\tdojoOnClick=\"wikiWordClick; buttonClick;\">\n\t\t\t\t\t\t<span style=\"font-size: 30px; margin-left: 5px;\">\n\t\t\t\t\t\t\tW\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t</td>\n\t\t\t\t<td rowspan=\"2\">\n\t\t\t\t\t<div class=\"bigIcon\" dojoAttachPoint=\"styleDropdownButton\"\n\t\t\t\t\t\tdojoOnClick=\"styleDropdownClick; buttonClick;\">\n\t\t\t\t\t\t<span unselectable=\"on\"\n\t\t\t\t\t\t\tstyle=\"font-size: 30px; margin-left: 5px;\">\n\t\t\t\t\t\t\tS\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"StyleDropdownContainer\" style=\"display: none;\"\n\t\t\t\t\t\tdojoAttachPoint=\"styleDropdownContainer\">\n\t\t\t\t\t\t<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\"\n\t\t\t\t\t\t\theight=\"100%\" width=\"100%\">\n\t\t\t\t\t\t\t<tr valign=\"top\">\n\t\t\t\t\t\t\t\t<td rowspan=\"2\">\n\t\t\t\t\t\t\t\t\t<div style=\"height: 245px; overflow: auto;\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"normalTextClick\">normal</div>\n\t\t\t\t\t\t\t\t\t\t<h1 class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"h1TextClick\">Heading 1</h1>\n\t\t\t\t\t\t\t\t\t\t<h2 class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"h2TextClick\">Heading 2</h2>\n\t\t\t\t\t\t\t\t\t\t<h3 class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"h3TextClick\">Heading 3</h3>\n\t\t\t\t\t\t\t\t\t\t<h4 class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"h4TextClick\">Heading 4</h4>\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"blahTextClick\">blah</div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"blahTextClick\">blah</div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"blahTextClick\">blah</div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\">blah</div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\">blah</div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\">blah</div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\">blah</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t\t<!--\n\t\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t\t<span class=\"iconContainer\" dojoOnClick=\"buttonClick;\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"icon justifyleft\" \n\t\t\t\t\t\t\t\t\t\t\tstyle=\"float: left;\">&nbsp;</span>\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t<span class=\"iconContainer\" dojoOnClick=\"buttonClick;\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"icon justifycenter\" \n\t\t\t\t\t\t\t\t\t\t\tstyle=\"float: left;\">&nbsp;</span>\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t<span class=\"iconContainer\" dojoOnClick=\"buttonClick;\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"icon justifyright\" \n\t\t\t\t\t\t\t\t\t\t\tstyle=\"float: left;\">&nbsp;</span>\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t<span class=\"iconContainer\" dojoOnClick=\"buttonClick;\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"icon justifyfull\" \n\t\t\t\t\t\t\t\t\t\t\tstyle=\"float: left;\">&nbsp;</span>\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t\t-->\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t<tr valign=\"top\">\n\t\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t\tthud\n\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t</table>\n\t\t\t\t\t</div>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<!-- copy -->\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"copyButton\"\n\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\tdojoOnClick=\"copyClick; buttonClick;\">\n\t\t\t\t\t\t<span class=\"icon copy\" \n\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\tstyle=\"float: left;\">&nbsp;</span> copy\n\t\t\t\t\t</span>\n\t\t\t\t\t<!-- \"droppable\" options -->\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"boldButton\"\n\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\tdojoOnClick=\"boldClick; buttonClick;\">\n\t\t\t\t\t\t<span class=\"icon bold\" unselectable=\"on\">&nbsp;</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"italicButton\"\n\t\t\t\t\t\tdojoOnClick=\"italicClick; buttonClick;\">\n\t\t\t\t\t\t<span class=\"icon italic\" unselectable=\"on\">&nbsp;</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"underlineButton\"\n\t\t\t\t\t\tdojoOnClick=\"underlineClick; buttonClick;\">\n\t\t\t\t\t\t<span class=\"icon underline\" unselectable=\"on\">&nbsp;</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"leftButton\"\n\t\t\t\t\t\tdojoOnClick=\"leftClick; buttonClick;\">\n\t\t\t\t\t\t<span class=\"icon justifyleft\" unselectable=\"on\">&nbsp;</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"fullButton\"\n\t\t\t\t\t\tdojoOnClick=\"fullClick; buttonClick;\">\n\t\t\t\t\t\t<span class=\"icon justifyfull\" unselectable=\"on\">&nbsp;</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"rightButton\"\n\t\t\t\t\t\tdojoOnClick=\"rightClick; buttonClick;\">\n\t\t\t\t\t\t<span class=\"icon justifyright\" unselectable=\"on\">&nbsp;</span>\n\t\t\t\t\t</span>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td>\n\t\t\t\t\t<!-- paste -->\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"pasteButton\"\n\t\t\t\t\t\tdojoOnClick=\"pasteClick; buttonClick;\" unselectable=\"on\">\n\t\t\t\t\t\t<span class=\"icon paste\" style=\"float: left;\" unselectable=\"on\">&nbsp;</span> paste\n\t\t\t\t\t</span>\n\t\t\t\t\t<!-- \"droppable\" options -->\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"undoButton\"\n\t\t\t\t\t\tdojoOnClick=\"undoClick; buttonClick;\" unselectable=\"on\">\n\t\t\t\t\t\t<span class=\"icon undo\" style=\"float: left;\" unselectable=\"on\">&nbsp;</span> undo\n\t\t\t\t\t</span>\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"redoButton\"\n\t\t\t\t\t\tdojoOnClick=\"redoClick; buttonClick;\" unselectable=\"on\">\n\t\t\t\t\t\t<span class=\"icon redo\" style=\"float: left;\" unselectable=\"on\">&nbsp;</span> redo\n\t\t\t\t\t</span>\n\t\t\t\t</td>\t\n\t\t\t</tr>\n\t\t</tbody>\n\t</table>\n</div>\n", templateCssString:".StyleDropdownContainer {\n\tposition: absolute;\n\tz-index: 1000;\n\toverflow: auto;\n\tcursor: default;\n\twidth: 250px;\n\theight: 250px;\n\tbackground-color: white;\n\tborder: 1px solid black;\n}\n\n.ColorDropdownContainer {\n\tposition: absolute;\n\tz-index: 1000;\n\toverflow: auto;\n\tcursor: default;\n\twidth: 250px;\n\theight: 150px;\n\tbackground-color: white;\n\tborder: 1px solid black;\n}\n\n.EditorToolbarDomNode {\n\tbackground-image: url(buttons/bg-fade.png);\n\tbackground-repeat: repeat-x;\n\tbackground-position: 0px -50px;\n}\n\n.EditorToolbarSmallBg {\n\tbackground-image: url(images/toolbar-bg.gif);\n\tbackground-repeat: repeat-x;\n\tbackground-position: 0px 0px;\n}\n\n/*\nbody {\n\tbackground:url(images/blank.gif) fixed;\n}*/\n\n.IEFixedToolbar {\n\tposition:absolute;\n\t/* top:0; */\n\ttop: expression(eval((document.documentElement||document.body).scrollTop));\n}\n\ndiv.bigIcon {\n\twidth: 40px;\n\theight: 40px; \n\t/* background-color: white; */\n\t/* border: 1px solid #a6a7a3; */\n\tfont-family: Verdana, Trebuchet, Tahoma, Arial;\n}\n\n.iconContainer {\n\tfont-family: Verdana, Trebuchet, Tahoma, Arial;\n\tfont-size: 13px;\n\tfloat: left;\n\theight: 18px;\n\tdisplay: block;\n\t/* background-color: white; */\n\tcursor: pointer;\n\tpadding: 1px 4px 1px 1px; /* almost the same as a transparent border */\n\tborder: 0px;\n}\n\n.dojoE2TBIcon {\n\tdisplay: block;\n\ttext-align: center;\n\tmin-width: 18px;\n\twidth: 18px;\n\theight: 18px;\n\t/* background-color: #a6a7a3; */\n\tbackground-repeat: no-repeat;\n\tbackground-image: url(buttons/aggregate.gif);\n}\n\n\n.dojoE2TBIcon[class~=dojoE2TBIcon] {\n}\n\n.ToolbarButtonLatched {\n	border: #316ac5 1px solid; !important;\n	padding: 0px 3px 0px 0px; !important; /* make room for border */\n	background-color: #c1d2ee;\n}\n\n.ToolbarButtonHighlighted {\n	border: #316ac5 1px solid; !important;\n	padding: 0px 3px 0px 0px; !important; /* make room for border */\n	background-color: #dff1ff;\n}\n\n.ToolbarButtonDisabled{\n	filter: gray() alpha(opacity=30); /* IE */\n	opacity: 0.30; /* Safari, Opera and Mozilla */\n}\n\n.headingContainer {\n\twidth: 150px;\n\theight: 30px;\n\tmargin: 0px;\n\t/* padding-left: 5px; */\n\toverflow: hidden;\n\tline-height: 25px;\n\tborder-bottom: 1px solid black;\n\tborder-top: 1px solid white;\n}\n\n.EditorToolbarDomNode select {\n\tfont-size: 14px;\n}\n \n.dojoE2TBIcon_Sep { width: 5px; min-width: 5px; max-width: 5px; background-position: 0px 0px}\n.dojoE2TBIcon_Backcolor { background-position: -18px 0px}\n.dojoE2TBIcon_Bold { background-position: -36px 0px}\n.dojoE2TBIcon_Cancel { background-position: -54px 0px}\n.dojoE2TBIcon_Copy { background-position: -72px 0px}\n.dojoE2TBIcon_Link { background-position: -90px 0px}\n.dojoE2TBIcon_Cut { background-position: -108px 0px}\n.dojoE2TBIcon_Delete { background-position: -126px 0px}\n.dojoE2TBIcon_TextColor { background-position: -144px 0px}\n.dojoE2TBIcon_BackgroundColor { background-position: -162px 0px}\n.dojoE2TBIcon_Indent { background-position: -180px 0px}\n.dojoE2TBIcon_HorizontalLine { background-position: -198px 0px}\n.dojoE2TBIcon_Image { background-position: -216px 0px}\n.dojoE2TBIcon_NumberedList { background-position: -234px 0px}\n.dojoE2TBIcon_Table { background-position: -252px 0px}\n.dojoE2TBIcon_BulletedList { background-position: -270px 0px}\n.dojoE2TBIcon_Italic { background-position: -288px 0px}\n.dojoE2TBIcon_CenterJustify { background-position: -306px 0px}\n.dojoE2TBIcon_BlockJustify { background-position: -324px 0px}\n.dojoE2TBIcon_LeftJustify { background-position: -342px 0px}\n.dojoE2TBIcon_RightJustify { background-position: -360px 0px}\n.dojoE2TBIcon_left_to_right { background-position: -378px 0px}\n.dojoE2TBIcon_list_bullet_indent { background-position: -396px 0px}\n.dojoE2TBIcon_list_bullet_outdent { background-position: -414px 0px}\n.dojoE2TBIcon_list_num_indent { background-position: -432px 0px}\n.dojoE2TBIcon_list_num_outdent { background-position: -450px 0px}\n.dojoE2TBIcon_Outdent { background-position: -468px 0px}\n.dojoE2TBIcon_Paste { background-position: -486px 0px}\n.dojoE2TBIcon_Redo { background-position: -504px 0px}\ndojoE2TBIcon_RemoveFormat { background-position: -522px 0px}\n.dojoE2TBIcon_right_to_left { background-position: -540px 0px}\n.dojoE2TBIcon_Save { background-position: -558px 0px}\n.dojoE2TBIcon_Space { background-position: -576px 0px}\n.dojoE2TBIcon_StrikeThrough { background-position: -594px 0px}\n.dojoE2TBIcon_Subscript { background-position: -612px 0px}\n.dojoE2TBIcon_Superscript { background-position: -630px 0px}\n.dojoE2TBIcon_Underline { background-position: -648px 0px}\n.dojoE2TBIcon_Undo { background-position: -666px 0px}\n.dojoE2TBIcon_WikiWord { background-position: -684px 0px}\n\n", templateCssPath:dojo.uri.moduleUri("dojo.widget", "templates/EditorToolbar.css"), ToolbarLatchedItemStyle:"ToolbarButtonLatched", ToolbarEnabledItemStyle:"ToolbarButtonEnabled", ToolbarDisabledItemStyle:"ToolbarButtonDisabled", ToolbarHighlightedItemStyle:"ToolbarButtonHighlighted", ToolbarHighlightedSelectStyle:"ToolbarSelectHighlighted", ToolbarHighlightedSelectItemStyle:"ToolbarSelectHighlightedItem", postCreate:function () {
459
}, {templateString:"<div dojoAttachPoint=\"domNode\" class=\"EditorToolbarDomNode\" unselectable=\"on\">\n\t<table cellpadding=\"3\" cellspacing=\"0\" border=\"0\">\n\t\t<!--\n\t\t\tour toolbar should look something like:\n\n\t\t\t+=======+=======+=======+=============================================+\n\t\t\t| w   w | style | copy  | bo | it | un | le | ce | ri |\n\t\t\t| w w w | style |=======|==============|==============|\n\t\t\t|  w w  | style | paste |  undo | redo | change style |\n\t\t\t+=======+=======+=======+=============================================+\n\t\t-->\n\t\t<tbody>\n\t\t\t<tr valign=\"top\">\n\t\t\t\t<td rowspan=\"2\">\n\t\t\t\t\t<div class=\"bigIcon\" dojoAttachPoint=\"wikiWordButton\"\n\t\t\t\t\t\tdojoOnClick=\"wikiWordClick; buttonClick;\">\n\t\t\t\t\t\t<span style=\"font-size: 30px; margin-left: 5px;\">\n\t\t\t\t\t\t\tW\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t</td>\n\t\t\t\t<td rowspan=\"2\">\n\t\t\t\t\t<div class=\"bigIcon\" dojoAttachPoint=\"styleDropdownButton\"\n\t\t\t\t\t\tdojoOnClick=\"styleDropdownClick; buttonClick;\">\n\t\t\t\t\t\t<span unselectable=\"on\"\n\t\t\t\t\t\t\tstyle=\"font-size: 30px; margin-left: 5px;\">\n\t\t\t\t\t\t\tS\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"StyleDropdownContainer\" style=\"display: none;\"\n\t\t\t\t\t\tdojoAttachPoint=\"styleDropdownContainer\">\n\t\t\t\t\t\t<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\"\n\t\t\t\t\t\t\theight=\"100%\" width=\"100%\">\n\t\t\t\t\t\t\t<tr valign=\"top\">\n\t\t\t\t\t\t\t\t<td rowspan=\"2\">\n\t\t\t\t\t\t\t\t\t<div style=\"height: 245px; overflow: auto;\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"normalTextClick\">normal</div>\n\t\t\t\t\t\t\t\t\t\t<h1 class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"h1TextClick\">Heading 1</h1>\n\t\t\t\t\t\t\t\t\t\t<h2 class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"h2TextClick\">Heading 2</h2>\n\t\t\t\t\t\t\t\t\t\t<h3 class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"h3TextClick\">Heading 3</h3>\n\t\t\t\t\t\t\t\t\t\t<h4 class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"h4TextClick\">Heading 4</h4>\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"blahTextClick\">blah</div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"blahTextClick\">blah</div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\"\n\t\t\t\t\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\t\t\t\t\tdojoOnClick=\"blahTextClick\">blah</div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\">blah</div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\">blah</div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\">blah</div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"headingContainer\">blah</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t\t<!--\n\t\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t\t<span class=\"iconContainer\" dojoOnClick=\"buttonClick;\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"icon justifyleft\" \n\t\t\t\t\t\t\t\t\t\t\tstyle=\"float: left;\">&nbsp;</span>\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t<span class=\"iconContainer\" dojoOnClick=\"buttonClick;\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"icon justifycenter\" \n\t\t\t\t\t\t\t\t\t\t\tstyle=\"float: left;\">&nbsp;</span>\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t<span class=\"iconContainer\" dojoOnClick=\"buttonClick;\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"icon justifyright\" \n\t\t\t\t\t\t\t\t\t\t\tstyle=\"float: left;\">&nbsp;</span>\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t<span class=\"iconContainer\" dojoOnClick=\"buttonClick;\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"icon justifyfull\" \n\t\t\t\t\t\t\t\t\t\t\tstyle=\"float: left;\">&nbsp;</span>\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t\t-->\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t<tr valign=\"top\">\n\t\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t\tthud\n\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t</table>\n\t\t\t\t\t</div>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<!-- copy -->\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"copyButton\"\n\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\tdojoOnClick=\"copyClick; buttonClick;\">\n\t\t\t\t\t\t<span class=\"icon copy\" \n\t\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\t\tstyle=\"float: left;\">&nbsp;</span> copy\n\t\t\t\t\t</span>\n\t\t\t\t\t<!-- \"droppable\" options -->\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"boldButton\"\n\t\t\t\t\t\tunselectable=\"on\"\n\t\t\t\t\t\tdojoOnClick=\"boldClick; buttonClick;\">\n\t\t\t\t\t\t<span class=\"icon bold\" unselectable=\"on\">&nbsp;</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"italicButton\"\n\t\t\t\t\t\tdojoOnClick=\"italicClick; buttonClick;\">\n\t\t\t\t\t\t<span class=\"icon italic\" unselectable=\"on\">&nbsp;</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"underlineButton\"\n\t\t\t\t\t\tdojoOnClick=\"underlineClick; buttonClick;\">\n\t\t\t\t\t\t<span class=\"icon underline\" unselectable=\"on\">&nbsp;</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"leftButton\"\n\t\t\t\t\t\tdojoOnClick=\"leftClick; buttonClick;\">\n\t\t\t\t\t\t<span class=\"icon justifyleft\" unselectable=\"on\">&nbsp;</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"fullButton\"\n\t\t\t\t\t\tdojoOnClick=\"fullClick; buttonClick;\">\n\t\t\t\t\t\t<span class=\"icon justifyfull\" unselectable=\"on\">&nbsp;</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"rightButton\"\n\t\t\t\t\t\tdojoOnClick=\"rightClick; buttonClick;\">\n\t\t\t\t\t\t<span class=\"icon justifyright\" unselectable=\"on\">&nbsp;</span>\n\t\t\t\t\t</span>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td>\n\t\t\t\t\t<!-- paste -->\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"pasteButton\"\n\t\t\t\t\t\tdojoOnClick=\"pasteClick; buttonClick;\" unselectable=\"on\">\n\t\t\t\t\t\t<span class=\"icon paste\" style=\"float: left;\" unselectable=\"on\">&nbsp;</span> paste\n\t\t\t\t\t</span>\n\t\t\t\t\t<!-- \"droppable\" options -->\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"undoButton\"\n\t\t\t\t\t\tdojoOnClick=\"undoClick; buttonClick;\" unselectable=\"on\">\n\t\t\t\t\t\t<span class=\"icon undo\" style=\"float: left;\" unselectable=\"on\">&nbsp;</span> undo\n\t\t\t\t\t</span>\n\t\t\t\t\t<span class=\"iconContainer\" dojoAttachPoint=\"redoButton\"\n\t\t\t\t\t\tdojoOnClick=\"redoClick; buttonClick;\" unselectable=\"on\">\n\t\t\t\t\t\t<span class=\"icon redo\" style=\"float: left;\" unselectable=\"on\">&nbsp;</span> redo\n\t\t\t\t\t</span>\n\t\t\t\t</td>\t\n\t\t\t</tr>\n\t\t</tbody>\n\t</table>\n</div>\n", templateCssString:".StyleDropdownContainer {\n\tposition: absolute;\n\tz-index: 1000;\n\toverflow: auto;\n\tcursor: default;\n\twidth: 250px;\n\theight: 250px;\n\tbackground-color: white;\n\tborder: 1px solid black;\n}\n\n.ColorDropdownContainer {\n\tposition: absolute;\n\tz-index: 1000;\n\toverflow: auto;\n\tcursor: default;\n\twidth: 250px;\n\theight: 150px;\n\tbackground-color: white;\n\tborder: 1px solid black;\n}\n\n.EditorToolbarDomNode {\n\tbackground-image: url(buttons/bg-fade.png);\n\tbackground-repeat: repeat-x;\n\tbackground-position: 0px -50px;\n}\n\n.EditorToolbarSmallBg {\n\tbackground-image: url(images/toolbar-bg.gif);\n\tbackground-repeat: repeat-x;\n\tbackground-position: 0px 0px;\n}\n\n/*\nbody {\n\tbackground:url(images/blank.gif) fixed;\n}*/\n\n.IEFixedToolbar {\n\tposition:absolute;\n\t/* top:0; */\n\ttop: expression(eval((document.documentElement||document.body).scrollTop));\n}\n\ndiv.bigIcon {\n\twidth: 40px;\n\theight: 40px; \n\t/* background-color: white; */\n\t/* border: 1px solid #a6a7a3; */\n\tfont-family: Verdana, Trebuchet, Tahoma, Arial;\n}\n\n.iconContainer {\n\tfont-family: Verdana, Trebuchet, Tahoma, Arial;\n\tfont-size: 13px;\n\tfloat: left;\n\theight: 18px;\n\tdisplay: block;\n\t/* background-color: white; */\n\tcursor: pointer;\n\tpadding: 1px 4px 1px 1px; /* almost the same as a transparent border */\n\tborder: 0px;\n}\n\n.dojoE2TBIcon {\n\tdisplay: block;\n\ttext-align: center;\n\tmin-width: 18px;\n\twidth: 18px;\n\theight: 18px;\n\t/* background-color: #a6a7a3; */\n\tbackground-repeat: no-repeat;\n\tbackground-image: url(buttons/aggregate.gif);\n}\n\n\n.dojoE2TBIcon[class~=dojoE2TBIcon] {\n}\n\n.ToolbarButtonLatched {\n	border: #316ac5 1px solid; !important;\n	padding: 0px 3px 0px 0px; !important; /* make room for border */\n	background-color: #c1d2ee;\n}\n\n.ToolbarButtonHighlighted {\n	border: #316ac5 1px solid; !important;\n	padding: 0px 3px 0px 0px; !important; /* make room for border */\n	background-color: #dff1ff;\n}\n\n.ToolbarButtonDisabled{\n	filter: gray() alpha(opacity=30); /* IE */\n	opacity: 0.30; /* Safari, Opera and Mozilla */\n}\n\n.headingContainer {\n\twidth: 150px;\n\theight: 30px;\n\tmargin: 0px;\n\t/* padding-left: 5px; */\n\toverflow: hidden;\n\tline-height: 25px;\n\tborder-bottom: 1px solid black;\n\tborder-top: 1px solid white;\n}\n\n.EditorToolbarDomNode select {\n\tfont-size: 14px;\n}\n \n.dojoE2TBIcon_Sep { width: 5px; min-width: 5px; max-width: 5px; background-position: 0px 0px}\n.dojoE2TBIcon_Backcolor { background-position: -18px 0px}\n.dojoE2TBIcon_Bold { background-position: -36px 0px}\n.dojoE2TBIcon_Cancel { background-position: -54px 0px}\n.dojoE2TBIcon_Copy { background-position: -72px 0px}\n.dojoE2TBIcon_Link { background-position: -90px 0px}\n.dojoE2TBIcon_Cut { background-position: -108px 0px}\n.dojoE2TBIcon_Delete { background-position: -126px 0px}\n.dojoE2TBIcon_TextColor { background-position: -144px 0px}\n.dojoE2TBIcon_BackgroundColor { background-position: -162px 0px}\n.dojoE2TBIcon_Indent { background-position: -180px 0px}\n.dojoE2TBIcon_HorizontalLine { background-position: -198px 0px}\n.dojoE2TBIcon_Image { background-position: -216px 0px}\n.dojoE2TBIcon_NumberedList { background-position: -234px 0px}\n.dojoE2TBIcon_Table { background-position: -252px 0px}\n.dojoE2TBIcon_BulletedList { background-position: -270px 0px}\n.dojoE2TBIcon_Italic { background-position: -288px 0px}\n.dojoE2TBIcon_CenterJustify { background-position: -306px 0px}\n.dojoE2TBIcon_BlockJustify { background-position: -324px 0px}\n.dojoE2TBIcon_LeftJustify { background-position: -342px 0px}\n.dojoE2TBIcon_RightJustify { background-position: -360px 0px}\n.dojoE2TBIcon_left_to_right { background-position: -378px 0px}\n.dojoE2TBIcon_list_bullet_indent { background-position: -396px 0px}\n.dojoE2TBIcon_list_bullet_outdent { background-position: -414px 0px}\n.dojoE2TBIcon_list_num_indent { background-position: -432px 0px}\n.dojoE2TBIcon_list_num_outdent { background-position: -450px 0px}\n.dojoE2TBIcon_Outdent { background-position: -468px 0px}\n.dojoE2TBIcon_Paste { background-position: -486px 0px}\n.dojoE2TBIcon_Redo { background-position: -504px 0px}\ndojoE2TBIcon_RemoveFormat { background-position: -522px 0px}\n.dojoE2TBIcon_right_to_left { background-position: -540px 0px}\n.dojoE2TBIcon_Save { background-position: -558px 0px}\n.dojoE2TBIcon_Space { background-position: -576px 0px}\n.dojoE2TBIcon_StrikeThrough { background-position: -594px 0px}\n.dojoE2TBIcon_Subscript { background-position: -612px 0px}\n.dojoE2TBIcon_Superscript { background-position: -630px 0px}\n.dojoE2TBIcon_Underline { background-position: -648px 0px}\n.dojoE2TBIcon_Undo { background-position: -666px 0px}\n.dojoE2TBIcon_WikiWord { background-position: -684px 0px}\n\n", templateCssPath:dojo.uri.moduleUri("dojo.widget", "templates/EditorToolbar.css"), ToolbarLatchedItemStyle:"ToolbarButtonLatched", ToolbarEnabledItemStyle:"ToolbarButtonEnabled", ToolbarDisabledItemStyle:"ToolbarButtonDisabled", ToolbarHighlightedItemStyle:"ToolbarButtonHighlighted", ToolbarHighlightedSelectStyle:"ToolbarSelectHighlighted", ToolbarHighlightedSelectItemStyle:"ToolbarSelectHighlightedItem", postCreate:function () {
458
	var nodes = dojo.html.getElementsByClass("dojoEditorToolbarItem", this.domNode);
460
	var nodes = dojo.html.getElementsByClass("dojoEditorToolbarItem", this.domNode);
459
	this.items = {};
461
	this.items = {};
460
	for (var x = 0; x < nodes.length; x++) {
462
	for (var x = 0; x < nodes.length; x++) {
461
		var node = nodes[x];
463
		var node = nodes[x];
462
		var itemname = node.getAttribute("dojoETItemName");
464
		var itemname = node.getAttribute("dojoETItemName");
463
		if (itemname) {
465
		if (itemname) {
464
			var item = dojo.widget.Editor2ToolbarItemManager.getToolbarItem(itemname);
466
			var item = dojo.widget.Editor2ToolbarItemManager.getToolbarItem(itemname);
465
			if (item) {
467
			if (item) {
466
				item.create(node, this);
468
				item.create(node, this);
467
				this.items[itemname.toLowerCase()] = item;
469
				this.items[itemname.toLowerCase()] = item;
468
			} else {
470
			} else {
469
				node.style.display = "none";
471
				node.style.display = "none";
470
			}
472
			}
471
		}
473
		}
472
	}
474
	}
473
}, update:function () {
475
}, update:function () {
474
	for (var cmd in this.items) {
476
	for (var cmd in this.items) {
475
		this.items[cmd].refreshState();
477
		this.items[cmd].refreshState();
476
	}
478
	}
477
}, shareGroup:"", checkAvailability:function () {
479
}, shareGroup:"", checkAvailability:function () {
478
	if (!this.shareGroup) {
480
	if (!this.shareGroup) {
479
		this.parent.focus();
481
		this.parent.focus();
480
		return true;
482
		return true;
481
	}
483
	}
482
	var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
484
	var curInst = dojo.widget.Editor2Manager.getCurrentInstance();
483
	if (this.shareGroup == curInst.toolbarGroup) {
485
	if (this.shareGroup == curInst.toolbarGroup) {
484
		return true;
486
		return true;
485
	}
487
	}
486
	return false;
488
	return false;
487
}, destroy:function () {
489
}, destroy:function () {
488
	for (var it in this.items) {
490
	for (var it in this.items) {
489
		this.items[it].destroy();
491
		this.items[it].destroy();
490
		delete this.items[it];
492
		delete this.items[it];
491
	}
493
	}
492
	dojo.widget.Editor2Toolbar.superclass.destroy.call(this);
494
	dojo.widget.Editor2Toolbar.superclass.destroy.call(this);
493
}});
495
}});
494
 
496