summaryrefslogtreecommitdiff
path: root/editor/nsIEditorStyleSheets.idl
diff options
context:
space:
mode:
Diffstat (limited to 'editor/nsIEditorStyleSheets.idl')
-rw-r--r--editor/nsIEditorStyleSheets.idl71
1 files changed, 71 insertions, 0 deletions
diff --git a/editor/nsIEditorStyleSheets.idl b/editor/nsIEditorStyleSheets.idl
new file mode 100644
index 0000000000..7f8c365e6c
--- /dev/null
+++ b/editor/nsIEditorStyleSheets.idl
@@ -0,0 +1,71 @@
+/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+#include "nsISupports.idl"
+
+[scriptable, uuid(4805e682-49b9-11d3-9ce4-ed60bd6cb5bc)]
+
+interface nsIEditorStyleSheets : nsISupports
+{
+ /** Load and apply the style sheet, specified by aURL, to the
+ * editor's document, replacing the last style sheet added (if any).
+ * This is always asynchronous, and may cause network I/O.
+ *
+ * @param aURL The style sheet to be loaded and applied.
+ */
+ void replaceStyleSheet(in AString aURL);
+
+ /** Add the given style sheet to the editor's document,
+ * on top of any that are already there.
+ * This is always asynchronous, and may cause network I/O.
+ *
+ * @param aURL The style sheet to be loaded and applied.
+ */
+ void addStyleSheet(in AString aURL);
+
+ /** Load and apply the override style sheet, specified by aURL, to the
+ * editor's document, replacing the last override style sheet added (if any).
+ * This is always synchronous, so aURL should be a local file with only
+ * local @imports. This action is not undoable. It is not intended for
+ * "user" style sheets, only for editor developers to add sheets to change
+ * display behavior for editing (like showing special cursors) that will
+ * not be affected by loading "document" style sheets with addStyleSheet or
+ * especially replaceStyleSheet.
+ *
+ * @param aURL The style sheet to be loaded and applied.
+ */
+ void replaceOverrideStyleSheet(in AString aURL);
+
+ /** Load and apply an override style sheet, specified by aURL, to
+ * the editor's document, on top of any that are already there.
+ * This is always synchronous, so the same caveats about local files and no
+ * non-local @import as replaceOverrideStyleSheet apply here, too.
+ *
+ * @param aURL The style sheet to be loaded and applied.
+ */
+ void addOverrideStyleSheet(in AString aURL);
+
+ /** Remove the given style sheet from the editor's document
+ * This is always synchronous
+ *
+ * @param aURL The style sheet to be removed
+ */
+ void removeStyleSheet(in AString aURL);
+
+ /** Remove the given override style sheet from the editor's document
+ * This is always synchronous
+ *
+ * @param aURL The style sheet to be removed.
+ */
+ void removeOverrideStyleSheet(in AString aURL);
+
+ /** Enable or disable the given style sheet from the editor's document
+ * This is always synchronous
+ *
+ * @param aURL The style sheet to be enabled or disabled
+ * @param aEnable true to enable, or false to disable the style sheet
+ */
+ void enableStyleSheet(in AString aURL, in boolean aEnable);
+};