summaryrefslogtreecommitdiffabout
path: root/korganizer/calendarview.cpp
Side-by-side diff
Diffstat (limited to 'korganizer/calendarview.cpp') (more/less context) (show whitespace changes)
-rw-r--r--korganizer/calendarview.cpp17
1 files changed, 15 insertions, 2 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp
index fecc7e2..687943e 100644
--- a/korganizer/calendarview.cpp
+++ b/korganizer/calendarview.cpp
@@ -1514,33 +1514,46 @@ bool CalendarView::openCalendar(QString filename, bool merge)
setSyncEventsReadOnly();
updateUnmanagedViews();
updateView();
loadedFileVersion = QDateTime::currentDateTime();
if ( filename != MainWindow::defaultFileName() ) {
saveCalendar( MainWindow::defaultFileName() );
watchSavedFile();
}
return true;
} else {
// while failing to load, the calendar object could
// have become partially populated. Clear it out.
- if ( !merge ) mCalendar->close();
+ if ( !merge ) {
+ mCalendar->close();
+ mViewManager->setDocumentId( filename );
+ mDialogManager->setDocumentId( filename );
+ mTodoList->setDocumentId( filename );
+ }
- KMessageBox::error(this,i18n("Couldn't load calendar\n '%1'.").arg(filename));
+ //KMessageBox::error(this,i18n("Couldn't load calendar\n '%1'.").arg(filename));
+ QTimer::singleShot ( 1, this, SLOT ( showOpenError() ) );
globalFlagBlockAgenda = 2;
+ mCalendar->reInitAlarmSettings();
+ setSyncEventsReadOnly();
+ updateUnmanagedViews();
updateView();
}
return false;
}
+void CalendarView::showOpenError()
+{
+ KMessageBox::error(this,i18n("Couldn't load calendar\n."));
+}
void CalendarView::setLoadedFileVersion(QDateTime dt)
{
loadedFileVersion = dt;
}
bool CalendarView::checkFileChanged(QString fn)
{
QFileInfo finf ( fn );
if ( !finf.exists() )
return true;
QDateTime dt = finf.lastModified ();
if ( dt <= loadedFileVersion )
return false;