-rw-r--r-- | bin/kdepim/WhatsNew.txt | 42 | ||||
-rw-r--r-- | kabc/vcard/VCardEntity.cpp | 2 |
2 files changed, 43 insertions, 1 deletions
diff --git a/bin/kdepim/WhatsNew.txt b/bin/kdepim/WhatsNew.txt index 2f88091..b9933ca 100644 --- a/bin/kdepim/WhatsNew.txt +++ b/bin/kdepim/WhatsNew.txt @@ -1,194 +1,236 @@ Info about the changes in new versions of KDE-Pim/Pi +********** VERSION 1.9.9 ************ + +KDE-Pim/Pi has a new Member! +It is called PWM/Pi (Passwordmanager/platform-independent) +and it is available for the Zaurus. +It is planned, that it will be available later for Windows. +(And for Linux, of course). +It is a port of the Passwordmanager of KDE. +It will need the MicroKDElibs to run. + +Made loading of addressbooks in KA/Pi up to 7 times faster! +The bigger your addressbook file, the more starting speed +will you gain. (relatively) + +The Qtopia addressbook connector is now platform independend +as well and should work on any platform for importing/exporting +Qtopia and Opie XML files. + +Added a +30min feature to the timezone settings to make +KDE-Pim/Pi useable in Australia and other parts on the +world with strange timezones ;-) + +German "Umlaute" should now be sorted correctly on the Z in KA/Pi. + +It is now possible to disable the +"receive data via infrared" feature, such that syncing with +Outlook is now possible again with Kx/Pi runing. +Please disable it, before syncing Sharp DTM with Outlook. +For your convenience, the "receive data via infrared" feature +is disabled automatically, if you sync Kx/Pi with DTM. +You have to enable it again manually after syncing. +Enabling this feature makes it impossible to start the +Sharp DTM apps. If this feature is enabled, you will only get the +alarm notification from KO/Pi and not from the Sharp calendar. +This is very useful if you sync KO/Pi with Sharp DTM, +because after syncing you usually would get notified about +an alarm by KO/Pi and the Sharp Calendar. + + +Fixed the vcard export bug, wich had the version 1.9.8. + + ********** VERSION 1.9.8 ************ Fixed character decoding in OM/Pi. (e.g. German "Umlaute" were not displayed properly.) Made is possible to reparent todos in KO/Pi. Use contextmenu or keys (look at Help-Keys + Colors) for that. Added the missing Sync-Howto and WhatsNew to the packages. KO/Pi on Linux desktop can now sync with KDE desktop. That means: When using KO/Pi on Linux desktop for syncing with KDE desktop and the Zaurus, the Zaurus can be synced now with all KDE-Calendar resources, not only with one local file. (That makes it possible to sync the Zaurus with the calendar data on a Kolab server) KA/Pi syncing with KDE desktop will be available in the next version. ********** VERSION 1.9.7 ************ KO/Pi - KA/Pi on Windows: Now a directory can be defined by the user, where the application/config data should be saved. Define your desired path in the evironment variable MICROKDEHOME before starting KO/Pi or KA/Pi. An easy Kx/Pi to Kx/Pi syncing is now possible (it is called Pi-Sync) via network. Please look at the Sync Howto. 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!) In the KA/Pi details view are now the preferred tel. numbers displayed on top of the other data ( emails/tel.numbers/addresses) Fixed some syncing problems in KA/Pi. Added font settings for the KA/Pi details view. Added fields "children's name" and "gender" to KA/Pi. Made searching in KA/Pi better: Now the first item in a view is selected after a search automatically and the views can be scrolled up/down when the search input field has the keyboard focus. And, of course, fixed a bunch of reported bugs in KO/Pi and KA/Pi. ********** VERSION 1.9.6 ************ Changes in the external application communication on the Zaurus in order to use less RAM when the apps are running. First syncing of addressbooks (KA/Pi) is possible. ********** VERSION 1.9.5a ************ Fixed a bug in KO/Pi in the SharpDTM sync of version 1.9.5. Fixed some small bugs. KA/Pi shows now the birthday in summary view. Now OM/Pi and KA/Pi are using the date format defined in KO/Pi for displaying dates. ********** VERSION 1.9.5 ************ There is still no Addressbook syncing! New in 1.9.5: Many bugfixes. Better searching in KA/Pi. You can configure in KA/Pi if you want to search only after <return> key pressed. Better mail downloading in OM/Pi. First experimental alpha version of sync of KO/Pi with mobile phones. See gammu documentation for supported phones. You need to install the package kammu_1.9.5_arm.ipk for sync of KO/Pi with mobile phones. kammu_1.9.5_arm.ipk needs libbluetooth and libsdp. Quick hint how to use: NOTE: MOBILE PHONE SYNC IS EXPERIMENTAL! Install kammu_1.9.5_arm.ipk , libbluetooth and libsdp. Create syncprofile - mobile device Remove entry for model. (Leave empty ). Enable infrared on Zaurus and your Phone. Sync. To get a more detailed log, start kopi from konsole. ********** VERSION 1.9.4 ************ This is the version 1.9.4 of KDE-Pim/Pi for the Zaurus. WARNING: PLEASE BACKUP ALL YOUR DATA! We have changed a lot and maybe there are some unknown problems. SYNC HANDLING HAS CHANGED! Such that, if you sync now with an already synded device, you will duplicated entries after the first sync. (This change was introduced to make it possible to sync with mobile phones, which will be available later (maybe in 4 weeks). You need the kmicrokdelibs_1.9.4_arm.ipk as a base for the other programs. If you get the error: "Install only possible in main memory", just try it again to install it on SD card. That worked for me. And it was reported that rebooting Qtopia did help in this case as well. As programs are available: KO/Pi (korganizer ipk) - a calendar program. KA/Pi (kaddressbook ipk ) - an addressbook OM/Pi (kopiemail ipk ) an email program with pop/smtp and IMAP support. An alarm notification program ( korganizer-alarm ipk ) for KO/Pi that notifies you about alarms, even if the Zaurus is in suspend mode. (If you do not see an icon in the taskbar after installing korganizer-alarm, please restart Qtopia) All the applications are installed in a "Pim" TAB. If this TAB is new on your system, you can get an icon in this TAB by installing pim_TAB_icon_1.9.4_arm.ipk All the application are integrated. Such that you can choose in KO/Pi the attendees of a meeting from the addresses in KA/Pi. When you click in KA/Pi on the email address, OM/Pi is started to write the mail. HINT: If you install KPhone/Pi 0.9.7, it will be called, if you click in KA/Pi on a phone number. What's new? SYNC HANDLING HAS CHANGED! Such that, if you sync now with an already synded device, you will duplicated entries after the first sync. (This change was introduced to make it possible to sync with mobile phones, which will be available later (maybe in 4 weeks). New in OM/Pi: When copying(i.e. downloading mails) , you can specify, that only mails of a given size should be downloaded. Added mail copy possibility for selected mails. New in KO/Pi: French is now available for KO/Pi. Choose menu:Actions - Configure:TAB locale Syncing has changed. Phone sync available soon. Not much changes, I cannot remember them ... New in KA/Pi: Beaming possible. Sharp DTM readonly access possible( create a new DTM resource ); Better searching possible. Search is performed only after pressing the return key. Use wildcard * to specify parts of a name. Better name/email selection dialog (called from KO/Pi or OM/Pi). In this dialog, now searching is possible. Like in KA/Pi, use return key and wildcard * . A big improvement is the new management of the contact access. In version 1.9.3, every application was using their own addressbook access data. That means, the addressbook was loaded up to three times in the memory, when accessed by KA/Pi, KO/Pi and OM/Pi. That was wasting of memory, if you had several hundreds of contacts. Now only KA/Pi accesses the addressbook. If KO/Pi or OM/Pi want to get some name/email data, they request KA/Pi to open the name/email selection dialog and send it back to them. If you click on an attendee in a meeting, its contact data is displayed in KA/Pi directly. That means, if KO/Pi or OM/Pi want to access contact data, KA/Pi is started first. New in the KO/Pi alarm applet: Configure your own timer popup menu! (Text and minutes for timer countdown) Just edit the file (yourhomedir)/.kopialarmtimerrc and start/stop a timer to get a new menu with the data of this file. ********** VERSION 1.9.3 ************ 1) Now KO/Pi on Windows imports directly the calendar data of an installed Outlook. Should work with OL version >= 2000. ********** VERSION 1.9.2 ************ 1) KDE-Pim/Pi has got a new member: KmicroMail (KM/Pi) is a mail program, which can handle IMAP and POP mail access. It is based on Opie-Mail v3. All dependencies to the Opie libraries ar removed, such that no additional Opie lib is needed. It is already integrated in KO/Pi and KA/Pi. It it now available for the Zaurus,probably it will be available for other platforms later. Hint: Create your own contact (name + email) diff --git a/kabc/vcard/VCardEntity.cpp b/kabc/vcard/VCardEntity.cpp index 81debf4..a2ff327 100644 --- a/kabc/vcard/VCardEntity.cpp +++ b/kabc/vcard/VCardEntity.cpp @@ -1,175 +1,175 @@ /* libvcard - vCard parsing library for vCard version 3.0 Copyright (C) 1998 Rik Hemsley rik@kde.org Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ #include <qregexp.h> -#include <qdatetime.h>; +#include <qdatetime.h> #include <VCardDefines.h> #include <VCardVCardEntity.h> using namespace VCARD; VCardEntity::VCardEntity() : Entity() { cardList_.setAutoDelete( TRUE ); } VCardEntity::VCardEntity(const VCardEntity & x) : Entity(x) { cardList_.setAutoDelete( TRUE ); } VCardEntity::VCardEntity(const QCString & s) : Entity(s) { cardList_.setAutoDelete( TRUE ); } VCardEntity & VCardEntity::operator = (VCardEntity & x) { if (*this == x) return *this; Entity::operator = (x); return *this; } VCardEntity & VCardEntity::operator = (const QCString & s) { Entity::operator = (s); return *this; } bool VCardEntity::operator == (VCardEntity & x) { x.parse(); return false; } VCardEntity::~VCardEntity() { } void VCardEntity::_parse() { #if 0 QTime tim; tim.start(); int num = 0; // old code vDebug("parse"); QCString s(strRep_); int i = s.find(QRegExp("BEGIN:VCARD", false)); while (i != -1) { i = s.find(QRegExp("BEGIN:VCARD", false), 11); QCString cardStr(s.left(i)); VCard * v = new VCard(cardStr); cardList_.append(v); v->parse(); s.remove(0, i); } #else // this code is up to 17 (!) times faster int start = 0; QTime tim; tim.start(); int i = 11; int len = strRep_.length(); int num = 0; while (i < len ) { while( i < len ) { int add = 1; if ( strRep_.at(i) == 'B' ) { if ( i+add < len && strRep_.at(i+add++) == 'E') if ( i+add < len && strRep_.at(i+add++) == 'G') if ( i+add < len && strRep_.at(i+add++) == 'I') if ( i+add < len && strRep_.at(i+add++) == 'N') if ( i+add < len && strRep_.at(i+add++) == ':') if ( i+add < len && strRep_.at(i+add++) == 'V') if ( i+add < len && strRep_.at(i+add++) == 'C') if ( i+add < len && strRep_.at(i+add++) == 'A') if ( i+add < len && strRep_.at(i+add++) == 'R') if ( i+add < len && strRep_.at(i+add++) == 'D') if ( i+add < len && (strRep_.at(i+add) == '\r' || strRep_.at(i+add) == '\n' )) break; } ++i; } if ( i <= len ) { ++num; char* dat = strRep_.data()+start; VCard * v = new VCard( QCString ( dat,i-start ) ); start = i; cardList_.append(v); v->parse(); } i+= 11; } #endif //qDebug("***time %d found %d", tim.elapsed(), num); } void VCardEntity::_assemble() { VCardListIterator it(cardList_); for (; it.current(); ++it) strRep_ += it.current()->asString() + "\r\n"; // One CRLF for luck. } VCardList & VCardEntity::cardList() { parse(); return cardList_; } void VCardEntity::setCardList(const VCardList & l) { parse(); //US cardList_ = l; VCardListIterator it(l); for (; it.current(); ++it) { VCard* v = new VCard(*it.current()); cardList_.append(v); } } |