diff options
Diffstat (limited to 'editor/nsIEditorMailSupport.idl')
-rw-r--r-- | editor/nsIEditorMailSupport.idl | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/editor/nsIEditorMailSupport.idl b/editor/nsIEditorMailSupport.idl new file mode 100644 index 000000000..3616bceee --- /dev/null +++ b/editor/nsIEditorMailSupport.idl @@ -0,0 +1,81 @@ +/* -*- 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" + +interface nsIArray; +interface nsIDOMNode; + +[scriptable, uuid(fdf23301-4a94-11d3-9ce4-9960496c41bc)] + +interface nsIEditorMailSupport : nsISupports +{ + /** Paste the text in the OS clipboard at the cursor position, + * as a quotation (whose representation is dependant on the editor type), + * replacing the selected text (if any). + * @param aSelectionType Text or html? + */ + void pasteAsQuotation(in long aSelectionType); + + /** Insert a string as quoted text + * (whose representation is dependant on the editor type), + * replacing the selected text (if any). + * @param aQuotedText The actual text to be quoted + * @return The node which was inserted + */ + nsIDOMNode insertAsQuotation(in AString aQuotedText); + + /** + * Inserts a plaintext string at the current location, + * with special processing for lines beginning with ">", + * which will be treated as mail quotes and inserted + * as plaintext quoted blocks. + * If the selection is not collapsed, the selection is deleted + * and the insertion takes place at the resulting collapsed selection. + * + * @param aString the string to be inserted + */ + void insertTextWithQuotations(in DOMString aStringToInsert); + + /** Paste a string as quoted text, + * whose representation is dependant on the editor type, + * replacing the selected text (if any) + * @param aCitation The "mid" URL of the source message + * @param aSelectionType Text or html? + */ + void pasteAsCitedQuotation(in AString aCitation, + in long aSelectionType); + + /** Insert a string as quoted text + * (whose representation is dependant on the editor type), + * replacing the selected text (if any), + * including, if possible, a "cite" attribute. + * @param aQuotedText The actual text to be quoted + * @param aCitation The "mid" URL of the source message + * @param aInsertHTML Insert as html? (vs plaintext) + * @return The node which was inserted + */ + nsIDOMNode insertAsCitedQuotation(in AString aQuotedText, + in AString aCitation, + in boolean aInsertHTML); + + /** + * Rewrap the selected part of the document, re-quoting if necessary. + * @param aRespectNewlines Try to maintain newlines in the original? + */ + void rewrap(in boolean aRespectNewlines); + + /** + * Strip any citations in the selected part of the document. + */ + void stripCites(); + + + /** + * Get a list of IMG and OBJECT tags in the current document. + */ + nsIArray getEmbeddedObjects(); +}; + |