summaryrefslogtreecommitdiffabout
path: root/korganizer/kdatenavigator.cpp
Side-by-side diff
Diffstat (limited to 'korganizer/kdatenavigator.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/kdatenavigator.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/korganizer/kdatenavigator.cpp b/korganizer/kdatenavigator.cpp
index 83a57ca..1474e4b 100644
--- a/korganizer/kdatenavigator.cpp
+++ b/korganizer/kdatenavigator.cpp
@@ -74,24 +74,25 @@ KDateNavigator::KDateNavigator( QWidget *parent, const char *name )
// get the day of the week on the first day
QDate dayone(m_MthYr.year(), m_MthYr.month(), 1);
m_fstDayOfWk = dayone.dayOfWeek();
int i;
// Set up the heading fields.
for( i = 0; i < 7; i++ ) {
headings[i] = new QLabel("",this);
//headings[i]->setFont(QFont("Arial", 10, QFont::Bold));
headings[i]->setAlignment(AlignCenter);
+ headings[i]->installEventFilter(this);
topLayout->addWidget(headings[i],1,i+1);
}
// Create the weeknumber labels
for( i = 0; i < 6; i++ ) {
weeknos[i] = new QLabel(this);
weeknos[i]->setAlignment(AlignCenter);
//weeknos[i]->setFont(QFont("Arial", 10));
if(!m_bShowWeekNums) {
weeknos[i]->hide();
}
@@ -430,19 +431,34 @@ void KDateNavigator::wheelEvent (QWheelEvent *e)
bool KDateNavigator::eventFilter (QObject *o,QEvent *e)
{
if (e->type() == QEvent::MouseButtonPress) {
int i;
for(i=0;i<6;++i) {
if (o == weeknos[i]) {
QDate weekstart = daymatrix->getDate(i*7);
emit weekClicked(weekstart);
break;
}
}
+ for(i=0;i<7;++i) {
+ if (o == headings[i]) {
+ KCal::DateList selDays;
+ QDate date = daymatrix->getDate(14);
+ int dio = date.daysInMonth();
+ int j;
+ int ye = date.year();
+ int mo = date.month();
+ for ( j = 1; j <= dio; ++j ) {
+ selDays.append( QDate( ye, mo, j ) );
+ }
+ emit datesSelected( selDays );
+ break;
+ }
+ }
return true;
} else {
return false;
}
}
//#include "kdatenavigator.moc"