-rw-r--r-- | korganizer/koeventpopupmenu.cpp | 27 | ||||
-rw-r--r-- | korganizer/koeventpopupmenu.h | 3 | ||||
-rw-r--r-- | korganizer/kolistview.cpp | 20 | ||||
-rw-r--r-- | korganizer/searchdialog.cpp | 4 |
4 files changed, 48 insertions, 6 deletions
diff --git a/korganizer/koeventpopupmenu.cpp b/korganizer/koeventpopupmenu.cpp index 90caaf4..41d331a 100644 --- a/korganizer/koeventpopupmenu.cpp +++ b/korganizer/koeventpopupmenu.cpp @@ -58,5 +58,10 @@ KOEventPopupMenu::KOEventPopupMenu(): QPopupMenu() connect(mCatPopup,SIGNAL( aboutToShow ()), this ,SLOT( fillCatPopup())); connect(mCatPopup,SIGNAL( activated ( int ) ), this ,SLOT( computeCatPopup( int ))); + mCalPopup = new QPopupMenu ( this ); + mCalPopup->setCheckable (true); + connect(mCalPopup,SIGNAL( aboutToShow ()), this ,SLOT( fillCalPopup())); + connect(mCalPopup,SIGNAL( activated ( int ) ), this ,SLOT( computeCalPopup( int ))); mEditOnlyItems.append(insertItem (i18n("Categories"),mCatPopup )); + mEditOnlyItems.append(insertItem (i18n("Calendar"),mCalPopup )); QValueList<int>::Iterator it; for( it = mEditOnlyItems.begin(); it != mEditOnlyItems.end(); ++it ) { @@ -75,7 +80,27 @@ void KOEventPopupMenu::enableDefault( bool enable ) } +void KOEventPopupMenu::fillCalPopup() // CAL +{ + mCalPopup->clear(); + if (!mCurrentIncidence) return; + KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first(); + while ( kkf ) { + int index = mCalPopup->insertItem( kkf->mName, kkf->mCalNumber); + if ( kkf->mErrorOnLoad || kkf->isReadOnly ) + mCalPopup->setItemEnabled( index, false ); + mCalPopup->setItemChecked (index, kkf->mCalNumber == mCurrentIncidence->calID()); + kkf = KOPrefs::instance()->mCalendars.next(); + } +} +void KOEventPopupMenu::computeCalPopup( int index ) // CAL +{ + if (!mCurrentIncidence) return; + mCurrentIncidence->setCalID( index ); + emit categoryChanged( mCurrentIncidence ); +} void KOEventPopupMenu::fillCatPopup() { mCatPopup->clear(); + if (!mCurrentIncidence) return; QStringList checkedCategories = mCurrentIncidence->categories(); int index = 0; @@ -92,4 +117,5 @@ void KOEventPopupMenu::fillCatPopup() void KOEventPopupMenu::computeCatPopup( int index ) { + if (!mCurrentIncidence) return; QStringList categories = mCurrentIncidence->categories(); QString colcat = categories.first(); @@ -110,4 +136,5 @@ void KOEventPopupMenu::computeCatPopup( int index ) void KOEventPopupMenu::showIncidencePopup(Incidence *incidence) { + if ( !incidence) return; mCurrentIncidence = incidence; diff --git a/korganizer/koeventpopupmenu.h b/korganizer/koeventpopupmenu.h index 3d8b595..e28745b 100644 --- a/korganizer/koeventpopupmenu.h +++ b/korganizer/koeventpopupmenu.h @@ -57,4 +57,6 @@ class KOEventPopupMenu : public QPopupMenu { void fillCatPopup(); void computeCatPopup( int ); + void fillCalPopup(); + void computeCalPopup( int ); signals: @@ -76,4 +78,5 @@ class KOEventPopupMenu : public QPopupMenu { bool isDisabled; QPopupMenu *mCatPopup; + QPopupMenu *mCalPopup; }; diff --git a/korganizer/kolistview.cpp b/korganizer/kolistview.cpp index db3f802..cdcbbf0 100644 --- a/korganizer/kolistview.cpp +++ b/korganizer/kolistview.cpp @@ -305,14 +305,19 @@ KOListView::KOListView(Calendar *calendar, QWidget *parent, SLOT(hideAll()),true); - mPopupMenu->insertSeparator(); + selPopup->insertSeparator(); #ifdef DESKTOP_VERSION + mPopupMenu->insertSeparator(); mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), i18n("Print complete list"),this, SLOT(printList()),true); - mPopupMenu->insertSeparator(); #endif mCalPopup = new QPopupMenu ( this ); - mPopupMenu->insertItem( i18n("Set Calendar"), mCalPopup ); + selPopup->insertItem( i18n("Set Calendar"), mCalPopup ); + selPopup->insertItem(i18n("Set categories")+"...",this, + SLOT(setCat()) ); + selPopup->insertItem( i18n("Set alarm..."),this, + SLOT(setAlarm())); +#if 0 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), i18n("Set categories")+"...",this, @@ -321,4 +326,5 @@ KOListView::KOListView(Calendar *calendar, QWidget *parent, i18n("Set alarm..."),this, SLOT(setAlarm()),true); +#endif QObject::connect(mCalPopup,SIGNAL(aboutToShow()),this, SLOT( populateCalPopup() )); @@ -328,5 +334,5 @@ KOListView::KOListView(Calendar *calendar, QWidget *parent, SLOT( catChanged( Incidence * ) )); QPopupMenu * exportPO = new QPopupMenu ( this ); - mPopupMenu->insertItem( i18n("Export"), exportPO ); + selPopup->insertItem( i18n("Export"), exportPO ); exportPO->insertItem( i18n("As iCal (ics) file..."),this, SLOT(saveToFile())); @@ -341,9 +347,13 @@ KOListView::KOListView(Calendar *calendar, QWidget *parent, //mPopupMenu->insertSeparator(); #ifndef DESKTOP_VERSION - mPopupMenu->insertSeparator(); + selPopup->insertSeparator(); + selPopup->insertItem( i18n("Beam via IR"),this, + SLOT(beamSelected())); +#if 0 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), i18n("Beam via IR"),this, SLOT(beamSelected()),true); #endif +#endif /* mPopupMenu = new QPopupMenu; diff --git a/korganizer/searchdialog.cpp b/korganizer/searchdialog.cpp index d0865c3..efe8774 100644 --- a/korganizer/searchdialog.cpp +++ b/korganizer/searchdialog.cpp @@ -125,5 +125,7 @@ SearchDialog::SearchDialog(Calendar *calendar,CalendarView *parent) QWidget *rangeWidget = new QWidget(topFrame); - QHBoxLayout *rangeLayout = new QHBoxLayout(rangeWidget,0,KDialog::spacingHint()-3); + int space = KDialog::spacingHint(); + if ( QApplication::desktop()->width() <= 240 ) space = 1; + QHBoxLayout *rangeLayout = new QHBoxLayout(rangeWidget,0,space); rangeLayout->addWidget(new QLabel(i18n("From:"),rangeWidget)); mStartDate = new KDateEdit(rangeWidget); |