author | zautrix <zautrix> | 2005-09-17 22:07:21 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2005-09-17 22:07:21 (UTC) |
commit | 64199073c047a30f3cff85fe6ee30691ff0db2f7 (patch) (unidiff) | |
tree | 5ff49088999f2c02fb2a40760b881c02f50cfc35 /korganizer/mainwindow.cpp | |
parent | e228113016abd6f75824633da9520c1ec1763f23 (diff) | |
download | kdepimpi-64199073c047a30f3cff85fe6ee30691ff0db2f7.zip kdepimpi-64199073c047a30f3cff85fe6ee30691ff0db2f7.tar.gz kdepimpi-64199073c047a30f3cff85fe6ee30691ff0db2f7.tar.bz2 |
savetimer
-rw-r--r-- | korganizer/mainwindow.cpp | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp index 70baf5c..2af605f 100644 --- a/korganizer/mainwindow.cpp +++ b/korganizer/mainwindow.cpp | |||
@@ -399,13 +399,14 @@ MainWindow::MainWindow( QWidget *parent, const char *name ) : | |||
399 | connect( mView->dateNavigator(), SIGNAL( datesSelected( const KCal::DateList & ) ), | 399 | connect( mView->dateNavigator(), SIGNAL( datesSelected( const KCal::DateList & ) ), |
400 | SLOT( updateWeekNum( const KCal::DateList & ) ) ); | 400 | SLOT( updateWeekNum( const KCal::DateList & ) ) ); |
401 | mBRdisabled = false; | 401 | mBRdisabled = false; |
402 | //toggleBeamReceive(); | 402 | //toggleBeamReceive(); |
403 | 403 | ||
404 | setCaption(i18n("Loading calendar files ... please wait" )); | 404 | setCaption(i18n("Loading calendar files ... please wait" )); |
405 | QTimer::singleShot( 10, this, SLOT ( loadDataAfterStart() )); | 405 | mSaveDelay = 0; |
406 | QTimer::singleShot( 1, this, SLOT ( loadDataAfterStart() )); | ||
406 | } | 407 | } |
407 | MainWindow::~MainWindow() | 408 | MainWindow::~MainWindow() |
408 | { | 409 | { |
409 | //qDebug("MainWindow::~MainWindow() "); | 410 | //qDebug("MainWindow::~MainWindow() "); |
410 | //save toolbar location | 411 | //save toolbar location |
411 | delete mCalendar; | 412 | delete mCalendar; |
@@ -1963,12 +1964,14 @@ void MainWindow::slotModifiedChanged( bool ) | |||
1963 | // and for safety reasons after 10 minutes again | 1964 | // and for safety reasons after 10 minutes again |
1964 | if ( !mSyncManager->blockSave() ) | 1965 | if ( !mSyncManager->blockSave() ) |
1965 | msec = (1000 * 60*KOPrefs::instance()->mAutoSaveInterval) +1000; | 1966 | msec = (1000 * 60*KOPrefs::instance()->mAutoSaveInterval) +1000; |
1966 | else | 1967 | else |
1967 | msec = 1000 * 600; | 1968 | msec = 1000 * 600; |
1968 | mSaveTimer.start( msec, true ); // 1 minute | 1969 | mSaveTimer.start( msec, true ); // 1 minute |
1970 | mSaveTime.restart(); | ||
1971 | mSaveDelay = msec/1000; | ||
1969 | qDebug("KO: Saving File in %d secs!", msec/1000); | 1972 | qDebug("KO: Saving File in %d secs!", msec/1000); |
1970 | mCalendarModifiedFlag = true; | 1973 | mCalendarModifiedFlag = true; |
1971 | } | 1974 | } |
1972 | void MainWindow::saveStopTimer() | 1975 | void MainWindow::saveStopTimer() |
1973 | { | 1976 | { |
1974 | mSaveTimer.stop(); | 1977 | mSaveTimer.stop(); |
@@ -2010,40 +2013,53 @@ void MainWindow::backupAllFiles() | |||
2010 | KPimGlobalPrefs::instance()->mBackupEnabled = false; | 2013 | KPimGlobalPrefs::instance()->mBackupEnabled = false; |
2011 | } | 2014 | } |
2012 | // retval == 3: do nothing, try again later | 2015 | // retval == 3: do nothing, try again later |
2013 | } | 2016 | } |
2014 | void MainWindow::save() | 2017 | void MainWindow::save() |
2015 | { | 2018 | { |
2019 | if ( mSaveDelay ) { | ||
2020 | if ( mSaveDelay + 60 < mSaveTime.elapsed()/1000 ) { | ||
2021 | qDebug("KO: Save delay %d. Elapsed save time %d ", mSaveDelay, mSaveTime.elapsed()/1000 ); | ||
2022 | qDebug("KO: Restarting save timer"); | ||
2023 | int msec = 10000; | ||
2024 | mSaveTimer.start( msec, true ); // 1 minute | ||
2025 | mSaveTime.restart(); | ||
2026 | mSaveDelay = msec/1000; | ||
2027 | return; | ||
2028 | } | ||
2029 | } | ||
2016 | 2030 | ||
2017 | if ( mView->viewManager()->journalView() ) | 2031 | if ( mView->viewManager()->journalView() ) |
2018 | mView->viewManager()->journalView()->checkModified(); | 2032 | mView->viewManager()->journalView()->checkModified(); |
2019 | if ( !mCalendarModifiedFlag ) { | 2033 | if ( !mCalendarModifiedFlag ) { |
2020 | qDebug("KO: Calendar not modified. Nothing saved."); | 2034 | qDebug("KO: Calendar not modified. Nothing saved."); |
2021 | return; | 2035 | return; |
2022 | } | 2036 | } |
2023 | if ( mSyncManager->blockSave() ) { | 2037 | if ( mSyncManager->blockSave() ) { |
2024 | slotModifiedChanged( true ); | 2038 | slotModifiedChanged( true ); |
2025 | return; | 2039 | return; |
2026 | } | 2040 | } |
2041 | mSaveDelay = 0; | ||
2027 | mSyncManager->setBlockSave(true); | 2042 | mSyncManager->setBlockSave(true); |
2028 | if ( mView->checkAllFileVersions() ) { | 2043 | if ( mView->checkAllFileVersions() ) { |
2029 | if ( KPimGlobalPrefs::instance()->mBackupEnabled ){ | 2044 | if ( KPimGlobalPrefs::instance()->mBackupEnabled ){ |
2030 | QDate reference ( 2000,1,1); | 2045 | QDate reference ( 2000,1,1); |
2031 | int daysTo = reference.daysTo ( QDate::currentDate() ); | 2046 | int daysTo = reference.daysTo ( QDate::currentDate() ); |
2032 | if ( daysTo - KPimGlobalPrefs::instance()->mBackupDayCount >= KOPrefs::instance()->mLastBackupDate ) { | 2047 | if ( daysTo - KPimGlobalPrefs::instance()->mBackupDayCount >= KOPrefs::instance()->mLastBackupDate ) { |
2033 | backupAllFiles(); | 2048 | backupAllFiles(); |
2034 | } | 2049 | } |
2035 | ; // KPimGlobalPrefs::instance()->mLastBackupDate | 2050 | ; // KPimGlobalPrefs::instance()->mLastBackupDate |
2036 | } | 2051 | } |
2037 | QTime neededSaveTime = QDateTime::currentDateTime().time(); | 2052 | QTime neededSaveTime; |
2053 | neededSaveTime.start(); | ||
2038 | if ( !isMinimized () ) | 2054 | if ( !isMinimized () ) |
2039 | setCaption(i18n("KO/Pi:Saving Data to File ..." )); | 2055 | setCaption(i18n("KO/Pi:Saving Data to File ..." )); |
2040 | qDebug("KO: Start saving data to file!"); | 2056 | qDebug("KO: Start saving data to file!"); |
2041 | if ( mView->saveCalendars() ) | 2057 | if ( mView->saveCalendars() ) |
2042 | mCalendarModifiedFlag = false; | 2058 | mCalendarModifiedFlag = false; |
2043 | int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() ); | 2059 | int msNeeded = neededSaveTime.elapsed(); |
2044 | qDebug("KO: Needed %d ms for saving.",msNeeded ); | 2060 | qDebug("KO: Needed %d ms for saving.",msNeeded ); |
2045 | QString savemes; | 2061 | QString savemes; |
2046 | savemes.sprintf(i18n("KO/Pi:File Saved. Needed %d sec, %d ms"),(msNeeded/1000)%100,msNeeded%1000 ); | 2062 | savemes.sprintf(i18n("KO/Pi:File Saved. Needed %d sec, %d ms"),(msNeeded/1000)%100,msNeeded%1000 ); |
2047 | if ( !isMinimized () ) | 2063 | if ( !isMinimized () ) |
2048 | setCaption(savemes); | 2064 | setCaption(savemes); |
2049 | else | 2065 | else |