summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/koagendaview.cpp47
-rw-r--r--korganizer/koagendaview.h1
2 files changed, 45 insertions, 3 deletions
diff --git a/korganizer/koagendaview.cpp b/korganizer/koagendaview.cpp
index c018dc7..f8301f8 100644
--- a/korganizer/koagendaview.cpp
+++ b/korganizer/koagendaview.cpp
@@ -430,3 +430,3 @@ KOAgendaView::KOAgendaView(Calendar *cal,QWidget *parent,const char *name) :
QPushButton *dummyAllDayRightB = new QPushButton(dummyAllDayRight);
- QLabel * dummyAllDayRightL = new QLabel ( dummyAllDayRight );
+ mDummyAllDayRightL = new QLabel ( dummyAllDayRight );
@@ -435,3 +435,3 @@ KOAgendaView::KOAgendaView(Calendar *cal,QWidget *parent,const char *name) :
// dummyAllDayRightB->setSizePolicy(QSizePolicy( QSizePolicy::Expanding ,QSizePolicy::Expanding ));
- //dummyAllDayRightB->setFixedHeight( dummyAllDayRightB->sizeHint().height()/2 );
+ dummyAllDayRightB->setFixedHeight( (dummyAllDayRightB->sizeHint().height()/4)*3 );
QPopupMenu * wpo = new QPopupMenu (this);
@@ -580,2 +580,15 @@ 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 fontPoint = dlf.pointSize();
+ while ( wid > maxWid ) {
+ --fontPoint;
+ dlf.setPointSize( fontPoint );
+ QFontMetrics f( dlf );
+ wid = f.width( dayTest );
+ }
+ mDummyAllDayRightL->setFont( dlf );
@@ -920,3 +933,4 @@ void KOAgendaView::updateConfig()
return;
- // kdDebug() << "KOAgendaView::updateConfig()" << endl;
+
+
@@ -1086,2 +1100,29 @@ void KOAgendaView::fillAgenda()
globalFlagBlockAgendaItemPaint = 1;
+
+ int weekNum = 0;
+ QDate seda = mSelectedDates.first();
+ QDate d = QDate ( seda.year(), 1,1);
+ seda = seda.addDays( 1-seda.dayOfWeek() );//we are on monday
+ if ( seda.addDays(6).year() != seda.year() ) {
+ if ( seda.year() != d.year() ) {
+ if ( d.dayOfWeek() > 4 )
+ d = QDate ( seda.year(), 1,1);
+ else
+ weekNum = 1;
+ } else {
+ QDate dd( seda.year()+1, 1,1);
+ if ( dd.dayOfWeek() <= 4 )
+ weekNum = 1;
+ }
+ }
+ if ( weekNum == 0 ){
+ int dow = d.dayOfWeek();
+ if ( dow <= 4 )
+ d = d.addDays( 1-dow );
+ else // 5,6,7
+ d = d.addDays( 8-dow );
+ // we have the first week of the year.we are on monday
+ weekNum = d.daysTo( seda ) / 7 +1;
+ }
+ mDummyAllDayRightL->setText( QString::number( weekNum) );
mAllDayAgenda->changeColumns(mSelectedDates.count());
diff --git a/korganizer/koagendaview.h b/korganizer/koagendaview.h
index 4a058ce..ba9bc93 100644
--- a/korganizer/koagendaview.h
+++ b/korganizer/koagendaview.h
@@ -218,2 +218,3 @@ class KOAgendaView : public KOEventView {
protected:
+ QLabel * mDummyAllDayRightL;
KOAgendaButton* getNewDaylabel();