-rw-r--r-- | korganizer/journalentry.cpp | 53 | ||||
-rw-r--r-- | korganizer/journalentry.h | 7 | ||||
-rw-r--r-- | korganizer/koeditorgeneral.cpp | 8 | ||||
-rw-r--r-- | korganizer/kojournalview.cpp | 10 | ||||
-rw-r--r-- | korganizer/koprefs.cpp | 10 | ||||
-rw-r--r-- | korganizer/koprefs.h | 1 |
6 files changed, 63 insertions, 26 deletions
diff --git a/korganizer/journalentry.cpp b/korganizer/journalentry.cpp index 4751d40..56221dc 100644 --- a/korganizer/journalentry.cpp +++ b/korganizer/journalentry.cpp | |||
@@ -79,9 +79,9 @@ JournalEntry::JournalEntry(Calendar *calendar,QWidget *parent) : | |||
79 | new QLabel(" "+i18n("Title: "),vb); | 79 | new QLabel(" "+i18n("Title: "),vb); |
80 | mTitle = new KOLocationBox(TRUE, vb, 30); | 80 | mTitle = new KOLocationBox(TRUE, vb, 30); |
81 | mTitle->setSizePolicy( QSizePolicy( QSizePolicy::MinimumExpanding ,QSizePolicy::Fixed ,FALSE) ); | 81 | mTitle->setSizePolicy( QSizePolicy( QSizePolicy::MinimumExpanding ,QSizePolicy::Fixed ,FALSE) ); |
82 | mTitleLabel = new QLabel(i18n("Title"),vb); | 82 | mCalendarBox = new QComboBox(vb); |
83 | mTitleLabel->setMargin(0); | 83 | //mTitleLabel->setMargin(0); |
84 | mTitleLabel->setAlignment(AlignCenter); | 84 | //mTitleLabel->setAlignment(AlignCenter); |
85 | QPushButton * loadTemplate = new QPushButton( vb ); | 85 | QPushButton * loadTemplate = new QPushButton( vb ); |
86 | QPushButton * saveTemplate = new QPushButton( vb ); | 86 | QPushButton * saveTemplate = new QPushButton( vb ); |
87 | if ( QApplication::desktop()->width() < 321 ) | 87 | if ( QApplication::desktop()->width() < 321 ) |
@@ -99,6 +99,7 @@ JournalEntry::JournalEntry(Calendar *calendar,QWidget *parent) : | |||
99 | saveTemplate->setFixedSize( size, size ); | 99 | saveTemplate->setFixedSize( size, size ); |
100 | toggleJournal->setFixedSize( size , size ); | 100 | toggleJournal->setFixedSize( size , size ); |
101 | mTitle->setMaximumHeight( size+4); | 101 | mTitle->setMaximumHeight( size+4); |
102 | mCalendarBox->setMaximumHeight( size+4); | ||
102 | mEditor = new KTextEdit(this); | 103 | mEditor = new KTextEdit(this); |
103 | #ifndef DESKTOP_VERSION | 104 | #ifndef DESKTOP_VERSION |
104 | QPEApplication::setStylusOperation( mEditor, QPEApplication::RightOnHold ); | 105 | QPEApplication::setStylusOperation( mEditor, QPEApplication::RightOnHold ); |
@@ -176,9 +177,34 @@ void JournalEntry::setDate(const QDate &date) | |||
176 | showOnlyMode = false; | 177 | showOnlyMode = false; |
177 | writeJournal(); | 178 | writeJournal(); |
178 | mDate = date; | 179 | mDate = date; |
179 | int id = mCalendar->defaultCalendar(); | 180 | fillCalendar( mCalendar->defaultCalendar() ); |
180 | QString calname = KOPrefs::instance()->getCalendar( id )->mName; | 181 | } |
181 | mTitleLabel->setText( " (" + calname +")"); | 182 | void JournalEntry::fillCalendar( int setToID ) |
183 | { | ||
184 | mCalendarBox->clear(); | ||
185 | KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first(); | ||
186 | int std = 0; | ||
187 | int count = 0; | ||
188 | while ( kkf ) { | ||
189 | if ( (!kkf->mErrorOnLoad &&! kkf->isReadOnly) || setToID == kkf->mCalNumber ) { | ||
190 | if ( setToID ) { | ||
191 | if ( kkf->mCalNumber == setToID ) | ||
192 | std = count; | ||
193 | } else { | ||
194 | if ( kkf->isStandard ) { | ||
195 | std = count; | ||
196 | } | ||
197 | } | ||
198 | ++count; | ||
199 | mCalendarBox->insertItem( kkf->mName ); | ||
200 | } | ||
201 | kkf = KOPrefs::instance()->mCalendars.next(); | ||
202 | } | ||
203 | mCalendarBox->setCurrentItem( std ); | ||
204 | if ( KOPrefs::instance()->mCalendars.count() == 1 ) | ||
205 | mCalendarBox->hide(); | ||
206 | else | ||
207 | mCalendarBox->show(); | ||
182 | } | 208 | } |
183 | 209 | ||
184 | void JournalEntry::toggleShowJournal() | 210 | void JournalEntry::toggleShowJournal() |
@@ -206,9 +232,10 @@ void JournalEntry::setShowOnly() | |||
206 | else | 232 | else |
207 | mEditor->setFocus(); | 233 | mEditor->setFocus(); |
208 | } | 234 | } |
209 | void JournalEntry::setJournal(Journal *journal) | 235 | void JournalEntry::setJournal(Journal *journal, bool saveJournal ) |
210 | { | 236 | { |
211 | writeJournal(); | 237 | if ( saveJournal ) |
238 | writeJournal(); | ||
212 | mTitle->load( KOLocationBox::SUMMARYJOURNAL ); | 239 | mTitle->load( KOLocationBox::SUMMARYJOURNAL ); |
213 | 240 | ||
214 | mJournal = journal; | 241 | mJournal = journal; |
@@ -219,10 +246,7 @@ void JournalEntry::setJournal(Journal *journal) | |||
219 | mEditor->setText(mJournal->description()); | 246 | mEditor->setText(mJournal->description()); |
220 | mTitle->setEnabled (!journal->isReadOnly() ); | 247 | mTitle->setEnabled (!journal->isReadOnly() ); |
221 | mEditor->setReadOnly ( journal->isReadOnly() ); | 248 | mEditor->setReadOnly ( journal->isReadOnly() ); |
222 | int id = mJournal->calID(); | 249 | fillCalendar( mJournal->calID() ); |
223 | |||
224 | QString calname = KOPrefs::instance()->getCalendar( id )->mName; | ||
225 | mTitleLabel->setText( " (" + calname +")"); | ||
226 | } | 250 | } |
227 | 251 | ||
228 | Journal *JournalEntry::journal() const | 252 | Journal *JournalEntry::journal() const |
@@ -260,6 +284,7 @@ bool JournalEntry::eventFilter( QObject *o, QEvent *e ) | |||
260 | void JournalEntry::writeJournal() | 284 | void JournalEntry::writeJournal() |
261 | { | 285 | { |
262 | if ( !visibleMode ) return; | 286 | if ( !visibleMode ) return; |
287 | if ( !mTitle->isEnabled() ) return; | ||
263 | if (mEditor->text().isEmpty() && mTitle->currentText().isEmpty()) { | 288 | if (mEditor->text().isEmpty() && mTitle->currentText().isEmpty()) { |
264 | if ( mJournal ) { | 289 | if ( mJournal ) { |
265 | Journal* j = mJournal; | 290 | Journal* j = mJournal; |
@@ -286,6 +311,10 @@ void JournalEntry::writeJournal() | |||
286 | mJournal->setSummary(mTitle->currentText()); | 311 | mJournal->setSummary(mTitle->currentText()); |
287 | mTitle->save(KOLocationBox::SUMMARYJOURNAL); | 312 | mTitle->save(KOLocationBox::SUMMARYJOURNAL); |
288 | } | 313 | } |
314 | int id = KOPrefs::instance()->getCalendarID( mCalendarBox->currentText() ); | ||
315 | if ( mJournal->calID() != id ) { | ||
316 | mJournal->setCalID( id ); | ||
317 | } | ||
289 | } | 318 | } |
290 | 319 | ||
291 | void JournalEntry::flushEntry() | 320 | void JournalEntry::flushEntry() |
diff --git a/korganizer/journalentry.h b/korganizer/journalentry.h index fb19fb1..ed04b7c 100644 --- a/korganizer/journalentry.h +++ b/korganizer/journalentry.h | |||
@@ -31,6 +31,7 @@ | |||
31 | 31 | ||
32 | class QLabel; | 32 | class QLabel; |
33 | class KTextEdit; | 33 | class KTextEdit; |
34 | class QComboBox; | ||
34 | class KLineEdit; | 35 | class KLineEdit; |
35 | class KOLocationBox; | 36 | class KOLocationBox; |
36 | 37 | ||
@@ -42,7 +43,7 @@ class JournalEntry : public QFrame { | |||
42 | JournalEntry(Calendar *,QWidget *parent); | 43 | JournalEntry(Calendar *,QWidget *parent); |
43 | virtual ~JournalEntry(); | 44 | virtual ~JournalEntry(); |
44 | 45 | ||
45 | void setJournal(Journal *); | 46 | void setJournal(Journal *, bool saveJournal = true ); |
46 | Journal *journal() const; | 47 | Journal *journal() const; |
47 | 48 | ||
48 | void setDate(const QDate &); | 49 | void setDate(const QDate &); |
@@ -53,7 +54,7 @@ class JournalEntry : public QFrame { | |||
53 | void setShowOnly(); | 54 | void setShowOnly(); |
54 | QSize sizeHint() const; | 55 | QSize sizeHint() const; |
55 | void setVisibleMode( bool b ) { visibleMode = b;} | 56 | void setVisibleMode( bool b ) { visibleMode = b;} |
56 | 57 | void fillCalendar( int id = 0 ); | |
57 | protected slots: | 58 | protected slots: |
58 | void slotSaveTemplate(); | 59 | void slotSaveTemplate(); |
59 | void slotLoadTemplate(); | 60 | void slotLoadTemplate(); |
@@ -76,7 +77,7 @@ class JournalEntry : public QFrame { | |||
76 | Journal *mJournal; | 77 | Journal *mJournal; |
77 | QDate mDate; | 78 | QDate mDate; |
78 | void keyPressEvent ( QKeyEvent * ) ; | 79 | void keyPressEvent ( QKeyEvent * ) ; |
79 | QLabel *mTitleLabel; | 80 | QComboBox *mCalendarBox; |
80 | KOLocationBox * mTitle; | 81 | KOLocationBox * mTitle; |
81 | KTextEdit *mEditor; | 82 | KTextEdit *mEditor; |
82 | int heiHint; | 83 | int heiHint; |
diff --git a/korganizer/koeditorgeneral.cpp b/korganizer/koeditorgeneral.cpp index fd50b05..aa55d82 100644 --- a/korganizer/koeditorgeneral.cpp +++ b/korganizer/koeditorgeneral.cpp | |||
@@ -483,13 +483,7 @@ void KOEditorGeneral::fillCalCombo( int setToID ) | |||
483 | } | 483 | } |
484 | int KOEditorGeneral::getCalendarID() | 484 | int KOEditorGeneral::getCalendarID() |
485 | { | 485 | { |
486 | KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first(); | 486 | return KOPrefs::instance()->getCalendarID( mCalendarBox->currentText() ); |
487 | while ( kkf ) { | ||
488 | if ( mCalendarBox->currentText() == kkf->mName) | ||
489 | return kkf->mCalNumber; | ||
490 | kkf = KOPrefs::instance()->mCalendars.next(); | ||
491 | } | ||
492 | return 1; | ||
493 | } | 487 | } |
494 | 488 | ||
495 | void KOEditorGeneral::readIncidence(Incidence *event) | 489 | void KOEditorGeneral::readIncidence(Incidence *event) |
diff --git a/korganizer/kojournalview.cpp b/korganizer/kojournalview.cpp index 9b0e748..0523954 100644 --- a/korganizer/kojournalview.cpp +++ b/korganizer/kojournalview.cpp | |||
@@ -155,7 +155,7 @@ void KOJournalView::newJournal() | |||
155 | 155 | ||
156 | void KOJournalView::showOnly ( Journal* j ) | 156 | void KOJournalView::showOnly ( Journal* j ) |
157 | { | 157 | { |
158 | qDebug("showOnly %x ", j); | 158 | //qDebug("showOnly %x ", j); |
159 | flushView(); | 159 | flushView(); |
160 | if ( j == 0 ) { | 160 | if ( j == 0 ) { |
161 | showDates( mDate, QDate() ); | 161 | showDates( mDate, QDate() ); |
@@ -169,7 +169,7 @@ void KOJournalView::showOnly ( Journal* j ) | |||
169 | } | 169 | } |
170 | void KOJournalView::showList(QPtrList<Journal> jl) | 170 | void KOJournalView::showList(QPtrList<Journal> jl) |
171 | { | 171 | { |
172 | qDebug("KOJournalView::showList %d",jl.count() ); | 172 | //qDebug("KOJournalView::showList %d",jl.count() ); |
173 | JournalEntry* mEntry = jEntries.first(); | 173 | JournalEntry* mEntry = jEntries.first(); |
174 | JournalEntry* firstEntry = mEntry; | 174 | JournalEntry* firstEntry = mEntry; |
175 | int count = jl.count(); | 175 | int count = jl.count(); |
@@ -177,14 +177,16 @@ void KOJournalView::showList(QPtrList<Journal> jl) | |||
177 | while ( iii < count ) { | 177 | while ( iii < count ) { |
178 | if ( !mEntry ) { | 178 | if ( !mEntry ) { |
179 | mEntry = getNewEntry(); | 179 | mEntry = getNewEntry(); |
180 | mEntry->setVisibleMode( true ); | ||
180 | mEntry->setDate(mDate); | 181 | mEntry->setDate(mDate); |
181 | mEntry->setJournal(jl.at(iii)); | 182 | mEntry->setJournal(jl.at(iii), false); |
182 | mEntry->setVisibleMode( true ); | 183 | mEntry->setVisibleMode( true ); |
183 | mEntry->show(); | 184 | mEntry->show(); |
184 | mEntry = 0; | 185 | mEntry = 0; |
185 | } else { | 186 | } else { |
187 | mEntry->setVisibleMode( true ); | ||
186 | mEntry->setDate(mDate); | 188 | mEntry->setDate(mDate); |
187 | mEntry->setJournal(jl.at(iii)); | 189 | mEntry->setJournal(jl.at(iii), false); |
188 | mEntry->setVisibleMode( true ); | 190 | mEntry->setVisibleMode( true ); |
189 | mEntry->show(); | 191 | mEntry->show(); |
190 | mEntry = jEntries.next(); | 192 | mEntry = jEntries.next(); |
diff --git a/korganizer/koprefs.cpp b/korganizer/koprefs.cpp index bb3d720..a886735 100644 --- a/korganizer/koprefs.cpp +++ b/korganizer/koprefs.cpp | |||
@@ -501,6 +501,16 @@ void KOPrefs::deleteCalendar( int num ) | |||
501 | kkf = mCalendars.next(); | 501 | kkf = mCalendars.next(); |
502 | } | 502 | } |
503 | } | 503 | } |
504 | int KOPrefs::getCalendarID( const QString & name ) | ||
505 | { | ||
506 | KopiCalendarFile * kkf = mCalendars.first(); | ||
507 | while ( kkf ) { | ||
508 | if ( name == kkf->mName) | ||
509 | return kkf->mCalNumber; | ||
510 | kkf = mCalendars.next(); | ||
511 | } | ||
512 | return 1; | ||
513 | } | ||
504 | QString KOPrefs::calName( int calNum) const | 514 | QString KOPrefs::calName( int calNum) const |
505 | { | 515 | { |
506 | return (mDefCalColors[calNum-1])->mName; | 516 | return (mDefCalColors[calNum-1])->mName; |
diff --git a/korganizer/koprefs.h b/korganizer/koprefs.h index 53d193b..7ec5327 100644 --- a/korganizer/koprefs.h +++ b/korganizer/koprefs.h | |||
@@ -100,6 +100,7 @@ class KOPrefs : public KPimPrefs | |||
100 | void deleteCalendar( int ); | 100 | void deleteCalendar( int ); |
101 | QColor defaultColor( int ) const; | 101 | QColor defaultColor( int ) const; |
102 | QString calName( int ) const; | 102 | QString calName( int ) const; |
103 | int getCalendarID( const QString & name ); | ||
103 | protected: | 104 | protected: |
104 | void setTimeZoneIdDefault(); | 105 | void setTimeZoneIdDefault(); |
105 | 106 | ||