From 7ac6c21e832b7d16bd0888d0b66252b6e152005a Mon Sep 17 00:00:00 2001 From: zautrix Date: Mon, 13 Dec 2004 12:35:00 +0000 Subject: many bugfixes --- diff --git a/bin/kdepim/WhatsNew.txt b/bin/kdepim/WhatsNew.txt index 46d59a3..ec75fad 100644 --- a/bin/kdepim/WhatsNew.txt +++ b/bin/kdepim/WhatsNew.txt @@ -11,6 +11,16 @@ That means, you can restore the latest event/todo/journal you have deleted. A journal is deleted, if you clear all the text of the journal. +Fixed the bug of the editor dialogs in KO/Pi of version 1.9.14. + +KA/Pi starting in 480x640 resolution: +Hide the filter action in toolbar +and added icons for undo/delete/redo in toolbar. + +Change in OM/Pi ViewMail dialog: +When clicking on the "delete" icon the mail is deleted after confirmation as usual. But the edit dialog is not closed as before, now the next mail in the folder is shown automatically (if there is any). + +Fixed a crash when deleting mail-accounts in OM/Pi. ********** VERSION 1.9.14 ************ diff --git a/kaddressbook/kabcore.cpp b/kaddressbook/kabcore.cpp index b7edccd..f6bdda4 100644 --- a/kaddressbook/kabcore.cpp +++ b/kaddressbook/kabcore.cpp @@ -787,6 +787,7 @@ void KABCore::resizeEvent(QResizeEvent* e ) { if ( !mMiniSplitter ) return; + //qDebug("KABCore::resizeEvent(QResizeEvent* e ) "); if ( QApplication::desktop()->width() >= 480 ) { if (QApplication::desktop()->width() == 640 ) { // e.g. 640x480 if ( mMiniSplitter->orientation() == Qt::Vertical ) { @@ -2192,11 +2193,13 @@ void KABCore::addActionsManually() mActionSave->plug( tb ); mViewManager->getFilterAction()->plug ( tb); - if (KGlobal::getDesktopSize() == KGlobal::Desktop ) { - mActionUndo->plug( tb ); - mActionDelete->plug( tb ); - mActionRedo->plug( tb ); + //LR hide filteraction on started in 480x640 + if (QApplication::desktop()->width() == 480 ) { + mViewManager->getFilterAction()->setComboWidth( 0 ); } + mActionUndo->plug( tb ); + mActionDelete->plug( tb ); + mActionRedo->plug( tb ); } else { mActionSave->plug( tb ); tb->enableMoving(false); diff --git a/kaddressbook/viewmanager.cpp b/kaddressbook/viewmanager.cpp index 0d91c12..33bef5a 100644 --- a/kaddressbook/viewmanager.cpp +++ b/kaddressbook/viewmanager.cpp @@ -60,6 +60,7 @@ $Id$ #include #include +#include #include #include @@ -106,7 +107,10 @@ void ViewManager::restoreSettings() mFilterList = Filter::restore( mCore->config(), "Filter" ); mActionSelectFilter->setItems( filterNames() ); mActionSelectFilter->setCurrentItem( KABPrefs::instance()->mCurrentFilter ); - mActionSelectFilter->setComboWidth( 150 ); + int cw = 150; + if (QApplication::desktop()->width() == 480 ) + cw = 0; + mActionSelectFilter->setComboWidth( cw ); // Tell the views to reread their config, since they may have // been modified by global settings QString _oldgroup = mCore->config()->group(); @@ -597,7 +601,10 @@ void ViewManager::configureFilters() mActionSelectFilter->setItems( filterNames() ); mActionSelectFilter->setCurrentItem( pos ); setActiveFilter( pos ); - mActionSelectFilter->setComboWidth( 150 ); + int cw = 150; + if (QApplication::desktop()->width() == 480 ) + cw = 0; + mActionSelectFilter->setComboWidth( cw ); } QStringList ViewManager::filterNames() const diff --git a/kmicromail/libmailwrapper/settings.cpp b/kmicromail/libmailwrapper/settings.cpp index 04afe7c..19093b1 100644 --- a/kmicromail/libmailwrapper/settings.cpp +++ b/kmicromail/libmailwrapper/settings.cpp @@ -50,8 +50,8 @@ void Settings::addAccount( Account *account ) void Settings::delAccount( Account *account ) { - accounts.remove( account ); account->remove(); + accounts.remove( account ); } void Settings::updateAccounts() diff --git a/kmicromail/opiemail.cpp b/kmicromail/opiemail.cpp index ec192ea..915b3e8 100644 --- a/kmicromail/opiemail.cpp +++ b/kmicromail/opiemail.cpp @@ -299,10 +299,35 @@ void OpieMail::replyMail() delete settings; } +void OpieMail::closeViewMail(ViewMail * vm) +{ + vm->hide(); +} +void OpieMail::deleteAndDisplayNextMail(ViewMail * vm) +{ + QListViewItem*item = mailView->currentItem(); + if (!item ) { + closeViewMail(vm); + return; + } + RecMailP mail = ((MailListViewItem*)item)->data(); + mail->Wrapper()->deleteMail( mail ); + item = item->itemBelow(); + if (!item ) { + closeViewMail(vm); + return; + } + mailView->setCurrentItem(item); + mail = ((MailListViewItem*)item)->data(); + RecBodyP body = folderView->fetchBody(mail); + vm->setBody( body ); + vm->setMail( mail ); +} void OpieMail::displayNextMail(ViewMail * vm) { QListViewItem*item = mailView->currentItem(); if (!item) return; + ( (MailListViewItem*)item )->setPixmap( 0, QPixmap() ); item = item->itemBelow(); if (!item) { vm->setCaption(i18n("End of List" )); @@ -329,6 +354,8 @@ void OpieMail::displayMail() readMail.resize( 640, 480); #endif connect( &readMail,SIGNAL( showNextMail(ViewMail *) ), this, SLOT( displayNextMail(ViewMail *) ) ); + connect( &readMail,SIGNAL( deleteAndDisplayNextMail(ViewMail *) ), this, SLOT(deleteAndDisplayNextMail(ViewMail *) ) ); + readMail.exec(); if ( readMail.deleted ) diff --git a/kmicromail/opiemail.h b/kmicromail/opiemail.h index 30968a7..a81a34c 100644 --- a/kmicromail/opiemail.h +++ b/kmicromail/opiemail.h @@ -26,6 +26,7 @@ public slots: virtual void appMessage(const QCString &msg, const QByteArray &data); virtual void message(const QCString &msg, const QByteArray &data); protected slots: + virtual void deleteAndDisplayNextMail(ViewMail * vm); virtual void displayNextMail(ViewMail * vm); virtual void slotSendQueued(); virtual void slotSearchMails(); @@ -47,6 +48,7 @@ protected slots: void clearSelection(); private: + void closeViewMail(ViewMail * vm); QString mPendingEmail; QString mPendingName; QByteArray mPendingData; diff --git a/kmicromail/viewmail.cpp b/kmicromail/viewmail.cpp index 60c764c..6d88cad 100644 --- a/kmicromail/viewmail.cpp +++ b/kmicromail/viewmail.cpp @@ -506,8 +506,9 @@ void ViewMail::slotDeleteMail( ) { if ( QMessageBox::warning(this, i18n("Delete Mail"), QString( i18n("

Do you really want to delete this mail?

" ) + m_mail[0] + " - " + m_mail[1] ) , QMessageBox::Yes, QMessageBox::No ) == QMessageBox::Yes ) { - m_recMail->Wrapper()->deleteMail( m_recMail ); - hide(); + emit deleteAndDisplayNextMail( this); + //m_recMail->Wrapper()->deleteMail( m_recMail ); + //hide(); deleted = true; } } diff --git a/kmicromail/viewmail.h b/kmicromail/viewmail.h index c2c2ce3..d85b8b2 100644 --- a/kmicromail/viewmail.h +++ b/kmicromail/viewmail.h @@ -44,6 +44,7 @@ public: bool deleted; signals: void showNextMail(ViewMail*); + void deleteAndDisplayNextMail(ViewMail *); protected: QString deHtml(const QString &string); AttachItem* searchParent(const QValueList&path); diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index 15c5dd9..a46cd87 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp @@ -2473,8 +2473,9 @@ void CalendarView::showEventEditor() #ifdef DESKTOP_VERSION mEventEditor->show(); #else - if ( mEventEditor->width() != QApplication::desktop()->width() ) { - qDebug("CalendarView: recreate mEventEditor "); + if ( mEventEditor->width() < QApplication::desktop()->width() -60 || mEventEditor->width() > QApplication::desktop()->width() ) { + topLevelWidget()->setCaption( i18n("Recreating edit dialog. Please wait...") ); + qDebug("CalendarView: recreate mEventEditor %d %d", mEventEditor->width(), QApplication::desktop()->width() ); delete mEventEditor; mEventEditor = mDialogManager->getEventEditor(); } @@ -2486,8 +2487,9 @@ void CalendarView::showTodoEditor() #ifdef DESKTOP_VERSION mTodoEditor->show(); #else - if ( mTodoEditor->width() != QApplication::desktop()->width() ) { - qDebug("CalendarView: recreate mTodoEditor "); + if ( mTodoEditor->width() < QApplication::desktop()->width() -60|| mTodoEditor->width() > QApplication::desktop()->width() ) { + topLevelWidget()->setCaption( i18n("Recreating edit dialog. Please wait...") ); + qDebug("CalendarView: recreate mTodoEditor %d %d ", mTodoEditor->width() ,QApplication::desktop()->width() ); delete mTodoEditor; mTodoEditor = mDialogManager->getTodoEditor(); } @@ -2542,8 +2544,8 @@ void CalendarView::cloneIncidence(Incidence * orgInc ) if ( newInc->type() == "Todo" ) { Todo* t = (Todo*) newInc; - mTodoEditor->editTodo( t ); showTodoEditor(); + mTodoEditor->editTodo( t ); if ( mTodoEditor->exec() ) { mCalendar->addTodo( t ); updateView(); @@ -2553,8 +2555,8 @@ void CalendarView::cloneIncidence(Incidence * orgInc ) } else { Event* e = (Event*) newInc; - mEventEditor->editEvent( e ); showEventEditor(); + mEventEditor->editEvent( e ); if ( mEventEditor->exec() ) { mCalendar->addEvent( e ); updateView(); @@ -2606,6 +2608,7 @@ void CalendarView::newEvent(QDate dt) void CalendarView::newEvent(QDateTime fromHint, QDateTime toHint, bool allDay) { + showEventEditor(); mEventEditor->newEvent(fromHint,toHint,allDay); if ( mFilterView->filtersEnabled() ) { CalFilter *filter = mFilterView->selectedFilter(); @@ -2615,7 +2618,6 @@ void CalendarView::newEvent(QDateTime fromHint, QDateTime toHint, bool allDay) if ( filter ) mEventEditor->setSecrecy( filter->getSecrecy() ); } - showEventEditor(); } void CalendarView::todoAdded(Todo * t) { @@ -2644,6 +2646,7 @@ void CalendarView::todoDeleted() void CalendarView::newTodo() { + showTodoEditor(); mTodoEditor->newTodo(QDateTime::currentDateTime().addDays(7),0,true); if ( mFilterView->filtersEnabled() ) { CalFilter *filter = mFilterView->selectedFilter(); @@ -2653,7 +2656,6 @@ void CalendarView::newTodo() if ( filter ) mTodoEditor->setSecrecy( filter->getSecrecy() ); } - showTodoEditor(); } void CalendarView::newSubTodo() @@ -2665,8 +2667,8 @@ void CalendarView::newSubTodo() void CalendarView::newSubTodo(Todo *parentEvent) { - mTodoEditor->newTodo(QDateTime::currentDateTime().addDays(7),parentEvent,true); showTodoEditor(); + mTodoEditor->newTodo(QDateTime::currentDateTime().addDays(7),parentEvent,true); } void CalendarView::newFloatingEvent() @@ -2687,8 +2689,8 @@ void CalendarView::editEvent( Event *event ) showEvent( event ); return; } - mEventEditor->editEvent( event , mFlagEditDescription); showEventEditor(); + mEventEditor->editEvent( event , mFlagEditDescription); } void CalendarView::editJournal( Journal *jour ) { @@ -2705,8 +2707,8 @@ void CalendarView::editTodo( Todo *todo ) showTodo( todo ); return; } - mTodoEditor->editTodo( todo ,mFlagEditDescription); showTodoEditor(); + mTodoEditor->editTodo( todo ,mFlagEditDescription); } diff --git a/qtcompat/qinputdialog.cpp b/qtcompat/qinputdialog.cpp index 770b281..64c581e 100644 --- a/qtcompat/qinputdialog.cpp +++ b/qtcompat/qinputdialog.cpp @@ -35,6 +35,8 @@ ** **********************************************************************/ +//Edited Lutz Rogowski 2004-12-13 + #include "qinputdialog.h" #include @@ -453,6 +455,11 @@ QString QInputDialog::getItem( const QString &caption, const QString &label, con bool ok_ = FALSE; QString result; + int fixWid = 320; + if ( QApplication::desktop()->width() <= 240 ) { + fixWid = 230; + } + dlg->setFixedWidth( fixWid); ok_ = dlg->exec() == QDialog::Accepted; if ( ok ) *ok = ok_; -- cgit v0.9.0.2