/* -*- 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" #include "nsIAbCard.idl" #include "nsIAbDirectory.idl" interface nsIAddrDBListener; [scriptable, uuid(166b19a1-1235-4613-9601-816dedc48c9e)] interface nsIAddrDBAnnouncer : nsISupports { void addListener(in nsIAddrDBListener listener); void removeListener(in nsIAddrDBListener listener); void notifyCardAttribChange(in unsigned long abCode); /** * Notify all the listeners of the database about an event performed * on a card entry. * * @param aAbCode The code to indicate the type of event * (see nsAddrDatabase.h AB_NOTIFY_CODE for values). * @param aCard The card entry on which the event occurred. * @param aParent The parent of card entry. This is set by * object which performs the operation. */ void notifyCardEntryChange(in unsigned long aAbCode, in nsIAbCard aCard, in nsIAbDirectory aParent); void notifyAnnouncerGoingAway(); };