-rw-r--r-- | korganizer/koeditorgeneralevent.cpp | 26 | ||||
-rw-r--r-- | korganizer/koeditorgeneralevent.h | 2 | ||||
-rw-r--r-- | korganizer/koeventviewerdialog.cpp | 7 |
3 files changed, 19 insertions, 16 deletions
diff --git a/korganizer/koeditorgeneralevent.cpp b/korganizer/koeditorgeneralevent.cpp index 3b2a276..af97ee9 100644 --- a/korganizer/koeditorgeneralevent.cpp +++ b/korganizer/koeditorgeneralevent.cpp @@ -137,19 +137,18 @@ void KOEditorGeneralEvent::initTime(QWidget *parent,QBoxLayout *topLayout) connect(mEndTimeEdit, SIGNAL(timeChanged(QTime)), this, SLOT(endTimeChanged(QTime))); // date widgets are checked if they contain a valid date connect(mStartDateEdit, SIGNAL(dateChanged(QDate)), this, SLOT(startDateChanged(QDate))); connect(mEndDateEdit, SIGNAL(dateChanged(QDate)), this, SLOT(endDateChanged(QDate))); - connect(mStartDateEdit,SIGNAL(setTimeTo(QTime)),mStartTimeEdit,SLOT(setTime(QTime))); - connect(mEndDateEdit,SIGNAL(setTimeTo(QTime)),mEndTimeEdit,SLOT(setTime(QTime))); - + connect(mStartDateEdit,SIGNAL(setTimeTo(QTime)),this,SLOT(sTimeChanged(QTime))); + connect(mEndDateEdit,SIGNAL(setTimeTo(QTime)),this,SLOT(eTimeChanged(QTime))); } void KOEditorGeneralEvent::initClass(QWidget *parent,QBoxLayout *topLayout) { QBoxLayout *classLayout = new QHBoxLayout(topLayout); QLabel *freeTimeLabel = new QLabel(i18n("Show time as:"),parent); classLayout->addWidget(freeTimeLabel); @@ -191,38 +190,45 @@ void KOEditorGeneralEvent::setDateTimes(QDateTime start, QDateTime end) mCurrStartDateTime = start; mCurrEndDateTime = end; setDuration(); emitDateTimeStr(); } +void KOEditorGeneralEvent::sTimeChanged(QTime ti) +{ + mStartTimeEdit->setTime( ti ); + startTimeChanged ( ti); +} +void KOEditorGeneralEvent::eTimeChanged(QTime ti ) +{ + mEndTimeEdit->setTime( ti ); + endTimeChanged( ti ); +} void KOEditorGeneralEvent::startTimeChanged(QTime newtime) { - kdDebug() << "KOEditorGeneralEvent::startTimeChanged() " << newtime.toString() << endl; int secsep = mCurrStartDateTime.secsTo(mCurrEndDateTime); - mCurrStartDateTime.setTime(newtime); - + mCurrStartDateTime = QDateTime( mStartDateEdit->date(), QTime(newtime.hour(),newtime.minute(),0) ); // adjust end time so that the event has the same duration as before. - mCurrEndDateTime = mCurrStartDateTime.addSecs(secsep); + if( secsep > 0 ) + mCurrEndDateTime = mCurrStartDateTime.addSecs(secsep); mEndTimeEdit->setTime(mCurrEndDateTime.time()); mEndDateEdit->setDate(mCurrEndDateTime.date()); emit dateTimesChanged(mCurrStartDateTime,mCurrEndDateTime); } void KOEditorGeneralEvent::endTimeChanged(QTime newtime) { -// kdDebug() << "KOEditorGeneralEvent::endTimeChanged " << newtime.toString() << endl; - QDateTime newdt(mCurrEndDateTime.date(), newtime); - mCurrEndDateTime = newdt; + mCurrEndDateTime = QDateTime ( mEndDateEdit->date(), QTime(newtime.hour(),newtime.minute(),0)); emit dateTimesChanged(mCurrStartDateTime,mCurrEndDateTime); } void KOEditorGeneralEvent::startDateChanged(QDate newdate) { int daysep = mCurrStartDateTime.daysTo(mCurrEndDateTime); diff --git a/korganizer/koeditorgeneralevent.h b/korganizer/koeditorgeneralevent.h index 0174788..9649806 100644 --- a/korganizer/koeditorgeneralevent.h +++ b/korganizer/koeditorgeneralevent.h @@ -78,16 +78,18 @@ class KOEditorGeneralEvent : public KOEditorGeneral void dontAssociateTime(bool noTime); void startTimeChanged(QTime); void startDateChanged(QDate); void endTimeChanged(QTime); void endDateChanged(QDate); void emitDateTimeStr(); + void sTimeChanged(QTime); + void eTimeChanged(QTime); signals: void dateTimesChanged(QDateTime start,QDateTime end); void allDayChanged(bool); void dateTimeStrChanged(const QString &); private: bool mTemplate; diff --git a/korganizer/koeventviewerdialog.cpp b/korganizer/koeventviewerdialog.cpp index baa11b5..e5ff8af 100644 --- a/korganizer/koeventviewerdialog.cpp +++ b/korganizer/koeventviewerdialog.cpp @@ -211,20 +211,17 @@ void KOEventViewerDialog::editIncidence() { sendSignalViewerClosed = false; if ( mSyncMode ) { mSyncResult = 2; accept(); return; } if ( mIncidence ){ -#ifndef DESKTOP_VERSION - //hide(); close(); -#endif emit editIncidence( mIncidence ); } } void KOEventViewerDialog::showIncidence() { sendSignalViewerClosed = false; if ( mSyncMode ) { mSyncResult = 1; @@ -249,19 +246,17 @@ void KOEventViewerDialog::showIncidence() emit todoCompleted(((Todo*)mIncidence)); } else { date = mIncidence->dtStart().date(); globalFlagBlockAgenda = 1; emit showAgendaView( false ); globalFlagBlockAgenda = 2; emit jumpToTime( date ); } -#ifndef DESKTOP_VERSION - reject(); -#endif + close(); } } void KOEventViewerDialog::keyPressEvent ( QKeyEvent * e ) { switch ( e->key() ) { case Qt::Key_A : case Qt::Key_L : |