-rw-r--r-- | korganizer/koagendaview.cpp | 27 | ||||
-rw-r--r-- | korganizer/navigatorbar.cpp | 22 |
2 files changed, 33 insertions, 16 deletions
diff --git a/korganizer/koagendaview.cpp b/korganizer/koagendaview.cpp index 918931a..1908b1c 100644 --- a/korganizer/koagendaview.cpp +++ b/korganizer/koagendaview.cpp | |||
@@ -434,15 +434,24 @@ KOAgendaView::KOAgendaView(Calendar *cal,QWidget *parent,const char *name) : | |||
434 | dummyAllDayRightB->setFocusPolicy(NoFocus); | 434 | dummyAllDayRightB->setFocusPolicy(NoFocus); |
435 | dummyAllDayRightB->setFixedHeight( (dummyAllDayRightB->sizeHint().height()/4)*3 ); | 435 | dummyAllDayRightB->setFixedHeight( (dummyAllDayRightB->sizeHint().height()/4)*3 ); |
436 | |||
436 | QPopupMenu * wpo = new QPopupMenu (this); | 437 | QPopupMenu * wpo = new QPopupMenu (this); |
437 | wpo->insertItem( i18n("W#"), 0 ); | 438 | QPopupMenu * all = new QPopupMenu (this); |
439 | //wpo->insertItem( i18n("W#"), 0 ); | ||
440 | int first = 1; | ||
438 | int i; | 441 | int i; |
439 | for ( i = 1; i < 53; i++ ) | 442 | for ( i = 1; i < 50; ++i ) { |
440 | wpo->insertItem( QString::number( i ),i ); | 443 | if ( !(i%10) ) { |
441 | //Qt bug - we must add some empty fields... | 444 | all->insertItem( i18n("Select week %1-%2" ).arg(first).arg( i-1) ,wpo ); |
442 | for ( i = 53; i < 54; ++i ) { | 445 | connect( wpo, SIGNAL( activated(int) ), SIGNAL( selectWeekNum ( int ) ) ); |
443 | wpo->insertItem( "", 52 ); | 446 | first = i; |
447 | wpo = new QPopupMenu (this); | ||
448 | } | ||
449 | wpo->insertItem( QString::number(i), i ); | ||
450 | } | ||
451 | for ( i = 50; i < 53; ++i ) { | ||
452 | wpo->insertItem( QString::number(i), i); | ||
444 | } | 453 | } |
445 | dummyAllDayRightB->setPopup( wpo ); | 454 | all->insertItem( i18n("Select week %1-%2" ).arg(first).arg( i-1) ,wpo ); |
446 | 455 | dummyAllDayRightB->setPopup( all ); | |
447 | connect( wpo, SIGNAL( activated(int) ), SIGNAL( selectWeekNum ( int ) ) ); | 456 | connect( wpo, SIGNAL( activated(int) ), SIGNAL( selectWeekNum ( int ) ) ); |
448 | 457 | ||
@@ -582,5 +591,5 @@ KOAgendaView::KOAgendaView(Calendar *cal,QWidget *parent,const char *name) : | |||
582 | QString dayTest = "30"; | 591 | QString dayTest = "30"; |
583 | int wid = fm.width( dayTest ); | 592 | int wid = fm.width( dayTest ); |
584 | int maxWid = dummyAllDayRight->width(); | 593 | int maxWid = dummyAllDayRight->width()-2; |
585 | int fontPoint = dlf.pointSize(); | 594 | int fontPoint = dlf.pointSize(); |
586 | while ( wid > maxWid ) { | 595 | while ( wid > maxWid ) { |
diff --git a/korganizer/navigatorbar.cpp b/korganizer/navigatorbar.cpp index 2406bb5..24de01f 100644 --- a/korganizer/navigatorbar.cpp +++ b/korganizer/navigatorbar.cpp | |||
@@ -137,15 +137,23 @@ NavigatorBar::NavigatorBar( const QDate & date, QWidget *parent, const char *nam | |||
137 | 137 | ||
138 | if ( insertWeek ) { | 138 | if ( insertWeek ) { |
139 | //shit : bug in Qt. after inserting 53 item, only 51 are shown... | ||
140 | QPopupMenu * wpo = new QPopupMenu (this); | 139 | QPopupMenu * wpo = new QPopupMenu (this); |
141 | wpo->insertItem( i18n("W#"), 0 ); | 140 | QPopupMenu * all = new QPopupMenu (this); |
142 | for ( i = 1; i < 53; ++i ) { | 141 | //wpo->insertItem( i18n("W#"), 0 ); |
142 | int first = 1; | ||
143 | for ( i = 1; i < 50; ++i ) { | ||
144 | if ( !(i%10) ) { | ||
145 | all->insertItem( i18n("Select week %1-%2" ).arg(first).arg( i-1) ,wpo ); | ||
146 | connect( wpo, SIGNAL( activated(int) ), SIGNAL( selectWeek ( int ) ) ); | ||
147 | first = i; | ||
148 | wpo = new QPopupMenu (this); | ||
149 | } | ||
143 | wpo->insertItem( QString::number(i), i ); | 150 | wpo->insertItem( QString::number(i), i ); |
144 | } | 151 | } |
145 | for ( i = 53; i < 54; ++i ) { | 152 | for ( i = 50; i < 53; ++i ) { |
146 | wpo->insertItem( "", 52 ); | 153 | wpo->insertItem( QString::number(i), i); |
147 | } | 154 | } |
148 | selWeek->setPopup( wpo ); | 155 | all->insertItem( i18n("Select week %1-%2" ).arg(first).arg( i-1) ,wpo ); |
149 | selWeek->setFixedWidth( (size/4)*3 ); | 156 | selWeek->setPopup( all ); |
157 | selWeek->setFixedWidth( (size/5)*4 ); | ||
150 | selWeek->setFixedHeight( size ); | 158 | selWeek->setFixedHeight( size ); |
151 | connect( wpo, SIGNAL( activated(int) ), SIGNAL( selectWeek ( int ) ) ); | 159 | connect( wpo, SIGNAL( activated(int) ), SIGNAL( selectWeek ( int ) ) ); |