-rw-r--r-- | korganizer/kolistview.cpp | 11 | ||||
-rw-r--r-- | korganizer/kolistview.h | 2 |
2 files changed, 9 insertions, 4 deletions
diff --git a/korganizer/kolistview.cpp b/korganizer/kolistview.cpp index d4d9c0f..d0dbb47 100644 --- a/korganizer/kolistview.cpp +++ b/korganizer/kolistview.cpp @@ -347,35 +347,41 @@ void KOListView::setCat() void KOListView::setAlarm() { KOAlarmPrefs kap( this); if ( !kap.exec() ) return; QStringList itemList; QPtrList<KOListViewItem> sel ; QListViewItem *qitem = mListView->firstChild (); while ( qitem ) { if ( qitem->isSelected() ) { - sel.append(((KOListViewItem *)qitem)); + Incidence* inc = ((KOListViewItem *) qitem)->data(); + if ( inc->type() != "Journal" ) { + if ( inc->type() == "Todo" ) { + if ( ((Todo*)inc)->hasDueDate() ) + sel.append(((KOListViewItem *)qitem)); + } else + sel.append(((KOListViewItem *)qitem)); + } } qitem = qitem->nextSibling(); } int count = 0; KOListViewItem * item, *temp; item = sel.first(); Incidence* inc; while ( item ) { inc = item->data(); - if ( inc->type() != "Journal" ) { ++count; if (kap.mAlarmButton->isChecked()) { if (inc->alarms().count() == 0) inc->newAlarm(); QPtrList<Alarm> alarms = inc->alarms(); Alarm *alarm; for (alarm = alarms.first(); alarm; alarm = alarms.next() ) { alarm->setEnabled(true); int j = kap.mAlarmTimeEdit->value()* -60; if (kap.mAlarmIncrCombo->currentItem() == 1) j = j * 60; else if (kap.mAlarmIncrCombo->currentItem() == 2) @@ -391,25 +397,24 @@ void KOListView::setAlarm() alarm->setType(Alarm::Invalid); //alarm->setAudioAlarm("default"); // TODO: Deal with multiple alarms break; // For now, stop after the first alarm } } else { Alarm* alarm = inc->alarms().first(); if ( alarm ) { alarm->setEnabled(false); alarm->setType(Alarm::Invalid); } } - } temp = item; item = sel.next(); mUidDict.remove( inc->uid() ); delete temp;; addIncidence( inc ); } topLevelWidget()->setCaption( i18n("Canged alarm for %1 items").arg( count ) ); qDebug("KO: Set alarm for %d items", count); calendar()->reInitAlarmSettings(); } void KOListView::setCategories( bool removeOld ) { diff --git a/korganizer/kolistview.h b/korganizer/kolistview.h index 78004fe..bd5bd12 100644 --- a/korganizer/kolistview.h +++ b/korganizer/kolistview.h @@ -59,25 +59,25 @@ using namespace KCal; class KOAlarmPrefs : public QDialog { Q_OBJECT public: KOAlarmPrefs( QWidget *par=0, const char *name=0 ) : QDialog( par, name, true ) { setCaption( i18n("Alarm Options") ); QVBoxLayout* alarmLayout = new QVBoxLayout( this ); alarmLayout->setSpacing( 3 ); alarmLayout->setMargin( 3 ); QWidget *parent = this; - mAlarmButton = new QCheckBox(i18n("Set reminder offset to:"),parent); + mAlarmButton = new QCheckBox(i18n("Set reminder ON with offset to:"),parent); alarmLayout->addWidget(mAlarmButton); mAlarmTimeEdit = new QSpinBox ( 0, 9999, 1, parent, "mAlarmTimeEdit " ) ; mAlarmTimeEdit->setValue( 15 ); alarmLayout->addWidget(mAlarmTimeEdit); mAlarmIncrCombo = new QComboBox(false, parent); mAlarmIncrCombo->insertItem(i18n("minute(s)")); mAlarmIncrCombo->insertItem(i18n("hour(s)")); mAlarmIncrCombo->insertItem(i18n("day(s)")); alarmLayout->addWidget(mAlarmIncrCombo); QHBox * hb = new QHBox ( parent ); alarmLayout->addWidget(hb); mAlarmSoundButton = new QPushButton(hb); |