Bug 1163306 - enable icaljs by default only on comm-central, use libical on comm-aurora. r=philipp
/* -*- 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 nsIFile;
interface nsIAbDirectory;
interface nsIAbCard;
interface nsIAddrDatabase;
%{C++
#define kMDBDirectoryRoot "moz-abmdbdirectory://"
#define kMDBDirectoryRootLen 21
%}
[scriptable, uuid(744072be-1ba0-46bc-af24-46e22567a2ea)]
interface nsIAbMDBDirectory : nsISupports {
// Creates a directory component from the
// uriName, adds it to its children and returns
// the component
nsIAbDirectory addDirectory(in string uriName);
/**
* Supplies a nsIFile point to the database file for this directory
*
* @exception NS_ERROR_NOT_INITIALIZED If there is no filename preference
* present or it is empty
*/
readonly attribute nsIFile databaseFile;
/**
* Supplies a nsIAddrDatabase that uses the databaseFile. See also
* databaseFile for possible exceptions.
*/
readonly attribute nsIAddrDatabase database;
// Mail list specific
//
// Removes all elements from the addressLists
// property
[noscript] void removeElementsFromAddressList();
// Specific to a directory which stores mail lists
//
// Adds a directory to the addressLists attribute
void addMailListToDirectory(in nsIAbDirectory mailList);
// Specific to a directory which is a mail list
//
// Copies mail list properties from the srcList
void copyDBMailList(in nsIAbMDBDirectory srcListDB);
// Adds a card to the addressList attribute
void addAddressToList(in nsIAbCard card);
// Removes items from the addressLists member
void removeEmailAddressAt(in unsigned long aIndex);
attribute unsigned long dbRowID;
// Empty implementation, called by the data base
[noscript] void notifyDirItemAdded(in nsISupports item);
[noscript] void clearDatabase();
};