// // Copyright 2006 Jim Bublitz // Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson // may also apply // Generated by preSip // module kabc version KDE 3.5.3 // This software is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License as // published by the Free Software Foundation; either version 2 of // the License, or (at your option) any later version. // // This software is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public // License along with this library; see the file COPYING. // If not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. namespace TDEABC { class AddressBook : TQObject { %TypeHeaderCode #include #include %End public: //ig class Iterator; //ig class ConstIterator; AddressBook (); %If ( KDE_3_2_0 - ) AddressBook (const TQString&); %End TDEABC::Ticket* requestSaveTicket (TDEABC::Resource* = 0); %If ( KDE_3_2_0 - ) void releaseSaveTicket (TDEABC::Ticket*); %End bool load (); %If ( KDE_3_2_0 - ) bool asyncLoad (); %End bool save (TDEABC::Ticket*); %If ( KDE_3_2_0 - ) bool asyncSave (TDEABC::Ticket*); %End //igx TDEABC::AddressBook::ConstIterator begin () const; //igx TDEABC::AddressBook::Iterator begin (); //igx TDEABC::AddressBook::ConstIterator end () const; //igx TDEABC::AddressBook::Iterator end (); void clear (); void insertAddressee (const TDEABC::Addressee&); void removeAddressee (const TDEABC::Addressee&); //ig void removeAddressee (const TDEABC::AddressBook::Iterator&); //igx TDEABC::AddressBook::Iterator find (const Addressee&); TDEABC::Addressee findByUid (const TQString&); %If ( KDE_3_2_0 - ) TDEABC::Addressee::List allAddressees (); %End TDEABC::Addressee::List findByName (const TQString&); TDEABC::Addressee::List findByEmail (const TQString&); TDEABC::Addressee::List findByCategory (const TQString&); virtual TQString identifier (); %If ( KDE_3_1_0 - ) TDEABC::Field::List fields (int = KABC ::Field ::All ); bool addCustomField (const TQString&, int = KABC ::Field ::All , const TQString& = TQString ::null , const TQString& = TQString ::null ); %End bool addResource (TDEABC::Resource*); %If ( KDE_3_1_0 - ) bool removeResource (TDEABC::Resource*); TQPtrList resources (); void setErrorHandler (TDEABC::ErrorHandler*); void error (const TQString&); void cleanUp (); %End void dump () const; void emitAddressBookLocked (); void emitAddressBookUnlocked (); void emitAddressBookChanged (); %If ( KDE_3_5_0 - ) bool loadingHasFinished () const; %End signals: void addressBookChanged (TDEABC::AddressBook*); void addressBookLocked (TDEABC::AddressBook*); void addressBookUnlocked (TDEABC::AddressBook*); %If ( KDE_3_2_0 - ) void loadingFinished (TDEABC::Resource*); void savingFinished (TDEABC::Resource*); %End protected slots: %If ( KDE_3_2_0 - ) void resourceLoadingFinished (TDEABC::Resource*); void resourceSavingFinished (TDEABC::Resource*); void resourceLoadingError (TDEABC::Resource*, const TQString&); void resourceSavingError (TDEABC::Resource*, const TQString&); %End protected: %If ( KDE_3_1_0 - ) void deleteRemovedAddressees (); void setStandardResource (TDEABC::Resource*); TDEABC::Resource* standardResource (); %If ( KDE_3_2_0 - ) //ig KRES::Manager* resourceManager (); %End %End }; // class AddressBook %If ( KDE_3_1_0 - ) //igx TQDataStream& operator << (TQDataStream&, const TDEABC::AddressBook&); //igx TQDataStream& operator >> (TQDataStream&, TDEABC::AddressBook&); %End }; // namespace TDEABC %MappedType TQPtrList //converts a Python list of TDEABC::Resource { %TypeHeaderCode #include %End %ConvertFromTypeCode if (!sipCpp) return PyList_New (0); PyObject *pylist; // Create the list if ((pylist = PyList_New(0)) == NULL) return NULL; // Get it. TQPtrList *cpplist = (TQPtrList *)sipCpp; TDEABC::Resource *cpp; PyObject *inst; // the loop depends on the type of iterator the tmeplate makes available for(cpp = cpplist->first (); cpp != 0; cpp = cpplist->next () ) { if (((inst = sipConvertFromInstance (cpp, sipClass_KABC_Resource, sipTransferObj)) == NULL) || PyList_Append (pylist, inst) < 0) { Py_DECREF (pylist); return NULL; } } return pylist; %End %ConvertToTypeCode if (sipIsErr == NULL) return PyList_Check(sipPy); TQPtrList *cpplist = new TQPtrList; PyObject *elem; TDEABC::Resource *cpp; int iserr = 0; for (int i = 0; i < PyList_Size (sipPy); i++) { elem = PyList_GET_ITEM (sipPy, i); cpp = (TDEABC::Resource *)sipForceConvertToType(elem, sipType_KABC_Resource, sipTransferObj, SIP_NO_CONVERTORS, NULL, &iserr); if (iserr) { *sipIsErr = 1; delete cpplist; return 0; } cpplist->append (cpp); } *sipCppPtr = cpplist; return 1; %End };