gecko-dev/mailnews/addrbook/public/nsIAbCard.idl

97 строки
3.2 KiB
Plaintext

/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* 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"
interface nsIAddrDatabase;
[ptr] native nsVoidArray(nsVoidArray);
%{C++
#include "nsVoidArray.h"
%}
[scriptable, uuid(FA5C977F-04C8-11d3-A2EB-001083003D0C)]
interface nsIAbCard : nsISupports {
attribute string FirstName;
attribute string LastName;
attribute string DisplayName;
attribute string NickName;
attribute string PrimaryEmail;
attribute string SecondEmail;
attribute string WorkPhone;
attribute string HomePhone;
attribute string FaxNumber;
attribute string PagerNumber;
attribute string CellularNumber;
attribute string HomeAddress;
attribute string HomeAddress2;
attribute string HomeCity;
attribute string HomeState;
attribute string HomeZipCode;
attribute string HomeCountry;
attribute string WorkAddress;
attribute string WorkAddress2;
attribute string WorkCity;
attribute string WorkState;
attribute string WorkZipCode;
attribute string WorkCountry;
attribute string JobTitle;
attribute string Department;
attribute string Company;
attribute string WebPage1;
attribute string WebPage2;
attribute string BirthYear;
attribute string BirthMonth;
attribute string BirthDay;
attribute string Custom1;
attribute string Custom2;
attribute string Custom3;
attribute string Custom4;
attribute string Notes;
attribute string LastModifiedDate;
attribute boolean SendPlainText;
attribute unsigned long DbTableID;
attribute unsigned long DbRowID;
void GetCardValue(in string attrname, out string value);
void SetCardValue(in string attrname, in string value);
void SetAbDatabase(in nsIAddrDatabase database);
[noscript] void GetAnonymousStrAttrubutesList(out nsVoidArray attrlist);
[noscript] void GetAnonymousStrValuesList(out nsVoidArray valuelist);
[noscript] void GetAnonymousIntAttrubutesList(out nsVoidArray attrlist);
[noscript] void GetAnonymousIntValuesList(out nsVoidArray valuelist);
[noscript] void GetAnonymousBoolAttrubutesList(out nsVoidArray attrlist);
[noscript] void GetAnonymousBoolValuesList(out nsVoidArray valuelist);
void SetAnonymousStringAttribute(in string attrname, in string value);
void SetAnonymousIntAttribute(in string attrname, in unsigned long value);
void SetAnonymousBoolAttribute(in string attrname, in boolean value);
void AddAnonymousAttributesToDB();
void EditAnonymousAttributesInDB();
void GetCardURI(out string uri);
void AddCardToDatabase(in string uri);
void EditCardToDatabase(in string uri);
void CopyCard(in nsIAbCard srcCard);
};