-rw-r--r-- | korganizer/calendarview.cpp | 9 | ||||
-rw-r--r-- | korganizer/calendarview.h | 1 | ||||
-rw-r--r-- | korganizer/kofilterview.cpp | 4 |
3 files changed, 11 insertions, 3 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index 5c88abd..6746de2 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp @@ -465,13 +465,13 @@ void CalendarView::init() //leftFrameLayout->addWidget( mDateNavigator ); mTodoList = new KOTodoView(mCalendar, mLeftFrame, "todolistsmall"); mFilterView = new KOFilterView(&mFilters,mLeftFrame,"CalendarView::FilterView"); mCalEditView = new KOCalEditView(mLeftFrame,"CalendarView::CaleditView"); connect( mCalEditView, SIGNAL( calendarEnabled (int,bool) ),mCalendar, SLOT( setCalendarEnabled(int,bool)) ); connect( mCalEditView, SIGNAL( alarmEnabled(int,bool) ),mCalendar, SLOT( setAlarmEnabled(int,bool)) ); - connect( mCalEditView, SIGNAL( calendarReadonly(int,bool) ),mCalendar, SLOT( setReadOnly(int,bool)) ); + connect( mCalEditView, SIGNAL( calendarReadonly(int,bool) ),this, SLOT( setCalReadOnly(int,bool)) ); connect( mCalEditView, SIGNAL( setCalendarDefault(int) ),mCalendar, SLOT( setDefaultCalendar(int)) ); connect( mCalEditView, SIGNAL( setCalendarDefault(int) ),mViewManager, SLOT( setDefaultCalendar(int)) ); connect( mCalEditView, SIGNAL( removeCalendar(int) ),mCalendar, SLOT( setCalendarRemove(int)) ); connect( mCalEditView, SIGNAL( calendarAdded(int) ),this, SLOT( addCalendarId(int)) ); connect( mCalEditView, SIGNAL( needsUpdate() ),this, SLOT( updateView()) ); connect( mCalEditView, SIGNAL( checkCalendar() ),this, SLOT( checkFiles() )); @@ -651,12 +651,19 @@ CalendarView::~CalendarView() delete mViewManager; delete mStorage; delete mDateFrame ; delete mEventViewerDialog; //kdDebug() << "~CalendarView() done" << endl; } +void CalendarView::setCalReadOnly( int id, bool readO ) +{ + if ( readO ) { + emit save(); + } + mCalendar->setReadOnly( id, readO ); +} void CalendarView::setScrollBarStep(int val ) { #ifdef DESKTOP_VERSION mDateScrollBar->setLineStep ( val ); #endif } diff --git a/korganizer/calendarview.h b/korganizer/calendarview.h index 651194b..a5f230a 100644 --- a/korganizer/calendarview.h +++ b/korganizer/calendarview.h @@ -197,12 +197,13 @@ class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Obser void calendarViewExpanded( bool ); void updateSearchDialog(); void filtersUpdated(); public slots: + void setCalReadOnly( int id, bool readO ); void checkAlarms(); void checkFiles(); void slotprintSelInc(); void showNextAlarms(); void showOpenError(); void watchSavedFile(); diff --git a/korganizer/kofilterview.cpp b/korganizer/kofilterview.cpp index 1335d7e..3f08ef8 100644 --- a/korganizer/kofilterview.cpp +++ b/korganizer/kofilterview.cpp @@ -154,14 +154,12 @@ void KOCalEditView::selectCalAlarm(int id ,bool b ) KOPrefs::instance()->getCalendar( id )->isAlarmEnabled = b; emit alarmEnabled ( id , b ); emit needsUpdate(); } void KOCalEditView::selectReadOnly(int id ,bool b ) { - KOPrefs::instance()->getCalendar( id )->isReadOnly = b; - emit calendarReadonly ( id , b ); if ( KOPrefs::instance()->getCalendar( id )->isStandard && b ) { findNewStandard(); } else { if ( !b ){ KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first(); while ( kkf ) { @@ -171,12 +169,14 @@ void KOCalEditView::selectReadOnly(int id ,bool b ) } kkf = KOPrefs::instance()->mCalendars.next(); } } } mStdandardB.at(id-1)->setEnabled( !b ); + emit calendarReadonly ( id , b ); + KOPrefs::instance()->getCalendar( id )->isReadOnly = b; emit needsUpdate(); } void KOCalEditView::findNewStandard() { bool found = false; |