author | zautrix <zautrix> | 2005-06-13 10:51:47 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2005-06-13 10:51:47 (UTC) |
commit | 4f3ff02932b39bf16b9692c3cb69c101a28b4616 (patch) (unidiff) | |
tree | bae36a7e654c788a0994bb353f3997b495e2459c /korganizer/calendarview.cpp | |
parent | 2be8214908c52298ba79c8058d340edca5a8b417 (diff) | |
download | kdepimpi-4f3ff02932b39bf16b9692c3cb69c101a28b4616.zip kdepimpi-4f3ff02932b39bf16b9692c3cb69c101a28b4616.tar.gz kdepimpi-4f3ff02932b39bf16b9692c3cb69c101a28b4616.tar.bz2 |
fixx
-rw-r--r-- | korganizer/calendarview.cpp | 63 |
1 files changed, 62 insertions, 1 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index b3686aa..07ec459 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp | |||
@@ -446,32 +446,36 @@ void CalendarView::init() | |||
446 | mMainFrame->setSizePolicy( QSizePolicy (QSizePolicy::Expanding,QSizePolicy::Expanding) ); | 446 | mMainFrame->setSizePolicy( QSizePolicy (QSizePolicy::Expanding,QSizePolicy::Expanding) ); |
447 | //QBoxLayout * leftFrameLayout; | 447 | //QBoxLayout * leftFrameLayout; |
448 | topLayout->addWidget( mMainFrame ); | 448 | topLayout->addWidget( mMainFrame ); |
449 | //mainBoxLayout->addWidget (mLeftFrame); | 449 | //mainBoxLayout->addWidget (mLeftFrame); |
450 | mDateNavigator = new DateNavigatorContainer( mLeftFrame, | 450 | mDateNavigator = new DateNavigatorContainer( mLeftFrame, |
451 | "CalendarView::DateNavigator" ); | 451 | "CalendarView::DateNavigator" ); |
452 | #if 0 | 452 | #if 0 |
453 | // FIXME | 453 | // FIXME |
454 | mDateNavigator = new KDateNavigator(mLeftFrame, mCalendar, TRUE, | 454 | mDateNavigator = new KDateNavigator(mLeftFrame, mCalendar, TRUE, |
455 | "CalendarView::DateNavigator", QDate::currentDate()); | 455 | "CalendarView::DateNavigator", QDate::currentDate()); |
456 | #endif | 456 | #endif |
457 | // mDateNavigator->blockSignals( true ); | 457 | // mDateNavigator->blockSignals( true ); |
458 | //leftFrameLayout->addWidget( mDateNavigator ); | 458 | //leftFrameLayout->addWidget( mDateNavigator ); |
459 | mTodoList = new KOTodoView(mCalendar, mLeftFrame, "todolistsmall"); | 459 | mTodoList = new KOTodoView(mCalendar, mLeftFrame, "todolistsmall"); |
460 | mFilterView = new KOFilterView(&mFilters,mLeftFrame,"CalendarView::FilterView"); | 460 | mFilterView = new KOFilterView(&mFilters,mLeftFrame,"CalendarView::FilterView"); |
461 | mCalEditView = new KOCalEditView(mLeftFrame,"CalendarView::CaleditView"); | 461 | mCalEditView = new KOCalEditView(mLeftFrame,"CalendarView::CaleditView"); |
462 | connect( mCalEditView, SIGNAL( calendarEnabled (int,bool) ),mCalendar, SLOT( setCalendarEnabled(int,bool)) ); | ||
463 | connect( mCalEditView, SIGNAL( alarmEnabled(int,bool) ),mCalendar, SLOT( setAlarmEnabled(int,bool)) ); | ||
464 | connect( mCalEditView, SIGNAL( calendarReadonly(int,bool) ),mCalendar, SLOT( setReadOnly(int,bool)) ); | ||
465 | connect( mCalEditView, SIGNAL( setCalendarDefault(int) ),mCalendar, SLOT( setDefaultCalendar(int)) ); | ||
462 | mTodoList->setNavigator( mNavigator ); | 466 | mTodoList->setNavigator( mNavigator ); |
463 | #if 0 | 467 | #if 0 |
464 | if ( QApplication::desktop()->width() < 480 ) { | 468 | if ( QApplication::desktop()->width() < 480 ) { |
465 | leftFrameLayout->addWidget(mFilterView); | 469 | leftFrameLayout->addWidget(mFilterView); |
466 | leftFrameLayout->addWidget(mTodoList, 2 ); | 470 | leftFrameLayout->addWidget(mTodoList, 2 ); |
467 | 471 | ||
468 | } else { | 472 | } else { |
469 | leftFrameLayout->addWidget(mTodoList,2 ); | 473 | leftFrameLayout->addWidget(mTodoList,2 ); |
470 | leftFrameLayout->addWidget(mFilterView ); | 474 | leftFrameLayout->addWidget(mFilterView ); |
471 | } | 475 | } |
472 | #endif | 476 | #endif |
473 | mFilterView->hide(); | 477 | mFilterView->hide(); |
474 | mCalEditView->hide(); | 478 | mCalEditView->hide(); |
475 | QWidget *rightBox = new QWidget( mMainFrame ); | 479 | QWidget *rightBox = new QWidget( mMainFrame ); |
476 | //mainBoxLayout->addWidget ( rightBox, 10 ); | 480 | //mainBoxLayout->addWidget ( rightBox, 10 ); |
477 | QBoxLayout *rightLayout = new QVBoxLayout( rightBox ); | 481 | QBoxLayout *rightLayout = new QVBoxLayout( rightBox ); |
@@ -1821,32 +1825,72 @@ bool CalendarView::importQtopia( const QString &categories, | |||
1821 | 1825 | ||
1822 | #endif | 1826 | #endif |
1823 | 1827 | ||
1824 | } | 1828 | } |
1825 | 1829 | ||
1826 | void CalendarView::setSyncEventsReadOnly() | 1830 | void CalendarView::setSyncEventsReadOnly() |
1827 | { | 1831 | { |
1828 | Event * ev; | 1832 | Event * ev; |
1829 | QPtrList<Event> eL = mCalendar->rawEvents(); | 1833 | QPtrList<Event> eL = mCalendar->rawEvents(); |
1830 | ev = eL.first(); | 1834 | ev = eL.first(); |
1831 | while ( ev ) { | 1835 | while ( ev ) { |
1832 | if ( ev->uid().left(15) == QString("last-syncEvent-") ) | 1836 | if ( ev->uid().left(15) == QString("last-syncEvent-") ) |
1833 | ev->setReadOnly( true ); | 1837 | ev->setReadOnly( true ); |
1834 | ev = eL.next(); | 1838 | ev = eL.next(); |
1835 | } | 1839 | } |
1836 | } | 1840 | } |
1841 | |||
1842 | bool CalendarView::loadCalendars() | ||
1843 | { | ||
1844 | QPtrList<KopiCalendarFile> calendars = KOPrefs::instance()->mCalendars; | ||
1845 | KopiCalendarFile * cal = calendars.first(); | ||
1846 | mCalendar->setDefaultCalendar( 1 ); | ||
1847 | openCalendar( MainWindow::defaultFileName(), false ); | ||
1848 | cal = calendars.next(); | ||
1849 | while ( cal ) { | ||
1850 | addCalendar( cal ); | ||
1851 | cal = calendars.next(); | ||
1852 | } | ||
1853 | restoreCalendarSettings(); | ||
1854 | mCalendar->reInitAlarmSettings(); | ||
1855 | setSyncEventsReadOnly(); | ||
1856 | updateUnmanagedViews(); | ||
1857 | updateView(); | ||
1858 | } | ||
1859 | bool CalendarView::restoreCalendarSettings() | ||
1860 | { | ||
1861 | QPtrList<KopiCalendarFile> calendars = KOPrefs::instance()->mCalendars; | ||
1862 | KopiCalendarFile * cal = calendars.first(); | ||
1863 | while ( cal ) { | ||
1864 | mCalendar->setCalendarEnabled( cal->mCalNumber,cal->isEnabled ); | ||
1865 | mCalendar->setAlarmEnabled( cal->mCalNumber, cal->isAlarmEnabled ); | ||
1866 | mCalendar->setReadOnly( cal->mCalNumber, cal->isReadOnly ); | ||
1867 | if ( cal->isStandard ) | ||
1868 | mCalendar->setDefaultCalendar( cal->mCalNumber ); | ||
1869 | cal = calendars.next(); | ||
1870 | } | ||
1871 | } | ||
1872 | bool CalendarView::addCalendar( KopiCalendarFile * cal ) | ||
1873 | { | ||
1874 | |||
1875 | if ( mCalendar->addCalendarFile( cal->mFileName, cal->mCalNumber )) | ||
1876 | return true; | ||
1877 | qDebug("KO: Error adding calendar file %1 ",cal->mFileName.latin1() ); | ||
1878 | KMessageBox::error(this,i18n("Error loading calendar file\n%1.").arg(cal->mFileName)); | ||
1879 | return false; | ||
1880 | } | ||
1837 | bool CalendarView::openCalendar(QString filename, bool merge) | 1881 | bool CalendarView::openCalendar(QString filename, bool merge) |
1838 | { | 1882 | { |
1839 | 1883 | ||
1840 | if (filename.isEmpty()) { | 1884 | if (filename.isEmpty()) { |
1841 | return false; | 1885 | return false; |
1842 | } | 1886 | } |
1843 | 1887 | ||
1844 | if (!QFile::exists(filename)) { | 1888 | if (!QFile::exists(filename)) { |
1845 | KMessageBox::error(this,i18n("File does not exist:\n '%1'.").arg(filename)); | 1889 | KMessageBox::error(this,i18n("File does not exist:\n '%1'.").arg(filename)); |
1846 | return false; | 1890 | return false; |
1847 | } | 1891 | } |
1848 | 1892 | ||
1849 | globalFlagBlockAgenda = 1; | 1893 | globalFlagBlockAgenda = 1; |
1850 | clearAllViews(); | 1894 | clearAllViews(); |
1851 | if (!merge) { | 1895 | if (!merge) { |
1852 | mViewManager->setDocumentId( filename ); | 1896 | mViewManager->setDocumentId( filename ); |
@@ -1951,33 +1995,50 @@ bool CalendarView::checkFileVersion(QString fn) | |||
1951 | if ( km == KMessageBox::Yes ) | 1995 | if ( km == KMessageBox::Yes ) |
1952 | return true; | 1996 | return true; |
1953 | 1997 | ||
1954 | setSyncDevice("deleteaftersync" ); | 1998 | setSyncDevice("deleteaftersync" ); |
1955 | mSyncManager->mAskForPreferences = true; | 1999 | mSyncManager->mAskForPreferences = true; |
1956 | mSyncManager->mSyncAlgoPrefs = 3; | 2000 | mSyncManager->mSyncAlgoPrefs = 3; |
1957 | mSyncManager->mWriteBackFile = false; | 2001 | mSyncManager->mWriteBackFile = false; |
1958 | mSyncManager->mWriteBackExistingOnly = false; | 2002 | mSyncManager->mWriteBackExistingOnly = false; |
1959 | mSyncManager->mShowSyncSummary = false; | 2003 | mSyncManager->mShowSyncSummary = false; |
1960 | syncCalendar( fn, 3 ); | 2004 | syncCalendar( fn, 3 ); |
1961 | Event * e = getLastSyncEvent(); | 2005 | Event * e = getLastSyncEvent(); |
1962 | if ( e ) | 2006 | if ( e ) |
1963 | deleteEvent ( e ); | 2007 | deleteEvent ( e ); |
1964 | updateView(); | 2008 | updateView(); |
1965 | return true; | 2009 | return true; |
1966 | } | 2010 | } |
1967 | 2011 | bool CalendarView::saveCalendars() | |
2012 | { | ||
2013 | QPtrList<KopiCalendarFile> calendars = KOPrefs::instance()->mCalendars; | ||
2014 | KopiCalendarFile * cal = calendars.first(); | ||
2015 | mCalendar->setDefaultCalendar( 1 ); | ||
2016 | mCalendar->setDefaultCalendarEnabledOnly(); | ||
2017 | saveCalendar( MainWindow::defaultFileName() ); | ||
2018 | cal = calendars.next(); | ||
2019 | while ( cal ) { | ||
2020 | if ( !cal->isReadOnly ) { | ||
2021 | mCalendar->setDefaultCalendar( cal->mCalNumber ); | ||
2022 | mCalendar->setDefaultCalendarEnabledOnly(); | ||
2023 | saveCalendar( cal->mFileName ); | ||
2024 | } | ||
2025 | cal = calendars.next(); | ||
2026 | } | ||
2027 | restoreCalendarSettings(); | ||
2028 | } | ||
1968 | bool CalendarView::saveCalendar( QString filename ) | 2029 | bool CalendarView::saveCalendar( QString filename ) |
1969 | { | 2030 | { |
1970 | 2031 | ||
1971 | // Store back all unsaved data into calendar object | 2032 | // Store back all unsaved data into calendar object |
1972 | // qDebug("file %s %d ", filename.latin1() , mViewManager->currentView() ); | 2033 | // qDebug("file %s %d ", filename.latin1() , mViewManager->currentView() ); |
1973 | if ( mViewManager->currentView() ) | 2034 | if ( mViewManager->currentView() ) |
1974 | mViewManager->currentView()->flushView(); | 2035 | mViewManager->currentView()->flushView(); |
1975 | 2036 | ||
1976 | 2037 | ||
1977 | QDateTime lfv = QDateTime::currentDateTime().addSecs( -2); | 2038 | QDateTime lfv = QDateTime::currentDateTime().addSecs( -2); |
1978 | mStorage->setSaveFormat( new ICalFormat() ); | 2039 | mStorage->setSaveFormat( new ICalFormat() ); |
1979 | mStorage->setFileName( filename ); | 2040 | mStorage->setFileName( filename ); |
1980 | bool success; | 2041 | bool success; |
1981 | success = mStorage->save(); | 2042 | success = mStorage->save(); |
1982 | if ( !success ) { | 2043 | if ( !success ) { |
1983 | return false; | 2044 | return false; |