summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--bin/kdepim/korganizer/kopiWhatsNew.txt8
-rw-r--r--kabc/addressbook.cpp14
-rw-r--r--kabc/addressbook.h2
-rw-r--r--kabc/addressee.cpp17
-rw-r--r--kabc/addressee.h1
-rw-r--r--kaddressbook/kabcore.cpp20
-rw-r--r--kaddressbook/kabcore.h1
-rw-r--r--kaddressbook/kaddressbookmain.cpp12
-rw-r--r--kaddressbook/kaddressbookmain.h2
-rw-r--r--kaddressbook/mainembedded.cpp6
-rw-r--r--korganizer/mainwindow.cpp13
-rw-r--r--libkdepim/ksyncmanager.cpp6
12 files changed, 75 insertions, 27 deletions
diff --git a/bin/kdepim/korganizer/kopiWhatsNew.txt b/bin/kdepim/korganizer/kopiWhatsNew.txt
index eea860c..3f95dcf 100644
--- a/bin/kdepim/korganizer/kopiWhatsNew.txt
+++ b/bin/kdepim/korganizer/kopiWhatsNew.txt
@@ -15,9 +15,15 @@ An easy Kx/Pi to Kx/Pi syncing is now possible
Please look at the Sync Howto.
-Exporting of data to mobile phones is now possible.
+Exporting of calendar data and contacts to mobile phones is now possible.
The SyncHowto is updated with information howto
access/sync mobile phones.
Please look at the Sync Howto.
+Now KO/Pi and KA/Pi on the Zaurus can receive data via infrared directly.
+Please disable Fastload for the original contact/calendar applications
+and close them.
+KO/Pi and KA/Pi must be running in order to receive the data.
+(KO/Pi and KA/Pi are always running if Fastload for them is enabled!)
+
********** VERSION 1.9.6 ************
diff --git a/kabc/addressbook.cpp b/kabc/addressbook.cpp
index dc3cda1..bf6d053 100644
--- a/kabc/addressbook.cpp
+++ b/kabc/addressbook.cpp
@@ -403,5 +403,5 @@ void AddressBook::export2File( QString fileName )
outFile.close();
}
-void AddressBook::importFromFile( QString fileName )
+void AddressBook::importFromFile( QString fileName, bool replaceLabel )
{
@@ -412,6 +412,12 @@ void AddressBook::importFromFile( QString fileName )
QByteArray rawData = file.readAll();
file.close();
-
- QString data = QString::fromUtf8( rawData.data(), rawData.size() + 1 );
+ qDebug("AddressBook::importFromFile ");
+ QString data;
+ if ( replaceLabel ) {
+ data = QString::fromLatin1( rawData.data(), rawData.size() + 1 );
+ data.replace ( QRegExp("LABEL") , "ADR" );
+ data.replace ( QRegExp("CHARSET=ISO-8859-1") , "" );
+ } else
+ data = QString::fromUtf8( rawData.data(), rawData.size() + 1 );
KABC::VCardTool tool;
list = tool.parseVCards( data );
@@ -419,4 +425,6 @@ void AddressBook::importFromFile( QString fileName )
for ( it = list.begin(); it != list.end(); ++it ) {
(*it).setResource( 0 );
+ if ( replaceLabel )
+ (*it).removeVoice();
insertAddressee( (*it), false, true );
}
diff --git a/kabc/addressbook.h b/kabc/addressbook.h
index 3603ec1..cea1b03 100644
--- a/kabc/addressbook.h
+++ b/kabc/addressbook.h
@@ -144,5 +144,5 @@ class AddressBook : public QObject
bool saveAB( );
void export2File( QString fileName );
- void importFromFile( QString fileName );
+ void importFromFile( QString fileName, bool replaceLabel = false );
/**
Returns a iterator for first entry of address book.
diff --git a/kabc/addressee.cpp b/kabc/addressee.cpp
index 19a1845..3f3d5c0 100644
--- a/kabc/addressee.cpp
+++ b/kabc/addressee.cpp
@@ -316,4 +316,21 @@ void Addressee::mergeContact( const Addressee& ad )
}
+bool Addressee::removeVoice()
+{
+ PhoneNumber::List phoneN = phoneNumbers();
+ PhoneNumber::List::Iterator phoneIt;
+ bool found = false;
+ for ( phoneIt = phoneN.begin(); phoneIt != phoneN.end(); ++phoneIt ) {
+ if ( (*phoneIt).type() & PhoneNumber::Voice) { // voice found
+ if ((*phoneIt).type() - PhoneNumber::Voice ) {
+ (*phoneIt).setType((*phoneIt).type() - PhoneNumber::Voice );
+ insertPhoneNumber( (*phoneIt) );
+ found = true;
+ }
+ }
+
+ }
+ return found;
+}
void Addressee::simplifyAddresses()
{
diff --git a/kabc/addressee.h b/kabc/addressee.h
index 44f0629..9336edc 100644
--- a/kabc/addressee.h
+++ b/kabc/addressee.h
@@ -122,4 +122,5 @@ class Addressee
void simplifyPhoneNumbers();
void simplifyPhoneNumberTypes();
+ bool removeVoice();
/**
diff --git a/kaddressbook/kabcore.cpp b/kaddressbook/kabcore.cpp
index 9b059d3..3a542ba 100644
--- a/kaddressbook/kabcore.cpp
+++ b/kaddressbook/kabcore.cpp
@@ -326,4 +326,10 @@ KABCore::~KABCore()
}
+void KABCore::recieve( QString fn )
+{
+ qDebug("KABCore::recieve ");
+ mAddressBook->importFromFile( fn, true );
+ topLevelWidget()->raise();
+}
void KABCore::restoreSettings()
{
@@ -2087,18 +2093,6 @@ void KABCore::removeVoice()
KABC::Addressee::List::Iterator it;
for ( it = list.begin(); it != list.end(); ++it ) {
- PhoneNumber::List phoneNumbers = (*it).phoneNumbers();
- PhoneNumber::List::Iterator phoneIt;
- bool found = false;
- for ( phoneIt = phoneNumbers.begin(); phoneIt != phoneNumbers.end(); ++phoneIt ) {
- if ( (*phoneIt).type() & PhoneNumber::Voice) { // voice found
- if ((*phoneIt).type() - PhoneNumber::Voice ) {
- (*phoneIt).setType((*phoneIt).type() - PhoneNumber::Voice );
- (*it).insertPhoneNumber( (*phoneIt) );
- found = true;
- }
- }
- }
- if ( found )
+ if ( (*it).removeVoice() )
contactModified((*it) );
}
diff --git a/kaddressbook/kabcore.h b/kaddressbook/kabcore.h
index c628399..43c5f99 100644
--- a/kaddressbook/kabcore.h
+++ b/kaddressbook/kabcore.h
@@ -343,4 +343,5 @@ class KABCore : public QWidget, public KSyncInterface
void contactSelected( const QPixmap &pixmap );
public slots:
+ void recieve(QString cmsg );
void getFile( bool success );
void syncFileRequest();
diff --git a/kaddressbook/kaddressbookmain.cpp b/kaddressbook/kaddressbookmain.cpp
index f48f214..8c4ca09 100644
--- a/kaddressbook/kaddressbookmain.cpp
+++ b/kaddressbook/kaddressbookmain.cpp
@@ -93,5 +93,15 @@ KAddressBookMain::~KAddressBookMain()
// mCore->saveSettings();
}
-
+void KAddressBookMain::recieve( const QCString& cmsg, const QByteArray& data )
+{
+ qDebug("KA: QCOP message received: %s ", cmsg.data() );
+ if ( cmsg == "setDocument(QString)" ) {
+ QDataStream stream( data, IO_ReadOnly );
+ QString fileName;
+ stream >> fileName;
+ mCore->recieve( fileName );
+ return;
+ }
+}
void KAddressBookMain::showMinimized ()
{
diff --git a/kaddressbook/kaddressbookmain.h b/kaddressbook/kaddressbookmain.h
index cf6f899..40d2bdd 100644
--- a/kaddressbook/kaddressbookmain.h
+++ b/kaddressbook/kaddressbookmain.h
@@ -82,5 +82,5 @@ class KAddressBookMain : public KMainWindow, virtual public KAddressBookIface
virtual void save();
virtual void exit();
-
+ void recieve( const QCString& cmsg, const QByteArray& data );
protected:
void initActions();
diff --git a/kaddressbook/mainembedded.cpp b/kaddressbook/mainembedded.cpp
index 965fb06..6dd97b8 100644
--- a/kaddressbook/mainembedded.cpp
+++ b/kaddressbook/mainembedded.cpp
@@ -1,4 +1,5 @@
#ifndef DESKTOP_VERSION
#include <qpe/qpeapplication.h>
+#include <qcopchannel_qws.h>
#include <stdlib.h>
#else
@@ -79,4 +80,6 @@ int main( int argc, char **argv )
#ifndef DESKTOP_VERSION
a.showMainWidget( &m );
+ QCopChannel* c1 = new QCopChannel("QPE/Application/addressbook",&m, "channelAB" ) ;
+ QObject::connect( c1, SIGNAL (received ( const QCString &, const QByteArray & )),&m, SLOT(recieve( const QCString&, const QByteArray& )));
#else
a.setMainWidget( &m );
@@ -85,4 +88,7 @@ int main( int argc, char **argv )
#endif
a.exec();
+#ifndef DESKTOP_VERSION
+ delete c1;
+#endif
}
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp
index 3c16458..a69a0bd 100644
--- a/korganizer/mainwindow.cpp
+++ b/korganizer/mainwindow.cpp
@@ -336,10 +336,11 @@ void MainWindow::recieve( const QCString& cmsg, const QByteArray& data )
qDebug("KO: QCOP message received: %s ", cmsg.data() );
- if ( cmsg == "-writeFile" ) {
- // I made from the "-writeFile" an "-writeAlarm"
- mView->viewManager()->showWhatsNextView();
- mCalendar->checkAlarmForIncidence( 0, true);
- showMaximized();
- raise();
+ if ( cmsg == "setDocument(QString)" ) {
+ QDataStream stream( data, IO_ReadOnly );
+ QString fileName;
+ stream >> fileName;
+ qDebug("filename %s ", fileName.latin1());
+ KOPrefs::instance()->mLastSyncedLocalFile = fileName ;
+ mSyncManager->slotSyncMenu( 1002 );
return;
}
diff --git a/libkdepim/ksyncmanager.cpp b/libkdepim/ksyncmanager.cpp
index 08b1a3d..80fb147 100644
--- a/libkdepim/ksyncmanager.cpp
+++ b/libkdepim/ksyncmanager.cpp
@@ -192,4 +192,8 @@ void KSyncManager::slotSyncMenu( int action )
} else if ( action == 1002 ) {
+ mWriteBackFile = false;
+ mAskForPreferences = false;
+ mShowSyncSummary = false;
+ mSyncAlgoPrefs = 3;
quickSyncLocalFile();
@@ -367,5 +371,5 @@ void KSyncManager::quickSyncLocalFile()
{
- if ( syncWithFile( mPrefs->mLastSyncedLocalFile, false ) ) {
+ if ( syncWithFile( mPrefs->mLastSyncedLocalFile, true ) ) {
qDebug("quick syncLocalFile() successful ");