1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6 #include
"nsISupports.idl"
8 [scriptable
, builtinclass
, uuid(4805e682
-49b9
-11d3
-9ce4
-ed60bd6cb5bc
)]
10 interface nsIEditorStyleSheets
: nsISupports
12 /** Load and apply the override style sheet, specified by aURL, to the
13 * editor's document, replacing the last override style sheet added (if any).
14 * This is always synchronous, so aURL should be a local file with only
15 * local @imports. This action is not undoable. It is not intended for
16 * "user" style sheets, only for editor developers to add sheets to change
17 * display behavior for editing (like showing special cursors) that will
18 * not be affected by loading "document" style sheets with addStyleSheet or
19 * especially replaceStyleSheet.
21 * @param aURL The style sheet to be loaded and applied.
23 void replaceOverrideStyleSheet
(in AString aURL
);
25 /** Load and apply an override style sheet, specified by aURL, to
26 * the editor's document, on top of any that are already there.
27 * This is always synchronous, so the same caveats about local files and no
28 * non-local @import as replaceOverrideStyleSheet apply here, too.
30 * @param aURL The style sheet to be loaded and applied.
32 void addOverrideStyleSheet
(in AString aURL
);
34 /** Remove the given override style sheet from the editor's document
35 * This is always synchronous
37 * @param aURL The style sheet to be removed.
39 void removeOverrideStyleSheet
(in AString aURL
);
41 /** Enable or disable the given style sheet from the editor's document
42 * This is always synchronous
44 * @param aURL The style sheet to be enabled or disabled
45 * @param aEnable true to enable, or false to disable the style sheet
47 void enableStyleSheet
(in AString aURL
, in boolean aEnable
);