summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--korganizer/journalentry.cpp51
-rw-r--r--korganizer/journalentry.h7
-rw-r--r--korganizer/koeditorgeneral.cpp8
-rw-r--r--korganizer/kojournalview.cpp10
-rw-r--r--korganizer/koprefs.cpp10
-rw-r--r--korganizer/koprefs.h1
6 files changed, 62 insertions, 25 deletions
diff --git a/korganizer/journalentry.cpp b/korganizer/journalentry.cpp
index 4751d40..56221dc 100644
--- a/korganizer/journalentry.cpp
+++ b/korganizer/journalentry.cpp
@@ -81,5 +81,5 @@ JournalEntry::JournalEntry(Calendar *calendar,QWidget *parent) :
mTitle->setSizePolicy( QSizePolicy( QSizePolicy::MinimumExpanding ,QSizePolicy::Fixed ,FALSE) );
- mTitleLabel = new QLabel(i18n("Title"),vb);
- mTitleLabel->setMargin(0);
- mTitleLabel->setAlignment(AlignCenter);
+ mCalendarBox = new QComboBox(vb);
+ //mTitleLabel->setMargin(0);
+ //mTitleLabel->setAlignment(AlignCenter);
QPushButton * loadTemplate = new QPushButton( vb );
@@ -101,2 +101,3 @@ JournalEntry::JournalEntry(Calendar *calendar,QWidget *parent) :
mTitle->setMaximumHeight( size+4);
+ mCalendarBox->setMaximumHeight( size+4);
mEditor = new KTextEdit(this);
@@ -178,5 +179,30 @@ void JournalEntry::setDate(const QDate &date)
mDate = date;
- int id = mCalendar->defaultCalendar();
- QString calname = KOPrefs::instance()->getCalendar( id )->mName;
- mTitleLabel->setText( " (" + calname +")");
+ fillCalendar( mCalendar->defaultCalendar() );
+}
+void JournalEntry::fillCalendar( int setToID )
+{
+ mCalendarBox->clear();
+ KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first();
+ int std = 0;
+ int count = 0;
+ while ( kkf ) {
+ if ( (!kkf->mErrorOnLoad &&! kkf->isReadOnly) || setToID == kkf->mCalNumber ) {
+ if ( setToID ) {
+ if ( kkf->mCalNumber == setToID )
+ std = count;
+ } else {
+ if ( kkf->isStandard ) {
+ std = count;
+ }
+ }
+ ++count;
+ mCalendarBox->insertItem( kkf->mName );
+ }
+ kkf = KOPrefs::instance()->mCalendars.next();
+ }
+ mCalendarBox->setCurrentItem( std );
+ if ( KOPrefs::instance()->mCalendars.count() == 1 )
+ mCalendarBox->hide();
+ else
+ mCalendarBox->show();
}
@@ -208,4 +234,5 @@ void JournalEntry::setShowOnly()
}
-void JournalEntry::setJournal(Journal *journal)
+void JournalEntry::setJournal(Journal *journal, bool saveJournal )
{
+ if ( saveJournal )
writeJournal();
@@ -221,6 +248,3 @@ void JournalEntry::setJournal(Journal *journal)
mEditor->setReadOnly ( journal->isReadOnly() );
- int id = mJournal->calID();
-
- QString calname = KOPrefs::instance()->getCalendar( id )->mName;
- mTitleLabel->setText( " (" + calname +")");
+ fillCalendar( mJournal->calID() );
}
@@ -262,2 +286,3 @@ void JournalEntry::writeJournal()
if ( !visibleMode ) return;
+ if ( !mTitle->isEnabled() ) return;
if (mEditor->text().isEmpty() && mTitle->currentText().isEmpty()) {
@@ -288,2 +313,6 @@ void JournalEntry::writeJournal()
}
+ int id = KOPrefs::instance()->getCalendarID( mCalendarBox->currentText() );
+ if ( mJournal->calID() != id ) {
+ mJournal->setCalID( id );
+ }
}
diff --git a/korganizer/journalentry.h b/korganizer/journalentry.h
index fb19fb1..ed04b7c 100644
--- a/korganizer/journalentry.h
+++ b/korganizer/journalentry.h
@@ -33,2 +33,3 @@ class QLabel;
class KTextEdit;
+class QComboBox;
class KLineEdit;
@@ -44,3 +45,3 @@ class JournalEntry : public QFrame {
- void setJournal(Journal *);
+ void setJournal(Journal *, bool saveJournal = true );
Journal *journal() const;
@@ -55,3 +56,3 @@ class JournalEntry : public QFrame {
void setVisibleMode( bool b ) { visibleMode = b;}
-
+ void fillCalendar( int id = 0 );
protected slots:
@@ -78,3 +79,3 @@ class JournalEntry : public QFrame {
void keyPressEvent ( QKeyEvent * ) ;
- QLabel *mTitleLabel;
+ QComboBox *mCalendarBox;
KOLocationBox * mTitle;
diff --git a/korganizer/koeditorgeneral.cpp b/korganizer/koeditorgeneral.cpp
index fd50b05..aa55d82 100644
--- a/korganizer/koeditorgeneral.cpp
+++ b/korganizer/koeditorgeneral.cpp
@@ -485,9 +485,3 @@ int KOEditorGeneral::getCalendarID()
{
- KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first();
- while ( kkf ) {
- if ( mCalendarBox->currentText() == kkf->mName)
- return kkf->mCalNumber;
- kkf = KOPrefs::instance()->mCalendars.next();
- }
- return 1;
+ return KOPrefs::instance()->getCalendarID( mCalendarBox->currentText() );
}
diff --git a/korganizer/kojournalview.cpp b/korganizer/kojournalview.cpp
index 9b0e748..0523954 100644
--- a/korganizer/kojournalview.cpp
+++ b/korganizer/kojournalview.cpp
@@ -157,3 +157,3 @@ void KOJournalView::showOnly ( Journal* j )
{
- qDebug("showOnly %x ", j);
+ //qDebug("showOnly %x ", j);
flushView();
@@ -171,3 +171,3 @@ void KOJournalView::showList(QPtrList<Journal> jl)
{
- qDebug("KOJournalView::showList %d",jl.count() );
+ //qDebug("KOJournalView::showList %d",jl.count() );
JournalEntry* mEntry = jEntries.first();
@@ -179,4 +179,5 @@ void KOJournalView::showList(QPtrList<Journal> jl)
mEntry = getNewEntry();
+ mEntry->setVisibleMode( true );
mEntry->setDate(mDate);
- mEntry->setJournal(jl.at(iii));
+ mEntry->setJournal(jl.at(iii), false);
mEntry->setVisibleMode( true );
@@ -185,4 +186,5 @@ void KOJournalView::showList(QPtrList<Journal> jl)
} else {
+ mEntry->setVisibleMode( true );
mEntry->setDate(mDate);
- mEntry->setJournal(jl.at(iii));
+ mEntry->setJournal(jl.at(iii), false);
mEntry->setVisibleMode( true );
diff --git a/korganizer/koprefs.cpp b/korganizer/koprefs.cpp
index bb3d720..a886735 100644
--- a/korganizer/koprefs.cpp
+++ b/korganizer/koprefs.cpp
@@ -503,2 +503,12 @@ void KOPrefs::deleteCalendar( int num )
}
+int KOPrefs::getCalendarID( const QString & name )
+{
+ KopiCalendarFile * kkf = mCalendars.first();
+ while ( kkf ) {
+ if ( name == kkf->mName)
+ return kkf->mCalNumber;
+ kkf = mCalendars.next();
+ }
+ return 1;
+}
QString KOPrefs::calName( int calNum) const
diff --git a/korganizer/koprefs.h b/korganizer/koprefs.h
index 53d193b..7ec5327 100644
--- a/korganizer/koprefs.h
+++ b/korganizer/koprefs.h
@@ -102,2 +102,3 @@ class KOPrefs : public KPimPrefs
QString calName( int ) const;
+ int getCalendarID( const QString & name );
protected: