summaryrefslogtreecommitdiffabout
path: root/korganizer
Side-by-side diff
Diffstat (limited to 'korganizer') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/koagendaview.cpp27
-rw-r--r--korganizer/navigatorbar.cpp22
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
@@ -432,19 +432,28 @@ KOAgendaView::KOAgendaView(Calendar *cal,QWidget *parent,const char *name) :
dummyAllDayRightB->setFlat( true );
dummyAllDayRightB->setFocusPolicy(NoFocus);
dummyAllDayRightB->setFixedHeight( (dummyAllDayRightB->sizeHint().height()/4)*3 );
+
QPopupMenu * wpo = new QPopupMenu (this);
- wpo->insertItem( i18n("W#"), 0 );
+ QPopupMenu * all = new QPopupMenu (this);
+ //wpo->insertItem( i18n("W#"), 0 );
+ int first = 1;
int i;
- for ( i = 1; i < 53; i++ )
- wpo->insertItem( QString::number( i ),i );
- //Qt bug - we must add some empty fields...
- for ( i = 53; i < 54; ++i ) {
- wpo->insertItem( "", 52 );
+ for ( i = 1; i < 50; ++i ) {
+ if ( !(i%10) ) {
+ all->insertItem( i18n("Select week %1-%2" ).arg(first).arg( i-1) ,wpo );
+ connect( wpo, SIGNAL( activated(int) ), SIGNAL( selectWeekNum ( int ) ) );
+ first = i;
+ wpo = new QPopupMenu (this);
+ }
+ wpo->insertItem( QString::number(i), i );
+ }
+ for ( i = 50; i < 53; ++i ) {
+ wpo->insertItem( QString::number(i), i);
}
- dummyAllDayRightB->setPopup( wpo );
-
+ all->insertItem( i18n("Select week %1-%2" ).arg(first).arg( i-1) ,wpo );
+ dummyAllDayRightB->setPopup( all );
connect( wpo, SIGNAL( activated(int) ), SIGNAL( selectWeekNum ( int ) ) );
// Create event context menu for all day agenda
mAllDayAgendaPopup = eventPopup();
@@ -580,9 +589,9 @@ KOAgendaView::KOAgendaView(Calendar *cal,QWidget *parent,const char *name) :
QFont dlf = KOPrefs::instance()->mTimeLabelsFont;
QFontMetrics fm ( dlf );
QString dayTest = "30";
int wid = fm.width( dayTest );
- int maxWid = dummyAllDayRight->width();
+ int maxWid = dummyAllDayRight->width()-2;
int fontPoint = dlf.pointSize();
while ( wid > maxWid ) {
--fontPoint;
dlf.setPointSize( fontPoint );
diff --git a/korganizer/navigatorbar.cpp b/korganizer/navigatorbar.cpp
index 2406bb5..24de01f 100644
--- a/korganizer/navigatorbar.cpp
+++ b/korganizer/navigatorbar.cpp
@@ -135,19 +135,27 @@ NavigatorBar::NavigatorBar( const QDate & date, QWidget *parent, const char *nam
maxwidth+= 6;
}
if ( insertWeek ) {
- //shit : bug in Qt. after inserting 53 item, only 51 are shown...
QPopupMenu * wpo = new QPopupMenu (this);
- wpo->insertItem( i18n("W#"), 0 );
- for ( i = 1; i < 53; ++i ) {
+ QPopupMenu * all = new QPopupMenu (this);
+ //wpo->insertItem( i18n("W#"), 0 );
+ int first = 1;
+ for ( i = 1; i < 50; ++i ) {
+ if ( !(i%10) ) {
+ all->insertItem( i18n("Select week %1-%2" ).arg(first).arg( i-1) ,wpo );
+ connect( wpo, SIGNAL( activated(int) ), SIGNAL( selectWeek ( int ) ) );
+ first = i;
+ wpo = new QPopupMenu (this);
+ }
wpo->insertItem( QString::number(i), i );
}
- for ( i = 53; i < 54; ++i ) {
- wpo->insertItem( "", 52 );
+ for ( i = 50; i < 53; ++i ) {
+ wpo->insertItem( QString::number(i), i);
}
- selWeek->setPopup( wpo );
- selWeek->setFixedWidth( (size/4)*3 );
+ all->insertItem( i18n("Select week %1-%2" ).arg(first).arg( i-1) ,wpo );
+ selWeek->setPopup( all );
+ selWeek->setFixedWidth( (size/5)*4 );
selWeek->setFixedHeight( size );
connect( wpo, SIGNAL( activated(int) ), SIGNAL( selectWeek ( int ) ) );
}
mSelectMonth->setFixedWidth( maxwidth );