-rw-r--r-- | kaddressbook/kabcore.cpp | 45 | ||||
-rw-r--r-- | kaddressbook/kabcore.h | 2 |
2 files changed, 21 insertions, 26 deletions
diff --git a/kaddressbook/kabcore.cpp b/kaddressbook/kabcore.cpp index dae9cd2..087e9e3 100644 --- a/kaddressbook/kabcore.cpp +++ b/kaddressbook/kabcore.cpp | |||
@@ -672,73 +672,70 @@ void KABCore::beamMySelf() | |||
672 | void KABCore::export2phone() | 672 | void KABCore::export2phone() |
673 | { | 673 | { |
674 | 674 | ||
675 | KAex2phonePrefs ex2phone; | 675 | KAex2phonePrefs ex2phone; |
676 | ex2phone.mPhoneConnection->setText( KPimGlobalPrefs::instance()->mEx2PhoneConnection ); | 676 | ex2phone.mPhoneConnection->setText( KPimGlobalPrefs::instance()->mEx2PhoneConnection ); |
677 | ex2phone.mPhoneDevice->setText( KPimGlobalPrefs::instance()->mEx2PhoneDevice ); | 677 | ex2phone.mPhoneDevice->setText( KPimGlobalPrefs::instance()->mEx2PhoneDevice ); |
678 | ex2phone.mPhoneModel->setText( KPimGlobalPrefs::instance()->mEx2PhoneModel ); | 678 | ex2phone.mPhoneModel->setText( KPimGlobalPrefs::instance()->mEx2PhoneModel ); |
679 | 679 | ||
680 | if ( !ex2phone.exec() ) { | 680 | if ( !ex2phone.exec() ) { |
681 | return; | 681 | return; |
682 | } | 682 | } |
683 | KPimGlobalPrefs::instance()->mEx2PhoneConnection = ex2phone.mPhoneConnection->text(); | 683 | KPimGlobalPrefs::instance()->mEx2PhoneConnection = ex2phone.mPhoneConnection->text(); |
684 | KPimGlobalPrefs::instance()->mEx2PhoneDevice = ex2phone.mPhoneDevice->text(); | 684 | KPimGlobalPrefs::instance()->mEx2PhoneDevice = ex2phone.mPhoneDevice->text(); |
685 | KPimGlobalPrefs::instance()->mEx2PhoneModel = ex2phone.mPhoneModel->text(); | 685 | KPimGlobalPrefs::instance()->mEx2PhoneModel = ex2phone.mPhoneModel->text(); |
686 | 686 | ||
687 | 687 | ||
688 | PhoneAccess::writeConfig( KPimGlobalPrefs::instance()->mEx2PhoneDevice, | 688 | PhoneAccess::writeConfig( KPimGlobalPrefs::instance()->mEx2PhoneDevice, |
689 | KPimGlobalPrefs::instance()->mEx2PhoneConnection, | 689 | KPimGlobalPrefs::instance()->mEx2PhoneConnection, |
690 | KPimGlobalPrefs::instance()->mEx2PhoneModel ); | 690 | KPimGlobalPrefs::instance()->mEx2PhoneModel ); |
691 | 691 | ||
692 | QStringList uids = mViewManager->selectedUids(); | 692 | QStringList uids = mViewManager->selectedUids(); |
693 | if ( uids.isEmpty() ) | 693 | if ( uids.isEmpty() ) |
694 | return; | 694 | return; |
695 | 695 | ||
696 | QString fileName = getPhoneFile(); | ||
697 | if ( ! mAddressBook->export2PhoneFormat( uids ,fileName ) ) | ||
698 | return; | ||
699 | |||
700 | QTimer::singleShot( 1, this , SLOT ( writeToPhone())); | ||
701 | |||
702 | } | ||
703 | QString KABCore::getPhoneFile() | ||
704 | { | ||
696 | #ifdef _WIN32_ | 705 | #ifdef _WIN32_ |
697 | QString fileName = locateLocal("tmp", "phonefile.vcf"); | 706 | return locateLocal("tmp", "phonefile.vcf"); |
698 | #else | 707 | #else |
699 | QString fileName = "/tmp/phonefile.vcf"; | 708 | return "/tmp/phonefile.vcf"; |
700 | #endif | 709 | #endif |
701 | 710 | ||
702 | if ( ! mAddressBook->export2PhoneFormat( uids ,fileName ) ) | 711 | } |
703 | return; | 712 | void KABCore::writeToPhone( ) |
704 | 713 | { | |
705 | if ( PhoneAccess::writeToPhone( fileName ) ) | 714 | if ( PhoneAccess::writeToPhone( getPhoneFile() ) ) |
706 | qDebug("Export okay "); | 715 | qDebug("Export okay "); |
707 | else | ||
708 | qDebug("Error export contacts "); | ||
709 | |||
710 | |||
711 | #if 0 | ||
712 | |||
713 | setCaption( i18n("Writing to phone...")); | ||
714 | if ( PhoneFormat::writeToPhone( cal ) ) | ||
715 | setCaption( i18n("Export to phone successful!")); | ||
716 | else | 716 | else |
717 | setCaption( i18n("Error exporting to phone!")); | 717 | qDebug("Error export contacts "); |
718 | #endif | ||
719 | |||
720 | |||
721 | } | 718 | } |
722 | void KABCore::beamVCard() | 719 | void KABCore::beamVCard() |
723 | { | 720 | { |
724 | QStringList uids = mViewManager->selectedUids(); | 721 | QStringList uids = mViewManager->selectedUids(); |
725 | if ( !uids.isEmpty() ) | 722 | if ( !uids.isEmpty() ) |
726 | beamVCard( uids ); | 723 | beamVCard( uids ); |
727 | } | 724 | } |
728 | 725 | ||
729 | 726 | ||
730 | void KABCore::beamVCard(const QStringList& uids) | 727 | void KABCore::beamVCard(const QStringList& uids) |
731 | { | 728 | { |
732 | /*US | 729 | /*US |
733 | QString beamFilename; | 730 | QString beamFilename; |
734 | Opie::OPimContact c; | 731 | Opie::OPimContact c; |
735 | if ( actionPersonal->isOn() ) { | 732 | if ( actionPersonal->isOn() ) { |
736 | beamFilename = addressbookPersonalVCardName(); | 733 | beamFilename = addressbookPersonalVCardName(); |
737 | if ( !QFile::exists( beamFilename ) ) | 734 | if ( !QFile::exists( beamFilename ) ) |
738 | return; // can't beam a non-existent file | 735 | return; // can't beam a non-existent file |
739 | Opie::OPimContactAccessBackend* vcard_backend = new Opie::OPimContactAccessBackend_VCard( QString::null, | 736 | Opie::OPimContactAccessBackend* vcard_backend = new Opie::OPimContactAccessBackend_VCard( QString::null, |
740 | beamFilename ); | 737 | beamFilename ); |
741 | Opie::OPimContactAccess* access = new Opie::OPimContactAccess ( "addressbook", QString::null , vcard_backend, true ); | 738 | Opie::OPimContactAccess* access = new Opie::OPimContactAccess ( "addressbook", QString::null , vcard_backend, true ); |
742 | Opie::OPimContactAccess::List allList = access->allRecords(); | 739 | Opie::OPimContactAccess::List allList = access->allRecords(); |
743 | Opie::OPimContactAccess::List::Iterator it = allList.begin(); // Just take first | 740 | Opie::OPimContactAccess::List::Iterator it = allList.begin(); // Just take first |
744 | c = *it; | 741 | c = *it; |
@@ -813,48 +810,49 @@ void KABCore::beamVCard(const QStringList& uids) | |||
813 | if ( outFile.open(IO_WriteOnly) ) { | 810 | if ( outFile.open(IO_WriteOnly) ) { |
814 | datastream.replace ( QRegExp("VERSION:3.0") , "VERSION:2.1" ); | 811 | datastream.replace ( QRegExp("VERSION:3.0") , "VERSION:2.1" ); |
815 | QTextStream t( &outFile ); // use a text stream | 812 | QTextStream t( &outFile ); // use a text stream |
816 | //t.setEncoding( QTextStream::UnicodeUTF8 ); | 813 | //t.setEncoding( QTextStream::UnicodeUTF8 ); |
817 | t.setEncoding( QTextStream::Latin1 ); | 814 | t.setEncoding( QTextStream::Latin1 ); |
818 | t <<datastream.latin1(); | 815 | t <<datastream.latin1(); |
819 | outFile.close(); | 816 | outFile.close(); |
820 | Ir *ir = new Ir( this ); | 817 | Ir *ir = new Ir( this ); |
821 | connect( ir, SIGNAL( done(Ir*) ), this, SLOT( beamDone(Ir*) ) ); | 818 | connect( ir, SIGNAL( done(Ir*) ), this, SLOT( beamDone(Ir*) ) ); |
822 | ir->send( fileName, description, "text/x-vCard" ); | 819 | ir->send( fileName, description, "text/x-vCard" ); |
823 | } else { | 820 | } else { |
824 | qDebug("Error open temp beam file "); | 821 | qDebug("Error open temp beam file "); |
825 | return; | 822 | return; |
826 | } | 823 | } |
827 | #endif | 824 | #endif |
828 | 825 | ||
829 | } | 826 | } |
830 | 827 | ||
831 | void KABCore::beamDone( Ir *ir ) | 828 | void KABCore::beamDone( Ir *ir ) |
832 | { | 829 | { |
833 | #ifndef DESKTOP_VERSION | 830 | #ifndef DESKTOP_VERSION |
834 | delete ir; | 831 | delete ir; |
835 | #endif | 832 | #endif |
836 | topLevelWidget()->raise(); | 833 | topLevelWidget()->raise(); |
834 | message( i18n("Beaming successful!") ); | ||
837 | } | 835 | } |
838 | 836 | ||
839 | 837 | ||
840 | void KABCore::browse( const QString& url ) | 838 | void KABCore::browse( const QString& url ) |
841 | { | 839 | { |
842 | #ifndef KAB_EMBEDDED | 840 | #ifndef KAB_EMBEDDED |
843 | kapp->invokeBrowser( url ); | 841 | kapp->invokeBrowser( url ); |
844 | #else //KAB_EMBEDDED | 842 | #else //KAB_EMBEDDED |
845 | qDebug("KABCore::browse must be fixed"); | 843 | qDebug("KABCore::browse must be fixed"); |
846 | #endif //KAB_EMBEDDED | 844 | #endif //KAB_EMBEDDED |
847 | } | 845 | } |
848 | 846 | ||
849 | void KABCore::selectAllContacts() | 847 | void KABCore::selectAllContacts() |
850 | { | 848 | { |
851 | mViewManager->setSelected( QString::null, true ); | 849 | mViewManager->setSelected( QString::null, true ); |
852 | } | 850 | } |
853 | 851 | ||
854 | void KABCore::deleteContacts() | 852 | void KABCore::deleteContacts() |
855 | { | 853 | { |
856 | QStringList uidList = mViewManager->selectedUids(); | 854 | QStringList uidList = mViewManager->selectedUids(); |
857 | deleteContacts( uidList ); | 855 | deleteContacts( uidList ); |
858 | } | 856 | } |
859 | 857 | ||
860 | void KABCore::deleteContacts( const QStringList &uids ) | 858 | void KABCore::deleteContacts( const QStringList &uids ) |
@@ -2797,54 +2795,49 @@ bool KABCore::syncExternal(KSyncManager* manager, QString resource) | |||
2797 | syncOK = synchronizeAddressbooks( mAddressBook, &abLocal, syncManager->mSyncAlgoPrefs ); | 2795 | syncOK = synchronizeAddressbooks( mAddressBook, &abLocal, syncManager->mSyncAlgoPrefs ); |
2798 | if ( syncOK ) { | 2796 | if ( syncOK ) { |
2799 | if ( syncManager->mWriteBackFile ) { | 2797 | if ( syncManager->mWriteBackFile ) { |
2800 | abLocal.removeSyncAddressees( false ); | 2798 | abLocal.removeSyncAddressees( false ); |
2801 | abLocal.saveAB(); | 2799 | abLocal.saveAB(); |
2802 | abLocal.postExternSync( mAddressBook,mCurrentSyncDevice ); | 2800 | abLocal.postExternSync( mAddressBook,mCurrentSyncDevice ); |
2803 | } | 2801 | } |
2804 | } | 2802 | } |
2805 | setModified(); | 2803 | setModified(); |
2806 | } | 2804 | } |
2807 | if ( syncOK ) | 2805 | if ( syncOK ) |
2808 | mViewManager->refreshView(); | 2806 | mViewManager->refreshView(); |
2809 | return syncOK; | 2807 | return syncOK; |
2810 | 2808 | ||
2811 | } | 2809 | } |
2812 | void KABCore::message( QString m ) | 2810 | void KABCore::message( QString m ) |
2813 | { | 2811 | { |
2814 | 2812 | ||
2815 | topLevelWidget()->setCaption( m ); | 2813 | topLevelWidget()->setCaption( m ); |
2816 | QTimer::singleShot( 15000, this , SLOT ( setCaptionBack())); | 2814 | QTimer::singleShot( 15000, this , SLOT ( setCaptionBack())); |
2817 | } | 2815 | } |
2818 | bool KABCore::syncPhone() | 2816 | bool KABCore::syncPhone() |
2819 | { | 2817 | { |
2820 | QString mCurrentSyncDevice = syncManager->getCurrentSyncDevice(); | 2818 | QString mCurrentSyncDevice = syncManager->getCurrentSyncDevice(); |
2821 | QString fileName; | 2819 | QString fileName = getPhoneFile(); |
2822 | #ifdef _WIN32_ | ||
2823 | fileName = locateLocal("tmp", "phonefile.vcf"); | ||
2824 | #else | ||
2825 | fileName = "/tmp/phonefile.vcf"; | ||
2826 | #endif | ||
2827 | if ( !PhoneAccess::readFromPhone( fileName) ) { | 2820 | if ( !PhoneAccess::readFromPhone( fileName) ) { |
2828 | message(i18n("Phone access failed!")); | 2821 | message(i18n("Phone access failed!")); |
2829 | return false; | 2822 | return false; |
2830 | } | 2823 | } |
2831 | AddressBook abLocal( fileName,"syncContact"); | 2824 | AddressBook abLocal( fileName,"syncContact"); |
2832 | bool syncOK = false; | 2825 | bool syncOK = false; |
2833 | { | 2826 | { |
2834 | abLocal.importFromFile( fileName ); | 2827 | abLocal.importFromFile( fileName ); |
2835 | qDebug("AB phone loaded ,sync device %s",mCurrentSyncDevice.latin1()); | 2828 | qDebug("AB phone loaded ,sync device %s",mCurrentSyncDevice.latin1()); |
2836 | mGlobalSyncMode = SYNC_MODE_EXTERNAL; | 2829 | mGlobalSyncMode = SYNC_MODE_EXTERNAL; |
2837 | abLocal.preparePhoneSync( mCurrentSyncDevice, true ); | 2830 | abLocal.preparePhoneSync( mCurrentSyncDevice, true ); |
2838 | abLocal.preExternSync( mAddressBook ,mCurrentSyncDevice, true ); | 2831 | abLocal.preExternSync( mAddressBook ,mCurrentSyncDevice, true ); |
2839 | syncOK = synchronizeAddressbooks( mAddressBook, &abLocal, syncManager->mSyncAlgoPrefs ); | 2832 | syncOK = synchronizeAddressbooks( mAddressBook, &abLocal, syncManager->mSyncAlgoPrefs ); |
2840 | if ( syncOK ) { | 2833 | if ( syncOK ) { |
2841 | if ( syncManager->mWriteBackFile ) { | 2834 | if ( syncManager->mWriteBackFile ) { |
2842 | abLocal.removeSyncAddressees( true ); | 2835 | abLocal.removeSyncAddressees( true ); |
2843 | abLocal.saveABphone( fileName ); | 2836 | abLocal.saveABphone( fileName ); |
2844 | abLocal.findNewExtIds( fileName, mCurrentSyncDevice ); | 2837 | abLocal.findNewExtIds( fileName, mCurrentSyncDevice ); |
2845 | //abLocal.preparePhoneSync( mCurrentSyncDevice, false ); | 2838 | //abLocal.preparePhoneSync( mCurrentSyncDevice, false ); |
2846 | abLocal.postExternSync( mAddressBook,mCurrentSyncDevice ); | 2839 | abLocal.postExternSync( mAddressBook,mCurrentSyncDevice ); |
2847 | } | 2840 | } |
2848 | } | 2841 | } |
2849 | setModified(); | 2842 | setModified(); |
2850 | } | 2843 | } |
diff --git a/kaddressbook/kabcore.h b/kaddressbook/kabcore.h index 3c33923..5871d39 100644 --- a/kaddressbook/kabcore.h +++ b/kaddressbook/kabcore.h | |||
@@ -127,48 +127,49 @@ class KABCore : public QWidget, public KSyncInterface | |||
127 | resource or a null pointer if no resource was selected by | 127 | resource or a null pointer if no resource was selected by |
128 | the user. | 128 | the user. |
129 | */ | 129 | */ |
130 | KABC::Resource *requestResource( QWidget *parent ); | 130 | KABC::Resource *requestResource( QWidget *parent ); |
131 | 131 | ||
132 | #ifndef KAB_EMBEDDED | 132 | #ifndef KAB_EMBEDDED |
133 | static KAboutData *createAboutData(); | 133 | static KAboutData *createAboutData(); |
134 | #endif //KAB_EMBEDDED | 134 | #endif //KAB_EMBEDDED |
135 | 135 | ||
136 | #ifdef KAB_EMBEDDED | 136 | #ifdef KAB_EMBEDDED |
137 | inline QPopupMenu* getImportMenu() { return ImportMenu;} | 137 | inline QPopupMenu* getImportMenu() { return ImportMenu;} |
138 | inline QPopupMenu* getExportMenu() { return ExportMenu;} | 138 | inline QPopupMenu* getExportMenu() { return ExportMenu;} |
139 | #endif //KAB_EMBEDDED | 139 | #endif //KAB_EMBEDDED |
140 | 140 | ||
141 | public slots: | 141 | public slots: |
142 | #ifdef KAB_EMBEDDED | 142 | #ifdef KAB_EMBEDDED |
143 | void createAboutData(); | 143 | void createAboutData(); |
144 | #endif //KAB_EMBEDDED | 144 | #endif //KAB_EMBEDDED |
145 | 145 | ||
146 | void statusMessage(QString, int time = 0 ); | 146 | void statusMessage(QString, int time = 0 ); |
147 | void showLicence(); | 147 | void showLicence(); |
148 | void faq(); | 148 | void faq(); |
149 | void whatsnew() ; | 149 | void whatsnew() ; |
150 | void synchowto() ; | 150 | void synchowto() ; |
151 | void writeToPhone(); | ||
151 | 152 | ||
152 | /** | 153 | /** |
153 | Is called whenever a contact is selected in the view. | 154 | Is called whenever a contact is selected in the view. |
154 | */ | 155 | */ |
155 | void setContactSelected( const QString &uid ); | 156 | void setContactSelected( const QString &uid ); |
156 | 157 | ||
157 | /** | 158 | /** |
158 | Opens the preferred mail composer with all selected contacts as | 159 | Opens the preferred mail composer with all selected contacts as |
159 | arguments. | 160 | arguments. |
160 | */ | 161 | */ |
161 | void sendMail(); | 162 | void sendMail(); |
162 | 163 | ||
163 | /** | 164 | /** |
164 | Opens the preferred mail composer with the given contacts as | 165 | Opens the preferred mail composer with the given contacts as |
165 | arguments. | 166 | arguments. |
166 | */ | 167 | */ |
167 | void sendMail( const QString& email ); | 168 | void sendMail( const QString& email ); |
168 | 169 | ||
169 | 170 | ||
170 | void mailVCard(); | 171 | void mailVCard(); |
171 | void mailVCard(const QStringList& uids); | 172 | void mailVCard(const QStringList& uids); |
172 | 173 | ||
173 | /** | 174 | /** |
174 | Beams the "WhoAmI contact. | 175 | Beams the "WhoAmI contact. |
@@ -350,48 +351,49 @@ class KABCore : public QWidget, public KSyncInterface | |||
350 | void setDetailsVisible( bool visible ); | 351 | void setDetailsVisible( bool visible ); |
351 | void setDetailsToState(); | 352 | void setDetailsToState(); |
352 | // void slotSyncMenu( int ); | 353 | // void slotSyncMenu( int ); |
353 | private slots: | 354 | private slots: |
354 | void setJumpButtonBarVisible( bool visible ); | 355 | void setJumpButtonBarVisible( bool visible ); |
355 | void setCaptionBack(); | 356 | void setCaptionBack(); |
356 | void importFromOL(); | 357 | void importFromOL(); |
357 | void extensionModified( const KABC::Addressee::List &list ); | 358 | void extensionModified( const KABC::Addressee::List &list ); |
358 | void extensionChanged( int id ); | 359 | void extensionChanged( int id ); |
359 | void clipboardDataChanged(); | 360 | void clipboardDataChanged(); |
360 | void updateActionMenu(); | 361 | void updateActionMenu(); |
361 | void configureKeyBindings(); | 362 | void configureKeyBindings(); |
362 | void removeVoice(); | 363 | void removeVoice(); |
363 | #ifdef KAB_EMBEDDED | 364 | #ifdef KAB_EMBEDDED |
364 | void configureResources(); | 365 | void configureResources(); |
365 | #endif //KAB_EMBEDDED | 366 | #endif //KAB_EMBEDDED |
366 | 367 | ||
367 | void slotEditorDestroyed( const QString &uid ); | 368 | void slotEditorDestroyed( const QString &uid ); |
368 | void configurationChanged(); | 369 | void configurationChanged(); |
369 | void addressBookChanged(); | 370 | void addressBookChanged(); |
370 | 371 | ||
371 | private: | 372 | private: |
372 | void initGUI(); | 373 | void initGUI(); |
373 | void initActions(); | 374 | void initActions(); |
375 | QString getPhoneFile(); | ||
374 | 376 | ||
375 | AddresseeEditorDialog *createAddresseeEditorDialog( QWidget *parent, | 377 | AddresseeEditorDialog *createAddresseeEditorDialog( QWidget *parent, |
376 | const char *name = 0 ); | 378 | const char *name = 0 ); |
377 | 379 | ||
378 | KXMLGUIClient *mGUIClient; | 380 | KXMLGUIClient *mGUIClient; |
379 | 381 | ||
380 | KABC::AddressBook *mAddressBook; | 382 | KABC::AddressBook *mAddressBook; |
381 | 383 | ||
382 | ViewManager *mViewManager; | 384 | ViewManager *mViewManager; |
383 | // QSplitter *mDetailsSplitter; | 385 | // QSplitter *mDetailsSplitter; |
384 | KDGanttMinimizeSplitter *mExtensionBarSplitter; | 386 | KDGanttMinimizeSplitter *mExtensionBarSplitter; |
385 | ViewContainer *mDetails; | 387 | ViewContainer *mDetails; |
386 | KDGanttMinimizeSplitter* mMiniSplitter; | 388 | KDGanttMinimizeSplitter* mMiniSplitter; |
387 | XXPortManager *mXXPortManager; | 389 | XXPortManager *mXXPortManager; |
388 | JumpButtonBar *mJumpButtonBar; | 390 | JumpButtonBar *mJumpButtonBar; |
389 | IncSearchWidget *mIncSearchWidget; | 391 | IncSearchWidget *mIncSearchWidget; |
390 | ExtensionManager *mExtensionManager; | 392 | ExtensionManager *mExtensionManager; |
391 | 393 | ||
392 | KCMultiDialog *mConfigureDialog; | 394 | KCMultiDialog *mConfigureDialog; |
393 | 395 | ||
394 | #ifndef KAB_EMBEDDED | 396 | #ifndef KAB_EMBEDDED |
395 | LDAPSearchDialog *mLdapSearchDialog; | 397 | LDAPSearchDialog *mLdapSearchDialog; |
396 | #endif //KAB_EMBEDDED | 398 | #endif //KAB_EMBEDDED |
397 | // QDict<AddresseeEditorDialog> mEditorDict; | 399 | // QDict<AddresseeEditorDialog> mEditorDict; |