-rw-r--r-- | korganizer/koeditorgeneral.cpp | 13 | ||||
-rw-r--r-- | korganizer/koeditorgeneral.h | 3 | ||||
-rw-r--r-- | korganizer/koeventeditor.cpp | 1 |
3 files changed, 11 insertions, 6 deletions
diff --git a/korganizer/koeditorgeneral.cpp b/korganizer/koeditorgeneral.cpp index abc80d4..f54660f 100644 --- a/korganizer/koeditorgeneral.cpp +++ b/korganizer/koeditorgeneral.cpp @@ -50,24 +50,25 @@ #include "koeditorgeneral.h" #include "kolocationbox.h" #ifndef DESKTOP_VERSION #include <qpe/qpeapplication.h> #else #include <qapplication.h> #endif KOEditorGeneral::KOEditorGeneral(QObject* parent, const char* name) : QObject( parent, name) { + mNextFocus = 0; } KOEditorGeneral::~KOEditorGeneral() { } void KOEditorGeneral::initHeader(QWidget *parent,QBoxLayout *topLayout) { QGridLayout *headerLayout = new QGridLayout(topLayout); #if 0 mOwnerLabel = new QLabel(i18n("Owner:"),parent); @@ -96,33 +97,37 @@ void KOEditorGeneral::initHeader(QWidget *parent,QBoxLayout *topLayout) mLocationEdit = new KOLocationBox(TRUE,parent,10); mLocationEdit->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::MinimumExpanding ,FALSE) ); if ( QApplication::desktop()->width() > 320 ) mLocationEdit->setMaximumHeight( hei + 6); // mLocationEdit = new QLineEdit(parent); connect ( mLocationEdit->lineEdit(), SIGNAL ( returnPressed() ), this, SIGNAL (allAccepted () ) ); headerLayout->addWidget(mLocationEdit,2,1); headerLayout->setColStretch( 1, 10); } void KOEditorGeneral::setFocusOn( int i ) { - qApp->processEvents(); - if ( i == 1 ) { + mNextFocus = i; + QTimer::singleShot( 0, this, SLOT ( slotSetFocusOn() )); +} +void KOEditorGeneral::slotSetFocusOn() +{ + mNextFocus; + if ( mNextFocus == 1 ) { mDescriptionEdit->setFocus(); mDescriptionEdit->setCursorPosition( mDescriptionEdit->numLines (), 333); } - if ( i == 2 ) { + if ( mNextFocus == 2 ) { mSummaryEdit->setFocus(); } - } void KOEditorGeneral::editCategories() { // qDebug("KOEditorGeneral::editCategories() "); KPIM::CategorySelectDialog* csd = new KPIM::CategorySelectDialog( KOPrefs::instance(), 0 ); connect(csd,SIGNAL(categoriesSelected(const QString &)), this ,SLOT(setCategories(const QString &))); //KOGlobals::fitDialogToScreen( csd ); csd->setColorEnabled(); csd->setSelected( QStringList::split (",", mCategoriesLabel->text()) ); csd->exec(); delete csd; } diff --git a/korganizer/koeditorgeneral.h b/korganizer/koeditorgeneral.h index f4728c7..2069e9c 100644 --- a/korganizer/koeditorgeneral.h +++ b/korganizer/koeditorgeneral.h @@ -72,30 +72,31 @@ class KOEditorGeneral : public QObject void enableAlarm( bool enable ); void setSecrecy( int num ); public slots: void setCategories(const QString &); void editCategories(); protected slots: void enableAlarmEdit( bool enable ); void disableAlarmEdit( bool disable ); void alarmDisable( bool disable ); void pickAlarmSound(); void pickAlarmProgram(); - + void slotSetFocusOn(); signals: void openCategoryDialog(); void allAccepted(); protected: + int mNextFocus; //QLineEdit *mSummaryEdit; //QLineEdit *mLocationEdit; KOLocationBox *mSummaryEdit; KOLocationBox *mLocationEdit; QLabel *mAlarmBell; QCheckBox *mAlarmButton; QSpinBox *mAlarmTimeEdit; QPushButton *mAlarmSoundButton; QPushButton *mAlarmProgramButton; QComboBox *mAlarmIncrCombo; KTextEdit *mDescriptionEdit; QLabel *mOwnerLabel; diff --git a/korganizer/koeventeditor.cpp b/korganizer/koeventeditor.cpp index 337db9b..e23e680 100644 --- a/korganizer/koeventeditor.cpp +++ b/korganizer/koeventeditor.cpp @@ -177,25 +177,24 @@ void KOEventEditor::setupRecurrence() QBoxLayout *topLayout = new QVBoxLayout( topFrame ); mRecurrence = new KOEditorRecurrence( topFrame ); topLayout->addWidget( mRecurrence ); } void KOEventEditor::editEvent(Event *event, bool showDescription) { // init(); mEvent = event; readEvent(mEvent); - qApp->processEvents(); if ( showDescription ) { showPage( 1 ); mGeneral->setFocusOn( 1 ); } else { showPage( 0 ); mGeneral->setFocusOn( 2 ); } } void KOEventEditor::newEvent( QDateTime from, QDateTime to, bool allDay ) { // init(); |