gecko-dev/editor/nsIEditorMailSupport.idl
Masayuki Nakano d1b927e773 Bug 1839814 - Move nsIEditor.wrapWidth to nsIEditorMailSupport r=m_kato
It's used only by the mail composers.  However, `EditorBase::mWrapColumn` is
also used by `TextEditor`.  Therefore, `EditorBase` still needs to manage the
member, but the setters, `SetWrapColumn()` and `SetWrapWidth()` can be in
`TextEditor` and `HTMLEditor`.

Differential Revision: https://phabricator.services.mozilla.com/D181836
2023-06-27 05:47:55 +00:00

58 lines
1.9 KiB
Plaintext

/* -*- 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;
webidl Node;
[scriptable, builtinclass, uuid(fdf23301-4a94-11d3-9ce4-9960496c41bc)]
interface nsIEditorMailSupport : nsISupports
{
/** 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
*/
[can_run_script]
Node 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?
*/
[can_run_script]
void rewrap(in boolean aRespectNewlines);
/**
* 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
*/
[can_run_script]
void insertTextWithQuotations(in AString aStringToInsert);
/** Get and set the body wrap width.
*
* Special values:
* 0 = wrap to window width
* -1 = no wrap at all
*/
[setter_can_run_script]
attribute long wrapWidth;
};