!import
1 /* ***** BEGIN LICENSE BLOCK *****
2 * Version: MPL 1.1/GPL 2.0/LGPL 2.1
3 *
4 * The contents of this file are subject to the Mozilla Public License Version
5 * 1.1 (the "License"); you may not use this file except in compliance with
6 * the License. You may obtain a copy of the License at
7 * http://www.mozilla.org/MPL/
8 *
9 * Software distributed under the License is distributed on an "AS IS" basis,
10 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
11 * for the specific language governing rights and limitations under the
12 * License.
13 *
14 * The Original Code is Mozilla Communicator client code, released
15 * March 31, 1998.
16 *
17 * The Initial Developer of the Original Code is
18 * Netscape Communications Corporation.
19 * Portions created by the Initial Developer are Copyright (C) 1998-1999
20 * the Initial Developer. All Rights Reserved.
21 *
22 * Contributor(s):
23 *
24 * Alternatively, the contents of this file may be used under the terms of
25 * either of the GNU General Public License Version 2 or later (the "GPL"),
26 * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
27 * in which case the provisions of the GPL or the LGPL are applicable instead
28 * of those above. If you wish to allow use of your version of this file only
29 * under the terms of either the GPL or the LGPL, and not to allow others to
30 * use your version of this file under the terms of the MPL, indicate your
31 * decision by deleting the provisions above and replace them with the notice
32 * and other provisions required by the GPL or the LGPL. If you do not delete
33 * the provisions above, a recipient may use your version of this file under
34 * the terms of any one of the MPL, the GPL or the LGPL.
35 *
36 * ***** END LICENSE BLOCK ***** */
37
38 var gPrefs = GetPrefs();
39 var gEditor;
40
41 // dialog initialization code
Startup
42 function Startup()
43 {
44 gEditor = GetCurrentEditor();
45 if (!gEditor)
46 {
47 window.close();
48 return;
49 }
50
51 gEditor instanceof Components.interfaces.nsIHTMLAbsPosEditor;
52
53 gDialog.enableSnapToGrid = document.getElementById("enableSnapToGrid");
54 gDialog.sizeInput = document.getElementById("size");
55 gDialog.sizeLabel = document.getElementById("sizeLabel");
56 gDialog.unitLabel = document.getElementById("unitLabel");
57
58 // Initialize control values based on existing attributes
59 InitDialog()
60
61 // SET FOCUS TO FIRST CONTROL
62 SetTextboxFocus(gDialog.sizeInput);
63
64 // Resize window
65 window.sizeToContent();
66
67 SetWindowLocation();
68 }
69
70 // Set dialog widgets with attribute data
71 // We get them from globalElement copy so this can be used
72 // by AdvancedEdit(), which is shared by all property dialogs
InitDialog
73 function InitDialog()
74 {
75 gDialog.enableSnapToGrid.checked = gEditor.snapToGridEnabled;
76 toggleSnapToGrid();
77
78 gDialog.sizeInput.value = gEditor.gridSize;
79 }
80
onAccept
81 function onAccept()
82 {
83 gEditor.snapToGridEnabled = gDialog.enableSnapToGrid.checked;
84 gEditor.gridSize = gDialog.sizeInput.value;
85
86 return true;
87 }
88
toggleSnapToGrid
89 function toggleSnapToGrid()
90 {
91 SetElementEnabledById("size", gDialog.enableSnapToGrid.checked)
92 SetElementEnabledById("sizeLabel", gDialog.enableSnapToGrid.checked)
93 SetElementEnabledById("unitLabel", gDialog.enableSnapToGrid.checked)
94 }