diff --git a/mailnews/addrbook/public/nsIAddrBookSession.idl b/mailnews/addrbook/public/nsIAddrBookSession.idl new file mode 100644 index 00000000000..3dc80ce774b --- /dev/null +++ b/mailnews/addrbook/public/nsIAddrBookSession.idl @@ -0,0 +1,47 @@ +/* -*- Mode: IDL; 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" + +/* + * The mail session is a replacement for the old 4.x MSG_Master object. It + * contains mail session generic information such as the account manager, etc + * I'm starting this off as an empty interface and as people feel they need to + * add more information to it, they can. I think this is a better approach + * than trying to port over the old MSG_Master in its entirety as that had a + * lot of cruft in it.... + */ + +#include "nsISupports.idl" +#include "nsIAbListener.idl" +#include "nsIAbDirectory.idl" +#include "nsIAbCard.idl" + +[scriptable, uuid(C5339441-303F-11d3-9E13-00A0C92B5F0D)] +interface nsIAddrBookSession : nsISupports { + + void AddAddressBookListener(in nsIAbListener listener); + void RemoveAddressBookListener(in nsIAbListener listener); + void NotifyItemPropertyChanged(in nsISupports item, + in string property, + in string oldValue, + in string newValue); + void NotifyDirectoryItemAdded(in nsIAbDirectory directory, in nsISupports item); + void NotifyDirectoryItemDeleted(in nsIAbDirectory directory, in nsISupports item); +}; +