summaryrefslogtreecommitdiffabout
authorzautrix <zautrix>2004-09-08 15:08:13 (UTC)
committer zautrix <zautrix>2004-09-08 15:08:13 (UTC)
commit83570b43ee0d53737007031161c2694824351089 (patch) (side-by-side diff)
tree986fca69a9daf0632fbbfd3f144960858e0ebd84
parenta1bf91640d9719694b3cfb027b0b53988480f041 (diff)
downloadkdepimpi-83570b43ee0d53737007031161c2694824351089.zip
kdepimpi-83570b43ee0d53737007031161c2694824351089.tar.gz
kdepimpi-83570b43ee0d53737007031161c2694824351089.tar.bz2
Fix for the Z
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--bin/kdepim/korganizer/kopiWhatsNew.txt74
-rw-r--r--kaddressbook/kabcore.cpp30
2 files changed, 93 insertions, 11 deletions
diff --git a/bin/kdepim/korganizer/kopiWhatsNew.txt b/bin/kdepim/korganizer/kopiWhatsNew.txt
index 8982a9c..20de933 100644
--- a/bin/kdepim/korganizer/kopiWhatsNew.txt
+++ b/bin/kdepim/korganizer/kopiWhatsNew.txt
@@ -1,99 +1,173 @@
Info about the changes in new versions of KO/Pi
and KDE-Pim/Pi
+********** 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)
in KA/Pi, select this contact and choose menu:
Settings - Set Who Am I.
Now the settings of this contact are used as
the sender data in KM/Pi.
2)
KDE-Pim/Pi is split up in five different
packages now precompiled for Sharp Zaurus:
--kmicrokdelibs_1.9.2_arm.ipk
The libs are needed for any
of the following programs:
--kaddressbook_1.9.2_arm.ipk
--kmicromail_1.9.2_arm.ipk
--korganizer_1.9.2_arm.ipk
Independ from that, there is the alarm applet
available for KO/Pi, which also offers
quick access for a new mail or
showing the addressbook.:
--korganizer-alarm_1.9.2_arm.ipk
Independend means, that the alarm applet
does not need any of the libs or programs above to run.
But it would be quite useless without these programs.
NOTE:
If you get a
"This application depends on other programs"
during installation of
--kmicrokdelibs_1.9.2_arm.ipk
you probably do not have to care about that.
kmicrokdelibs_1.9.2 will come with some
resource plugins, which needs additional libraries.
(E.g. libopie1, if you want to use the
opie resource connector in KA/Pi).
If you do not have this libraries installed,
you simply cannot use the resource.
To make it clear:
If the libraries are missing, the applications
using kmicrokdelibs will start,
because the resources are plugins.
3)
KO/Pi and friends are now installable on SD-Card!
It is recommended to install all libs and apps
on the SD card or all in the internal storage.
There may be problems, if this is mixed.
4)
Fixed two bugs in the alarm notification on Windows.
5)
Great improvement!
KO/Pi uses now the latest version of libical.
Libical is the library which actually reads
the calendar files and extract the data from it.
With the old version, there were problems
(crashes or program hangs) when licical did read
files, which were not stored from KO/Pi.
I do not know, if the new libical works perfect,
but actually it works much better than
the old version.
There are no problems with compatibility with
old calendar files of KO/Pi, of course!
6)
New in KA/Pi:
Opie addressbook resource connector available!
You will need libopie1 and the opie addressbook,
of course.
With the Opie addressbook resource connector,
you can access the Opie addressbook readonly in KA/Pi.
If you want to edit or import the data into KA/Pi,
do this:
a) Create an Opie resource.
(Menu: Settings-Configure Resources).
After configuration and restarting KA/Pi you should see
the Opie contacts in KA/Pi.
b) Select some or all Opie contacts.
(NOTE: +++++
To know exactly, what contacts are Opie contacts,
do this: Choose menu:
View-Modify View - TAB Fields.
Select in the above list "Resource" and click
down arrow to add it to the "Selected fields".
Click OK.
diff --git a/kaddressbook/kabcore.cpp b/kaddressbook/kabcore.cpp
index 74e5cf7..1a1bcff 100644
--- a/kaddressbook/kabcore.cpp
+++ b/kaddressbook/kabcore.cpp
@@ -201,206 +201,214 @@ KABCore::KABCore( KXMLGUIClient *client, bool readWrite, QWidget *parent, const
mIncSearchWidget->setFocus();
connect( mViewManager, SIGNAL( selected( const QString& ) ),
SLOT( setContactSelected( const QString& ) ) );
connect( mViewManager, SIGNAL( executed( const QString& ) ),
SLOT( executeContact( const QString& ) ) );
connect( mViewManager, SIGNAL( deleteRequest( ) ),
SLOT( deleteContacts( ) ) );
connect( mViewManager, SIGNAL( modified() ),
SLOT( setModified() ) );
connect( mExtensionManager, SIGNAL( modified( const KABC::Addressee::List& ) ), this, SLOT( extensionModified( const KABC::Addressee::List& ) ) );
connect( mExtensionManager, SIGNAL( changedActiveExtension( int ) ), this, SLOT( extensionChanged( int ) ) );
connect( mXXPortManager, SIGNAL( modified() ),
SLOT( setModified() ) );
connect( mJumpButtonBar, SIGNAL( jumpToLetter( const QString& ) ),
SLOT( incrementalSearch( const QString& ) ) );
connect( mIncSearchWidget, SIGNAL( fieldChanged() ),
mJumpButtonBar, SLOT( recreateButtons() ) );
connect( mDetails, SIGNAL( sendEmail( const QString& ) ),
SLOT( sendMail( const QString& ) ) );
connect( ExternalAppHandler::instance(), SIGNAL (requestForNameEmailUidList(const QString&, const QString&)),this, SLOT(requestForNameEmailUidList(const QString&, const QString&)));
connect( ExternalAppHandler::instance(), SIGNAL (requestForDetails(const QString&, const QString&, const QString&, const QString&, const QString&)),this, SLOT(requestForDetails(const QString&, const QString&, const QString&, const QString&, const QString&)));
#ifndef KAB_EMBEDDED
connect( mViewManager, SIGNAL( urlDropped( const KURL& ) ),
mXXPortManager, SLOT( importVCard( const KURL& ) ) );
connect( mDetails, SIGNAL( browse( const QString& ) ),
SLOT( browse( const QString& ) ) );
mAddressBookService = new KAddressBookService( this );
#endif //KAB_EMBEDDED
mEditorDialog = 0;
createAddresseeEditorDialog( this );
setModified( false );
}
KABCore::~KABCore()
{
// save();
//saveSettings();
//KABPrefs::instance()->writeConfig();
delete AddresseeConfig::instance();
mAddressBook = 0;
KABC::StdAddressBook::close();
}
void KABCore::restoreSettings()
{
mMultipleViewsAtOnce = KABPrefs::instance()->mMultipleViewsAtOnce;
bool state;
if (mMultipleViewsAtOnce)
state = KABPrefs::instance()->mDetailsPageVisible;
else
state = false;
mActionDetails->setChecked( state );
setDetailsVisible( state );
state = KABPrefs::instance()->mJumpButtonBarVisible;
mActionJumpBar->setChecked( state );
setJumpButtonBarVisible( state );
/*US
QValueList<int> splitterSize = KABPrefs::instance()->mDetailsSplitter;
if ( splitterSize.count() == 0 ) {
splitterSize.append( width() / 2 );
splitterSize.append( width() / 2 );
}
mMiniSplitter->setSizes( splitterSize );
if ( mExtensionBarSplitter ) {
splitterSize = KABPrefs::instance()->mExtensionsSplitter;
if ( splitterSize.count() == 0 ) {
splitterSize.append( width() / 2 );
splitterSize.append( width() / 2 );
}
mExtensionBarSplitter->setSizes( splitterSize );
}
*/
mViewManager->restoreSettings();
mIncSearchWidget->setCurrentItem( KABPrefs::instance()->mCurrentIncSearchField );
mExtensionManager->restoreSettings();
-
- QValueList<int> splitterSize = KABPrefs::instance()->mDetailsSplitter;
- if ( splitterSize.count() == 0 ) {
- splitterSize.append( width() / 2 );
- splitterSize.append( width() / 2 );
+#ifdef DESKTOP_VERSION
+ int wid = width();
+ if ( wid < 10 )
+ wid = 400;
+#else
+ int wid = QApplication::desktop()->width();
+ if ( wid < 640 )
+ wid = QApplication::desktop()->height();
+#endif
+ QValueList<int> splitterSize;// = KABPrefs::instance()->mDetailsSplitter;
+ if ( true /*splitterSize.count() == 0*/ ) {
+ splitterSize.append( wid / 2 );
+ splitterSize.append( wid / 2 );
}
mMiniSplitter->setSizes( splitterSize );
if ( mExtensionBarSplitter ) {
- splitterSize = KABPrefs::instance()->mExtensionsSplitter;
- if ( splitterSize.count() == 0 ) {
- splitterSize.append( width() / 2 );
- splitterSize.append( width() / 2 );
- }
- mExtensionBarSplitter->setSizes( splitterSize );
+ //splitterSize = KABPrefs::instance()->mExtensionsSplitter;
+ if ( true /*splitterSize.count() == 0*/ ) {
+ splitterSize.append( wid / 2 );
+ splitterSize.append( wid / 2 );
+ }
+ mExtensionBarSplitter->setSizes( splitterSize );
}
}
void KABCore::saveSettings()
{
KABPrefs::instance()->mJumpButtonBarVisible = mActionJumpBar->isChecked();
if ( mExtensionBarSplitter )
KABPrefs::instance()->mExtensionsSplitter = mExtensionBarSplitter->sizes();
KABPrefs::instance()->mDetailsPageVisible = mActionDetails->isChecked();
KABPrefs::instance()->mDetailsSplitter = mMiniSplitter->sizes();
#ifndef KAB_EMBEDDED
KABPrefs::instance()->mExtensionsSplitter = mExtensionBarSplitter->sizes();
KABPrefs::instance()->mDetailsSplitter = mDetailsSplitter->sizes();
#endif //KAB_EMBEDDED
mExtensionManager->saveSettings();
mViewManager->saveSettings();
KABPrefs::instance()->mCurrentIncSearchField = mIncSearchWidget->currentItem();
}
KABC::AddressBook *KABCore::addressBook() const
{
return mAddressBook;
}
KConfig *KABCore::config()
{
#ifndef KAB_EMBEDDED
return KABPrefs::instance()->config();
#else //KAB_EMBEDDED
return KABPrefs::instance()->getConfig();
#endif //KAB_EMBEDDED
}
KActionCollection *KABCore::actionCollection() const
{
return mGUIClient->actionCollection();
}
KABC::Field *KABCore::currentSearchField() const
{
if (mIncSearchWidget)
return mIncSearchWidget->currentField();
else
return 0;
}
QStringList KABCore::selectedUIDs() const
{
return mViewManager->selectedUids();
}
KABC::Resource *KABCore::requestResource( QWidget *parent )
{
QPtrList<KABC::Resource> kabcResources = addressBook()->resources();
QPtrList<KRES::Resource> kresResources;
QPtrListIterator<KABC::Resource> resIt( kabcResources );
KABC::Resource *resource;
while ( ( resource = resIt.current() ) != 0 ) {
++resIt;
if ( !resource->readOnly() ) {
KRES::Resource *res = static_cast<KRES::Resource*>( resource );
if ( res )
kresResources.append( res );
}
}
KRES::Resource *res = KRES::SelectDialog::getResource( kresResources, parent );
return static_cast<KABC::Resource*>( res );
}
#ifndef KAB_EMBEDDED
KAboutData *KABCore::createAboutData()
#else //KAB_EMBEDDED
void KABCore::createAboutData()
#endif //KAB_EMBEDDED
{
#ifndef KAB_EMBEDDED
KAboutData *about = new KAboutData( "kaddressbook", I18N_NOOP( "KAddressBook" ),
"3.1", I18N_NOOP( "The KDE Address Book" ),
KAboutData::License_GPL_V2,
I18N_NOOP( "(c) 1997-2003, The KDE PIM Team" ) );
about->addAuthor( "Tobias Koenig", I18N_NOOP( "Current maintainer " ), "tokoe@kde.org" );
about->addAuthor( "Don Sanders", I18N_NOOP( "Original author " ) );
about->addAuthor( "Cornelius Schumacher",
I18N_NOOP( "Co-maintainer, libkabc port, CSV import/export " ),
"schumacher@kde.org" );
about->addAuthor( "Mike Pilone", I18N_NOOP( "GUI and framework redesign " ),
"mpilone@slac.com" );
about->addAuthor( "Greg Stern", I18N_NOOP( "DCOP interface" ) );
about->addAuthor( "Mark Westcott", I18N_NOOP( "Contact pinning" ) );