Diffstat (limited to 'korganizer/koviewmanager.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | korganizer/koviewmanager.cpp | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/korganizer/koviewmanager.cpp b/korganizer/koviewmanager.cpp index 31ee5e2..b5de4a1 100644 --- a/korganizer/koviewmanager.cpp +++ b/korganizer/koviewmanager.cpp @@ -105,193 +105,258 @@ void KOViewManager::readSettings(KConfig *config) showAgendaView(); mCurrentAgendaView = dateCount; #ifdef DESKTOP_VERSION QTimer::singleShot( 1000, mAgendaView, SLOT ( setInitStartHour() ) ); #endif } } 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 (view != 9) lastMode = 0; //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->dateNavigator()->selectDate( date ); lastMode = 1; mCurrentAgendaView = 1 ; } else if (view == 4 ) { mCurrentAgendaView = 7 ; mMainView->dateNavigator()->selectDates( date, 7 ); } else if (view == 5 ) { mCurrentAgendaView = 14 ; mMainView->dateNavigator()->selectDates( date, 14); } else if (view == 6 ) { //mMainView->dateNavigator()->selectDates( date, 7 ); showMonthView(); } else if (view == 7 ) { mMainView->dateNavigator()->selectDate( date ); showJournalView(); } else if (view == 8 ) { globalFlagBlockAgenda = 1; if ( mCurrentAgendaView != 3 ) mCurrentAgendaView = -1; showAgendaView(KOPrefs::instance()->mFullViewMonth); globalFlagBlockAgenda = 2; mMainView->dateNavigator()->selectDates( date , KOPrefs::instance()->mNextXDays ); mFlagShowNextxDays = true; mCurrentAgendaView = 3 ; } 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() ); } } void KOViewManager::writeSettings(KConfig *config) { config->setGroup("General"); QString view; if (mCurrentView == mWhatsNextView) view = "WhatsNext"; else if (mCurrentView == mMonthView) view = "Month"; else if (mCurrentView == mListView) view = "List"; else if (mCurrentView == mJournalView) view = "Journal"; else if (mCurrentView == mTimeSpanView) view = "TimeSpan"; else if (mCurrentView == mTodoView) view = "Todo"; else view = "Agenda"; config->writeEntry("Current View",view); if (mAgendaView) { mAgendaView->writeSettings(config); } if (mTimeSpanView) { mTimeSpanView->writeSettings(config); } if (mListView) { mListView->writeSettings(config); } if (mTodoView) { mTodoView->saveLayout(config,"Todo View"); } } +void KOViewManager::showNextView() +{ + if (mCurrentView == mWhatsNextView) goto NEXT_X; + + if (mCurrentView == mAgendaView && mFlagShowNextxDays) goto LIST; + + if (mCurrentView == mListView ) goto DAY_1; + + if (mCurrentView == mAgendaView && mCurrentAgendaView == 1 ) goto DAY_5; + + if (mCurrentView == mAgendaView && mCurrentAgendaView == 5 ) goto DAY_7; + + if (mCurrentView == mAgendaView ) goto DAY_6; + + if (mCurrentView == mMonthView && KOPrefs::instance()->mMonthViewWeek) goto MONTH; + + if (mCurrentView == mMonthView ) goto TODO; + + if (mCurrentView == mTodoView ) goto JOURNAL; + + NEXT: + if ( KOPrefs::instance()->mShowIconNext ) { showWhatsNextView();return ;} + NEXT_X: + if ( KOPrefs::instance()->mShowIconNextDays ) { showNextXView() ;return ;} + LIST: + if ( KOPrefs::instance()->mShowIconList ) { showListView() ;return ;} + DAY_1: + if ( KOPrefs::instance()->mShowIconDay1 ) { showDayView() ;return ;} + DAY_5: + if ( KOPrefs::instance()->mShowIconDay5 ) { showWorkWeekView() ;return ;} + DAY_7: + if ( KOPrefs::instance()->mShowIconDay7 ) { showWeekView();return ;} + DAY_6: + if ( KOPrefs::instance()->mShowIconDay6 ) { showMonthViewWeek();return ;} + MONTH: + if ( KOPrefs::instance()->mShowIconMonth ) { showMonthView();return ;} + TODO: + if ( KOPrefs::instance()->mShowIconTodoview ) { showTodoView() ;return ;} + JOURNAL: + if ( KOPrefs::instance()->mShowIconJournal ) { showJournalView() ;return ;} + + + + if ( KOPrefs::instance()->mShowIconNext ) { showWhatsNextView();return ;} + + if ( KOPrefs::instance()->mShowIconNextDays ) { showNextXView() ;return ;} + + if ( KOPrefs::instance()->mShowIconList ) { showListView() ;return ;} + + if ( KOPrefs::instance()->mShowIconDay1 ) { showDayView() ;return ;} + if ( KOPrefs::instance()->mShowIconDay5 ) { showWorkWeekView() ;return ;} + + if ( KOPrefs::instance()->mShowIconDay7 ) { showWeekView();return ;} + + if ( KOPrefs::instance()->mShowIconDay6 ) { showMonthViewWeek();return ;} + + if ( KOPrefs::instance()->mShowIconMonth ) { showMonthView();return ;} + + if ( KOPrefs::instance()->mShowIconTodoview ) { showTodoView() ;return ;} + + if ( KOPrefs::instance()->mShowIconJournal ) { showJournalView() ;return ;} + + + +} void KOViewManager::showView(KOrg::BaseView *view, bool fullScreen ) { //mFlagShowNextxDays = false; //if(view == mCurrentView) return; if ( view == 0 ) { view = mCurrentView; if ( view == 0 ) return; } bool callupdate = !(view == mCurrentView); bool full = fullScreen; if(view == mCurrentView && view != mWhatsNextView ) { if ( mCurrentAgendaView < 0 ) return; if ( view != mMonthView ) full = mMainView->leftFrame()->isVisible(); } else { if ( view == mMonthView && mMonthView) ;//mMonthView->skipResize = true ; mCurrentView = view; // bool full = fullScreen; bool isFull = !mMainView->leftFrame()->isVisible(); if ( isFull && KOPrefs::instance()->mViewChangeHoldFullscreen ) full = true; if ( !isFull && KOPrefs::instance()->mViewChangeHoldNonFullscreen ) full = false; } if ( mAgendaView ) mAgendaView->deleteSelectedDateTime(); //raiseCurrentView( full ); mMainView->processIncidenceSelection( 0 ); //mMainView->updateView(); raiseCurrentView( full, callupdate ); mMainView->adaptNavigationUnits(); } void KOViewManager::raiseCurrentView( bool fullScreen, bool callUpdateView ) { mCurrentAgendaView = 0; if ( fullScreen ) { mMainView->leftFrame()->hide(); } else { mMainView->leftFrame()->show(); } //if ( mCurrentView == mMonthView ) qApp->processEvents(); emit signalFullScreen( !fullScreen ); if ( callUpdateView ) mMainView->updateView(); if ( globalFlagBlockAgenda == 5 ) { globalFlagBlockAgenda = 4; globalFlagBlockAgendaItemPaint = 1; } mMainView->viewStack()->raiseWidget(mCurrentView); if ( globalFlagBlockAgenda == 4 ) { if ( mCurrentView == mAgendaView ) { //globalFlagBlockAgenda =1 ; if ( KOPrefs::instance()->mSetTimeToDayStartAt ) mAgendaView->setStartHour( KOPrefs::instance()->mDayBegins ); else if ( KOPrefs::instance()->mCenterOnCurrentTime ) mAgendaView->setStartHour( QTime::currentTime ().hour() ); qApp->processEvents(); //qDebug("qApp->processEvents() "); globalFlagBlockAgenda = 0; mAgendaView->repaintAgenda(); } globalFlagBlockAgenda = 0; } emit signalAgendaView( mCurrentView == mAgendaView ); //qDebug("raiseCurrentView ende "); } void KOViewManager::updateView() { // qDebug("KOViewManager::updateView() "); // if we are updating mTodoView, we get endless recursion if ( mTodoView == mCurrentView ) return; if ( mCurrentView ) mCurrentView->updateView(); } void KOViewManager::updateView(const QDate &start, const QDate &end) { // kdDebug() << "KOViewManager::updateView()" << endl; if (mCurrentView) mCurrentView->showDates(start, end); if (mTodoView && mTodoView == mCurrentView ) mTodoView->updateView(); } void KOViewManager::updateWNview() { |