/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * The contents of this file are subject to the Netscape Public License * Version 1.0 (the "NPL"); you may not use this file except in * compliance with the NPL. You may obtain a copy of the NPL at * http://www.mozilla.org/NPL/ * * Software distributed under the NPL is distributed on an "AS IS" basis, * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL * for the specific language governing rights and limitations under the * NPL. * * The Initial Developer of this code under the NPL is Netscape * Communications Corporation. Portions created by Netscape are * Copyright (C) 1998 Netscape Communications Corporation. All Rights * Reserved. */ #include "nsISupports.idl" /* just stub the interfaces for now */ interface nsIMsgHdr : nsISupports { }; interface nsIMsgDBHdr : nsIMsgHdr { }; /****************************************************************************** this is commented out because it doesn't match nsIMessage.h, and I don't want anyone to try to use it yet. the problem is nsIMessage.h has interfaces that pass references to nsStrings. but, you can't do that in idl. #include "nsISupports.idl" #include "MailNewsTypes.idl" [ptr] native nsString(nsString); [ptr] native nsString2(nsString2); native nsMsgPriority(nsMsgPriority); %{C++ class nsString; class nsString2; %} [scriptable, uuid(4e994f60-c317-11d2-8cc9-0060b0fc14a3)] interface nsIMsgHdr : nsISupports { nsString GetProperty(in string propertyName); void SetProperty(in string propertyName, in nsString propertyStr); unsigned long GetUint32Property(in string propertyName); void SetUint32Property(in string propertyName, in unsigned long propertyVal); attribute unsigned short numReferences; nsString2 GetStringReference(in long refNum); attribute long long date; attribute string messageId; attribute string references; attribute string CCList; attribute string recipients; attribute boolean recipientsIsNewsgroup; attribute string author; void SetRecipientsArray(in string names, in string addresses, in unsigned long numaddresses); void SetCCListArray(in string names, in string addresses, in unsigned long numAddresses); readonly attribute string mime2EncodedAuthor; readonly attribute string mime2EncodedSubject; readonly attribute string mime2EncodedRecipients; readonly attribute string authorCollationKey; readonly attribute string subjectCollationKey; readonly attribute string recipientsCollationKey; attribute string messageKey; attribute nsMsgKey threadID; attribute unsigned long messageSize; attribute unsigned long lineCount; attribute nsMsgPriority priority; readonly attribute unsigned long messageOffset; readonly attribute unsigned long statusOffset; readonly attribute string charSet; void MarkRead(in boolean markRead); }; interface nsIMsgDBHdr : nsIMsgHdr { }; *******************************************************************************/