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) (ignore whitespace changes)
-rw-r--r--korganizer/komonthview.cpp95
-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, 105 insertions, 11 deletions
diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp
index b175f9a..2b7e41f 100644
--- a/korganizer/komonthview.cpp
+++ b/korganizer/komonthview.cpp
@@ -377,70 +377,80 @@ void MonthViewItem::paint(QPainter *p)
377 // p->fillRect ( x+sizeM, yyy-sizeM/2+1, sizeM/2, size, QBrush ( QBrush::SolidPattern ) ); 377 // p->fillRect ( x+sizeM, yyy-sizeM/2+1, sizeM/2, size, QBrush ( QBrush::SolidPattern ) );
378 p->drawLine ( x+sizeM +sizeM/2-1, yyy-sizeM/2, x+sizeM +sizeM/2-1, yyy+sizeM/2 ); 378 p->drawLine ( x+sizeM +sizeM/2-1, yyy-sizeM/2, x+sizeM +sizeM/2-1, yyy+sizeM/2 );
379 379
380 } 380 }
381 x += sizeM/2 + 1; 381 x += sizeM/2 + 1;
382 x += sizeM + 1; 382 x += sizeM + 1;
383 } 383 }
384 384
385 if ( mIncidence->type() == "Todo" ){ 385 if ( mIncidence->type() == "Todo" ){
386 Todo* td = ( Todo* ) mIncidence; 386 Todo* td = ( Todo* ) mIncidence;
387 if ( td->isCompleted() ) { 387 if ( td->isCompleted() ) {
388 int half = size/2; 388 int half = size/2;
389 p->drawLine ( x, heihei/2, x +half , heihei/2 +half ) ; 389 p->drawLine ( x, heihei/2, x +half , heihei/2 +half ) ;
390 p->drawLine ( x +half , heihei/2 +half , x +half+half +2 , heihei/2 -2 ) ; 390 p->drawLine ( x +half , heihei/2 +half , x +half+half +2 , heihei/2 -2 ) ;
391 x += half+half + 4; 391 x += half+half + 4;
392 392
393 } else { 393 } else {
394 int val = td->percentComplete()/20; 394 int val = td->percentComplete()/20;
395 p->fillRect ( x+1, y-2, val ,size+4,Qt::black ); 395 p->fillRect ( x+1, y-2, val ,size+4,Qt::black );
396 p->drawRect ( x, y-2,7,size+4); 396 p->drawRect ( x, y-2,7,size+4);
397 x += size + 3; 397 x += size + 3;
398 } 398 }
399 } 399 }
400 QFontMetrics fm = p->fontMetrics(); 400 QFontMetrics fm = p->fontMetrics();
401 int yPos; 401 int yPos;
402 int pmheight = size; 402 int pmheight = size;
403 if( pmheight < fm.height() ) 403 if( pmheight < fm.height() )
404 yPos = fm.ascent() + fm.leading()/2; 404 yPos = fm.ascent() + fm.leading()/2;
405 else 405 else
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 p->drawText( x, yPos, text() ); 409 if ( KOPrefs::instance()->mMonthShowTimes || isWeekItem) {
410 if ( mIncidence->cancelled() ) { 410 p->drawText( x, yPos, text() );
411 int wid = fm.width( text() ); 411 if ( mIncidence->cancelled() ) {
412 p->drawLine( x, heihei/2 ,x+wid, heihei/2 ); 412 int wid = fm.width( text() );
413 } 413 p->drawLine( x, heihei/2 ,x+wid, heihei/2 );
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
418{ 428{
419 int ret = 10; 429 int ret = 10;
420 if ( lb ) 430 if ( lb )
421 ret = lb->fontMetrics().lineSpacing()+1; 431 ret = lb->fontMetrics().lineSpacing()+1;
422 return ret; 432 return ret;
423} 433}
424 434
425int MonthViewItem::width(const QListBox *lb) const 435int MonthViewItem::width(const QListBox *lb) const
426{ 436{
427 if( KOPrefs::instance()->mEnableMonthScroll || isWeekItem ) { 437 if( KOPrefs::instance()->mEnableMonthScroll || isWeekItem ) {
428 int size = PIXMAP_SIZE; 438 int size = PIXMAP_SIZE;
429 if ( QApplication::desktop()->width() < 300 ) 439 if ( QApplication::desktop()->width() < 300 )
430 size = 3; 440 size = 3;
431 int x = 1; 441 int x = 1;
432 if ( KOPrefs::instance()->mMonthShowIcons ) { 442 if ( KOPrefs::instance()->mMonthShowIcons ) {
433 if ( mInfo ) { 443 if ( mInfo ) {
434 x += size + 1; 444 x += size + 1;
435 } 445 }
436 if( mRecur ) { 446 if( mRecur ) {
437 x += size+1; 447 x += size+1;
438 } 448 }
439 if( mAlarm ) { 449 if( mAlarm ) {
440 x += size+1; 450 x += size+1;
441 } 451 }
442 if( mReply ) { 452 if( mReply ) {
443 x += size+1; 453 x += size+1;
444 } 454 }
445 } 455 }
446 if( mMultiday ) { 456 if( mMultiday ) {
@@ -1013,105 +1023,110 @@ void MonthViewCell::resizeEvent ( QResizeEvent * e )
1013 horizontalScrollBar()->setMaximumWidth( size ); 1023 horizontalScrollBar()->setMaximumWidth( size );
1014 mLabel->move( width()-lineWidth() - mLabel->width(), height()-lineWidth() - mLabel->height() ); 1024 mLabel->move( width()-lineWidth() - mLabel->width(), height()-lineWidth() - mLabel->height() );
1015 //mLabel->setMaximumWidth( width() - mItemList->lineWidth()*2); 1025 //mLabel->setMaximumWidth( width() - mItemList->lineWidth()*2);
1016 // mItemList->resize ( width(), height () ); 1026 // mItemList->resize ( width(), height () );
1017 if ( e ) 1027 if ( e )
1018 KNoScrollListBox::resizeEvent ( e ); 1028 KNoScrollListBox::resizeEvent ( e );
1019} 1029}
1020 1030
1021void MonthViewCell::defaultAction( QListBoxItem *item ) 1031void MonthViewCell::defaultAction( QListBoxItem *item )
1022{ 1032{
1023 1033
1024 if ( !item ) { 1034 if ( !item ) {
1025 QDateTime dt( date(), QTime( KOPrefs::instance()->mStartTime, 0 ) ); 1035 QDateTime dt( date(), QTime( KOPrefs::instance()->mStartTime, 0 ) );
1026 emit newEventSignal( dt ); 1036 emit newEventSignal( dt );
1027 return; 1037 return;
1028 } 1038 }
1029 1039
1030 MonthViewItem *eventItem = static_cast<MonthViewItem *>( item ); 1040 MonthViewItem *eventItem = static_cast<MonthViewItem *>( item );
1031 Incidence *incidence = eventItem->incidence(); 1041 Incidence *incidence = eventItem->incidence();
1032 if ( incidence ) mMonthView->defaultAction( incidence ); 1042 if ( incidence ) mMonthView->defaultAction( incidence );
1033} 1043}
1034void MonthViewCell::showDay() 1044void MonthViewCell::showDay()
1035{ 1045{
1036 emit showDaySignal( date() ); 1046 emit showDaySignal( date() );
1037} 1047}
1038void MonthViewCell::newEvent() 1048void MonthViewCell::newEvent()
1039{ 1049{
1040 QDateTime dt( date(), QTime( KOPrefs::instance()->mStartTime, 0 ) ); 1050 QDateTime dt( date(), QTime( KOPrefs::instance()->mStartTime, 0 ) );
1041 emit newEventSignal( dt ); 1051 emit newEventSignal( dt );
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 ) );
1048 emit newEventSignal( dt ); 1059 emit newEventSignal( dt );
1049 return; 1060 return;
1050 } 1061 }
1051 1062
1052} 1063}
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 );
1061} 1075}
1062 1076
1063void MonthViewCell::selection( QListBoxItem *item ) 1077void MonthViewCell::selection( QListBoxItem *item )
1064{ 1078{
1065 if ( !item ) return; 1079 if ( !item ) return;
1066 1080
1067 mMonthView->setSelectedCell( this ); 1081 mMonthView->setSelectedCell( this );
1068} 1082}
1069 1083
1070 1084
1071// ******************************************************************************* 1085// *******************************************************************************
1072// ******************************************************************************* 1086// *******************************************************************************
1073// ******************************************************************************* 1087// *******************************************************************************
1074 1088
1075 1089
1076KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name) 1090KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name)
1077 : KOEventView( calendar, parent, name ), 1091 : KOEventView( calendar, parent, name ),
1078 mDaysPerWeek( 7 ), mNumWeeks( 6 ), mNumCells( mDaysPerWeek * mNumWeeks ), 1092 mDaysPerWeek( 7 ), mNumWeeks( 6 ), mNumCells( mDaysPerWeek * mNumWeeks ),
1079 mWidthLongDayLabel( 0 ), mSelectedCell( 0 ) 1093 mWidthLongDayLabel( 0 ), mSelectedCell( 0 )
1080{ 1094{
1081 mFlagKeyPressed = false; 1095 mFlagKeyPressed = false;
1082 mShortDayLabelsM = false; 1096 mShortDayLabelsM = false;
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 );
1089 mMonthView = new QWidget( mWidStack ); 1104 mMonthView = new QWidget( mWidStack );
1090 mWeekView = new QWidget( mWidStack ); 1105 mWeekView = new QWidget( mWidStack );
1091#if QT_VERSION >= 0x030000 1106#if QT_VERSION >= 0x030000
1092 mWidStack->addWidget(mMonthView ); 1107 mWidStack->addWidget(mMonthView );
1093 mWidStack->addWidget(mWeekView ); 1108 mWidStack->addWidget(mWeekView );
1094#else 1109#else
1095 mWidStack->addWidget( mMonthView, 1 ); 1110 mWidStack->addWidget( mMonthView, 1 );
1096 mWidStack->addWidget( mWeekView , 1 ); 1111 mWidStack->addWidget( mWeekView , 1 );
1097#endif 1112#endif
1098 hb->addWidget( mNavigatorBar ); 1113 hb->addWidget( mNavigatorBar );
1099 hb->addWidget( mWidStack ); 1114 hb->addWidget( mWidStack );
1100 mShowWeekView = KOPrefs::instance()->mMonthViewWeek; 1115 mShowWeekView = KOPrefs::instance()->mMonthViewWeek;
1101 updatePossible = false; 1116 updatePossible = false;
1102 //updatePossible = true; 1117 //updatePossible = true;
1103 mCells.setAutoDelete( true ); 1118 mCells.setAutoDelete( true );
1104 mShowSatSunComp = KOPrefs::instance()->mMonthViewSatSunTog ; 1119 mShowSatSunComp = KOPrefs::instance()->mMonthViewSatSunTog ;
1105 mDayLabels.resize( mDaysPerWeek ); 1120 mDayLabels.resize( mDaysPerWeek );
1106 mDayLabelsW.resize( mDaysPerWeek ); 1121 mDayLabelsW.resize( mDaysPerWeek );
1107 QFont bfont = font(); 1122 QFont bfont = font();
1108 if ( QApplication::desktop()->width() < 650 ) { 1123 if ( QApplication::desktop()->width() < 650 ) {
1109 bfont.setPointSize( bfont.pointSize() - 2 ); 1124 bfont.setPointSize( bfont.pointSize() - 2 );
1110 } 1125 }
1111 bfont.setBold( true ); 1126 bfont.setBold( true );
1112 int i; 1127 int i;
1113 1128
1114 for( i = 0; i < mDaysPerWeek; i++ ) { 1129 for( i = 0; i < mDaysPerWeek; i++ ) {
1115 QLabel *label = new QLabel( mMonthView ); 1130 QLabel *label = new QLabel( mMonthView );
1116 label->setFont(bfont); 1131 label->setFont(bfont);
1117 label->setFrameStyle(QFrame::Panel|QFrame::Raised); 1132 label->setFrameStyle(QFrame::Panel|QFrame::Raised);
@@ -1171,64 +1186,87 @@ KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name)
1171 connect( cell, SIGNAL( defaultAction( Incidence * ) ), 1186 connect( cell, SIGNAL( defaultAction( Incidence * ) ),
1172 SLOT( defaultAction( Incidence * ) ) ); 1187 SLOT( defaultAction( Incidence * ) ) );
1173 connect( cell, SIGNAL( newEventSignal( QDateTime ) ), 1188 connect( cell, SIGNAL( newEventSignal( QDateTime ) ),
1174 SIGNAL( newEventSignal( QDateTime ) ) ); 1189 SIGNAL( newEventSignal( QDateTime ) ) );
1175 connect( cell, SIGNAL( showDaySignal( QDate ) ), 1190 connect( cell, SIGNAL( showDaySignal( QDate ) ),
1176 SIGNAL( showDaySignal( QDate ) ) ); 1191 SIGNAL( showDaySignal( QDate ) ) );
1177 connect( cell, SIGNAL( nextCell() ), 1192 connect( cell, SIGNAL( nextCell() ),
1178 SLOT( nextCell() ) ); 1193 SLOT( nextCell() ) );
1179 connect( cell, SIGNAL( prevCell() ), 1194 connect( cell, SIGNAL( prevCell() ),
1180 SLOT( prevCell() ) ); 1195 SLOT( prevCell() ) );
1181 } 1196 }
1182 } 1197 }
1183 mCellsW.resize( mDaysPerWeek ); 1198 mCellsW.resize( mDaysPerWeek );
1184 for( col = 0; col < mDaysPerWeek; ++col ) { 1199 for( col = 0; col < mDaysPerWeek; ++col ) {
1185 MonthViewCell *cell = new MonthViewCell( this, mWeekView ); 1200 MonthViewCell *cell = new MonthViewCell( this, mWeekView );
1186 mCellsW.insert( col, cell ); 1201 mCellsW.insert( col, cell );
1187 1202
1188 connect( cell, SIGNAL( defaultAction( Incidence * ) ), 1203 connect( cell, SIGNAL( defaultAction( Incidence * ) ),
1189 SLOT( defaultAction( Incidence * ) ) ); 1204 SLOT( defaultAction( Incidence * ) ) );
1190 connect( cell, SIGNAL( newEventSignal( QDateTime ) ), 1205 connect( cell, SIGNAL( newEventSignal( QDateTime ) ),
1191 SIGNAL( newEventSignal( QDateTime ) ) ); 1206 SIGNAL( newEventSignal( QDateTime ) ) );
1192 connect( cell, SIGNAL( showDaySignal( QDate ) ), 1207 connect( cell, SIGNAL( showDaySignal( QDate ) ),
1193 SIGNAL( showDaySignal( QDate ) ) ); 1208 SIGNAL( showDaySignal( QDate ) ) );
1194 connect( cell, SIGNAL( nextCell() ), 1209 connect( cell, SIGNAL( nextCell() ),
1195 SLOT( nextCell() ) ); 1210 SLOT( nextCell() ) );
1196 connect( cell, SIGNAL( prevCell() ), 1211 connect( cell, SIGNAL( prevCell() ),
1197 SLOT( prevCell() ) ); 1212 SLOT( prevCell() ) );
1198 cell->updateConfig(KOPrefs::instance()->mMonthViewUsesBigFont ); 1213 cell->updateConfig(KOPrefs::instance()->mMonthViewUsesBigFont );
1199 } 1214 }
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());
1206 mWidthLongDayLabel = 0; 1244 mWidthLongDayLabel = 0;
1207 for (int i = 0; i < 7; i++) { 1245 for (int i = 0; i < 7; i++) {
1208 int width = fontmetric.width(KOGlobals::self()->calendarSystem()->weekDayName(i+1)); 1246 int width = fontmetric.width(KOGlobals::self()->calendarSystem()->weekDayName(i+1));
1209 if ( width > mWidthLongDayLabel ) mWidthLongDayLabel = width; 1247 if ( width > mWidthLongDayLabel ) mWidthLongDayLabel = width;
1210 } 1248 }
1211 1249
1212 //mWeekLabels[mNumWeeks]->setText( i18n("W")); 1250 //mWeekLabels[mNumWeeks]->setText( i18n("W"));
1213 1251
1214#if 0 1252#if 0
1215 if ( mShowWeekView ) 1253 if ( mShowWeekView )
1216 mWidStack->raiseWidget( mWeekView ); 1254 mWidStack->raiseWidget( mWeekView );
1217 else 1255 else
1218 mWidStack->raiseWidget( mMonthView ); 1256 mWidStack->raiseWidget( mMonthView );
1219#endif 1257#endif
1220 1258
1221 emit incidenceSelected( 0 ); 1259 emit incidenceSelected( 0 );
1222 1260
1223 mComputeLayoutTimer = new QTimer( this ); 1261 mComputeLayoutTimer = new QTimer( this );
1224 connect (mComputeLayoutTimer ,SIGNAL(timeout()), this, SLOT ( slotComputeLayout())); 1262 connect (mComputeLayoutTimer ,SIGNAL(timeout()), this, SLOT ( slotComputeLayout()));
1225 1263
1226 1264
1227#ifndef DESKTOP_VERSION 1265#ifndef DESKTOP_VERSION
1228 resize( QApplication::desktop()->size() ); 1266 resize( QApplication::desktop()->size() );
1229#else 1267#else
1230 resize(640, 480 ); 1268 resize(640, 480 );
1231 updatePossible = true; 1269 updatePossible = true;
1232#endif 1270#endif
1233 computeLayout(); 1271 computeLayout();
1234 1272
@@ -1864,81 +1902,86 @@ void KOMonthView::computeLayout()
1864 } 1902 }
1865 else { 1903 else {
1866 max = h; 1904 max = h;
1867 mCells[i]->setGeometry ( x+weeklabelwid,y,w,h ); 1905 mCells[i]->setGeometry ( x+weeklabelwid,y,w,h );
1868 } 1906 }
1869 x += w; 1907 x += w;
1870 if ( x + w/2 > wid ) { 1908 if ( x + w/2 > wid ) {
1871 x = 0; 1909 x = 0;
1872 y += h; 1910 y += h;
1873 } 1911 }
1874 //mCells[i]->dateLabel()->setMaximumHeight( max- mCells[i]->lineWidth()*2 ); 1912 //mCells[i]->dateLabel()->setMaximumHeight( max- mCells[i]->lineWidth()*2 );
1875 } 1913 }
1876 y= dayLabelHei; 1914 y= dayLabelHei;
1877 h = cellHei ; 1915 h = cellHei ;
1878 for ( i = 0; i < 6; i++) { 1916 for ( i = 0; i < 6; i++) {
1879 if ( i == (6-rowModulo)) 1917 if ( i == (6-rowModulo))
1880 ++h; 1918 ++h;
1881 mWeekLabels[i]->setGeometry( 0,y,weeklabelwid,h); 1919 mWeekLabels[i]->setGeometry( 0,y,weeklabelwid,h);
1882 y += h; 1920 y += h;
1883 } 1921 }
1884 mWeekLabels[6]->setGeometry( 0,0,weeklabelwid,dayLabelHei); 1922 mWeekLabels[6]->setGeometry( 0,0,weeklabelwid,dayLabelHei);
1885 // qDebug("RRRRRRRRRRRRR %d %d old %d %d", e->size().width(),e->size().height() , e->oldSize().width(),e->oldSize().height()); 1923 // qDebug("RRRRRRRRRRRRR %d %d old %d %d", e->size().width(),e->size().height() , e->oldSize().width(),e->oldSize().height());
1886 //qDebug("parent %d %d ", topLevelWidget()->size().width(), topLevelWidget()->size().height()); 1924 //qDebug("parent %d %d ", topLevelWidget()->size().width(), topLevelWidget()->size().height());
1887 mShortDayLabelsM = mDayLabels[0]->width()-2 < mWidthLongDayLabel ; 1925 mShortDayLabelsM = mDayLabels[0]->width()-2 < mWidthLongDayLabel ;
1888 updateDayLabels(); 1926 updateDayLabels();
1889 //bool forceUpdate = !updatePossible; 1927 //bool forceUpdate = !updatePossible;
1890 updatePossible = true; 1928 updatePossible = true;
1891 //mWeekLabels[mNumWeeks]->setText( i18n("W")); 1929 //mWeekLabels[mNumWeeks]->setText( i18n("W"));
1892} 1930}
1893 1931
1894void KOMonthView::showContextMenu( Incidence *incidence ) 1932void KOMonthView::showContextMenu( Incidence *incidence )
1895{ 1933{
1896 mContextMenu->showIncidencePopup(incidence); 1934 if( 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);
1900 mContextMenu->showEventPopup(event); 1943 mContextMenu->showEventPopup(event);
1901 } else { 1944 } else {
1902 kdDebug() << "MonthView::showContextMenu(): cast failed." << endl; 1945 kdDebug() << "MonthView::showContextMenu(): cast failed." << endl;
1903 } 1946 }
1904 */ 1947 */
1905} 1948}
1906MonthViewCell * KOMonthView::selectedCell( ) 1949MonthViewCell * KOMonthView::selectedCell( )
1907{ 1950{
1908 return mSelectedCell; 1951 return mSelectedCell;
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;
1916 mvc->deselect(); 1959 mvc->deselect();
1917 } else 1960 } else
1918 mSelectedCell = cell; 1961 mSelectedCell = cell;
1919 // if ( mSelectedCell ) 1962 // if ( mSelectedCell )
1920 // mSelectedCell->select(); 1963 // mSelectedCell->select();
1921 if ( !mSelectedCell ) 1964 if ( !mSelectedCell )
1922 emit incidenceSelected( 0 ); 1965 emit incidenceSelected( 0 );
1923 else 1966 else
1924 emit incidenceSelected( mSelectedCell->selectedIncidence() ); 1967 emit incidenceSelected( mSelectedCell->selectedIncidence() );
1925} 1968}
1926 1969
1927void KOMonthView::processSelectionChange() 1970void KOMonthView::processSelectionChange()
1928{ 1971{
1929 QPtrList<Incidence> incidences = selectedIncidences(); 1972 QPtrList<Incidence> incidences = selectedIncidences();
1930 if (incidences.count() > 0) { 1973 if (incidences.count() > 0) {
1931 emit incidenceSelected( incidences.first() ); 1974 emit incidenceSelected( incidences.first() );
1932 } else { 1975 } else {
1933 emit incidenceSelected( 0 ); 1976 emit incidenceSelected( 0 );
1934 clearSelection(); 1977 clearSelection();
1935 } 1978 }
1936} 1979}
1937 1980
1938void KOMonthView::clearSelection() 1981void KOMonthView::clearSelection()
1939{ 1982{
1940 if ( mSelectedCell ) { 1983 if ( mSelectedCell ) {
1941 mSelectedCell->deselect(); 1984 mSelectedCell->deselect();
1942 mSelectedCell = 0; 1985 mSelectedCell = 0;
1943 } 1986 }
1944} 1987}
@@ -1985,32 +2028,64 @@ void KOMonthView::keyPressEvent ( QKeyEvent * e )
1985 } 2028 }
1986 e->accept(); 2029 e->accept();
1987 break; 2030 break;
1988 case Key_Return: 2031 case Key_Return:
1989 case Key_Enter: 2032 case Key_Enter:
1990 { 2033 {
1991 selectInternalWeekNum ( currentWeek() ); 2034 selectInternalWeekNum ( currentWeek() );
1992 } 2035 }
1993 e->accept(); 2036 e->accept();
1994 break; 2037 break;
1995 case Key_D: 2038 case Key_D:
1996 if ( mSelectedCell ) { 2039 if ( mSelectedCell ) {
1997 mSelectedCell->showDay(); 2040 mSelectedCell->showDay();
1998 e->accept(); 2041 e->accept();
1999 } else { 2042 } else {
2000 e->ignore(); 2043 e->ignore();
2001 } 2044 }
2002 break; 2045 break;
2003 default: 2046 default:
2004 e->ignore(); 2047 e->ignore();
2005 break; 2048 break;
2006 } 2049 }
2007} 2050}
2008 2051
2009void KOMonthView::nextCell() 2052void KOMonthView::nextCell()
2010{ 2053{
2011 bool res = focusNextPrevChild ( true ); 2054 bool res = focusNextPrevChild ( true );
2012} 2055}
2013void KOMonthView::prevCell() 2056void 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
@@ -242,91 +242,99 @@ class KOMonthView: public KOEventView
242 /** Returns number of currently shown dates. */ 242 /** Returns number of currently shown dates. */
243 virtual int currentDateCount(); 243 virtual int currentDateCount();
244 244
245 /** returns the currently selected events */ 245 /** returns the currently selected events */
246 virtual QPtrList<Incidence> selectedIncidences(); 246 virtual QPtrList<Incidence> selectedIncidences();
247 247
248 /** returns dates of the currently selected events */ 248 /** returns dates of the currently selected events */
249 virtual DateList selectedDates(); 249 virtual DateList selectedDates();
250 250
251 virtual void printPreview(CalPrinter *calPrinter, 251 virtual void printPreview(CalPrinter *calPrinter,
252 const QDate &, const QDate &); 252 const QDate &, const QDate &);
253 bool isMonthView() { return !mShowWeekView; } 253 bool isMonthView() { return !mShowWeekView; }
254 bool isUpdatePossible() { return updatePossible; } 254 bool isUpdatePossible() { return updatePossible; }
255 255
256 MonthViewCell * selectedCell(); 256 MonthViewCell * selectedCell();
257 bool skipResize; 257 bool skipResize;
258 NavigatorBar* navigatorBar() { return mNavigatorBar ;} 258 NavigatorBar* navigatorBar() { return mNavigatorBar ;}
259 public slots: 259 public slots:
260 void nextCell(); 260 void nextCell();
261 void prevCell(); 261 void prevCell();
262 virtual void updateView(); 262 virtual void updateView();
263 virtual void updateConfig(); 263 virtual void updateConfig();
264 virtual void showDates(const QDate &start, const QDate &end); 264 virtual void showDates(const QDate &start, const QDate &end);
265 virtual void showEvents(QPtrList<Event> eventList); 265 virtual void showEvents(QPtrList<Event> eventList);
266 266
267 void changeEventDisplay(Event *, int); 267 void changeEventDisplay(Event *, int);
268 268
269 void clearSelection(); 269 void clearSelection();
270 270
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();
282 signals: 286 signals:
283 void nextMonth(); 287 void nextMonth();
284 void prevMonth(); 288 void prevMonth();
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();
291 void updateDayLabels(); 297 void updateDayLabels();
292 298
293 private: 299 private:
294 QTimer* mComputeLayoutTimer; 300 QTimer* mComputeLayoutTimer;
295 NavigatorBar* mNavigatorBar; 301 NavigatorBar* mNavigatorBar;
296 int currentWeek(); 302 int currentWeek();
297 bool clPending; 303 bool clPending;
298 QWidgetStack * mWidStack; 304 QWidgetStack * mWidStack;
299 QWidget* mMonthView; 305 QWidget* mMonthView;
300 QWidget* mWeekView; 306 QWidget* mWeekView;
301 bool mShowWeekView; 307 bool mShowWeekView;
302 bool updatePossible; 308 bool updatePossible;
303 int mDaysPerWeek; 309 int mDaysPerWeek;
304 int mNumWeeks; 310 int mNumWeeks;
305 int mNumCells; 311 int mNumCells;
306 //bool mWeekStartsMonday; 312 //bool mWeekStartsMonday;
307 bool mShowSatSunComp; 313 bool mShowSatSunComp;
308 void computeLayout(); 314 void computeLayout();
309 void computeLayoutWeek(); 315 void computeLayoutWeek();
310 316
311 QPtrVector<MonthViewCell> mCells; 317 QPtrVector<MonthViewCell> mCells;
312 QPtrVector<QLabel> mDayLabels; 318 QPtrVector<QLabel> mDayLabels;
313 QPtrVector<KOWeekButton> mWeekLabels; 319 QPtrVector<KOWeekButton> mWeekLabels;
314 QPtrVector<MonthViewCell> mCellsW; 320 QPtrVector<MonthViewCell> mCellsW;
315 QPtrVector<QLabel> mDayLabelsW; 321 QPtrVector<QLabel> mDayLabelsW;
316 QPtrVector<KOWeekButton> mWeekLabelsW; 322 QPtrVector<KOWeekButton> mWeekLabelsW;
317 323
318 bool mShortDayLabelsM; 324 bool mShortDayLabelsM;
319 bool mShortDayLabelsW; 325 bool mShortDayLabelsW;
320 int mWidthLongDayLabel; 326 int mWidthLongDayLabel;
321 327
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
330}; 338};
331 339
332#endif 340#endif
diff --git a/korganizer/koprefs.cpp b/korganizer/koprefs.cpp
index a571ed4..34044ab 100644
--- a/korganizer/koprefs.cpp
+++ b/korganizer/koprefs.cpp
@@ -208,64 +208,65 @@ KOPrefs::KOPrefs() :
208 addItemColor("Holiday Color",&mHolidayColor,defaultHolidayColor); 208 addItemColor("Holiday Color",&mHolidayColor,defaultHolidayColor);
209 addItemColor("Highlight Color",&mHighlightColor,defaultHighlightColor); 209 addItemColor("Highlight Color",&mHighlightColor,defaultHighlightColor);
210 addItemColor("Event Color",&mEventColor,mDefaultCategoryColor); 210 addItemColor("Event Color",&mEventColor,mDefaultCategoryColor);
211 addItemColor("Todo done Color",&mTodoDoneColor,QColor(111,255,115) ); 211 addItemColor("Todo done Color",&mTodoDoneColor,QColor(111,255,115) );
212 addItemColor("Agenda Background Color",&mAgendaBgColor,defaultAgendaBgColor); 212 addItemColor("Agenda Background Color",&mAgendaBgColor,defaultAgendaBgColor);
213 addItemColor("WorkingHours Color",&mWorkingHoursColor,defaultWorkingHoursColor); 213 addItemColor("WorkingHours Color",&mWorkingHoursColor,defaultWorkingHoursColor);
214 addItemColor("Todo due today Color",&mTodoDueTodayColor,defaultTodoDueTodayColor); 214 addItemColor("Todo due today Color",&mTodoDueTodayColor,defaultTodoDueTodayColor);
215 addItemColor("Todo overdue Color",&mTodoOverdueColor,defaultTodoOverdueColor); 215 addItemColor("Todo overdue Color",&mTodoOverdueColor,defaultTodoOverdueColor);
216 addItemColor("Todo running Color",&mTodoRunColor,defaultTodoRunColor); 216 addItemColor("Todo running Color",&mTodoRunColor,defaultTodoRunColor);
217 addItemColor("MonthViewEvenColor",&mMonthViewEvenColor,QColor( 160,160,255 )); 217 addItemColor("MonthViewEvenColor",&mMonthViewEvenColor,QColor( 160,160,255 ));
218 addItemColor("MonthViewOddColor",&mMonthViewOddColor,QColor( 160,255,160 )); 218 addItemColor("MonthViewOddColor",&mMonthViewOddColor,QColor( 160,255,160 ));
219 addItemColor("MonthViewHolidayColor",&mMonthViewHolidayColor,QColor( 255,160,160 )); 219 addItemColor("MonthViewHolidayColor",&mMonthViewHolidayColor,QColor( 255,160,160 ));
220 addItemBool("MonthViewUsesDayColors",&mMonthViewUsesDayColors,true); 220 addItemBool("MonthViewUsesDayColors",&mMonthViewUsesDayColors,true);
221 addItemBool("MonthViewSatSunTog",&mMonthViewSatSunTog,true); 221 addItemBool("MonthViewSatSunTog",&mMonthViewSatSunTog,true);
222 addItemBool("MonthViewWeek",&mMonthViewWeek,false); 222 addItemBool("MonthViewWeek",&mMonthViewWeek,false);
223 addItemBool("HightlightDateTimeEdit",&mHightlightDateTimeEdit,false); 223 addItemBool("HightlightDateTimeEdit",&mHightlightDateTimeEdit,false);
224 addItemColor("AppColor1",&mAppColor1,QColor( 130,170,255 )); 224 addItemColor("AppColor1",&mAppColor1,QColor( 130,170,255 ));
225 addItemColor("AppColor2",&mAppColor2,QColor( 174,216,255 )); 225 addItemColor("AppColor2",&mAppColor2,QColor( 174,216,255 ));
226 addItemBool("UseAppColors",&mUseAppColors,false); 226 addItemBool("UseAppColors",&mUseAppColors,false);
227 227
228 228
229 229
230 KPrefs::setCurrentGroup("Views"); 230 KPrefs::setCurrentGroup("Views");
231 addItemBool("Block Popup Menu",&mBlockPopupMenu,true); 231 addItemBool("Block Popup Menu",&mBlockPopupMenu,true);
232 addItemBool("Show Date Navigator",&mShowDateNavigator,true); 232 addItemBool("Show Date Navigator",&mShowDateNavigator,true);
233 addItemInt("Hour Size",&mHourSize,8); 233 addItemInt("Hour Size",&mHourSize,8);
234 addItemBool("Show Daily Recurrences",&mDailyRecur,true); 234 addItemBool("Show Daily Recurrences",&mDailyRecur,true);
235 addItemBool("Show Weekly Recurrences",&mWeeklyRecur,true); 235 addItemBool("Show Weekly Recurrences",&mWeeklyRecur,true);
236 addItemBool("Show Month Daily Recurrences",&mMonthDailyRecur,true); 236 addItemBool("Show Month Daily Recurrences",&mMonthDailyRecur,true);
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
243 addItemBool("Enable ToolTips",&mEnableToolTips,false); 244 addItemBool("Enable ToolTips",&mEnableToolTips,false);
244#endif 245#endif
245 addItemBool("Enable MonthView ScrollBars",&mEnableMonthScroll,false); 246 addItemBool("Enable MonthView ScrollBars",&mEnableMonthScroll,false);
246 addItemBool("Marcus Bains shows seconds",&mMarcusBainsShowSeconds,false); 247 addItemBool("Marcus Bains shows seconds",&mMarcusBainsShowSeconds,false);
247 addItemBool("Show Marcus Bains",&mMarcusBainsEnabled,true); 248 addItemBool("Show Marcus Bains",&mMarcusBainsEnabled,true);
248 addItemBool("EditOnDoubleClick",&mEditOnDoubleClick,true); 249 addItemBool("EditOnDoubleClick",&mEditOnDoubleClick,true);
249 addItemBool("ViewChangeHoldFullscreen",&mViewChangeHoldFullscreen,true); 250 addItemBool("ViewChangeHoldFullscreen",&mViewChangeHoldFullscreen,true);
250 addItemBool("ViewChangeHoldNonFullscreen",&mViewChangeHoldNonFullscreen,false); 251 addItemBool("ViewChangeHoldNonFullscreen",&mViewChangeHoldNonFullscreen,false);
251 addItemBool("CenterOnCurrentTime",&mCenterOnCurrentTime,false); 252 addItemBool("CenterOnCurrentTime",&mCenterOnCurrentTime,false);
252 addItemBool("SetTimeToDayStartAt",&mSetTimeToDayStartAt,true); 253 addItemBool("SetTimeToDayStartAt",&mSetTimeToDayStartAt,true);
253 addItemBool("HighlightCurrentDay",&mHighlightCurrentDay,true); 254 addItemBool("HighlightCurrentDay",&mHighlightCurrentDay,true);
254 addItemBool("WNViewShowsParents",&mWNViewShowsParents,true);; 255 addItemBool("WNViewShowsParents",&mWNViewShowsParents,true);;
255 addItemBool("WNViewShowsPast",&mWNViewShowsPast,true); 256 addItemBool("WNViewShowsPast",&mWNViewShowsPast,true);
256 addItemBool("WNViewShowLocation",&mWNViewShowLocation,false); 257 addItemBool("WNViewShowLocation",&mWNViewShowLocation,false);
257 addItemBool("UseHighlightLightColor",&mUseHighlightLightColor,false); 258 addItemBool("UseHighlightLightColor",&mUseHighlightLightColor,false);
258 addItemBool("ListViewMonthTimespan",&mListViewMonthTimespan,true); 259 addItemBool("ListViewMonthTimespan",&mListViewMonthTimespan,true);
259 addItemBool("TodoViewUsesCatColors",&mTodoViewUsesCatColors,false); 260 addItemBool("TodoViewUsesCatColors",&mTodoViewUsesCatColors,false);
260 addItemBool("TodoViewShowsPercentage",&mTodoViewShowsPercentage,false); 261 addItemBool("TodoViewShowsPercentage",&mTodoViewShowsPercentage,false);
261 addItemBool("TodoViewUsesSmallFont",&mTodoViewUsesSmallFont,true); 262 addItemBool("TodoViewUsesSmallFont",&mTodoViewUsesSmallFont,true);
262 addItemBool("MonthViewUsesBigFont",&mMonthViewUsesBigFont,true); 263 addItemBool("MonthViewUsesBigFont",&mMonthViewUsesBigFont,true);
263 addItemBool("TodoViewUsesForegroundColor",&mTodoViewUsesForegroundColor,false); 264 addItemBool("TodoViewUsesForegroundColor",&mTodoViewUsesForegroundColor,false);
264 addItemBool("MonthViewUsesForegroundColor",&mMonthViewUsesForegroundColor,false); 265 addItemBool("MonthViewUsesForegroundColor",&mMonthViewUsesForegroundColor,false);
265#ifdef DESKTOP_VERSION 266#ifdef DESKTOP_VERSION
266 addItemBool("UseInternalAlarmNotification",&mUseInternalAlarmNotification,true); 267 addItemBool("UseInternalAlarmNotification",&mUseInternalAlarmNotification,true);
267#else 268#else
268 addItemBool("UseInternalAlarmNotification",&mUseInternalAlarmNotification,false); 269 addItemBool("UseInternalAlarmNotification",&mUseInternalAlarmNotification,false);
269#endif 270#endif
270 addItemInt("Day Begins",&mDayBegins,7); 271 addItemInt("Day Begins",&mDayBegins,7);
271 addItemInt("Working Hours Start",&mWorkingHoursStart,8); 272 addItemInt("Working Hours Start",&mWorkingHoursStart,8);
diff --git a/korganizer/koprefs.h b/korganizer/koprefs.h
index 2a0ee64..e06df1c 100644
--- a/korganizer/koprefs.h
+++ b/korganizer/koprefs.h
@@ -130,64 +130,65 @@ class KOPrefs : public KPimPrefs
130 130
131 131
132 132
133 133
134 QColor mHolidayColor; 134 QColor mHolidayColor;
135 QColor mHighlightColor; 135 QColor mHighlightColor;
136 QColor mEventColor; 136 QColor mEventColor;
137 QColor mTodoDoneColor; 137 QColor mTodoDoneColor;
138 QColor mAgendaBgColor; 138 QColor mAgendaBgColor;
139 QColor mWorkingHoursColor; 139 QColor mWorkingHoursColor;
140 QColor mTodoDueTodayColor; 140 QColor mTodoDueTodayColor;
141 QColor mTodoOverdueColor; 141 QColor mTodoOverdueColor;
142 QColor mTodoRunColor; 142 QColor mTodoRunColor;
143 QColor mMonthViewEvenColor; 143 QColor mMonthViewEvenColor;
144 QColor mMonthViewOddColor; 144 QColor mMonthViewOddColor;
145 QColor mMonthViewHolidayColor; 145 QColor mMonthViewHolidayColor;
146 bool mMonthViewUsesDayColors; 146 bool mMonthViewUsesDayColors;
147 bool mMonthViewSatSunTog; 147 bool mMonthViewSatSunTog;
148 bool mMonthViewWeek; 148 bool mMonthViewWeek;
149 QColor mAppColor1; 149 QColor mAppColor1;
150 QColor mAppColor2; 150 QColor mAppColor2;
151 bool mUseAppColors; 151 bool mUseAppColors;
152 152
153 int mDayBegins; 153 int mDayBegins;
154 int mHourSize; 154 int mHourSize;
155 int mAllDaySize; 155 int mAllDaySize;
156 bool mShowFullMenu; 156 bool mShowFullMenu;
157 bool mDailyRecur; 157 bool mDailyRecur;
158 bool mWeeklyRecur; 158 bool mWeeklyRecur;
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;
165 bool mFullViewMonth; 166 bool mFullViewMonth;
166 bool mMonthViewUsesCategoryColor; 167 bool mMonthViewUsesCategoryColor;
167 bool mFullViewTodo; 168 bool mFullViewTodo;
168 bool mShowCompletedTodo; 169 bool mShowCompletedTodo;
169 bool mMarcusBainsEnabled; 170 bool mMarcusBainsEnabled;
170 int mNextXDays; 171 int mNextXDays;
171 int mWhatsNextDays; 172 int mWhatsNextDays;
172 int mWhatsNextPrios; 173 int mWhatsNextPrios;
173 bool mEnableQuickTodo; 174 bool mEnableQuickTodo;
174 175
175 bool mCompactDialogs; 176 bool mCompactDialogs;
176 bool mVerticalScreen; 177 bool mVerticalScreen;
177 178
178 bool mShowIconNewTodo; 179 bool mShowIconNewTodo;
179 bool mShowIconNewEvent; 180 bool mShowIconNewEvent;
180 bool mShowIconSearch; 181 bool mShowIconSearch;
181 bool mShowIconList; 182 bool mShowIconList;
182 bool mShowIconDay1; 183 bool mShowIconDay1;
183 bool mShowIconDay5; 184 bool mShowIconDay5;
184 bool mShowIconDay6; 185 bool mShowIconDay6;
185 bool mShowIconDay7; 186 bool mShowIconDay7;
186 bool mShowIconMonth; 187 bool mShowIconMonth;
187 bool mShowIconTodoview; 188 bool mShowIconTodoview;
188 bool mShowIconBackFast; 189 bool mShowIconBackFast;
189 bool mShowIconBack; 190 bool mShowIconBack;
190 bool mShowIconToday; 191 bool mShowIconToday;
191 bool mShowIconForward; 192 bool mShowIconForward;
192 bool mShowIconForwardFast; 193 bool mShowIconForwardFast;
193 bool mShowIconWhatsThis; 194 bool mShowIconWhatsThis;
diff --git a/korganizer/koprefsdialog.cpp b/korganizer/koprefsdialog.cpp
index ad3c61c..cb9c272 100644
--- a/korganizer/koprefsdialog.cpp
+++ b/korganizer/koprefsdialog.cpp
@@ -735,65 +735,67 @@ void KOPrefsDialog::setupViewsTab()
735 topLayout->addMultiCellWidget(lab,ii, ii,0,1); 735 topLayout->addMultiCellWidget(lab,ii, ii,0,1);
736 ii++; 736 ii++;
737 } else { 737 } else {
738 new QLabel ( i18n("Show events that recur "), habo ); 738 new QLabel ( i18n("Show events that recur "), habo );
739 } 739 }
740 dailyRecur = 740 dailyRecur =
741 addWidBool(i18n("daily"), 741 addWidBool(i18n("daily"),
742 &(KOPrefs::instance()->mMonthDailyRecur),habo); 742 &(KOPrefs::instance()->mMonthDailyRecur),habo);
743 // topLayout->addWidget(dailyRecur->checkBox(),ii++,0); 743 // topLayout->addWidget(dailyRecur->checkBox(),ii++,0);
744 744
745 weeklyRecur = 745 weeklyRecur =
746 addWidBool(i18n("weekly"), 746 addWidBool(i18n("weekly"),
747 &(KOPrefs::instance()->mMonthWeeklyRecur),habo); 747 &(KOPrefs::instance()->mMonthWeeklyRecur),habo);
748 topLayout->addMultiCellWidget(habo,ii, ii,0,1); 748 topLayout->addMultiCellWidget(habo,ii, ii,0,1);
749 ii++; 749 ii++;
750 750
751 751
752 habo = new QHBox( topFrame ); 752 habo = new QHBox( topFrame );
753 if ( QApplication::desktop()->width() <= 480 ) { 753 if ( QApplication::desktop()->width() <= 480 ) {
754 lab = new QLabel (i18n("Show in every cell ") , topFrame ); 754 lab = new QLabel (i18n("Show in every cell ") , topFrame );
755 topLayout->addMultiCellWidget(lab,ii, ii,0,1); 755 topLayout->addMultiCellWidget(lab,ii, ii,0,1);
756 ii++; 756 ii++;
757 757
758 } else { 758 } else {
759 new QLabel ( i18n("Show in every cell "), habo ); 759 new QLabel ( i18n("Show in every cell "), habo );
760 } 760 }
761 weeklyRecur = 761 weeklyRecur =
762 addWidBool(i18n("short month"), 762 addWidBool(i18n("short month"),
763 &(KOPrefs::instance()->mMonthShowShort),habo); 763 &(KOPrefs::instance()->mMonthShowShort),habo);
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
771 KPrefsDialogWidBool *enableMonthScroll = 773 KPrefsDialogWidBool *enableMonthScroll =
772 addWidBool(i18n("Enable scrollbars in month view cells"), 774 addWidBool(i18n("Enable scrollbars in month view cells"),
773 &(KOPrefs::instance()->mEnableMonthScroll),topFrame); 775 &(KOPrefs::instance()->mEnableMonthScroll),topFrame);
774 topLayout->addWidget(enableMonthScroll->checkBox(),ii++,0); 776 topLayout->addWidget(enableMonthScroll->checkBox(),ii++,0);
775#endif 777#endif
776 dummy = 778 dummy =
777 addWidBool(i18n("Week view mode uses bigger font"), 779 addWidBool(i18n("Week view mode uses bigger font"),
778 &(KOPrefs::instance()->mMonthViewUsesBigFont),topFrame); 780 &(KOPrefs::instance()->mMonthViewUsesBigFont),topFrame);
779 topLayout->addWidget(dummy->checkBox(),ii++,0); 781 topLayout->addWidget(dummy->checkBox(),ii++,0);
780 dummy = 782 dummy =
781 addWidBool(i18n("Show Sat/Sun together"), 783 addWidBool(i18n("Show Sat/Sun together"),
782 &(KOPrefs::instance()->mMonthViewSatSunTog),topFrame); 784 &(KOPrefs::instance()->mMonthViewSatSunTog),topFrame);
783 topLayout->addWidget(dummy->checkBox(),ii++,0); 785 topLayout->addWidget(dummy->checkBox(),ii++,0);
784 786
785 KPrefsDialogWidBool *coloredCategoriesInMonthView = 787 KPrefsDialogWidBool *coloredCategoriesInMonthView =
786 addWidBool(i18n("Month view uses category colors"), 788 addWidBool(i18n("Month view uses category colors"),
787 &(KOPrefs::instance()->mMonthViewUsesCategoryColor),topFrame); 789 &(KOPrefs::instance()->mMonthViewUsesCategoryColor),topFrame);
788 topLayout->addWidget(coloredCategoriesInMonthView->checkBox(),ii++,0); 790 topLayout->addWidget(coloredCategoriesInMonthView->checkBox(),ii++,0);
789 791
790 dummy = 792 dummy =
791 addWidBool(i18n("Categorie colors are applied to text"), 793 addWidBool(i18n("Categorie colors are applied to text"),
792 &(KOPrefs::instance()->mMonthViewUsesForegroundColor),topFrame); 794 &(KOPrefs::instance()->mMonthViewUsesForegroundColor),topFrame);
793 topLayout->addWidget(dummy->checkBox(),ii++,0); 795 topLayout->addWidget(dummy->checkBox(),ii++,0);
794 coloredCategoriesInMonthView = 796 coloredCategoriesInMonthView =
795 addWidBool(i18n("Month view uses day colors"), 797 addWidBool(i18n("Month view uses day colors"),
796 &(KOPrefs::instance()->mMonthViewUsesDayColors),topFrame); 798 &(KOPrefs::instance()->mMonthViewUsesDayColors),topFrame);
797 topLayout->addWidget(coloredCategoriesInMonthView->checkBox(),ii++,0); 799 topLayout->addWidget(coloredCategoriesInMonthView->checkBox(),ii++,0);
798 800
799 KPrefsDialogWidColor *holidayColor = 801 KPrefsDialogWidColor *holidayColor =
diff --git a/korganizer/koviewmanager.cpp b/korganizer/koviewmanager.cpp
index 406e741..f1f2dd2 100644
--- a/korganizer/koviewmanager.cpp
+++ b/korganizer/koviewmanager.cpp
@@ -570,64 +570,71 @@ void KOViewManager::showWeekView()
570 globalFlagBlockAgenda = 2; 570 globalFlagBlockAgenda = 2;
571 globalFlagBlockLabel = 0; 571 globalFlagBlockLabel = 0;
572 mMainView->dateNavigator()->selectWeek(); 572 mMainView->dateNavigator()->selectWeek();
573 mCurrentAgendaView = 7 ; 573 mCurrentAgendaView = 7 ;
574} 574}
575 575
576void KOViewManager::showNextXView() 576void KOViewManager::showNextXView()
577{ 577{
578 578
579 globalFlagBlockAgenda = 1; 579 globalFlagBlockAgenda = 1;
580 if ( mCurrentAgendaView != 3 ) 580 if ( mCurrentAgendaView != 3 )
581 mCurrentAgendaView = -1; 581 mCurrentAgendaView = -1;
582 showAgendaView(KOPrefs::instance()->mFullViewMonth); 582 showAgendaView(KOPrefs::instance()->mFullViewMonth);
583 globalFlagBlockAgenda = 2; 583 globalFlagBlockAgenda = 2;
584 mMainView->dateNavigator()->selectDates( QDate::currentDate(), 584 mMainView->dateNavigator()->selectDates( QDate::currentDate(),
585 KOPrefs::instance()->mNextXDays ); 585 KOPrefs::instance()->mNextXDays );
586 mFlagShowNextxDays = true; 586 mFlagShowNextxDays = true;
587 mCurrentAgendaView = 3 ; 587 mCurrentAgendaView = 3 ;
588 KOPrefs::instance()->mCurrentDisplayedView = VIEW_NX_VIEW; 588 KOPrefs::instance()->mCurrentDisplayedView = VIEW_NX_VIEW;
589} 589}
590bool KOViewManager::showsNextDays() 590bool KOViewManager::showsNextDays()
591{ 591{
592 return mFlagShowNextxDays; 592 return mFlagShowNextxDays;
593} 593}
594void KOViewManager::createMonthView() 594void KOViewManager::createMonthView()
595{ 595{
596if (!mMonthView) { 596if (!mMonthView) {
597 mMonthView = new KOMonthView(mMainView->calendar(), mMainView->viewStack(), "KOViewManager::MonthView"); 597 mMonthView = new KOMonthView(mMainView->calendar(), mMainView->viewStack(), "KOViewManager::MonthView");
598 598
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
605 connect(mMonthView, SIGNAL(showIncidenceSignal(Incidence *)), 612 connect(mMonthView, SIGNAL(showIncidenceSignal(Incidence *)),
606 mMainView, SLOT(showIncidence(Incidence *))); 613 mMainView, SLOT(showIncidence(Incidence *)));
607 connect(mMonthView, SIGNAL(editIncidenceSignal(Incidence *)), 614 connect(mMonthView, SIGNAL(editIncidenceSignal(Incidence *)),
608 mMainView, SLOT(editIncidence(Incidence *))); 615 mMainView, SLOT(editIncidence(Incidence *)));
609 connect(mMonthView, SIGNAL(deleteIncidenceSignal(Incidence *)), 616 connect(mMonthView, SIGNAL(deleteIncidenceSignal(Incidence *)),
610 mMainView, SLOT(deleteIncidence(Incidence *))); 617 mMainView, SLOT(deleteIncidence(Incidence *)));
611 618
612 connect( mMonthView, SIGNAL( incidenceSelected( Incidence * ) ), 619 connect( mMonthView, SIGNAL( incidenceSelected( Incidence * ) ),
613 mMainView, SLOT( processMainViewSelection( Incidence * ) ) ); 620 mMainView, SLOT( processMainViewSelection( Incidence * ) ) );
614 connect( mMonthView, SIGNAL( cloneIncidenceSignal( Incidence * ) ), 621 connect( mMonthView, SIGNAL( cloneIncidenceSignal( Incidence * ) ),
615 mMainView, SLOT ( cloneIncidence( Incidence * ) ) ); 622 mMainView, SLOT ( cloneIncidence( Incidence * ) ) );
616 connect( mMonthView, SIGNAL( cancelIncidenceSignal( Incidence * ) ), 623 connect( mMonthView, SIGNAL( cancelIncidenceSignal( Incidence * ) ),
617 mMainView, SLOT ( cancelIncidence( Incidence * ) ) ); 624 mMainView, SLOT ( cancelIncidence( Incidence * ) ) );
618 625
619 connect( mMonthView, SIGNAL( moveIncidenceSignal( Incidence * ) ), 626 connect( mMonthView, SIGNAL( moveIncidenceSignal( Incidence * ) ),
620 mMainView, SLOT ( moveIncidence( Incidence * ) ) ); 627 mMainView, SLOT ( moveIncidence( Incidence * ) ) );
621 connect( mMonthView, SIGNAL( beamIncidenceSignal( Incidence * ) ), 628 connect( mMonthView, SIGNAL( beamIncidenceSignal( Incidence * ) ),
622 mMainView, SLOT ( beamIncidence( Incidence * ) ) ); 629 mMainView, SLOT ( beamIncidence( Incidence * ) ) );
623 connect( mMonthView, SIGNAL( selectWeekNum( int ) ), 630 connect( mMonthView, SIGNAL( selectWeekNum( int ) ),
624 mMainView->dateNavigator(), SLOT ( selectWeekFromMonthView( int ) ) ); 631 mMainView->dateNavigator(), SLOT ( selectWeekFromMonthView( int ) ) );
625 connect( mMonthView, SIGNAL( selectMonth() ), 632 connect( mMonthView, SIGNAL( selectMonth() ),
626 mMainView->dateNavigator(), SLOT ( selectMonthFromMonthview() ) ); 633 mMainView->dateNavigator(), SLOT ( selectMonthFromMonthview() ) );
627 connect( mMonthView, SIGNAL( showDaySignal( QDate ) ), 634 connect( mMonthView, SIGNAL( showDaySignal( QDate ) ),
628 mMainView, SLOT ( showDay( QDate ) ) ); 635 mMainView, SLOT ( showDay( QDate ) ) );
629 connect(mMainView, SIGNAL(configChanged()), mMonthView, SLOT(updateConfig())); 636 connect(mMainView, SIGNAL(configChanged()), mMonthView, SLOT(updateConfig()));
630 connect( mMonthView, SIGNAL(nextMonth() ), 637 connect( mMonthView, SIGNAL(nextMonth() ),
631 mMonthView->navigatorBar(), SIGNAL(goNextMonth() ) ); 638 mMonthView->navigatorBar(), SIGNAL(goNextMonth() ) );
632 connect( mMonthView, SIGNAL(prevMonth() ), 639 connect( mMonthView, SIGNAL(prevMonth() ),
633 mMonthView->navigatorBar(), SIGNAL(goPrevMonth() ) ); 640 mMonthView->navigatorBar(), SIGNAL(goPrevMonth() ) );