зеркало из https://github.com/mozilla/gecko-dev.git
109 строки
4.8 KiB
Plaintext
109 строки
4.8 KiB
Plaintext
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
|
/* ***** BEGIN LICENSE BLOCK *****
|
|
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
|
*
|
|
* The contents of this file are subject to the Mozilla Public License Version
|
|
* 1.1 (the "License"); you may not use this file except in compliance with
|
|
* the License. You may obtain a copy of the License at
|
|
* http://www.mozilla.org/MPL/
|
|
*
|
|
* Software distributed under the License is distributed on an "AS IS" basis,
|
|
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
|
* for the specific language governing rights and limitations under the
|
|
* License.
|
|
*
|
|
* The Original Code is mozilla.org code.
|
|
*
|
|
* The Initial Developer of the Original Code is
|
|
* Netscape Communications Corporation.
|
|
* Portions created by the Initial Developer are Copyright (C) 1998
|
|
* the Initial Developer. All Rights Reserved.
|
|
*
|
|
* Contributor(s):
|
|
*
|
|
* Alternatively, the contents of this file may be used under the terms of
|
|
* either of the GNU General Public License Version 2 or later (the "GPL"),
|
|
* or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
|
* in which case the provisions of the GPL or the LGPL are applicable instead
|
|
* of those above. If you wish to allow use of your version of this file only
|
|
* under the terms of either the GPL or the LGPL, and not to allow others to
|
|
* use your version of this file under the terms of the MPL, indicate your
|
|
* decision by deleting the provisions above and replace them with the notice
|
|
* and other provisions required by the GPL or the LGPL. If you do not delete
|
|
* the provisions above, a recipient may use your version of this file under
|
|
* the terms of any one of the MPL, the GPL or the LGPL.
|
|
*
|
|
* ***** END LICENSE BLOCK ***** */
|
|
|
|
#include "nsISupports.idl"
|
|
#include "nsIMsgComposeParams.idl"
|
|
|
|
interface nsIMsgIdentity;
|
|
interface nsIPrompt;
|
|
interface nsIAuthPrompt;
|
|
interface nsISmtpServer;
|
|
interface nsIInterfaceRequestor;
|
|
interface nsIFileSpec;
|
|
|
|
[scriptable, uuid(16ADF2F1-BBAD-11d2-804E-006008128C4E)]
|
|
interface nsISmtpUrl : nsISupports {
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
// SMTP Parse specific getters --> retrieves portions from the url spec...
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// This list is a list of all
|
|
// recipients to send the email to. each name is NULL terminated...
|
|
attribute string recipients;
|
|
|
|
attribute boolean PostMessage;
|
|
|
|
// the message can be stored in a file....allow accessors for getting and setting
|
|
// the file name to post...
|
|
attribute nsIFileSpec PostMessageFile;
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
// SMTP Url instance specific getters and setters --> info the protocol needs
|
|
// to know in order to run the url...these are NOT event sinks which are things
|
|
// the caller needs to know...
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// by default the url is really a bring up the compose window mailto url...
|
|
// you need to call this function if you want to force the message to be posted
|
|
// to the mailserver...
|
|
|
|
// the user's full name and user's email address are encapsulated in the senderIdentity.
|
|
// (the user's domain name can be glopped from the user's email address)
|
|
//
|
|
// NOTE: the SMTP username and SMTP server are in the smtp url
|
|
// smtp://sspitzer@tintin/...
|
|
attribute nsIMsgIdentity senderIdentity;
|
|
attribute nsIPrompt prompt;
|
|
attribute nsIAuthPrompt authPrompt;
|
|
attribute nsIInterfaceRequestor notificationCallbacks;
|
|
attribute nsISmtpServer smtpServer;
|
|
|
|
const PRInt32 DEFAULT_SMTP_PORT = 25;
|
|
const PRInt32 DEFAULT_SMTPS_PORT = 465;
|
|
};
|
|
|
|
[scriptable, uuid(5EE2AFF7-9C6F-11d3-98A3-001083010E9B)]
|
|
interface nsIMailtoUrl : nsISupports {
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
// Mailto parse specific getters
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// mscott: I used to have individual getters for ALL of these fields but it was
|
|
// getting way out of hand...besides in the actual protocol, we want all of these
|
|
// fields anyway so why go through the extra step of making the protocol call
|
|
// 12 get functions...
|
|
|
|
// All of these fields are things we can effectively extract from a
|
|
// mailto url if it contains all of these values
|
|
void GetMessageContents(out string aToPart, out string aCcPart, out string aBccPart,
|
|
out string aFromPart, out string aFollowUpToPart, out string aOrganizationPart,
|
|
out string aReplyToPart, out string aSubjectPart, out string aBodyPart, out string aHtmlPart,
|
|
out string aReferencePart, out string aAttachmentPart, out string aPriorityPart,
|
|
out string aNewsgroupPart, out string aNewsHostPart, out MSG_ComposeFormat aFormat);
|
|
|
|
};
|