-rw-r--r-- | bin/kdepim/korganizer/germantranslation.txt | 2 | ||||
-rw-r--r-- | korganizer/komonthview.cpp | 95 | ||||
-rw-r--r-- | korganizer/komonthview.h | 8 | ||||
-rw-r--r-- | korganizer/koprefs.cpp | 1 | ||||
-rw-r--r-- | korganizer/koprefs.h | 1 | ||||
-rw-r--r-- | korganizer/koprefsdialog.cpp | 4 | ||||
-rw-r--r-- | korganizer/koviewmanager.cpp | 7 |
7 files changed, 106 insertions, 12 deletions
diff --git a/bin/kdepim/korganizer/germantranslation.txt b/bin/kdepim/korganizer/germantranslation.txt index 4e6f994..2981762 100644 --- a/bin/kdepim/korganizer/germantranslation.txt +++ b/bin/kdepim/korganizer/germantranslation.txt @@ -1353,3 +1353,3 @@ { "Alternating background of list views","Abwechselnder Hintergrund für Listen" }, -{ "","" }, +{ "times","Zeiten" }, { "","" }, diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp index b175f9a..2b7e41f 100644 --- a/korganizer/komonthview.cpp +++ b/korganizer/komonthview.cpp @@ -408,8 +408,18 @@ void MonthViewItem::paint(QPainter *p) QColorGroup::HighlightedText : QColorGroup::Foreground ) ); - p->drawText( x, yPos, text() ); - if ( mIncidence->cancelled() ) { - int wid = fm.width( text() ); - p->drawLine( x, heihei/2 ,x+wid, heihei/2 ); - } - + if ( KOPrefs::instance()->mMonthShowTimes || isWeekItem) { + p->drawText( x, yPos, text() ); + if ( mIncidence->cancelled() ) { + int wid = fm.width( text() ); + p->drawLine( x, heihei/2 ,x+wid, heihei/2 ); + } + } else { + QString pText = text(); + if( pText.mid(2,1) == ":" ) + pText = pText.mid( 6 ); + p->drawText( x, yPos, pText ); + if ( mIncidence->cancelled() ) { + int wid = fm.width( pText ); + p->drawLine( x, heihei/2 ,x+wid, heihei/2 ); + } + } } @@ -1044,2 +1054,3 @@ void MonthViewCell::cellClicked( QListBoxItem *item ) { + mMonthView->setSelectedCell( this ); qDebug("CELL "); @@ -1055,4 +1066,7 @@ void MonthViewCell::contextMenu( QListBoxItem *item ) { - if ( !item ) return; - + mMonthView->setPopupCell( this ); + if ( !item ) { + mMonthView->showContextMenu( 0 ); + return; + } MonthViewItem *eventItem = static_cast<MonthViewItem *>( item ); @@ -1085,2 +1099,3 @@ KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name) clPending = true; + mPopupCell = 0; mNavigatorBar = new NavigatorBar( QDate::currentDate(), this, "useBigPixmaps" ); @@ -1202,2 +1217,25 @@ KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name) mContextMenu = eventPopup(); + mContextMenu->addAdditionalItem(QIconSet(QPixmap()), + i18n("New Event..."),this, + SLOT(slotNewEvent()),false); + mContextMenu->addAdditionalItem(QIconSet(QPixmap()), + i18n("New Todo..."),this, + SLOT(slotNewTodo()),false); + mContextMenu->addAdditionalItem(QIconSet(QPixmap()), + i18n("Journal"),this, + SLOT(slotEditJournal()),false); + + + + QString pathString = ""; + if ( !KOPrefs::instance()->mToolBarMiniIcons ) { + if ( QApplication::desktop()->width() < 480 ) + pathString += "icons16/"; + } else + pathString += "iconsmini/"; + mNewItemMenu = new QPopupMenu( this ); + mNewItemMenu->insertItem( SmallIcon( pathString +"newevent" ), i18n("New Event..."),this, SLOT(slotNewEvent())); + mNewItemMenu->insertItem( SmallIcon( pathString +"newtodo" ),i18n("New Todo..."),this,SLOT(slotNewTodo()),false); + mNewItemMenu->insertItem( SmallIcon( pathString +"journal" ),i18n("Journal"),this,SLOT(slotEditJournal()),false); + // updateConfig(); //useless here... @@ -1895,3 +1933,8 @@ void KOMonthView::showContextMenu( Incidence *incidence ) { - mContextMenu->showIncidencePopup(incidence); + if( incidence ) + mContextMenu->showIncidencePopup(incidence); + else { + //qDebug("KOMonthView::showContextMenu "); + mNewItemMenu->popup(QCursor::pos()); + } /* @@ -1911,3 +1954,3 @@ void KOMonthView::setSelectedCell( MonthViewCell *cell ) { - //qDebug("KOMonthView::setSelectedCell "); + //qDebug("KOMonthView::setSelectedCell %d", cell); if ( mSelectedCell && mSelectedCell != cell ) { @@ -2016 +2059,33 @@ void KOMonthView::prevCell() } + +void KOMonthView::slotNewTodo() +{ + //qDebug("KOMonthView::slotNewTodo() "); + if ( mPopupCell ){ + QDateTime dt( mPopupCell->date(), QTime( KOPrefs::instance()->mStartTime, 0 ) ); + emit newTodoSignal(dt,true); + } + mPopupCell = 0; +} +void KOMonthView::slotNewEvent() +{ + if ( mPopupCell ) { + QDateTime dt( mPopupCell->date(), QTime( KOPrefs::instance()->mStartTime, 0 ) ); + emit newEventSignal( dt ); + } + //qDebug("KOMonthView::slotNewEvent() "); + mPopupCell = 0; +} + +void KOMonthView::slotEditJournal() +{ + if ( mPopupCell ) + emit showJournalSignal( 7, mPopupCell->date() ); + //qDebug("KOMonthView::slotEditJournal() "); + mPopupCell = 0; +} + +void KOMonthView::setPopupCell( MonthViewCell * c) +{ + mPopupCell = c; +} diff --git a/korganizer/komonthview.h b/korganizer/komonthview.h index c6b6b5e..de5c014 100644 --- a/korganizer/komonthview.h +++ b/korganizer/komonthview.h @@ -273,2 +273,3 @@ class KOMonthView: public KOEventView void setSelectedCell( MonthViewCell * ); + void setPopupCell( MonthViewCell * ); void switchView(); @@ -278,2 +279,5 @@ class KOMonthView: public KOEventView protected slots: + void slotNewTodo(); + void slotNewEvent(); + void slotEditJournal(); void slotComputeLayout(); @@ -287,2 +291,4 @@ class KOMonthView: public KOEventView void showDaySignal( QDate ); + void newTodoSignal( QDateTime, bool ); + void showJournalSignal( int,QDate ); protected: @@ -324,4 +330,6 @@ class KOMonthView: public KOEventView MonthViewCell *mSelectedCell; + MonthViewCell *mPopupCell; bool mFlagKeyPressed; KOEventPopupMenu *mContextMenu; + QPopupMenu *mNewItemMenu; void keyPressEvent ( QKeyEvent * ) ; diff --git a/korganizer/koprefs.cpp b/korganizer/koprefs.cpp index a571ed4..34044ab 100644 --- a/korganizer/koprefs.cpp +++ b/korganizer/koprefs.cpp @@ -239,2 +239,3 @@ KOPrefs::KOPrefs() : addItemBool("ShowIconsInMonthCell",&mMonthShowIcons,true); + addItemBool("ShowTimesInMonthCell",&mMonthShowTimes,true); #ifdef DESKTOP_VERION diff --git a/korganizer/koprefs.h b/korganizer/koprefs.h index 2a0ee64..e06df1c 100644 --- a/korganizer/koprefs.h +++ b/korganizer/koprefs.h @@ -161,2 +161,3 @@ class KOPrefs : public KPimPrefs bool mMonthShowIcons; + bool mMonthShowTimes; bool mMonthShowShort; diff --git a/korganizer/koprefsdialog.cpp b/korganizer/koprefsdialog.cpp index ad3c61c..cb9c272 100644 --- a/korganizer/koprefsdialog.cpp +++ b/korganizer/koprefsdialog.cpp @@ -766,3 +766,5 @@ void KOPrefsDialog::setupViewsTab() &(KOPrefs::instance()->mMonthShowIcons),habo); - + weeklyRecur = + addWidBool(i18n("times"), + &(KOPrefs::instance()->mMonthShowTimes),habo); topLayout->addMultiCellWidget(habo,ii, ii,0,1); diff --git a/korganizer/koviewmanager.cpp b/korganizer/koviewmanager.cpp index 406e741..f1f2dd2 100644 --- a/korganizer/koviewmanager.cpp +++ b/korganizer/koviewmanager.cpp @@ -601,2 +601,9 @@ if (!mMonthView) { // SIGNALS/SLOTS FOR MONTH VIEW + + connect(mMonthView,SIGNAL(showJournalSignal( int, QDate )),SLOT(showDateView( int, QDate ))); + + connect(mMonthView, SIGNAL(newTodoSignal(QDateTime,bool)), + mMainView, SLOT(newTodoDateTime(QDateTime, bool))); + + connect(mMonthView, SIGNAL(newEventSignal(QDateTime)), |