summaryrefslogtreecommitdiffabout
path: root/korganizer
authorzautrix <zautrix>2005-04-17 10:42:07 (UTC)
committer zautrix <zautrix>2005-04-17 10:42:07 (UTC)
commitff7743ec82aa6d70325e613d0a1054c7de83a76c (patch) (unidiff)
treee6d4c46a26e120817acd5ab7e47ef41b1428700b /korganizer
parentfd67a473a94c5a3d63a89c52fb8f612cb19b5363 (diff)
downloadkdepimpi-ff7743ec82aa6d70325e613d0a1054c7de83a76c.zip
kdepimpi-ff7743ec82aa6d70325e613d0a1054c7de83a76c.tar.gz
kdepimpi-ff7743ec82aa6d70325e613d0a1054c7de83a76c.tar.bz2
fixes
Diffstat (limited to 'korganizer') (more/less context) (show whitespace changes)
-rw-r--r--korganizer/komonthview.cpp83
-rw-r--r--korganizer/komonthview.h8
-rw-r--r--korganizer/koprefs.cpp1
-rw-r--r--korganizer/koprefs.h1
-rw-r--r--korganizer/koprefsdialog.cpp4
-rw-r--r--korganizer/koviewmanager.cpp7
6 files changed, 99 insertions, 5 deletions
diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp
index b175f9a..2b7e41f 100644
--- a/korganizer/komonthview.cpp
+++ b/korganizer/komonthview.cpp
@@ -406,12 +406,22 @@ void MonthViewItem::paint(QPainter *p)
406 yPos = pmheight/2 - fm.height()/2 + fm.ascent(); 406 yPos = pmheight/2 - fm.height()/2 + fm.ascent();
407 p->setPen( palette().color( QPalette::Normal, sel ? \ 407 p->setPen( palette().color( QPalette::Normal, sel ? \
408 QColorGroup::HighlightedText : QColorGroup::Foreground ) ); 408 QColorGroup::HighlightedText : QColorGroup::Foreground ) );
409 if ( KOPrefs::instance()->mMonthShowTimes || isWeekItem) {
409 p->drawText( x, yPos, text() ); 410 p->drawText( x, yPos, text() );
410 if ( mIncidence->cancelled() ) { 411 if ( mIncidence->cancelled() ) {
411 int wid = fm.width( text() ); 412 int wid = fm.width( text() );
412 p->drawLine( x, heihei/2 ,x+wid, heihei/2 ); 413 p->drawLine( x, heihei/2 ,x+wid, heihei/2 );
413 } 414 }
414 415 } else {
416 QString pText = text();
417 if( pText.mid(2,1) == ":" )
418 pText = pText.mid( 6 );
419 p->drawText( x, yPos, pText );
420 if ( mIncidence->cancelled() ) {
421 int wid = fm.width( pText );
422 p->drawLine( x, heihei/2 ,x+wid, heihei/2 );
423 }
424 }
415} 425}
416 426
417int MonthViewItem::height(const QListBox *lb) const 427int MonthViewItem::height(const QListBox *lb) const
@@ -1042,6 +1052,7 @@ void MonthViewCell::newEvent()
1042} 1052}
1043void MonthViewCell::cellClicked( QListBoxItem *item ) 1053void MonthViewCell::cellClicked( QListBoxItem *item )
1044{ 1054{
1055 mMonthView->setSelectedCell( this );
1045 qDebug("CELL "); 1056 qDebug("CELL ");
1046 if ( item == 0 ) { 1057 if ( item == 0 ) {
1047 QDateTime dt( date(), QTime( KOPrefs::instance()->mStartTime, 0 ) ); 1058 QDateTime dt( date(), QTime( KOPrefs::instance()->mStartTime, 0 ) );
@@ -1053,8 +1064,11 @@ void MonthViewCell::cellClicked( QListBoxItem *item )
1053 1064
1054void MonthViewCell::contextMenu( QListBoxItem *item ) 1065void MonthViewCell::contextMenu( QListBoxItem *item )
1055{ 1066{
1056 if ( !item ) return; 1067 mMonthView->setPopupCell( this );
1057 1068 if ( !item ) {
1069 mMonthView->showContextMenu( 0 );
1070 return;
1071 }
1058 MonthViewItem *eventItem = static_cast<MonthViewItem *>( item ); 1072 MonthViewItem *eventItem = static_cast<MonthViewItem *>( item );
1059 Incidence *incidence = eventItem->incidence(); 1073 Incidence *incidence = eventItem->incidence();
1060 if ( incidence ) mMonthView->showContextMenu( incidence ); 1074 if ( incidence ) mMonthView->showContextMenu( incidence );
@@ -1083,6 +1097,7 @@ KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name)
1083 mShortDayLabelsW = false; 1097 mShortDayLabelsW = false;
1084 skipResize = false; 1098 skipResize = false;
1085 clPending = true; 1099 clPending = true;
1100 mPopupCell = 0;
1086 mNavigatorBar = new NavigatorBar( QDate::currentDate(), this, "useBigPixmaps" ); 1101 mNavigatorBar = new NavigatorBar( QDate::currentDate(), this, "useBigPixmaps" );
1087 mWidStack = new QWidgetStack( this ); 1102 mWidStack = new QWidgetStack( this );
1088 QVBoxLayout* hb = new QVBoxLayout( this ); 1103 QVBoxLayout* hb = new QVBoxLayout( this );
@@ -1200,6 +1215,29 @@ KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name)
1200 1215
1201 //connect( mWeekLabels[mNumWeeks], SIGNAL( clicked() ), SLOT( switchView() ) ); 1216 //connect( mWeekLabels[mNumWeeks], SIGNAL( clicked() ), SLOT( switchView() ) );
1202 mContextMenu = eventPopup(); 1217 mContextMenu = eventPopup();
1218 mContextMenu->addAdditionalItem(QIconSet(QPixmap()),
1219 i18n("New Event..."),this,
1220 SLOT(slotNewEvent()),false);
1221 mContextMenu->addAdditionalItem(QIconSet(QPixmap()),
1222 i18n("New Todo..."),this,
1223 SLOT(slotNewTodo()),false);
1224 mContextMenu->addAdditionalItem(QIconSet(QPixmap()),
1225 i18n("Journal"),this,
1226 SLOT(slotEditJournal()),false);
1227
1228
1229
1230 QString pathString = "";
1231 if ( !KOPrefs::instance()->mToolBarMiniIcons ) {
1232 if ( QApplication::desktop()->width() < 480 )
1233 pathString += "icons16/";
1234 } else
1235 pathString += "iconsmini/";
1236 mNewItemMenu = new QPopupMenu( this );
1237 mNewItemMenu->insertItem( SmallIcon( pathString +"newevent" ), i18n("New Event..."),this, SLOT(slotNewEvent()));
1238 mNewItemMenu->insertItem( SmallIcon( pathString +"newtodo" ),i18n("New Todo..."),this,SLOT(slotNewTodo()),false);
1239 mNewItemMenu->insertItem( SmallIcon( pathString +"journal" ),i18n("Journal"),this,SLOT(slotEditJournal()),false);
1240
1203 // updateConfig(); //useless here... 1241 // updateConfig(); //useless here...
1204 // ... but we need mWidthLongDayLabel computed 1242 // ... but we need mWidthLongDayLabel computed
1205 QFontMetrics fontmetric(mDayLabels[0]->font()); 1243 QFontMetrics fontmetric(mDayLabels[0]->font());
@@ -1893,7 +1931,12 @@ void KOMonthView::computeLayout()
1893 1931
1894void KOMonthView::showContextMenu( Incidence *incidence ) 1932void KOMonthView::showContextMenu( Incidence *incidence )
1895{ 1933{
1934 if( incidence )
1896 mContextMenu->showIncidencePopup(incidence); 1935 mContextMenu->showIncidencePopup(incidence);
1936 else {
1937 //qDebug("KOMonthView::showContextMenu ");
1938 mNewItemMenu->popup(QCursor::pos());
1939 }
1897 /* 1940 /*
1898 if( incidence && incidence->type() == "Event" ) { 1941 if( incidence && incidence->type() == "Event" ) {
1899 Event *event = static_cast<Event *>(incidence); 1942 Event *event = static_cast<Event *>(incidence);
@@ -1909,7 +1952,7 @@ MonthViewCell * KOMonthView::selectedCell( )
1909} 1952}
1910void KOMonthView::setSelectedCell( MonthViewCell *cell ) 1953void KOMonthView::setSelectedCell( MonthViewCell *cell )
1911{ 1954{
1912 //qDebug("KOMonthView::setSelectedCell "); 1955 //qDebug("KOMonthView::setSelectedCell %d", cell);
1913 if ( mSelectedCell && mSelectedCell != cell ) { 1956 if ( mSelectedCell && mSelectedCell != cell ) {
1914 MonthViewCell * mvc = mSelectedCell; 1957 MonthViewCell * mvc = mSelectedCell;
1915 mSelectedCell = cell; 1958 mSelectedCell = cell;
@@ -2014,3 +2057,35 @@ void KOMonthView::prevCell()
2014{ 2057{
2015 focusNextPrevChild ( false ); 2058 focusNextPrevChild ( false );
2016} 2059}
2060
2061void KOMonthView::slotNewTodo()
2062{
2063 //qDebug("KOMonthView::slotNewTodo() ");
2064 if ( mPopupCell ){
2065 QDateTime dt( mPopupCell->date(), QTime( KOPrefs::instance()->mStartTime, 0 ) );
2066 emit newTodoSignal(dt,true);
2067 }
2068 mPopupCell = 0;
2069}
2070void KOMonthView::slotNewEvent()
2071{
2072 if ( mPopupCell ) {
2073 QDateTime dt( mPopupCell->date(), QTime( KOPrefs::instance()->mStartTime, 0 ) );
2074 emit newEventSignal( dt );
2075 }
2076 //qDebug("KOMonthView::slotNewEvent() ");
2077 mPopupCell = 0;
2078}
2079
2080void KOMonthView::slotEditJournal()
2081{
2082 if ( mPopupCell )
2083 emit showJournalSignal( 7, mPopupCell->date() );
2084 //qDebug("KOMonthView::slotEditJournal() ");
2085 mPopupCell = 0;
2086}
2087
2088void KOMonthView::setPopupCell( MonthViewCell * c)
2089{
2090 mPopupCell = c;
2091}
diff --git a/korganizer/komonthview.h b/korganizer/komonthview.h
index c6b6b5e..de5c014 100644
--- a/korganizer/komonthview.h
+++ b/korganizer/komonthview.h
@@ -271,11 +271,15 @@ class KOMonthView: public KOEventView
271 void showContextMenu( Incidence * ); 271 void showContextMenu( Incidence * );
272 272
273 void setSelectedCell( MonthViewCell * ); 273 void setSelectedCell( MonthViewCell * );
274 void setPopupCell( MonthViewCell * );
274 void switchView(); 275 void switchView();
275 void setKeyBoardFocus(); 276 void setKeyBoardFocus();
276 void setKeyBFocus(); 277 void setKeyBFocus();
277 278
278 protected slots: 279 protected slots:
280 void slotNewTodo();
281 void slotNewEvent();
282 void slotEditJournal();
279 void slotComputeLayout(); 283 void slotComputeLayout();
280 void selectInternalWeekNum ( int ); 284 void selectInternalWeekNum ( int );
281 void processSelectionChange(); 285 void processSelectionChange();
@@ -285,6 +289,8 @@ class KOMonthView: public KOEventView
285 void selectWeekNum ( int ); 289 void selectWeekNum ( int );
286 void selectMonth (); 290 void selectMonth ();
287 void showDaySignal( QDate ); 291 void showDaySignal( QDate );
292 void newTodoSignal( QDateTime, bool );
293 void showJournalSignal( int,QDate );
288 protected: 294 protected:
289 void resizeEvent(QResizeEvent *); 295 void resizeEvent(QResizeEvent *);
290 void viewChanged(); 296 void viewChanged();
@@ -322,8 +328,10 @@ class KOMonthView: public KOEventView
322 QDate mStartDate; 328 QDate mStartDate;
323 329
324 MonthViewCell *mSelectedCell; 330 MonthViewCell *mSelectedCell;
331 MonthViewCell *mPopupCell;
325 bool mFlagKeyPressed; 332 bool mFlagKeyPressed;
326 KOEventPopupMenu *mContextMenu; 333 KOEventPopupMenu *mContextMenu;
334 QPopupMenu *mNewItemMenu;
327 void keyPressEvent ( QKeyEvent * ) ; 335 void keyPressEvent ( QKeyEvent * ) ;
328 void keyReleaseEvent ( QKeyEvent * ) ; 336 void keyReleaseEvent ( QKeyEvent * ) ;
329 337
diff --git a/korganizer/koprefs.cpp b/korganizer/koprefs.cpp
index a571ed4..34044ab 100644
--- a/korganizer/koprefs.cpp
+++ b/korganizer/koprefs.cpp
@@ -237,6 +237,7 @@ KOPrefs::KOPrefs() :
237 addItemBool("Show Month Weekly Recurrences",&mMonthWeeklyRecur,true); 237 addItemBool("Show Month Weekly Recurrences",&mMonthWeeklyRecur,true);
238 addItemBool("ShowShortMonthName",&mMonthShowShort,false); 238 addItemBool("ShowShortMonthName",&mMonthShowShort,false);
239 addItemBool("ShowIconsInMonthCell",&mMonthShowIcons,true); 239 addItemBool("ShowIconsInMonthCell",&mMonthShowIcons,true);
240 addItemBool("ShowTimesInMonthCell",&mMonthShowTimes,true);
240#ifdef DESKTOP_VERION 241#ifdef DESKTOP_VERION
241 addItemBool("Enable ToolTips",&mEnableToolTips,true); 242 addItemBool("Enable ToolTips",&mEnableToolTips,true);
242#else 243#else
diff --git a/korganizer/koprefs.h b/korganizer/koprefs.h
index 2a0ee64..e06df1c 100644
--- a/korganizer/koprefs.h
+++ b/korganizer/koprefs.h
@@ -159,6 +159,7 @@ class KOPrefs : public KPimPrefs
159 bool mMonthDailyRecur; 159 bool mMonthDailyRecur;
160 bool mMonthWeeklyRecur; 160 bool mMonthWeeklyRecur;
161 bool mMonthShowIcons; 161 bool mMonthShowIcons;
162 bool mMonthShowTimes;
162 bool mMonthShowShort; 163 bool mMonthShowShort;
163 bool mEnableToolTips; 164 bool mEnableToolTips;
164 bool mEnableMonthScroll; 165 bool mEnableMonthScroll;
diff --git a/korganizer/koprefsdialog.cpp b/korganizer/koprefsdialog.cpp
index ad3c61c..cb9c272 100644
--- a/korganizer/koprefsdialog.cpp
+++ b/korganizer/koprefsdialog.cpp
@@ -764,7 +764,9 @@ void KOPrefsDialog::setupViewsTab()
764 weeklyRecur = 764 weeklyRecur =
765 addWidBool(i18n("icons"), 765 addWidBool(i18n("icons"),
766 &(KOPrefs::instance()->mMonthShowIcons),habo); 766 &(KOPrefs::instance()->mMonthShowIcons),habo);
767 767 weeklyRecur =
768 addWidBool(i18n("times"),
769 &(KOPrefs::instance()->mMonthShowTimes),habo);
768 topLayout->addMultiCellWidget(habo,ii, ii,0,1); 770 topLayout->addMultiCellWidget(habo,ii, ii,0,1);
769 ii++; 771 ii++;
770#ifdef DESKTOP_VERSION 772#ifdef DESKTOP_VERSION
diff --git a/korganizer/koviewmanager.cpp b/korganizer/koviewmanager.cpp
index 406e741..f1f2dd2 100644
--- a/korganizer/koviewmanager.cpp
+++ b/korganizer/koviewmanager.cpp
@@ -599,6 +599,13 @@ if (!mMonthView) {
599 addView(mMonthView); 599 addView(mMonthView);
600 // mMonthView->show(); 600 // mMonthView->show();
601 // SIGNALS/SLOTS FOR MONTH VIEW 601 // SIGNALS/SLOTS FOR MONTH VIEW
602
603 connect(mMonthView,SIGNAL(showJournalSignal( int, QDate )),SLOT(showDateView( int, QDate )));
604
605 connect(mMonthView, SIGNAL(newTodoSignal(QDateTime,bool)),
606 mMainView, SLOT(newTodoDateTime(QDateTime, bool)));
607
608
602 connect(mMonthView, SIGNAL(newEventSignal(QDateTime)), 609 connect(mMonthView, SIGNAL(newEventSignal(QDateTime)),
603 mMainView, SLOT(newEvent(QDateTime))); 610 mMainView, SLOT(newEvent(QDateTime)));
604 611