summaryrefslogtreecommitdiffabout
path: root/korganizer/datenavigator.cpp
authorzautrix <zautrix>2004-12-04 13:59:01 (UTC)
committer zautrix <zautrix>2004-12-04 13:59:01 (UTC)
commita3b1470f3da722d044505f78bef9de51b2107802 (patch) (side-by-side diff)
tree52965f580d00f865231661ff3d51af5c881e77cc /korganizer/datenavigator.cpp
parent7828f46413766ee5db72dc9bd457eac0868f0646 (diff)
downloadkdepimpi-a3b1470f3da722d044505f78bef9de51b2107802.zip
kdepimpi-a3b1470f3da722d044505f78bef9de51b2107802.tar.gz
kdepimpi-a3b1470f3da722d044505f78bef9de51b2107802.tar.bz2
monthview changes
Diffstat (limited to 'korganizer/datenavigator.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/datenavigator.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/korganizer/datenavigator.cpp b/korganizer/datenavigator.cpp
index e26e20b..3156b2b 100644
--- a/korganizer/datenavigator.cpp
+++ b/korganizer/datenavigator.cpp
@@ -154,96 +154,102 @@ void DateNavigator::selectWeek()
}
void DateNavigator::selectWeek( int num )
{
int year = mSelectedDates.first().year();
if ( mSelectedDates.first().dayOfYear() > 300 && num < 10 )
++year;
if ( mSelectedDates.first().dayOfYear() < 70 && num > 40 )
--year;
QDate d = QDate ( year, 1,1);
while ( d.dayOfWeek() != 4 )
d = d.addDays( 1 );
selectWeek( d.addDays ( (num-1) *7 ) );
}
void DateNavigator::selectWeek( const QDate &d )
{
int dayOfWeek = KOGlobals::self()->calendarSystem()->dayOfWeek( d );
int weekStart = KGlobal::locale()->weekStartDay();
QDate firstDate = d.addDays( weekStart - dayOfWeek );
if ( weekStart != 1 && dayOfWeek < weekStart ) {
firstDate = firstDate.addDays(-7 );
}
selectDates( firstDate, 7 );
}
void DateNavigator::selectWorkWeek()
{
QDate d = mSelectedDates.first();
selectWorkWeek( d );
}
void DateNavigator::selectWorkWeek( const QDate &d )
{
int dayOfWeek = KOGlobals::self()->calendarSystem()->dayOfWeek( d );
QDate firstDate = d.addDays( 1 - dayOfWeek );
int weekStart = KGlobal::locale()->weekStartDay();
if ( weekStart != 1 && dayOfWeek >= weekStart ) {
firstDate = firstDate.addDays( 7 );
}
selectDates( firstDate, 5 );
}
+void DateNavigator::selectTodayMonth()
+{
+ QDate date = QDate::currentDate().addDays( 1-QDate::currentDate().day() );
+ selectDates( date , date.daysInMonth ());
+
+}
void DateNavigator::selectToday()
{
QDate d = QDate::currentDate();
int dateCount = mSelectedDates.count();
if ( dateCount == 5 ) selectWorkWeek( d );
else if ( dateCount == 7 ) selectWeek( d );
else selectDates( d, dateCount );
}
void DateNavigator::selectPreviousYear()
{
QDate firstSelected = mSelectedDates.first();
int weekDay = firstSelected.dayOfWeek();
firstSelected = KOGlobals::self()->calendarSystem()->addYears( firstSelected, -1 );
selectWeekByDay( weekDay, firstSelected );
}
void DateNavigator::selectPreviousMonth()
{
QDate firstSelected = mSelectedDates.first();
int weekDay = firstSelected.dayOfWeek();
firstSelected = KOGlobals::self()->calendarSystem()->addMonths( firstSelected, -1 );
if ( mSelectedDates.first().day() == 1 && mSelectedDates.count() > 27 )
selectMonthByDate( firstSelected );
else
selectWeekByDay( weekDay, firstSelected );
}
void DateNavigator::selectNextMonth()
{
QDate firstSelected = mSelectedDates.first();
int weekDay = firstSelected.dayOfWeek();
firstSelected = KOGlobals::self()->calendarSystem()->addMonths( firstSelected, 1 );
if ( mSelectedDates.first().day() == 1 && mSelectedDates.count() > 27 )
selectMonthByDate( firstSelected );
else
selectWeekByDay( weekDay, firstSelected );
}
void DateNavigator::selectNextYear()