-rw-r--r-- | kaddressbook/kaddressbook.pro | 8 | ||||
-rw-r--r-- | kaddressbook/kaddressbookE.pro | 8 | ||||
-rw-r--r-- | kaddressbook/xxportmanager.cpp | 15 | ||||
-rw-r--r-- | kaddressbook/xxportobject.cpp | 21 | ||||
-rw-r--r-- | kaddressbook/xxportobject.h | 35 |
5 files changed, 78 insertions, 9 deletions
diff --git a/kaddressbook/kaddressbook.pro b/kaddressbook/kaddressbook.pro index 77fce1b..0da5842 100644 --- a/kaddressbook/kaddressbook.pro +++ b/kaddressbook/kaddressbook.pro @@ -5,9 +5,9 @@ DESTDIR= ../bin include( ../variables.pri ) -INCLUDEPATH += . ./details ./features ./kcmconfigs ./xxport ../microkde ../microkde/kdecore ../microkde/kutils ../microkde/kio/kfile ../microkde/kio/kio ../microkde/kdeui ../kabc ../ interfaces +INCLUDEPATH += . ./details ./features ./kcmconfigs ./xxport ../microkde ../microkde/kdecore ../microkde/kutils ../microkde/kio/kfile ../microkde/kio/kio ../microkde/kdeui ../microkde/kresources ../kabc ../ interfaces DEFINES += KAB_EMBEDDED KAB_NOSPLITTER DESKTOP_VERSION unix : { LIBS += ../bin/libmicrokdepim.so @@ -96,8 +96,11 @@ views/contactlistview.h \ xxport/vcard_xxport.h \ xxport/kde2_xxport.h \ xxport/csv_xxport.h \ xxport/csvimportdialog.h \ +xxport/opie_xxport.h \ +xxport/qtopia_xxport.h \ +xxport/sharpdtm_xxport.h \ #details/look_details.h \ #mainwindoiw.h \ # alarmclient.h \ # calendarview.h \ @@ -159,8 +162,11 @@ views/colorlistbox.cpp \ xxport/vcard_xxport.cpp \ xxport/kde2_xxport.cpp \ xxport/csv_xxport.cpp \ xxport/csvimportdialog.cpp \ +xxport/opie_xxport.cpp \ +xxport/qtopia_xxport.cpp \ +xxport/sharpdtm_xxport.cpp \ #details/look_details.cpp \ #mainwindow.cpp \ # calendarview.cpp \ # timespanview.cpp diff --git a/kaddressbook/kaddressbookE.pro b/kaddressbook/kaddressbookE.pro index dc4a2f2..95e6641 100644 --- a/kaddressbook/kaddressbookE.pro +++ b/kaddressbook/kaddressbookE.pro @@ -9,9 +9,9 @@ DESTDIR=$(QPEDIR)/bin #LFLAGS += -Wl,-export-dynamic -INCLUDEPATH += . ./details ./features ./kcmconfigs ./xxport ../microkde ../microkde/kdecore ../microkde/kutils ../microkde/kio/kfile ../microkde/kio/kio ../microkde/kdeui ../kabc ../qtcompat ../ interfaces $(QPEDIR)/include +INCLUDEPATH += . ./details ./features ./kcmconfigs ./xxport ../microkde ../microkde/kdecore ../microkde/kutils ../microkde/kio/kfile ../microkde/kio/kio ../microkde/kdeui ../microkde/kresources ../kabc ../qtcompat ../ interfaces $(QPEDIR)/include DEFINES += KAB_EMBEDDED KAB_NOSPLITTER #DEFINES += KORG_NODND KORG_NOPLUGINS KORG_NOKABC KORG_NOARCHIVE KORG_NOMAIL #DEFINES += KORG_NOPRINTER KORG_NODCOP KORG_NOKALARMD KORG_NORESOURCEVIEW KORG_NOSPLITTER #DEFINES += KORG_NOLVALTERNATION @@ -86,8 +86,11 @@ views/contactlistview.h \ xxport/vcard_xxport.h \ xxport/kde2_xxport.h \ xxport/csv_xxport.h \ xxport/csvimportdialog.h \ +xxport/opie_xxport.h \ +xxport/qtopia_xxport.h \ +xxport/sharpdtm_xxport.h \ #details/look_details.h \ #mainwindoiw.h \ # alarmclient.h \ # calendarview.h \ @@ -149,8 +152,11 @@ views/colorlistbox.cpp \ xxport/vcard_xxport.cpp \ xxport/kde2_xxport.cpp \ xxport/csv_xxport.cpp \ xxport/csvimportdialog.cpp \ +xxport/opie_xxport.cpp \ +xxport/qtopia_xxport.cpp \ +xxport/sharpdtm_xxport.cpp \ #details/look_details.cpp \ #mainwindow.cpp \ # calendarview.cpp \ # timespanview.cpp diff --git a/kaddressbook/xxportmanager.cpp b/kaddressbook/xxportmanager.cpp index 2962951..a6797c9 100644 --- a/kaddressbook/xxportmanager.cpp +++ b/kaddressbook/xxportmanager.cpp @@ -42,11 +42,14 @@ $Id$ #include <ktrader.h> #else //KAB_EMBEDDED extern "C" { - void* init_kaddrbk_csv_xxport(); - void* init_kaddrbk_kde2_xxport(); - void* init_kaddrbk_vcard_xxport(); + void* init_microkaddrbk_csv_xxport(); + void* init_microkaddrbk_kde2_xxport(); + void* init_microkaddrbk_vcard_xxport(); + void* init_microkaddrbk_opie_xxport(); + void* init_microkaddrbk_qtopia_xxport(); + void* init_microkaddrbk_sharpdtm_xxport(); } #endif //KAB_EMBEDDED #include <libkdepim/addresseeview.h> @@ -191,11 +194,11 @@ void XXPortManager::loadPlugins() } #else //KAB_EMBEDDED QList<XXPortFactory> factorylist; - factorylist.append(static_cast<XXPortFactory*>(init_kaddrbk_csv_xxport())); - factorylist.append(static_cast<XXPortFactory*>(init_kaddrbk_kde2_xxport())); - factorylist.append(static_cast<XXPortFactory*>(init_kaddrbk_vcard_xxport())); + factorylist.append(static_cast<XXPortFactory*>(init_microkaddrbk_csv_xxport())); + factorylist.append(static_cast<XXPortFactory*>(init_microkaddrbk_kde2_xxport())); + factorylist.append(static_cast<XXPortFactory*>(init_microkaddrbk_vcard_xxport())); //add the opie import library dynamically KLibFactory *factory = KLibLoader::self()->factory( "microkaddrbk_opie_xxport" ); if ( factory ) { diff --git a/kaddressbook/xxportobject.cpp b/kaddressbook/xxportobject.cpp index 42ab0fb..bb985a6 100644 --- a/kaddressbook/xxportobject.cpp +++ b/kaddressbook/xxportobject.cpp @@ -146,7 +146,28 @@ void XXPortObject::slotImportActivated( const QString &data ) { emit importActivated( identifier(), ( data == "<empty>" ? QString::null : data ) ); } +/******************************************************************** + * + *******************************************************************/ + + +XXPortResourceObject::XXPortResourceObject( KABC::AddressBook *ab, QWidget *parent, + const char *name ) + : XXPortObject( ab, parent, name ), mResource(0) +{ +} + +XXPortResourceObject::~XXPortResourceObject() +{ +} + +bool XXPortResourceObject::isAvailable() +{ + return (mResource != 0); +} + + #ifndef KAB_EMBEDDED #include "xxportobject.moc" #endif //KAB_EMBEDDED diff --git a/kaddressbook/xxportobject.h b/kaddressbook/xxportobject.h index fddc219..d547855 100644 --- a/kaddressbook/xxportobject.h +++ b/kaddressbook/xxportobject.h @@ -34,12 +34,16 @@ $Id$ #include <qobject.h> #include <kabc/addressbook.h> #include <kabc/addresseelist.h> +#include <kabc/resource.h> #include <kxmlguiclient.h> #include <klibloader.h> + + + class XXPortObject : public QObject, virtual public KXMLGUIClient { Q_OBJECT @@ -58,8 +62,15 @@ class XXPortObject : public QObject, virtual public KXMLGUIClient pass a sorted list to @ref exportContacts(). */ virtual bool requiresSorting() const { return false; } + /** + Returns true if the XXPortObject can be used. + One case it can not be used is for example if a needed lib could not be loaded. + */ + virtual bool isAvailable() const { return true; }; + + public slots: /** Reimplement this method for exporting the contacts. */ @@ -106,9 +117,9 @@ class XXPortObject : public QObject, virtual public KXMLGUIClient message boxes. */ QWidget *parentWidget() const; - + private slots: void slotImportActivated( const QString& ); void slotExportActivated( const QString& ); @@ -119,8 +130,30 @@ class XXPortObject : public QObject, virtual public KXMLGUIClient class XXPortObjectPrivate; XXPortObjectPrivate *d; }; + + +class XXPortResourceObject : public XXPortObject +{ + Q_OBJECT + + public: + XXPortResourceObject( KABC::AddressBook *ab, QWidget *parent, const char *name = 0 ); + ~XXPortResourceObject(); + + /** + Returns true if the XXPortObject can be used. + One case it can not be used is for example if a needed lib could not be loaded. + */ + virtual bool isAvailable(); + protected: + KABC::Resource* mResource; +}; + + + + class XXPortFactory : public KLibFactory { public: virtual XXPortObject *xxportObject( KABC::AddressBook *ab, QWidget *parent, |