summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/koagendaview.cpp41
-rw-r--r--korganizer/koagendaview.h1
-rw-r--r--korganizer/kodaymatrix.cpp8
-rw-r--r--korganizer/koviewmanager.cpp41
4 files changed, 48 insertions, 43 deletions
diff --git a/korganizer/koagendaview.cpp b/korganizer/koagendaview.cpp
index aa36553..8c27c43 100644
--- a/korganizer/koagendaview.cpp
+++ b/korganizer/koagendaview.cpp
@@ -626,4 +626,19 @@ void KOAgendaView::slotDaylabelClicked()
showDateView( 10, firstDate.addDays(1 ) );
}
+
+QPushButton* KOAgendaView::getNewDaylabel()
+{
+
+ QPushButton * dayLabel = new QPushButton(mDayLabels);
+ dayLabel->setFlat( true );
+ connect( dayLabel, SIGNAL( clicked() ), this, SLOT ( slotDaylabelClicked() ) );
+ dayLabel->setFocusPolicy(NoFocus);
+ dayLabel->setSizePolicy(QSizePolicy( QSizePolicy::Expanding ,QSizePolicy::Expanding ));
+ mDayLabelsList.append( dayLabel );
+ mLayoutDayLabels->addWidget(dayLabel);
+ //mLayoutDayLabels->setStretchFactor(dayLabel, 100);
+ return dayLabel ;
+}
+
void KOAgendaView::createDayLabels()
{
@@ -650,5 +665,6 @@ void KOAgendaView::createDayLabels()
QString dayTest = "Mon 20";
int wid = fm.width( dayTest );
- maxWid -= ( selCount * 3 );
+ //maxWid -= ( selCount * 3 ); //working for QLabels
+ maxWid -= ( selCount * 5 ); //working for QPushButton
if ( maxWid < 0 )
maxWid = 20;
@@ -670,5 +686,5 @@ void KOAgendaView::createDayLabels()
dlf.setPointSize( fontPoint );
QFontMetrics f( dlf );
- wid = f.width( "20" );
+ wid = f.width( "20" )+2;
needWid = wid * selCount;
if ( needWid < maxWid )
@@ -691,10 +707,5 @@ void KOAgendaView::createDayLabels()
if ( !dayLabel ) {
appendLabels = true;
- dayLabel = new QPushButton(mDayLabels);
- dayLabel->setFlat( true );
- connect( dayLabel, SIGNAL( clicked() ), this, SLOT ( slotDaylabelClicked() ) );
- dayLabel->setFocusPolicy(NoFocus);
- mDayLabelsList.append( dayLabel );
- mLayoutDayLabels->addWidget(dayLabel);
+ dayLabel = getNewDaylabel();
}
dayLabel->setFixedWidth( mTimeLabels->width()+2 );
@@ -717,10 +728,5 @@ void KOAgendaView::createDayLabels()
}
if ( appendLabels ) {
- dayLabel = new QPushButton(mDayLabels);
- dayLabel->setFlat( true );
- connect( dayLabel, SIGNAL( clicked() ), this, SLOT ( slotDaylabelClicked() ) );
- dayLabel->setFocusPolicy(NoFocus);
- mDayLabelsList.append( dayLabel );
- mLayoutDayLabels->addWidget(dayLabel);
+ dayLabel = getNewDaylabel();
}
dayLabel->setMinimumWidth( 1 );
@@ -808,10 +814,5 @@ void KOAgendaView::createDayLabels()
}
if ( appendLabels ) {
- dayLabel = new QPushButton(mDayLabels);
- dayLabel->setFlat( true );
- connect( dayLabel, SIGNAL( clicked() ), this, SLOT ( slotDaylabelClicked() ) );
- dayLabel->setFocusPolicy(NoFocus);
- mDayLabelsList.append( dayLabel );
- mLayoutDayLabels->addWidget(dayLabel);
+ dayLabel = getNewDaylabel();
}
//dayLabel->hide();//test only
diff --git a/korganizer/koagendaview.h b/korganizer/koagendaview.h
index fd0a7af..cbe86b6 100644
--- a/korganizer/koagendaview.h
+++ b/korganizer/koagendaview.h
@@ -191,4 +191,5 @@ class KOAgendaView : public KOEventView {
protected:
+ QPushButton* getNewDaylabel();
bool mBlockUpdating;
int mUpcomingWidth;
diff --git a/korganizer/kodaymatrix.cpp b/korganizer/kodaymatrix.cpp
index dd83d48..989f758 100644
--- a/korganizer/kodaymatrix.cpp
+++ b/korganizer/kodaymatrix.cpp
@@ -341,5 +341,5 @@ void KODayMatrix::mouseReleaseEvent (QMouseEvent* e)
if (tmp != mSelStart) {
mSelStart = tmp;
- repaint();
+ repaint(false);
}
} else {
@@ -349,5 +349,5 @@ void KODayMatrix::mouseReleaseEvent (QMouseEvent* e)
if (tmp != mSelEnd) {
mSelEnd = tmp;
- repaint();
+ repaint(false);
}
}
@@ -372,5 +372,5 @@ void KODayMatrix::mouseMoveEvent (QMouseEvent* e)
if (tmp != mSelStart) {
mSelStart = tmp;
- repaint();
+ repaint(false);
}
} else {
@@ -380,5 +380,5 @@ void KODayMatrix::mouseMoveEvent (QMouseEvent* e)
if (tmp != mSelEnd) {
mSelEnd = tmp;
- repaint();
+ repaint(false);
}
}
diff --git a/korganizer/koviewmanager.cpp b/korganizer/koviewmanager.cpp
index 188ad23..7e126d9 100644
--- a/korganizer/koviewmanager.cpp
+++ b/korganizer/koviewmanager.cpp
@@ -99,18 +99,20 @@ void KOViewManager::readSettings(KConfig *config)
}
-
void KOViewManager::showDateView( int view, QDate date)
{
-
+ static int lastMode = 0;
+ static int lastCount = 0;
+ static bool lastNDMode = false;
+ static QDate lastDate;
//qDebug("date %d %s", view, date.toString().latin1());
-#if 0
- mNewItemPopup->insertItem ( SmallIcon( pathString +"day" ), i18n("Day view"),3 );
- mNewItemPopup->insertItem ( SmallIcon( pathString +"week" ), i18n("Next Week"),4 );
- mNewItemPopup->insertItem ( SmallIcon( pathString +"month" ), i18n("Next Two Weeks"),5 );
- mNewItemPopup->insertItem ( SmallIcon( pathString +"month" ), i18n("Next Month"),6 );
- mNewItemPopup->insertItem ( SmallIcon( pathString +"journal" ), i18n("Journal view"),7 );
-#endif
+
+ //qDebug("%d %d ", lastNDMode, mFlagShowNextxDays );
+ bool savemFlagShowNextxDays = mFlagShowNextxDays;
+ mFlagShowNextxDays = false;
if ( view == 3 ) {
//mCurrentAgendaView = 1 ;
+ lastDate = mMainView->dateNavigator()->selectedDates().first();
+ lastCount = mMainView->dateNavigator()->selectedDates().count();
+ lastNDMode = savemFlagShowNextxDays;
mMainView->showDay( date );
} else if (view == 4 ) {
@@ -139,17 +141,18 @@ void KOViewManager::showDateView( int view, QDate date)
mFlagShowNextxDays = true;
mCurrentAgendaView = 3 ;
- } if (view == 9) {
- showWeekView();
+ } if (view == 9) { // return behaviour, for getting back from mode == 3 (single day mode )
+ if ( lastMode ) {
+ mCurrentAgendaView = lastCount ;
+ mMainView->dateNavigator()->selectDates( lastDate, lastCount);
+ mFlagShowNextxDays = lastNDMode;
+ if ( mFlagShowNextxDays ) {
+ mCurrentAgendaView = 3 ;
+ }
+ } else
+ showWeekView();
} else if (view == 10) {
mMainView->dateNavigator()->selectDates( date,mMainView->dateNavigator()->selectedDates().count() );
}
-
-#if 0
- dateNavigator()->blockSignals( true );
- dateNavigator()->selectDate( d );
- dateNavigator()->blockSignals( false );
- mViewManager->showDayView();
-#endif
-
+ lastMode = view;
}