-rw-r--r-- | bin/kdepim/WhatsNew.txt | 6 | ||||
-rw-r--r-- | desktop/rpm/kdepim_rpm | 2 | ||||
-rw-r--r-- | kabc/addresseedialog.cpp | 40 | ||||
-rw-r--r-- | korganizer/koeventviewerdialog.cpp | 6 | ||||
-rw-r--r-- | korganizer/kolistview.cpp | 2 | ||||
-rw-r--r-- | korganizer/searchdialog.cpp | 9 | ||||
-rw-r--r-- | korganizer/searchdialog.h | 4 | ||||
-rw-r--r-- | microkde/kdialogbase.cpp | 8 | ||||
-rw-r--r-- | version | 2 |
9 files changed, 59 insertions, 20 deletions
diff --git a/bin/kdepim/WhatsNew.txt b/bin/kdepim/WhatsNew.txt index 86ac9b5..dc22fc6 100644 --- a/bin/kdepim/WhatsNew.txt +++ b/bin/kdepim/WhatsNew.txt @@ -1,10 +1,16 @@ Info about the changes in new versions of KDE-Pim/Pi +********** VERSION 2.0.13 ************ + +Fixed a problem in the addressee select dialog and made it more user friendly by adding a minimize splitter. + +In the search dialog you can switch now the focus from search line edit to the list view by pressing key "arrow down". + ********** VERSION 2.0.12 ************ KO/Pi: Fixed a bug in todo start/due date handling for non recurring todos with a start and due date. Fixed some layout problems in the KO/Pi agenda view when there were many conflicting itmes. Fixed several problems of the keyboard focus in the desktop versions when opening the search dialog/event viewer. Fixed problem in pi-sync mode when wrong password was sent. diff --git a/desktop/rpm/kdepim_rpm b/desktop/rpm/kdepim_rpm index 0d4c9d6..ff9f2dc 100644 --- a/desktop/rpm/kdepim_rpm +++ b/desktop/rpm/kdepim_rpm @@ -1,11 +1,11 @@ Summary: A collection of PIM programs Name: KDE-Pim-Pi -Version: 2.0.12 +Version: 2.0.13 Release: SuSE_9.2 Copyright:GPL Group: Productivity/Pim Source:http://sourceforge.net/projects/kdepimpi/ URL:http://sourceforge.net/projects/kdepimpi/ Packager: zautrix %description diff --git a/kabc/addresseedialog.cpp b/kabc/addresseedialog.cpp index 34f4160..b3429e3 100644 --- a/kabc/addresseedialog.cpp +++ b/kabc/addresseedialog.cpp @@ -18,24 +18,27 @@ Boston, MA 02111-1307, USA. */ #include <qlayout.h> #include <qpushbutton.h> #include <qgroupbox.h> #include <qapplication.h> #include <qregexp.h> +#include <qvbox.h> +#include <qlabel.h> #include <klocale.h> #include <kdebug.h> #include <kglobalsettings.h> #include "stdaddressbook.h" #include "addresseedialog.h" +#include "KDGanttMinimizeSplitter.h" //#include "addresseedialog.moc" using namespace KABC; AddresseeItem::AddresseeItem( QListView *parent, const Addressee &addressee ) : QListViewItem( parent ), mAddressee( addressee ) { @@ -54,48 +57,57 @@ QString AddresseeItem::key( int column, bool ) const int val = value.findRev("@"); return value.mid( val) + value.left( val ); } return text(column).lower(); } AddresseeDialog::AddresseeDialog( QWidget *parent, bool multiple ) : KDialogBase( KDialogBase::Plain, i18n("Select Addressee"), - Ok|Cancel, Ok, parent ), mMultiple( multiple ) + Ok|Cancel, No, parent ), mMultiple( multiple ) { QWidget *topWidget = plainPage(); QBoxLayout *topLayout = new QHBoxLayout( topWidget ); - QBoxLayout *listLayout = new QVBoxLayout; - topLayout->addLayout( listLayout ); - mAddresseeList = new KListView( topWidget ); + + KDGanttMinimizeSplitter* mMiniSplitter = new KDGanttMinimizeSplitter( Qt::Horizontal, topWidget); + mMiniSplitter->setMinimizeDirection ( KDGanttMinimizeSplitter::Right ); + + topLayout->addWidget(mMiniSplitter ); + + QWidget *listWidget = new QWidget( mMiniSplitter ); + + QBoxLayout *listLayout = new QVBoxLayout (listWidget) ; + //topLayout->addLayout( listLayout ); + + mAddresseeList = new KListView( listWidget ); mAddresseeList->addColumn( i18n("Name") ); mAddresseeList->addColumn( i18n("Email") ); mAddresseeList->setAllColumnsShowFocus( true ); mAddresseeList->setFullWidth( true ); listLayout->addWidget( mAddresseeList ); connect( mAddresseeList, SIGNAL( doubleClicked( QListViewItem * ) ), SLOT( slotOk() ) ); - mAddresseeEdit = new QLineEdit( topWidget ); + mAddresseeEdit = new QLineEdit( listWidget ); connect( mAddresseeEdit, SIGNAL( returnPressed() ), SLOT( loadAddressBook() ) ); mAddresseeEdit->setFocus(); listLayout->addWidget( mAddresseeEdit ); if ( mMultiple ) { - QBoxLayout *selectedLayout = new QVBoxLayout; - topLayout->addLayout( selectedLayout ); - topLayout->setSpacing( spacingHint() ); + //QBoxLayout *selectedLayout = new QVBoxLayout; + //topLayout->addLayout( selectedLayout ); + //topLayout->setSpacing( spacingHint() ); - QGroupBox *selectedGroup = new QGroupBox( 1, Horizontal, i18n("Selected"), - topWidget ); - selectedLayout->addWidget( selectedGroup ); + QVBox *selectedGroup = new QVBox( mMiniSplitter ); + new QLabel ( i18n("Selected:"), selectedGroup ); + //selectedLayout->addWidget( selectedGroup ); mSelectedList = new KListView( selectedGroup ); mSelectedList->addColumn( i18n("Name") ); mSelectedList->addColumn( i18n("Email") ); mSelectedList->setAllColumnsShowFocus( true ); mSelectedList->setFullWidth( true ); connect( mSelectedList, SIGNAL( doubleClicked( QListViewItem * ) ), SLOT( removeSelected() ) ); @@ -111,17 +123,21 @@ AddresseeDialog::AddresseeDialog( QWidget *parent, bool multiple ) : } mAddressBook = StdAddressBook::self( true ); connect( mAddressBook, SIGNAL( addressBookChanged( AddressBook* ) ), SLOT( addressBookChanged() ) ); connect( mAddressBook, SIGNAL( loadingFinished( Resource* ) ), SLOT( addressBookChanged() ) ); - loadAddressBook(); + loadAddressBook(); + QValueList<int> splitterSize; + splitterSize.append( ( width() / 5 ) * 3 ); + splitterSize.append( ( width() / 5 ) *2 ); + mMiniSplitter->setSizes( splitterSize ); } AddresseeDialog::~AddresseeDialog() { } void AddresseeDialog::loadAddressBook() { diff --git a/korganizer/koeventviewerdialog.cpp b/korganizer/koeventviewerdialog.cpp index e2c8e6e..f606124 100644 --- a/korganizer/koeventviewerdialog.cpp +++ b/korganizer/koeventviewerdialog.cpp @@ -257,22 +257,28 @@ void KOEventViewerDialog::keyPressEvent ( QKeyEvent * e ) showIncidence(); break; case Qt::Key_E : case Qt::Key_R : editIncidence(); break; case Qt::Key_C: case Qt::Key_Escape: + sendSignalViewerClosed = true; close(); break; case Qt::Key_I: +#ifndef DESKTOP_VERSION + sendSignalViewerClosed = true; + close(); +#else sendSignalViewerClosed = true; slotViewerClosed(); //accept(); +#endif break; default: KDialogBase::keyPressEvent ( e ); break; } } void KOEventViewerDialog::hideEvent ( QHideEvent * e ) diff --git a/korganizer/kolistview.cpp b/korganizer/kolistview.cpp index 6acee75..710a9f9 100644 --- a/korganizer/kolistview.cpp +++ b/korganizer/kolistview.cpp @@ -1078,18 +1078,18 @@ void KOListViewListView::keyPressEvent ( QKeyEvent *e) if ( cn ) { KOListViewItem* ci = (KOListViewItem*)( cn ); if ( ci ){ //emit showIncidence( ci->data()); cn = cn->nextSibling(); if ( cn ) { setCurrentItem ( cn ); ensureItemVisible ( cn ); - emit showIncidence( ci->data()); } + emit showIncidence( ci->data()); } } e->accept(); } break; case Qt::Key_Return: case Qt::Key_Enter: { diff --git a/korganizer/searchdialog.cpp b/korganizer/searchdialog.cpp index cef59a2..678e1bd 100644 --- a/korganizer/searchdialog.cpp +++ b/korganizer/searchdialog.cpp @@ -21,27 +21,29 @@ with any edition of Qt, and distribute the resulting executable, without including the source code for Qt in the source distribution. */ #include <qlayout.h> #include <qcheckbox.h> #include <qgroupbox.h> #include <qlabel.h> +#include <qlistview.h> #include <qwhatsthis.h> #include <qlineedit.h> #include <qpushbutton.h> #include <klocale.h> #include <kmessagebox.h> #include <libkdepim/kdateedit.h> #include "koglobals.h" #include "koprefs.h" +#include "klineedit.h" #include "calendarview.h" #include "koviewmanager.h" #include "searchdialog.h" SearchDialog::SearchDialog(Calendar *calendar,CalendarView *parent) : QVBox( 0 ) @@ -52,17 +54,17 @@ SearchDialog::SearchDialog(Calendar *calendar,CalendarView *parent) // Search expression QHBoxLayout *subLayout = new QHBoxLayout(); layout->addLayout(subLayout); searchLabel = new QLabel(topFrame); searchLabel->setText(i18n("Search for:")); subLayout->addWidget(searchLabel); - searchEdit = new QLineEdit(topFrame); + searchEdit = new KLineEdit(topFrame); subLayout->addWidget(searchEdit); QPushButton *OkButton = new QPushButton( i18n("&Find"), topFrame ); //OkButton->setDefault( true ); connect(OkButton,SIGNAL(clicked()),SLOT(doSearch())); subLayout->addWidget(OkButton); searchEdit->setText("*"); // Find all events by default searchEdit->setFocus(); connect(searchEdit, SIGNAL(textChanged ( const QString & )),this,SLOT(searchTextChanged( const QString & ))); @@ -109,28 +111,33 @@ SearchDialog::SearchDialog(Calendar *calendar,CalendarView *parent) QToolButton *wt = QWhatsThis::whatsThisButton ( rangeWidget ); rangeLayout->addWidget( (QWidget*)wt ); layout->addWidget(rangeWidget); // Results list view listView = new KOListView(mCalendar,topFrame); layout->addWidget(listView); listView->readSettings(KOGlobals::config(),"SearchListView Layout"); + connect(searchEdit,SIGNAL(scrollDOWN()),SLOT(setFocusToList())); setCaption( i18n("KO/Pi Find: ")); #ifdef DESKTOP_VERSION OkButton = new QPushButton( i18n("Close"), this ); connect(OkButton,SIGNAL(clicked()),SLOT(hide())); #endif } SearchDialog::~SearchDialog() { } +void SearchDialog::setFocusToList() +{ + listView->resetFocus(); +} void SearchDialog::accept() { doSearch(); } void SearchDialog::updateList() { //listView->updateList(); if ( isVisible() ) { diff --git a/korganizer/searchdialog.h b/korganizer/searchdialog.h index f4aad9e..b730ed5 100644 --- a/korganizer/searchdialog.h +++ b/korganizer/searchdialog.h @@ -31,16 +31,17 @@ #include <libkcal/calendar.h> #include "kolistview.h" class KDateEdit; class QCheckBox; class QLineEdit; +class KLineEdit; class QLabel; class CalendarView; using namespace KCal; class SearchDialog : public QVBox { Q_OBJECT public: @@ -49,16 +50,17 @@ class SearchDialog : public QVBox KOListView *listview(){ return listView;} void updateView(); public slots: void changeEventDisplay(Event *, int) { updateView(); } void updateConfig(); void updateList(); protected slots: + void setFocusToList(); void accept(); void doSearch(); void searchTextChanged( const QString &_text ); signals: void showEventSignal(Event *); void editEventSignal(Event *); void deleteEventSignal(Event *); @@ -68,17 +70,17 @@ class SearchDialog : public QVBox Calendar *mCalendar; QPtrList<Event> mMatchedEvents; QPtrList<Todo> mMatchedTodos; QPtrList<Journal> mMatchedJournals; QLabel *searchLabel; - QLineEdit *searchEdit; + KLineEdit *searchEdit; KOListView *listView; KDateEdit *mStartDate; KDateEdit *mEndDate; QCheckBox *mSummaryCheck; QCheckBox *mDescriptionCheck; QCheckBox *mCategoryCheck; QCheckBox *mSearchEvent; diff --git a/microkde/kdialogbase.cpp b/microkde/kdialogbase.cpp index 801094a..f453331 100644 --- a/microkde/kdialogbase.cpp +++ b/microkde/kdialogbase.cpp @@ -35,18 +35,20 @@ KDialogBase::KDialogBase( int dialogFace, const QString &caption, QWidget *parent, const char *name, bool modal, bool separator, const QString &user1, const QString &user2, const QString &user3) : KDialog( parent, name, modal ) { init( caption, buttonMask, user1, user2 ); - if (findButton( defaultButton ) ) - (findButton( defaultButton ) )->setFocus(); + if (findButton( defaultButton ) ) { + (findButton( defaultButton ) )->setFocus(); + (findButton( defaultButton ) )->setDefault( true ); + } } KDialogBase::~KDialogBase() { } void KDialogBase::init( const QString &caption, int buttonMask, @@ -71,17 +73,17 @@ void KDialogBase::init( const QString &caption, int buttonMask, connect( mUser2Button, SIGNAL( clicked() ), SLOT( slotUser2() ) ); } else { mUser2Button = 0; } if ( buttonMask & Ok ) { mOkButton = new QPushButton( i18n("Ok"), this ); connect( mOkButton, SIGNAL( clicked() ), SLOT( slotOk() ) ); - mOkButton->setDefault( true ); + //mOkButton->setDefault( true ); } else { mOkButton = 0; } if ( buttonMask & Default ) { mDefaultButton = new QPushButton( i18n("Default"), this ); connect( mDefaultButton, SIGNAL( clicked() ), SIGNAL( defaultClicked() ) ); } else { mDefaultButton = 0; @@ -1 +1 @@ -version = "2.0.12"; +version = "2.0.13"; |