-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 | |||
@@ -1,299 +1,328 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of KOrganizer. | 2 | This file is part of KOrganizer. |
3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> | 3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> |
4 | 4 | ||
5 | This program is free software; you can redistribute it and/or modify | 5 | This program is free software; you can redistribute it and/or modify |
6 | it under the terms of the GNU General Public License as published by | 6 | it under the terms of the GNU General Public License as published by |
7 | the Free Software Foundation; either version 2 of the License, or | 7 | the Free Software Foundation; either version 2 of the License, or |
8 | (at your option) any later version. | 8 | (at your option) any later version. |
9 | 9 | ||
10 | This program is distributed in the hope that it will be useful, | 10 | This program is distributed in the hope that it will be useful, |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
13 | GNU General Public License for more details. | 13 | GNU General Public License for more details. |
14 | 14 | ||
15 | You should have received a copy of the GNU General Public License | 15 | You should have received a copy of the GNU General Public License |
16 | along with this program; if not, write to the Free Software | 16 | along with this program; if not, write to the Free Software |
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
18 | 18 | ||
19 | As a special exception, permission is given to link this program | 19 | As a special exception, permission is given to link this program |
20 | with any edition of Qt, and distribute the resulting executable, | 20 | with any edition of Qt, and distribute the resulting executable, |
21 | without including the source code for Qt in the source distribution. | 21 | without including the source code for Qt in the source distribution. |
22 | */ | 22 | */ |
23 | 23 | ||
24 | // | 24 | // |
25 | // Journal Entry | 25 | // Journal Entry |
26 | 26 | ||
27 | #include <qlabel.h> | 27 | #include <qlabel.h> |
28 | #include <qlayout.h> | 28 | #include <qlayout.h> |
29 | #include <qvbox.h> | 29 | #include <qvbox.h> |
30 | #include <qfile.h> | 30 | #include <qfile.h> |
31 | #include <qdir.h> | 31 | #include <qdir.h> |
32 | #include <qtextstream.h> | 32 | #include <qtextstream.h> |
33 | #include <qtextcodec.h> | 33 | #include <qtextcodec.h> |
34 | #include <qpixmap.h> | 34 | #include <qpixmap.h> |
35 | #include <qpushbutton.h> | 35 | #include <qpushbutton.h> |
36 | #include <qapplication.h> | 36 | #include <qapplication.h> |
37 | 37 | ||
38 | #include <kdebug.h> | 38 | #include <kdebug.h> |
39 | #include <kglobal.h> | 39 | #include <kglobal.h> |
40 | #include <klocale.h> | 40 | #include <klocale.h> |
41 | #include <ktextedit.h> | 41 | #include <ktextedit.h> |
42 | #include <kfiledialog.h> | 42 | #include <kfiledialog.h> |
43 | #include <kmessagebox.h> | 43 | #include <kmessagebox.h> |
44 | #include "koprefs.h" | 44 | #include "koprefs.h" |
45 | #include <klineedit.h> | 45 | #include <klineedit.h> |
46 | #include <kdialog.h> | 46 | #include <kdialog.h> |
47 | #include "kolocationbox.h" | 47 | #include "kolocationbox.h" |
48 | 48 | ||
49 | #include <libkcal/journal.h> | 49 | #include <libkcal/journal.h> |
50 | #include <libkcal/calendarresources.h> | 50 | #include <libkcal/calendarresources.h> |
51 | #include <libkcal/resourcecalendar.h> | 51 | #include <libkcal/resourcecalendar.h> |
52 | #include <kresources/resourceselectdialog.h> | 52 | #include <kresources/resourceselectdialog.h> |
53 | 53 | ||
54 | #include "journalentry.h" | 54 | #include "journalentry.h" |
55 | //#include "journalentry.moc" | 55 | //#include "journalentry.moc" |
56 | #ifndef DESKTOP_VERSION | 56 | #ifndef DESKTOP_VERSION |
57 | #include <qpe/qpeapplication.h> | 57 | #include <qpe/qpeapplication.h> |
58 | #endif | 58 | #endif |
59 | JournalEntry::JournalEntry(Calendar *calendar,QWidget *parent) : | 59 | JournalEntry::JournalEntry(Calendar *calendar,QWidget *parent) : |
60 | QFrame(parent) | 60 | QFrame(parent) |
61 | { | 61 | { |
62 | 62 | ||
63 | int fac = 5; | 63 | int fac = 5; |
64 | heiHint = QApplication::desktop()->height(); | 64 | heiHint = QApplication::desktop()->height(); |
65 | if ( heiHint > 800 ) | 65 | if ( heiHint > 800 ) |
66 | fac += 2; | 66 | fac += 2; |
67 | heiHint = heiHint / fac; | 67 | heiHint = heiHint / fac; |
68 | 68 | ||
69 | showOnlyMode = false; | 69 | showOnlyMode = false; |
70 | mCalendar = calendar; | 70 | mCalendar = calendar; |
71 | mJournal = 0; | 71 | mJournal = 0; |
72 | visibleMode = true; | 72 | visibleMode = true; |
73 | QHBox * vb = new QHBox ( this ); | 73 | QHBox * vb = new QHBox ( this ); |
74 | QPixmap iconp; | 74 | QPixmap iconp; |
75 | vb->setMargin ( KDialog::marginHint()-1 ); | 75 | vb->setMargin ( KDialog::marginHint()-1 ); |
76 | QPushButton * toggleJournal = new QPushButton( vb ); | 76 | QPushButton * toggleJournal = new QPushButton( vb ); |
77 | iconp = SmallIcon("1updownarrow"); | 77 | iconp = SmallIcon("1updownarrow"); |
78 | toggleJournal->setPixmap (iconp ) ; | 78 | toggleJournal->setPixmap (iconp ) ; |
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 ) |
88 | iconp = SmallIcon("fileexport16"); | 88 | iconp = SmallIcon("fileexport16"); |
89 | else | 89 | else |
90 | iconp = SmallIcon("fileexport"); | 90 | iconp = SmallIcon("fileexport"); |
91 | saveTemplate->setPixmap (iconp ) ; | 91 | saveTemplate->setPixmap (iconp ) ; |
92 | int size = saveTemplate->sizeHint().height(); | 92 | int size = saveTemplate->sizeHint().height(); |
93 | if ( QApplication::desktop()->width() < 321 ) | 93 | if ( QApplication::desktop()->width() < 321 ) |
94 | iconp = SmallIcon("fileimport16"); | 94 | iconp = SmallIcon("fileimport16"); |
95 | else | 95 | else |
96 | iconp = SmallIcon("fileimport"); | 96 | iconp = SmallIcon("fileimport"); |
97 | loadTemplate->setPixmap (iconp ) ; | 97 | loadTemplate->setPixmap (iconp ) ; |
98 | loadTemplate->setFixedSize( size, size ); | 98 | loadTemplate->setFixedSize( size, size ); |
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 ); |
105 | #endif | 106 | #endif |
106 | mEditor->setWordWrap( KTextEdit::WidgetWidth ); | 107 | mEditor->setWordWrap( KTextEdit::WidgetWidth ); |
107 | QBoxLayout *topLayout = new QVBoxLayout(this); | 108 | QBoxLayout *topLayout = new QVBoxLayout(this); |
108 | topLayout->addWidget(vb); | 109 | topLayout->addWidget(vb); |
109 | topLayout->addWidget(mEditor); | 110 | topLayout->addWidget(mEditor); |
110 | mEditor->installEventFilter(this); | 111 | mEditor->installEventFilter(this); |
111 | connect( saveTemplate, SIGNAL( clicked() ), this , SLOT( slotSaveTemplate() ) ); | 112 | connect( saveTemplate, SIGNAL( clicked() ), this , SLOT( slotSaveTemplate() ) ); |
112 | connect( loadTemplate, SIGNAL( clicked() ), this , SLOT( slotLoadTemplate() ) ); | 113 | connect( loadTemplate, SIGNAL( clicked() ), this , SLOT( slotLoadTemplate() ) ); |
113 | connect( toggleJournal, SIGNAL( clicked() ), this , SLOT( toggleShowJournal() ) ); | 114 | connect( toggleJournal, SIGNAL( clicked() ), this , SLOT( toggleShowJournal() ) ); |
114 | mTitle->load( KOLocationBox::SUMMARYJOURNAL ); | 115 | mTitle->load( KOLocationBox::SUMMARYJOURNAL ); |
115 | mTitle->lineEdit ()->setText(""); | 116 | mTitle->lineEdit ()->setText(""); |
116 | } | 117 | } |
117 | 118 | ||
118 | JournalEntry::~JournalEntry() | 119 | JournalEntry::~JournalEntry() |
119 | { | 120 | { |
120 | //qDebug("JournalEntry::~JournalEntry() "); | 121 | //qDebug("JournalEntry::~JournalEntry() "); |
121 | } | 122 | } |
122 | QSize JournalEntry::sizeHint() const | 123 | QSize JournalEntry::sizeHint() const |
123 | { | 124 | { |
124 | return QSize ( 240, heiHint ); | 125 | return QSize ( 240, heiHint ); |
125 | } | 126 | } |
126 | void JournalEntry::slotSaveTemplate() | 127 | void JournalEntry::slotSaveTemplate() |
127 | { | 128 | { |
128 | QString fileName =locateLocal( "templates", "journals" ); | 129 | QString fileName =locateLocal( "templates", "journals" ); |
129 | QDir t_dir; | 130 | QDir t_dir; |
130 | if ( !t_dir.exists(fileName) ) | 131 | if ( !t_dir.exists(fileName) ) |
131 | t_dir.mkdir ( fileName ); | 132 | t_dir.mkdir ( fileName ); |
132 | fileName += "/journal"; | 133 | fileName += "/journal"; |
133 | fileName = KFileDialog::getSaveFileName( fileName , i18n("Save as Journal template"), this ); | 134 | fileName = KFileDialog::getSaveFileName( fileName , i18n("Save as Journal template"), this ); |
134 | if ( fileName.length() == 0 ) | 135 | if ( fileName.length() == 0 ) |
135 | return; | 136 | return; |
136 | 137 | ||
137 | QFile fileIn( fileName ); | 138 | QFile fileIn( fileName ); |
138 | if (!fileIn.open( IO_WriteOnly ) ) { | 139 | if (!fileIn.open( IO_WriteOnly ) ) { |
139 | KMessageBox::error( this, i18n("Error saving template file\n '%1'.") | 140 | KMessageBox::error( this, i18n("Error saving template file\n '%1'.") |
140 | .arg( fileName ) ); | 141 | .arg( fileName ) ); |
141 | return; | 142 | return; |
142 | } | 143 | } |
143 | // QString text; | 144 | // QString text; |
144 | QTextStream tsIn( &fileIn ); | 145 | QTextStream tsIn( &fileIn ); |
145 | tsIn.setCodec( QTextCodec::codecForName("utf8") ); | 146 | tsIn.setCodec( QTextCodec::codecForName("utf8") ); |
146 | tsIn << mEditor->text(); | 147 | tsIn << mEditor->text(); |
147 | fileIn.close(); | 148 | fileIn.close(); |
148 | } | 149 | } |
149 | void JournalEntry::slotLoadTemplate() | 150 | void JournalEntry::slotLoadTemplate() |
150 | { | 151 | { |
151 | QString fileName =locateLocal( "templates", "journals" ); | 152 | QString fileName =locateLocal( "templates", "journals" ); |
152 | QDir t_dir; | 153 | QDir t_dir; |
153 | if ( !t_dir.exists(fileName) ) | 154 | if ( !t_dir.exists(fileName) ) |
154 | t_dir.mkdir ( fileName ); | 155 | t_dir.mkdir ( fileName ); |
155 | fileName += "/journal"; | 156 | fileName += "/journal"; |
156 | fileName = KFileDialog::getOpenFileName( fileName , i18n("Insert Journal template"), this ); | 157 | fileName = KFileDialog::getOpenFileName( fileName , i18n("Insert Journal template"), this ); |
157 | if ( fileName.length() == 0 ) | 158 | if ( fileName.length() == 0 ) |
158 | return; | 159 | return; |
159 | QFile fileIn( fileName ); | 160 | QFile fileIn( fileName ); |
160 | if (!fileIn.open( IO_ReadOnly ) ) { | 161 | if (!fileIn.open( IO_ReadOnly ) ) { |
161 | KMessageBox::error( this, i18n("Error loading template file\n '%1'.") | 162 | KMessageBox::error( this, i18n("Error loading template file\n '%1'.") |
162 | .arg( fileName ) ); | 163 | .arg( fileName ) ); |
163 | return; | 164 | return; |
164 | } | 165 | } |
165 | QTextStream tsIn( &fileIn ); | 166 | QTextStream tsIn( &fileIn ); |
166 | tsIn.setCodec( QTextCodec::codecForName("utf8") ); | 167 | tsIn.setCodec( QTextCodec::codecForName("utf8") ); |
167 | QString text = tsIn.read(); | 168 | QString text = tsIn.read(); |
168 | fileIn.close(); | 169 | fileIn.close(); |
169 | int line, col; | 170 | int line, col; |
170 | mEditor->getCursorPosition (& line, & col ); | 171 | mEditor->getCursorPosition (& line, & col ); |
171 | mEditor-> insertAt ( text, line, col, true ); | 172 | mEditor-> insertAt ( text, line, col, true ); |
172 | //mEditor->setIgnoreMark( true ); | 173 | //mEditor->setIgnoreMark( true ); |
173 | } | 174 | } |
174 | void JournalEntry::setDate(const QDate &date) | 175 | void JournalEntry::setDate(const QDate &date) |
175 | { | 176 | { |
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() |
185 | { | 211 | { |
186 | if (!mEditor->text().isEmpty() || !mTitle->currentText ().isEmpty()) | 212 | if (!mEditor->text().isEmpty() || !mTitle->currentText ().isEmpty()) |
187 | flushEntry(); | 213 | flushEntry(); |
188 | if ( showOnlyMode ) | 214 | if ( showOnlyMode ) |
189 | emit showJournalOnly( 0 ); | 215 | emit showJournalOnly( 0 ); |
190 | else { | 216 | else { |
191 | // we have to protect mJournal from deleting if mJournal has empty text | 217 | // we have to protect mJournal from deleting if mJournal has empty text |
192 | visibleMode = false; // set to true via :setShowOnly() | 218 | visibleMode = false; // set to true via :setShowOnly() |
193 | emit showJournalOnly( mJournal ); | 219 | emit showJournalOnly( mJournal ); |
194 | //QTimer::singleShot( 0, this, SLOT( setVisibleOn() ) ); | 220 | //QTimer::singleShot( 0, this, SLOT( setVisibleOn() ) ); |
195 | } | 221 | } |
196 | } | 222 | } |
197 | void JournalEntry::setVisibleOn() | 223 | void JournalEntry::setVisibleOn() |
198 | { | 224 | { |
199 | visibleMode = true; | 225 | visibleMode = true; |
200 | } | 226 | } |
201 | void JournalEntry::setShowOnly() | 227 | void JournalEntry::setShowOnly() |
202 | { | 228 | { |
203 | showOnlyMode = true; | 229 | showOnlyMode = true; |
204 | if ( mTitle->currentText().isEmpty() ) | 230 | if ( mTitle->currentText().isEmpty() ) |
205 | mTitle->setFocus(); | 231 | mTitle->setFocus(); |
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; |
215 | if ( journal->isReadOnly() ) | 242 | if ( journal->isReadOnly() ) |
216 | mTitle->lineEdit ()->setText(mJournal->summary()+" ("+i18n("readonly")+")"); | 243 | mTitle->lineEdit ()->setText(mJournal->summary()+" ("+i18n("readonly")+")"); |
217 | else | 244 | else |
218 | mTitle->lineEdit ()->setText(mJournal->summary()); | 245 | mTitle->lineEdit ()->setText(mJournal->summary()); |
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 |
229 | { | 253 | { |
230 | return mJournal; | 254 | return mJournal; |
231 | } | 255 | } |
232 | 256 | ||
233 | 257 | ||
234 | void JournalEntry::clear() | 258 | void JournalEntry::clear() |
235 | { | 259 | { |
236 | mJournal = 0; | 260 | mJournal = 0; |
237 | mEditor->setText(""); | 261 | mEditor->setText(""); |
238 | mTitle->load( KOLocationBox::SUMMARYJOURNAL ); | 262 | mTitle->load( KOLocationBox::SUMMARYJOURNAL ); |
239 | mTitle->lineEdit ()->setText(""); | 263 | mTitle->lineEdit ()->setText(""); |
240 | } | 264 | } |
241 | 265 | ||
242 | bool JournalEntry::eventFilter( QObject *o, QEvent *e ) | 266 | bool JournalEntry::eventFilter( QObject *o, QEvent *e ) |
243 | { | 267 | { |
244 | // kdDebug() << "JournalEntry::event received " << e->type() << endl; | 268 | // kdDebug() << "JournalEntry::event received " << e->type() << endl; |
245 | 269 | ||
246 | if ( e->type() == QEvent::FocusOut ) { | 270 | if ( e->type() == QEvent::FocusOut ) { |
247 | writeJournal(); | 271 | writeJournal(); |
248 | } | 272 | } |
249 | if ( e->type() == QEvent::KeyPress ) { | 273 | if ( e->type() == QEvent::KeyPress ) { |
250 | QKeyEvent * k = (QKeyEvent *) e; | 274 | QKeyEvent * k = (QKeyEvent *) e; |
251 | if ( k->state() == Qt::ControlButton ) { | 275 | if ( k->state() == Qt::ControlButton ) { |
252 | k->ignore(); | 276 | k->ignore(); |
253 | //return true; | 277 | //return true; |
254 | } | 278 | } |
255 | } | 279 | } |
256 | 280 | ||
257 | return QFrame::eventFilter( o, e ); // standard event processing | 281 | return QFrame::eventFilter( o, e ); // standard event processing |
258 | } | 282 | } |
259 | 283 | ||
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; |
266 | mJournal = 0; | 291 | mJournal = 0; |
267 | bool conf = KOPrefs::instance()->mConfirm; | 292 | bool conf = KOPrefs::instance()->mConfirm; |
268 | KOPrefs::instance()->mConfirm = false; | 293 | KOPrefs::instance()->mConfirm = false; |
269 | emit deleteJournal(j); | 294 | emit deleteJournal(j); |
270 | KOPrefs::instance()->mConfirm = conf; | 295 | KOPrefs::instance()->mConfirm = conf; |
271 | } | 296 | } |
272 | return; | 297 | return; |
273 | } | 298 | } |
274 | 299 | ||
275 | // kdDebug() << "JournalEntry::writeJournal()..." << endl; | 300 | // kdDebug() << "JournalEntry::writeJournal()..." << endl; |
276 | 301 | ||
277 | if (!mJournal) { | 302 | if (!mJournal) { |
278 | mJournal = new Journal; | 303 | mJournal = new Journal; |
279 | mJournal->setDtStart(QDateTime(mDate,QTime(0,0,0))); | 304 | mJournal->setDtStart(QDateTime(mDate,QTime(0,0,0))); |
280 | mCalendar->addJournal(mJournal); | 305 | mCalendar->addJournal(mJournal); |
281 | } | 306 | } |
282 | if ( mJournal->description() != mEditor->text() ) { | 307 | if ( mJournal->description() != mEditor->text() ) { |
283 | mJournal->setDescription(mEditor->text()); | 308 | mJournal->setDescription(mEditor->text()); |
284 | } | 309 | } |
285 | if ( mJournal->summary() != mTitle->currentText() ) { | 310 | if ( mJournal->summary() != mTitle->currentText() ) { |
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() |
292 | { | 321 | { |
293 | writeJournal(); | 322 | writeJournal(); |
294 | } | 323 | } |
295 | void JournalEntry::keyPressEvent ( QKeyEvent * e ) | 324 | void JournalEntry::keyPressEvent ( QKeyEvent * e ) |
296 | { | 325 | { |
297 | e->ignore(); | 326 | e->ignore(); |
298 | 327 | ||
299 | } | 328 | } |
diff --git a/korganizer/journalentry.h b/korganizer/journalentry.h index fb19fb1..ed04b7c 100644 --- a/korganizer/journalentry.h +++ b/korganizer/journalentry.h | |||
@@ -1,85 +1,86 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of KOrganizer. | 2 | This file is part of KOrganizer. |
3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> | 3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> |
4 | 4 | ||
5 | This program is free software; you can redistribute it and/or modify | 5 | This program is free software; you can redistribute it and/or modify |
6 | it under the terms of the GNU General Public License as published by | 6 | it under the terms of the GNU General Public License as published by |
7 | the Free Software Foundation; either version 2 of the License, or | 7 | the Free Software Foundation; either version 2 of the License, or |
8 | (at your option) any later version. | 8 | (at your option) any later version. |
9 | 9 | ||
10 | This program is distributed in the hope that it will be useful, | 10 | This program is distributed in the hope that it will be useful, |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
13 | GNU General Public License for more details. | 13 | GNU General Public License for more details. |
14 | 14 | ||
15 | You should have received a copy of the GNU General Public License | 15 | You should have received a copy of the GNU General Public License |
16 | along with this program; if not, write to the Free Software | 16 | along with this program; if not, write to the Free Software |
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
18 | 18 | ||
19 | As a special exception, permission is given to link this program | 19 | As a special exception, permission is given to link this program |
20 | with any edition of Qt, and distribute the resulting executable, | 20 | with any edition of Qt, and distribute the resulting executable, |
21 | without including the source code for Qt in the source distribution. | 21 | without including the source code for Qt in the source distribution. |
22 | */ | 22 | */ |
23 | #ifndef JOURNALENTRY_H | 23 | #ifndef JOURNALENTRY_H |
24 | #define JOURNALENTRY_H | 24 | #define JOURNALENTRY_H |
25 | // | 25 | // |
26 | // Widget showing one Journal entry | 26 | // Widget showing one Journal entry |
27 | 27 | ||
28 | #include <qframe.h> | 28 | #include <qframe.h> |
29 | 29 | ||
30 | #include <libkcal/calendar.h> | 30 | #include <libkcal/calendar.h> |
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 | ||
37 | using namespace KCal; | 38 | using namespace KCal; |
38 | 39 | ||
39 | class JournalEntry : public QFrame { | 40 | class JournalEntry : public QFrame { |
40 | Q_OBJECT | 41 | Q_OBJECT |
41 | public: | 42 | public: |
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 &); |
49 | 50 | ||
50 | void clear(); | 51 | void clear(); |
51 | 52 | ||
52 | void flushEntry(); | 53 | void flushEntry(); |
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(); |
60 | void toggleShowJournal(); | 61 | void toggleShowJournal(); |
61 | void setVisibleOn(); | 62 | void setVisibleOn(); |
62 | signals: | 63 | signals: |
63 | void deleteJournal(Journal *); | 64 | void deleteJournal(Journal *); |
64 | void newJournal(); | 65 | void newJournal(); |
65 | void showJournalOnly( Journal * ); | 66 | void showJournalOnly( Journal * ); |
66 | 67 | ||
67 | protected: | 68 | protected: |
68 | bool eventFilter( QObject *o, QEvent *e ); | 69 | bool eventFilter( QObject *o, QEvent *e ); |
69 | 70 | ||
70 | void writeJournal(); | 71 | void writeJournal(); |
71 | 72 | ||
72 | private: | 73 | private: |
73 | bool visibleMode; | 74 | bool visibleMode; |
74 | bool showOnlyMode; | 75 | bool showOnlyMode; |
75 | Calendar *mCalendar; | 76 | Calendar *mCalendar; |
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; |
83 | }; | 84 | }; |
84 | 85 | ||
85 | #endif | 86 | #endif |
diff --git a/korganizer/koeditorgeneral.cpp b/korganizer/koeditorgeneral.cpp index fd50b05..aa55d82 100644 --- a/korganizer/koeditorgeneral.cpp +++ b/korganizer/koeditorgeneral.cpp | |||
@@ -1,624 +1,618 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of KOrganizer. | 2 | This file is part of KOrganizer. |
3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> | 3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> |
4 | 4 | ||
5 | This program is free software; you can redistribute it and/or modify | 5 | This program is free software; you can redistribute it and/or modify |
6 | it under the terms of the GNU General Public License as published by | 6 | it under the terms of the GNU General Public License as published by |
7 | the Free Software Foundation; either version 2 of the License, or | 7 | the Free Software Foundation; either version 2 of the License, or |
8 | (at your option) any later version. | 8 | (at your option) any later version. |
9 | 9 | ||
10 | This program is distributed in the hope that it will be useful, | 10 | This program is distributed in the hope that it will be useful, |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
13 | GNU General Public License for more details. | 13 | GNU General Public License for more details. |
14 | 14 | ||
15 | You should have received a copy of the GNU General Public License | 15 | You should have received a copy of the GNU General Public License |
16 | along with this program; if not, write to the Free Software | 16 | along with this program; if not, write to the Free Software |
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
18 | 18 | ||
19 | As a special exception, permission is given to link this program | 19 | As a special exception, permission is given to link this program |
20 | with any edition of Qt, and distribute the resulting executable, | 20 | with any edition of Qt, and distribute the resulting executable, |
21 | without including the source code for Qt in the source distribution. | 21 | without including the source code for Qt in the source distribution. |
22 | */ | 22 | */ |
23 | 23 | ||
24 | #include <qwidget.h> | 24 | #include <qwidget.h> |
25 | #include <qtooltip.h> | 25 | #include <qtooltip.h> |
26 | #include <qlayout.h> | 26 | #include <qlayout.h> |
27 | #include <qvbox.h> | 27 | #include <qvbox.h> |
28 | #include <qbuttongroup.h> | 28 | #include <qbuttongroup.h> |
29 | #include <qvgroupbox.h> | 29 | #include <qvgroupbox.h> |
30 | #include <qwidgetstack.h> | 30 | #include <qwidgetstack.h> |
31 | #include <qdatetime.h> | 31 | #include <qdatetime.h> |
32 | #include <qtimer.h> | 32 | #include <qtimer.h> |
33 | #include <qfile.h> | 33 | #include <qfile.h> |
34 | #include <qregexp.h> | 34 | #include <qregexp.h> |
35 | 35 | ||
36 | 36 | ||
37 | #include <kglobal.h> | 37 | #include <kglobal.h> |
38 | #include <kdialog.h> | 38 | #include <kdialog.h> |
39 | #include <kdebug.h> | 39 | #include <kdebug.h> |
40 | #include <klocale.h> | 40 | #include <klocale.h> |
41 | #include <kiconloader.h> | 41 | #include <kiconloader.h> |
42 | #include <kmessagebox.h> | 42 | #include <kmessagebox.h> |
43 | #include <kfiledialog.h> | 43 | #include <kfiledialog.h> |
44 | #include <kstandarddirs.h> | 44 | #include <kstandarddirs.h> |
45 | 45 | ||
46 | #include <libkcal/todo.h> | 46 | #include <libkcal/todo.h> |
47 | #include <libkcal/event.h> | 47 | #include <libkcal/event.h> |
48 | #include <libkdepim/categoryselectdialog.h> | 48 | #include <libkdepim/categoryselectdialog.h> |
49 | #include <libkdepim/kdateedit.h> | 49 | #include <libkdepim/kdateedit.h> |
50 | 50 | ||
51 | #include "koprefs.h" | 51 | #include "koprefs.h" |
52 | #include "koglobals.h" | 52 | #include "koglobals.h" |
53 | 53 | ||
54 | #include "koeditorgeneral.h" | 54 | #include "koeditorgeneral.h" |
55 | #include "kolocationbox.h" | 55 | #include "kolocationbox.h" |
56 | #ifndef DESKTOP_VERSION | 56 | #ifndef DESKTOP_VERSION |
57 | #include <qpe/qpeapplication.h> | 57 | #include <qpe/qpeapplication.h> |
58 | #else | 58 | #else |
59 | #include <qapplication.h> | 59 | #include <qapplication.h> |
60 | #endif | 60 | #endif |
61 | 61 | ||
62 | KOEditorGeneral::KOEditorGeneral(QObject* parent, const char* name) : | 62 | KOEditorGeneral::KOEditorGeneral(QObject* parent, const char* name) : |
63 | QObject( parent, name) | 63 | QObject( parent, name) |
64 | { | 64 | { |
65 | mNextFocus = 0; | 65 | mNextFocus = 0; |
66 | } | 66 | } |
67 | 67 | ||
68 | KOEditorGeneral::~KOEditorGeneral() | 68 | KOEditorGeneral::~KOEditorGeneral() |
69 | { | 69 | { |
70 | } | 70 | } |
71 | 71 | ||
72 | void KOEditorGeneral::initHeader(QWidget *parent,QBoxLayout *topLayout) | 72 | void KOEditorGeneral::initHeader(QWidget *parent,QBoxLayout *topLayout) |
73 | { | 73 | { |
74 | QGridLayout *headerLayout = new QGridLayout(topLayout); | 74 | QGridLayout *headerLayout = new QGridLayout(topLayout); |
75 | 75 | ||
76 | #if 0 | 76 | #if 0 |
77 | mOwnerLabel = new QLabel(i18n("Owner:"),parent); | 77 | mOwnerLabel = new QLabel(i18n("Owner:"),parent); |
78 | headerLayout->addMultiCellWidget(mOwnerLabel,0,0,0,1); | 78 | headerLayout->addMultiCellWidget(mOwnerLabel,0,0,0,1); |
79 | #endif | 79 | #endif |
80 | // 1 on pda | 80 | // 1 on pda |
81 | // 11 on desktop | 81 | // 11 on desktop |
82 | headerLayout->setSpacing( (KDialog::spacingHint()-3)*2+1 ); | 82 | headerLayout->setSpacing( (KDialog::spacingHint()-3)*2+1 ); |
83 | QLabel *summaryLabel = new QLabel(i18n("Summary:"),parent); | 83 | QLabel *summaryLabel = new QLabel(i18n("Summary:"),parent); |
84 | headerLayout->addWidget(summaryLabel,0,0); | 84 | headerLayout->addWidget(summaryLabel,0,0); |
85 | 85 | ||
86 | mSummaryEdit = new KOLocationBox(TRUE,parent, 50); | 86 | mSummaryEdit = new KOLocationBox(TRUE,parent, 50); |
87 | mSummaryEdit->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::MinimumExpanding ,FALSE) ); | 87 | mSummaryEdit->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::MinimumExpanding ,FALSE) ); |
88 | //mSummaryEdit->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5 ,(QSizePolicy::SizeType)3 ,FALSE) ); | 88 | //mSummaryEdit->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5 ,(QSizePolicy::SizeType)3 ,FALSE) ); |
89 | //qDebug("h %d %d ", summaryLabel->sizeHint().height(),mSummaryEdit->sizeHint().height() ); | 89 | //qDebug("h %d %d ", summaryLabel->sizeHint().height(),mSummaryEdit->sizeHint().height() ); |
90 | int hei = (summaryLabel->sizeHint().height() + mSummaryEdit->sizeHint().height())/2; | 90 | int hei = (summaryLabel->sizeHint().height() + mSummaryEdit->sizeHint().height())/2; |
91 | if ( QApplication::desktop()->width() > 320 ) | 91 | if ( QApplication::desktop()->width() > 320 ) |
92 | mSummaryEdit->setMaximumHeight( hei +6 ); | 92 | mSummaryEdit->setMaximumHeight( hei +6 ); |
93 | //qDebug("%d %d %d %d %d %d ", QSizePolicy::Fixed , QSizePolicy::Minimum , QSizePolicy:: Maximum , QSizePolicy:: Preferred , QSizePolicy:: MinimumExpanding , QSizePolicy::Expanding ); | 93 | //qDebug("%d %d %d %d %d %d ", QSizePolicy::Fixed , QSizePolicy::Minimum , QSizePolicy:: Maximum , QSizePolicy:: Preferred , QSizePolicy:: MinimumExpanding , QSizePolicy::Expanding ); |
94 | // SizeType { Fixed = 0, Minimum = MayGrow, Maximum = MayShrink, Preferred = MayGrow|MayShrink, MinimumExpanding = Minimum|ExpMask, Expanding = MinimumExpanding|MayShrink } | 94 | // SizeType { Fixed = 0, Minimum = MayGrow, Maximum = MayShrink, Preferred = MayGrow|MayShrink, MinimumExpanding = Minimum|ExpMask, Expanding = MinimumExpanding|MayShrink } |
95 | // mSummaryEdit = new QLineEdit(parent); | 95 | // mSummaryEdit = new QLineEdit(parent); |
96 | if ( QApplication::desktop()->height() < 320 ) | 96 | if ( QApplication::desktop()->height() < 320 ) |
97 | headerLayout->addWidget(mSummaryEdit,0,1); | 97 | headerLayout->addWidget(mSummaryEdit,0,1); |
98 | else | 98 | else |
99 | headerLayout->addMultiCellWidget(mSummaryEdit,0,0,1,2); | 99 | headerLayout->addMultiCellWidget(mSummaryEdit,0,0,1,2); |
100 | connect ( mSummaryEdit->lineEdit(), SIGNAL ( returnPressed() ), this, SIGNAL (allAccepted () ) ); | 100 | connect ( mSummaryEdit->lineEdit(), SIGNAL ( returnPressed() ), this, SIGNAL (allAccepted () ) ); |
101 | 101 | ||
102 | QLabel *locationLabel = new QLabel(i18n("Location:"),parent); | 102 | QLabel *locationLabel = new QLabel(i18n("Location:"),parent); |
103 | if ( QApplication::desktop()->height() < 320 ) | 103 | if ( QApplication::desktop()->height() < 320 ) |
104 | headerLayout->addWidget(locationLabel,0,2); | 104 | headerLayout->addWidget(locationLabel,0,2); |
105 | else | 105 | else |
106 | headerLayout->addWidget(locationLabel,1,0); | 106 | headerLayout->addWidget(locationLabel,1,0); |
107 | 107 | ||
108 | mLocationEdit = new KOLocationBox(TRUE,parent,30); | 108 | mLocationEdit = new KOLocationBox(TRUE,parent,30); |
109 | mLocationEdit->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::MinimumExpanding ,FALSE) ); | 109 | mLocationEdit->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::MinimumExpanding ,FALSE) ); |
110 | if ( QApplication::desktop()->width() > 320 && QApplication::desktop()->height() > 240 ) | 110 | if ( QApplication::desktop()->width() > 320 && QApplication::desktop()->height() > 240 ) |
111 | mLocationEdit->setMaximumHeight( hei + 6); | 111 | mLocationEdit->setMaximumHeight( hei + 6); |
112 | 112 | ||
113 | // mLocationEdit = new QLineEdit(parent); | 113 | // mLocationEdit = new QLineEdit(parent); |
114 | connect ( mLocationEdit->lineEdit(), SIGNAL ( returnPressed() ), this, SIGNAL (allAccepted () ) ); | 114 | connect ( mLocationEdit->lineEdit(), SIGNAL ( returnPressed() ), this, SIGNAL (allAccepted () ) ); |
115 | 115 | ||
116 | mCalendarBox = new QComboBox ( parent ); | 116 | mCalendarBox = new QComboBox ( parent ); |
117 | mCalendarBox->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::MinimumExpanding ,FALSE) ); | 117 | mCalendarBox->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::MinimumExpanding ,FALSE) ); |
118 | if ( QApplication::desktop()->height() < 320 ) { | 118 | if ( QApplication::desktop()->height() < 320 ) { |
119 | headerLayout->addWidget(mLocationEdit,0,3); | 119 | headerLayout->addWidget(mLocationEdit,0,3); |
120 | headerLayout->addWidget(mCalendarBox,0,4); | 120 | headerLayout->addWidget(mCalendarBox,0,4); |
121 | headerLayout->setColStretch( 1, 10); | 121 | headerLayout->setColStretch( 1, 10); |
122 | headerLayout->setColStretch( 3, 10); | 122 | headerLayout->setColStretch( 3, 10); |
123 | mCalendarBox->setMaximumWidth( 64 ); | 123 | mCalendarBox->setMaximumWidth( 64 ); |
124 | } | 124 | } |
125 | else { | 125 | else { |
126 | headerLayout->addWidget(mLocationEdit,1,1); | 126 | headerLayout->addWidget(mLocationEdit,1,1); |
127 | headerLayout->addWidget(mCalendarBox,1,2); | 127 | headerLayout->addWidget(mCalendarBox,1,2); |
128 | headerLayout->setColStretch( 1, 3); | 128 | headerLayout->setColStretch( 1, 3); |
129 | headerLayout->setColStretch( 2, 1); | 129 | headerLayout->setColStretch( 2, 1); |
130 | } | 130 | } |
131 | 131 | ||
132 | } | 132 | } |
133 | void KOEditorGeneral::setFocusOn( int i ) | 133 | void KOEditorGeneral::setFocusOn( int i ) |
134 | { | 134 | { |
135 | mNextFocus = i; | 135 | mNextFocus = i; |
136 | QTimer::singleShot( 0, this, SLOT ( slotSetFocusOn() )); | 136 | QTimer::singleShot( 0, this, SLOT ( slotSetFocusOn() )); |
137 | } | 137 | } |
138 | void KOEditorGeneral::slotSetFocusOn() | 138 | void KOEditorGeneral::slotSetFocusOn() |
139 | { | 139 | { |
140 | mNextFocus; | 140 | mNextFocus; |
141 | if ( mNextFocus == 1 ) { | 141 | if ( mNextFocus == 1 ) { |
142 | mDescriptionEdit->setFocus(); | 142 | mDescriptionEdit->setFocus(); |
143 | mDescriptionEdit->setCursorPosition( mDescriptionEdit->numLines (), 333); | 143 | mDescriptionEdit->setCursorPosition( mDescriptionEdit->numLines (), 333); |
144 | } | 144 | } |
145 | if ( mNextFocus == 2 ) { | 145 | if ( mNextFocus == 2 ) { |
146 | mSummaryEdit->setFocus(); | 146 | mSummaryEdit->setFocus(); |
147 | } | 147 | } |
148 | } | 148 | } |
149 | void KOEditorGeneral::editCategories() | 149 | void KOEditorGeneral::editCategories() |
150 | { | 150 | { |
151 | // qDebug("KOEditorGeneral::editCategories() "); | 151 | // qDebug("KOEditorGeneral::editCategories() "); |
152 | KPIM::CategorySelectDialog* csd = new KPIM::CategorySelectDialog( KOPrefs::instance(), 0 ); | 152 | KPIM::CategorySelectDialog* csd = new KPIM::CategorySelectDialog( KOPrefs::instance(), 0 ); |
153 | connect(csd,SIGNAL(categoriesSelected(const QString &)), this ,SLOT(setCategories(const QString &))); | 153 | connect(csd,SIGNAL(categoriesSelected(const QString &)), this ,SLOT(setCategories(const QString &))); |
154 | //KOGlobals::fitDialogToScreen( csd ); | 154 | //KOGlobals::fitDialogToScreen( csd ); |
155 | csd->setColorEnabled(); | 155 | csd->setColorEnabled(); |
156 | csd->setSelected( QStringList::split (",", mCategoriesLabel->text()) ); | 156 | csd->setSelected( QStringList::split (",", mCategoriesLabel->text()) ); |
157 | csd->exec(); | 157 | csd->exec(); |
158 | delete csd; | 158 | delete csd; |
159 | } | 159 | } |
160 | 160 | ||
161 | void KOEditorGeneral::showCatPopup() | 161 | void KOEditorGeneral::showCatPopup() |
162 | { | 162 | { |
163 | mCatPopup->clear(); | 163 | mCatPopup->clear(); |
164 | QStringList checkedCategories = QStringList::split (",", mCategoriesLabel->text()); | 164 | QStringList checkedCategories = QStringList::split (",", mCategoriesLabel->text()); |
165 | int index = 0; | 165 | int index = 0; |
166 | for (QStringList::Iterator it = KOPrefs::instance()->mCustomCategories.begin (); | 166 | for (QStringList::Iterator it = KOPrefs::instance()->mCustomCategories.begin (); |
167 | it != KOPrefs::instance()->mCustomCategories.end (); | 167 | it != KOPrefs::instance()->mCustomCategories.end (); |
168 | ++it) { | 168 | ++it) { |
169 | mCatPopup->insertItem (*it, index ); | 169 | mCatPopup->insertItem (*it, index ); |
170 | //mCategory[index] = *it; | 170 | //mCategory[index] = *it; |
171 | if (checkedCategories.find (*it) != checkedCategories.end ()) mCatPopup->setItemChecked (index, true); | 171 | if (checkedCategories.find (*it) != checkedCategories.end ()) mCatPopup->setItemChecked (index, true); |
172 | ++index; | 172 | ++index; |
173 | } | 173 | } |
174 | } | 174 | } |
175 | void KOEditorGeneral::selectedCatPopup( int index ) | 175 | void KOEditorGeneral::selectedCatPopup( int index ) |
176 | { | 176 | { |
177 | QStringList categories = QStringList::split (",", mCategoriesLabel->text()); | 177 | QStringList categories = QStringList::split (",", mCategoriesLabel->text()); |
178 | QString colcat = categories.first(); | 178 | QString colcat = categories.first(); |
179 | if (categories.find (KOPrefs::instance()->mCustomCategories[index]) != categories.end ()) | 179 | if (categories.find (KOPrefs::instance()->mCustomCategories[index]) != categories.end ()) |
180 | categories.remove (KOPrefs::instance()->mCustomCategories[index]); | 180 | categories.remove (KOPrefs::instance()->mCustomCategories[index]); |
181 | else | 181 | else |
182 | categories.insert (categories.end(), KOPrefs::instance()->mCustomCategories[index]); | 182 | categories.insert (categories.end(), KOPrefs::instance()->mCustomCategories[index]); |
183 | categories.sort (); | 183 | categories.sort (); |
184 | if ( !colcat.isEmpty() ) { | 184 | if ( !colcat.isEmpty() ) { |
185 | if ( categories.find ( colcat ) != categories.end () ) { | 185 | if ( categories.find ( colcat ) != categories.end () ) { |
186 | categories.remove( colcat ); | 186 | categories.remove( colcat ); |
187 | categories.prepend( colcat ); | 187 | categories.prepend( colcat ); |
188 | } | 188 | } |
189 | } | 189 | } |
190 | setCategories( categories.join(",") ); | 190 | setCategories( categories.join(",") ); |
191 | } | 191 | } |
192 | 192 | ||
193 | void KOEditorGeneral::initCategories(QWidget *parent, QBoxLayout *topLayout) | 193 | void KOEditorGeneral::initCategories(QWidget *parent, QBoxLayout *topLayout) |
194 | { | 194 | { |
195 | QBoxLayout *categoriesLayout = new QHBoxLayout( topLayout ); | 195 | QBoxLayout *categoriesLayout = new QHBoxLayout( topLayout ); |
196 | mCatPopup = new QPopupMenu ( parent ); | 196 | mCatPopup = new QPopupMenu ( parent ); |
197 | mCatPopup->setCheckable (true); | 197 | mCatPopup->setCheckable (true); |
198 | connect(mCatPopup,SIGNAL(aboutToShow () ), this ,SLOT(showCatPopup())); | 198 | connect(mCatPopup,SIGNAL(aboutToShow () ), this ,SLOT(showCatPopup())); |
199 | connect(mCatPopup,SIGNAL( activated ( int ) ), this ,SLOT(selectedCatPopup( int ))); | 199 | connect(mCatPopup,SIGNAL( activated ( int ) ), this ,SLOT(selectedCatPopup( int ))); |
200 | mCategoriesButton = new QPushButton(parent); | 200 | mCategoriesButton = new QPushButton(parent); |
201 | mCategoriesButton->setText(i18n("Categories...")); | 201 | mCategoriesButton->setText(i18n("Categories...")); |
202 | connect(mCategoriesButton,SIGNAL(clicked()),this, SLOT(editCategories() )); | 202 | connect(mCategoriesButton,SIGNAL(clicked()),this, SLOT(editCategories() )); |
203 | //connect(mCategoriesButton,SIGNAL(clicked()),this, SLOT(editCategories() )); | 203 | //connect(mCategoriesButton,SIGNAL(clicked()),this, SLOT(editCategories() )); |
204 | categoriesLayout->addWidget(mCategoriesButton); | 204 | categoriesLayout->addWidget(mCategoriesButton); |
205 | mCategoriesLabel = new QPushButton(parent);//new QLabel(parent); | 205 | mCategoriesLabel = new QPushButton(parent);//new QLabel(parent); |
206 | mCategoriesLabel->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::Fixed ,FALSE) ); | 206 | mCategoriesLabel->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::Fixed ,FALSE) ); |
207 | mCategoriesLabel->setPopup( mCatPopup ); | 207 | mCategoriesLabel->setPopup( mCatPopup ); |
208 | //mCategoriesLabel->setFrameStyle(QFrame::Panel|QFrame::Sunken); | 208 | //mCategoriesLabel->setFrameStyle(QFrame::Panel|QFrame::Sunken); |
209 | categoriesLayout->addWidget(mCategoriesLabel,1); | 209 | categoriesLayout->addWidget(mCategoriesLabel,1); |
210 | } | 210 | } |
211 | 211 | ||
212 | void KOEditorGeneral::initSecrecy(QWidget *parent, QBoxLayout *topLayout) | 212 | void KOEditorGeneral::initSecrecy(QWidget *parent, QBoxLayout *topLayout) |
213 | { | 213 | { |
214 | QBoxLayout *secrecyLayout = new QHBoxLayout( topLayout ); | 214 | QBoxLayout *secrecyLayout = new QHBoxLayout( topLayout ); |
215 | 215 | ||
216 | QLabel *secrecyLabel = new QLabel(i18n("Access:"),parent); | 216 | QLabel *secrecyLabel = new QLabel(i18n("Access:"),parent); |
217 | mCancelBox = new QCheckBox ( i18n("Cancelled"), parent); | 217 | mCancelBox = new QCheckBox ( i18n("Cancelled"), parent); |
218 | secrecyLayout->addWidget(mCancelBox); | 218 | secrecyLayout->addWidget(mCancelBox); |
219 | secrecyLayout->addWidget(secrecyLabel); | 219 | secrecyLayout->addWidget(secrecyLabel); |
220 | 220 | ||
221 | mSecrecyCombo = new QComboBox(parent); | 221 | mSecrecyCombo = new QComboBox(parent); |
222 | mSecrecyCombo->insertStringList(Incidence::secrecyList()); | 222 | mSecrecyCombo->insertStringList(Incidence::secrecyList()); |
223 | secrecyLayout->addWidget(mSecrecyCombo); | 223 | secrecyLayout->addWidget(mSecrecyCombo); |
224 | } | 224 | } |
225 | 225 | ||
226 | void KOEditorGeneral::initDescription(QWidget *parent,QBoxLayout *topLayout) | 226 | void KOEditorGeneral::initDescription(QWidget *parent,QBoxLayout *topLayout) |
227 | { | 227 | { |
228 | mDescriptionEdit = new KTextEdit(parent); | 228 | mDescriptionEdit = new KTextEdit(parent); |
229 | mDescriptionEdit->setFont(KOPrefs::instance()->mEditBoxFont ); | 229 | mDescriptionEdit->setFont(KOPrefs::instance()->mEditBoxFont ); |
230 | mDescriptionEdit->append(""); | 230 | mDescriptionEdit->append(""); |
231 | mDescriptionEdit->setReadOnly(false); | 231 | mDescriptionEdit->setReadOnly(false); |
232 | mDescriptionEdit->setOverwriteMode(false); | 232 | mDescriptionEdit->setOverwriteMode(false); |
233 | mDescriptionEdit->setWordWrap( KTextEdit::WidgetWidth ); | 233 | mDescriptionEdit->setWordWrap( KTextEdit::WidgetWidth ); |
234 | topLayout->addWidget(mDescriptionEdit); | 234 | topLayout->addWidget(mDescriptionEdit); |
235 | #ifndef DESKTOP_VERSION | 235 | #ifndef DESKTOP_VERSION |
236 | QPEApplication::setStylusOperation( mDescriptionEdit, QPEApplication::RightOnHold ); | 236 | QPEApplication::setStylusOperation( mDescriptionEdit, QPEApplication::RightOnHold ); |
237 | #endif | 237 | #endif |
238 | 238 | ||
239 | } | 239 | } |
240 | 240 | ||
241 | void KOEditorGeneral::initAlarm(QWidget *parent,QBoxLayout *topLayout) | 241 | void KOEditorGeneral::initAlarm(QWidget *parent,QBoxLayout *topLayout) |
242 | { | 242 | { |
243 | QBoxLayout *alarmLayout = new QHBoxLayout(topLayout); | 243 | QBoxLayout *alarmLayout = new QHBoxLayout(topLayout); |
244 | 244 | ||
245 | //mAlarmBell = new QLabel(parent); | 245 | //mAlarmBell = new QLabel(parent); |
246 | //mAlarmBell->setPixmap(SmallIcon("bell")); | 246 | //mAlarmBell->setPixmap(SmallIcon("bell")); |
247 | //alarmLayout->addWidget(mAlarmBell); | 247 | //alarmLayout->addWidget(mAlarmBell); |
248 | if ( QApplication::desktop()->width() < 320 ) | 248 | if ( QApplication::desktop()->width() < 320 ) |
249 | mAlarmButton = new QCheckBox(i18n("Rem."),parent); | 249 | mAlarmButton = new QCheckBox(i18n("Rem."),parent); |
250 | else | 250 | else |
251 | mAlarmButton = new QCheckBox(i18n("Reminder:"),parent); | 251 | mAlarmButton = new QCheckBox(i18n("Reminder:"),parent); |
252 | 252 | ||
253 | connect(mAlarmButton, SIGNAL(toggled(bool)), SLOT(enableAlarmEdit(bool))); | 253 | connect(mAlarmButton, SIGNAL(toggled(bool)), SLOT(enableAlarmEdit(bool))); |
254 | alarmLayout->addWidget(mAlarmButton); | 254 | alarmLayout->addWidget(mAlarmButton); |
255 | 255 | ||
256 | mAlarmTimeEdit = new QSpinBox ( 0, 9999, 1, parent, "mAlarmTimeEdit " ) ; | 256 | mAlarmTimeEdit = new QSpinBox ( 0, 9999, 1, parent, "mAlarmTimeEdit " ) ; |
257 | mAlarmTimeEdit->setButtonSymbols( QSpinBox::PlusMinus ); | 257 | mAlarmTimeEdit->setButtonSymbols( QSpinBox::PlusMinus ); |
258 | alarmLayout->addWidget(mAlarmTimeEdit); | 258 | alarmLayout->addWidget(mAlarmTimeEdit); |
259 | mAlarmIncrCombo = new QComboBox(false, parent); | 259 | mAlarmIncrCombo = new QComboBox(false, parent); |
260 | if ( QApplication::desktop()->width() < 320 ) { | 260 | if ( QApplication::desktop()->width() < 320 ) { |
261 | mAlarmIncrCombo->insertItem(i18n("min")); | 261 | mAlarmIncrCombo->insertItem(i18n("min")); |
262 | mAlarmIncrCombo->insertItem(i18n("hou")); | 262 | mAlarmIncrCombo->insertItem(i18n("hou")); |
263 | mAlarmIncrCombo->insertItem(i18n("day")); | 263 | mAlarmIncrCombo->insertItem(i18n("day")); |
264 | mAlarmTimeEdit->setMaximumWidth( mAlarmTimeEdit->sizeHint().width() ); | 264 | mAlarmTimeEdit->setMaximumWidth( mAlarmTimeEdit->sizeHint().width() ); |
265 | mAlarmIncrCombo->setMaximumWidth( mAlarmIncrCombo->sizeHint().width() ); | 265 | mAlarmIncrCombo->setMaximumWidth( mAlarmIncrCombo->sizeHint().width() ); |
266 | } else { | 266 | } else { |
267 | mAlarmIncrCombo->insertItem(i18n("minute(s)")); | 267 | mAlarmIncrCombo->insertItem(i18n("minute(s)")); |
268 | mAlarmIncrCombo->insertItem(i18n("hour(s)")); | 268 | mAlarmIncrCombo->insertItem(i18n("hour(s)")); |
269 | mAlarmIncrCombo->insertItem(i18n("day(s)")); | 269 | mAlarmIncrCombo->insertItem(i18n("day(s)")); |
270 | } | 270 | } |
271 | 271 | ||
272 | // mAlarmIncrCombo->setMinimumHeight(20); | 272 | // mAlarmIncrCombo->setMinimumHeight(20); |
273 | alarmLayout->addWidget(mAlarmIncrCombo); | 273 | alarmLayout->addWidget(mAlarmIncrCombo); |
274 | mAlarmSoundButton = new QPushButton(parent); | 274 | mAlarmSoundButton = new QPushButton(parent); |
275 | mAlarmSoundButton->setPixmap(SmallIcon("playsound")); | 275 | mAlarmSoundButton->setPixmap(SmallIcon("playsound")); |
276 | mAlarmSoundButton->setToggleButton(true); | 276 | mAlarmSoundButton->setToggleButton(true); |
277 | QToolTip::add(mAlarmSoundButton, i18n("No sound set")); | 277 | QToolTip::add(mAlarmSoundButton, i18n("No sound set")); |
278 | connect(mAlarmSoundButton, SIGNAL(clicked()), SLOT(pickAlarmSound())); | 278 | connect(mAlarmSoundButton, SIGNAL(clicked()), SLOT(pickAlarmSound())); |
279 | alarmLayout->addWidget(mAlarmSoundButton); | 279 | alarmLayout->addWidget(mAlarmSoundButton); |
280 | 280 | ||
281 | mAlarmProgramButton = new QPushButton(parent); | 281 | mAlarmProgramButton = new QPushButton(parent); |
282 | mAlarmProgramButton->setPixmap(SmallIcon("run")); | 282 | mAlarmProgramButton->setPixmap(SmallIcon("run")); |
283 | mAlarmProgramButton->setToggleButton(true); | 283 | mAlarmProgramButton->setToggleButton(true); |
284 | QToolTip::add(mAlarmProgramButton, i18n("No program set")); | 284 | QToolTip::add(mAlarmProgramButton, i18n("No program set")); |
285 | connect(mAlarmProgramButton, SIGNAL(clicked()), SLOT(pickAlarmProgram())); | 285 | connect(mAlarmProgramButton, SIGNAL(clicked()), SLOT(pickAlarmProgram())); |
286 | alarmLayout->addWidget(mAlarmProgramButton); | 286 | alarmLayout->addWidget(mAlarmProgramButton); |
287 | mAlarmSoundButton->setMaximumWidth( mAlarmSoundButton->sizeHint().width() + 4 ); | 287 | mAlarmSoundButton->setMaximumWidth( mAlarmSoundButton->sizeHint().width() + 4 ); |
288 | mAlarmProgramButton->setMaximumWidth(mAlarmProgramButton->sizeHint().width() + 4 ); | 288 | mAlarmProgramButton->setMaximumWidth(mAlarmProgramButton->sizeHint().width() + 4 ); |
289 | // if ( KOPrefs::instance()->mCompactDialogs ) { | 289 | // if ( KOPrefs::instance()->mCompactDialogs ) { |
290 | // mAlarmSoundButton->hide(); | 290 | // mAlarmSoundButton->hide(); |
291 | // mAlarmProgramButton->hide(); | 291 | // mAlarmProgramButton->hide(); |
292 | // } | 292 | // } |
293 | } | 293 | } |
294 | 294 | ||
295 | void KOEditorGeneral::pickAlarmSound() | 295 | void KOEditorGeneral::pickAlarmSound() |
296 | { | 296 | { |
297 | 297 | ||
298 | //qDebug("KOEditorGeneral::pickAlarmSound() %d",mAlarmSoundButton->isOn() ); | 298 | //qDebug("KOEditorGeneral::pickAlarmSound() %d",mAlarmSoundButton->isOn() ); |
299 | 299 | ||
300 | bool oldState = mAlarmSoundButton->isOn(); | 300 | bool oldState = mAlarmSoundButton->isOn(); |
301 | 301 | ||
302 | QString fileName(KFileDialog::getOpenFileName(mAlarmSound, | 302 | QString fileName(KFileDialog::getOpenFileName(mAlarmSound, |
303 | i18n("*.wav|Wav Files"), 0)); | 303 | i18n("*.wav|Wav Files"), 0)); |
304 | if (!fileName.isEmpty()) { | 304 | if (!fileName.isEmpty()) { |
305 | mAlarmSound = fileName; | 305 | mAlarmSound = fileName; |
306 | QToolTip::remove(mAlarmSoundButton); | 306 | QToolTip::remove(mAlarmSoundButton); |
307 | QString dispStr = i18n("Playing '%1'").arg(fileName); | 307 | QString dispStr = i18n("Playing '%1'").arg(fileName); |
308 | QToolTip::add(mAlarmSoundButton, dispStr); | 308 | QToolTip::add(mAlarmSoundButton, dispStr); |
309 | mAlarmProgramButton->setOn(false); | 309 | mAlarmProgramButton->setOn(false); |
310 | mAlarmSoundButton->setOn(true); | 310 | mAlarmSoundButton->setOn(true); |
311 | QToolTip::add(mAlarmProgramButton, i18n("No program set")); | 311 | QToolTip::add(mAlarmProgramButton, i18n("No program set")); |
312 | } else { | 312 | } else { |
313 | mAlarmProgramButton->setOn(oldState); | 313 | mAlarmProgramButton->setOn(oldState); |
314 | mAlarmSoundButton->setOn(!oldState); | 314 | mAlarmSoundButton->setOn(!oldState); |
315 | 315 | ||
316 | 316 | ||
317 | } | 317 | } |
318 | 318 | ||
319 | if (mAlarmProgramButton->isOn()) | 319 | if (mAlarmProgramButton->isOn()) |
320 | ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Proc.Al.: ") + getFittingPath(mAlarmProgram) ); | 320 | ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Proc.Al.: ") + getFittingPath(mAlarmProgram) ); |
321 | if ( mAlarmSoundButton->isOn()) | 321 | if ( mAlarmSoundButton->isOn()) |
322 | ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Audio Al.: ") + getFittingPath(mAlarmSound) ); | 322 | ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Audio Al.: ") + getFittingPath(mAlarmSound) ); |
323 | 323 | ||
324 | } | 324 | } |
325 | 325 | ||
326 | void KOEditorGeneral::pickAlarmProgram() | 326 | void KOEditorGeneral::pickAlarmProgram() |
327 | { | 327 | { |
328 | bool oldState = mAlarmProgramButton->isOn(); | 328 | bool oldState = mAlarmProgramButton->isOn(); |
329 | 329 | ||
330 | QString fileName(KFileDialog::getOpenFileName(mAlarmProgram,i18n("Procedure Alarm: ") , 0)); | 330 | QString fileName(KFileDialog::getOpenFileName(mAlarmProgram,i18n("Procedure Alarm: ") , 0)); |
331 | if (!fileName.isEmpty()) { | 331 | if (!fileName.isEmpty()) { |
332 | mAlarmProgram = fileName; | 332 | mAlarmProgram = fileName; |
333 | QToolTip::remove(mAlarmProgramButton); | 333 | QToolTip::remove(mAlarmProgramButton); |
334 | QString dispStr = i18n("Running '%1'").arg(fileName); | 334 | QString dispStr = i18n("Running '%1'").arg(fileName); |
335 | QToolTip::add(mAlarmProgramButton, dispStr); | 335 | QToolTip::add(mAlarmProgramButton, dispStr); |
336 | mAlarmSoundButton->setOn(false); | 336 | mAlarmSoundButton->setOn(false); |
337 | mAlarmProgramButton->setOn(true); | 337 | mAlarmProgramButton->setOn(true); |
338 | QToolTip::add(mAlarmSoundButton, i18n("No sound set")); | 338 | QToolTip::add(mAlarmSoundButton, i18n("No sound set")); |
339 | } else { | 339 | } else { |
340 | mAlarmProgramButton->setOn(!oldState); | 340 | mAlarmProgramButton->setOn(!oldState); |
341 | mAlarmSoundButton->setOn(oldState); | 341 | mAlarmSoundButton->setOn(oldState); |
342 | } | 342 | } |
343 | 343 | ||
344 | if (mAlarmProgramButton->isOn()) | 344 | if (mAlarmProgramButton->isOn()) |
345 | ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Proc.Al.: ") + getFittingPath(mAlarmProgram) ); | 345 | ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Proc.Al.: ") + getFittingPath(mAlarmProgram) ); |
346 | if ( mAlarmSoundButton->isOn()) | 346 | if ( mAlarmSoundButton->isOn()) |
347 | ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Audio Al.: ") + getFittingPath(mAlarmSound) ); | 347 | ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Audio Al.: ") + getFittingPath(mAlarmSound) ); |
348 | 348 | ||
349 | } | 349 | } |
350 | 350 | ||
351 | 351 | ||
352 | QString KOEditorGeneral::getFittingPath( const QString s ) | 352 | QString KOEditorGeneral::getFittingPath( const QString s ) |
353 | { | 353 | { |
354 | int maxlen = 50; | 354 | int maxlen = 50; |
355 | if ( QApplication::desktop()->width() < 640 ) { | 355 | if ( QApplication::desktop()->width() < 640 ) { |
356 | if ( QApplication::desktop()->width() < 320 ) | 356 | if ( QApplication::desktop()->width() < 320 ) |
357 | maxlen = 22; | 357 | maxlen = 22; |
358 | else | 358 | else |
359 | maxlen = 35; | 359 | maxlen = 35; |
360 | } | 360 | } |
361 | if ( s.length() > maxlen ) { | 361 | if ( s.length() > maxlen ) { |
362 | return "..."+s.right(maxlen -3); | 362 | return "..."+s.right(maxlen -3); |
363 | } | 363 | } |
364 | return s; | 364 | return s; |
365 | } | 365 | } |
366 | 366 | ||
367 | void KOEditorGeneral::enableAlarmEdit(bool enable) | 367 | void KOEditorGeneral::enableAlarmEdit(bool enable) |
368 | { | 368 | { |
369 | if ( enable ) { | 369 | if ( enable ) { |
370 | if (!mAlarmProgramButton->isOn() && !mAlarmSoundButton->isOn()) { | 370 | if (!mAlarmProgramButton->isOn() && !mAlarmSoundButton->isOn()) { |
371 | mAlarmSoundButton->setOn( true ); | 371 | mAlarmSoundButton->setOn( true ); |
372 | if ( mAlarmSound.isEmpty() ) | 372 | if ( mAlarmSound.isEmpty() ) |
373 | mAlarmSound = KOPrefs::instance()->mDefaultAlarmFile; | 373 | mAlarmSound = KOPrefs::instance()->mDefaultAlarmFile; |
374 | else { | 374 | else { |
375 | if ( ! QFile::exists( mAlarmSound ) ) | 375 | if ( ! QFile::exists( mAlarmSound ) ) |
376 | mAlarmSound = KOPrefs::instance()->mDefaultAlarmFile; | 376 | mAlarmSound = KOPrefs::instance()->mDefaultAlarmFile; |
377 | } | 377 | } |
378 | } | 378 | } |
379 | } | 379 | } |
380 | ((QWidget*)parent())->topLevelWidget()->setCaption(mAlarmMessage); | 380 | ((QWidget*)parent())->topLevelWidget()->setCaption(mAlarmMessage); |
381 | mAlarmTimeEdit->setEnabled(enable); | 381 | mAlarmTimeEdit->setEnabled(enable); |
382 | mAlarmSoundButton->setEnabled(enable); | 382 | mAlarmSoundButton->setEnabled(enable); |
383 | mAlarmProgramButton->setEnabled(enable); | 383 | mAlarmProgramButton->setEnabled(enable); |
384 | mAlarmIncrCombo->setEnabled(enable); | 384 | mAlarmIncrCombo->setEnabled(enable); |
385 | } | 385 | } |
386 | 386 | ||
387 | void KOEditorGeneral::disableAlarmEdit(bool disable) | 387 | void KOEditorGeneral::disableAlarmEdit(bool disable) |
388 | { | 388 | { |
389 | enableAlarmEdit( !disable ); | 389 | enableAlarmEdit( !disable ); |
390 | } | 390 | } |
391 | 391 | ||
392 | void KOEditorGeneral::enableAlarm( bool enable ) | 392 | void KOEditorGeneral::enableAlarm( bool enable ) |
393 | { | 393 | { |
394 | enableAlarmEdit( enable ); | 394 | enableAlarmEdit( enable ); |
395 | } | 395 | } |
396 | 396 | ||
397 | void KOEditorGeneral::alarmDisable(bool disable) | 397 | void KOEditorGeneral::alarmDisable(bool disable) |
398 | { | 398 | { |
399 | if (!disable) { | 399 | if (!disable) { |
400 | //mAlarmBell->setEnabled(true); | 400 | //mAlarmBell->setEnabled(true); |
401 | mAlarmButton->setEnabled(true); | 401 | mAlarmButton->setEnabled(true); |
402 | } else { | 402 | } else { |
403 | //mAlarmBell->setEnabled(false); | 403 | //mAlarmBell->setEnabled(false); |
404 | mAlarmButton->setEnabled(false); | 404 | mAlarmButton->setEnabled(false); |
405 | mAlarmButton->setChecked(false); | 405 | mAlarmButton->setChecked(false); |
406 | mAlarmTimeEdit->setEnabled(false); | 406 | mAlarmTimeEdit->setEnabled(false); |
407 | mAlarmSoundButton->setEnabled(false); | 407 | mAlarmSoundButton->setEnabled(false); |
408 | mAlarmProgramButton->setEnabled(false); | 408 | mAlarmProgramButton->setEnabled(false); |
409 | mAlarmIncrCombo->setEnabled(false); | 409 | mAlarmIncrCombo->setEnabled(false); |
410 | } | 410 | } |
411 | } | 411 | } |
412 | 412 | ||
413 | void KOEditorGeneral::setCategories(const QString &str) | 413 | void KOEditorGeneral::setCategories(const QString &str) |
414 | { | 414 | { |
415 | QString tt = str; | 415 | QString tt = str; |
416 | QToolTip::add( mCategoriesLabel, i18n("<b>Click here to edit categories: </b>") +"<em>"+tt.replace( QRegExp(","),", ")+"</em>"); | 416 | QToolTip::add( mCategoriesLabel, i18n("<b>Click here to edit categories: </b>") +"<em>"+tt.replace( QRegExp(","),", ")+"</em>"); |
417 | mCategoriesLabel->setText(str); | 417 | mCategoriesLabel->setText(str); |
418 | } | 418 | } |
419 | 419 | ||
420 | void KOEditorGeneral::setDefaults(bool allDay) | 420 | void KOEditorGeneral::setDefaults(bool allDay) |
421 | { | 421 | { |
422 | #if 0 | 422 | #if 0 |
423 | mOwnerLabel->setText(i18n("Owner: ") + KOPrefs::instance()->fullName()); | 423 | mOwnerLabel->setText(i18n("Owner: ") + KOPrefs::instance()->fullName()); |
424 | #endif | 424 | #endif |
425 | 425 | ||
426 | mAlarmMessage = i18n("Edit new item"); | 426 | mAlarmMessage = i18n("Edit new item"); |
427 | enableAlarmEdit( !allDay ); | 427 | enableAlarmEdit( !allDay ); |
428 | 428 | ||
429 | // TODO: Implement a KPrefsComboItem to solve this in a clean way. | 429 | // TODO: Implement a KPrefsComboItem to solve this in a clean way. |
430 | int alarmTime; | 430 | int alarmTime; |
431 | int a[] = { 1,5,10,15,30,60,180, 1440 }; | 431 | int a[] = { 1,5,10,15,30,60,180, 1440 }; |
432 | int index = KOPrefs::instance()->mAlarmTime; | 432 | int index = KOPrefs::instance()->mAlarmTime; |
433 | if (index < 0 || index > 7) { | 433 | if (index < 0 || index > 7) { |
434 | alarmTime = 15; | 434 | alarmTime = 15; |
435 | } else { | 435 | } else { |
436 | alarmTime = a[index]; | 436 | alarmTime = a[index]; |
437 | } | 437 | } |
438 | mAlarmButton ->setChecked( false ); | 438 | mAlarmButton ->setChecked( false ); |
439 | mAlarmTimeEdit->setValue(alarmTime); | 439 | mAlarmTimeEdit->setValue(alarmTime); |
440 | mAlarmIncrCombo->setCurrentItem(0); | 440 | mAlarmIncrCombo->setCurrentItem(0); |
441 | enableAlarmEdit( false ); | 441 | enableAlarmEdit( false ); |
442 | //alarmDisable (false); | 442 | //alarmDisable (false); |
443 | mSecrecyCombo->setCurrentItem(Incidence::SecrecyPublic); | 443 | mSecrecyCombo->setCurrentItem(Incidence::SecrecyPublic); |
444 | mCancelBox->setChecked( false ); | 444 | mCancelBox->setChecked( false ); |
445 | mSummaryEdit->setEditText(""); | 445 | mSummaryEdit->setEditText(""); |
446 | mLocationEdit->setEditText(""); | 446 | mLocationEdit->setEditText(""); |
447 | mDescriptionEdit->setText(""); | 447 | mDescriptionEdit->setText(""); |
448 | mAlarmSound = KOPrefs::instance()->mDefaultAlarmFile; | 448 | mAlarmSound = KOPrefs::instance()->mDefaultAlarmFile; |
449 | setCategories(""); | 449 | setCategories(""); |
450 | fillCalCombo(); | 450 | fillCalCombo(); |
451 | } | 451 | } |
452 | void KOEditorGeneral::setSecrecy( int num ) | 452 | void KOEditorGeneral::setSecrecy( int num ) |
453 | { | 453 | { |
454 | mSecrecyCombo->setCurrentItem(num); | 454 | mSecrecyCombo->setCurrentItem(num); |
455 | } | 455 | } |
456 | void KOEditorGeneral::fillCalCombo( int setToID ) | 456 | void KOEditorGeneral::fillCalCombo( int setToID ) |
457 | { | 457 | { |
458 | mCalendarBox->clear(); | 458 | mCalendarBox->clear(); |
459 | KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first(); | 459 | KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first(); |
460 | int std = 0; | 460 | int std = 0; |
461 | int count = 0; | 461 | int count = 0; |
462 | while ( kkf ) { | 462 | while ( kkf ) { |
463 | if ( !kkf->mErrorOnLoad &&! kkf->isReadOnly ) { | 463 | if ( !kkf->mErrorOnLoad &&! kkf->isReadOnly ) { |
464 | if ( setToID ) { | 464 | if ( setToID ) { |
465 | if ( kkf->mCalNumber == setToID ) | 465 | if ( kkf->mCalNumber == setToID ) |
466 | std = count; | 466 | std = count; |
467 | } else { | 467 | } else { |
468 | if ( kkf->isStandard ) { | 468 | if ( kkf->isStandard ) { |
469 | std = count; | 469 | std = count; |
470 | } | 470 | } |
471 | } | 471 | } |
472 | ++count; | 472 | ++count; |
473 | mCalendarBox->insertItem( kkf->mName ); | 473 | mCalendarBox->insertItem( kkf->mName ); |
474 | } | 474 | } |
475 | kkf = KOPrefs::instance()->mCalendars.next(); | 475 | kkf = KOPrefs::instance()->mCalendars.next(); |
476 | } | 476 | } |
477 | mCalendarBox->setCurrentItem( std ); | 477 | mCalendarBox->setCurrentItem( std ); |
478 | if ( KOPrefs::instance()->mCalendars.count() == 1 ) | 478 | if ( KOPrefs::instance()->mCalendars.count() == 1 ) |
479 | mCalendarBox->hide(); | 479 | mCalendarBox->hide(); |
480 | else | 480 | else |
481 | mCalendarBox->show(); | 481 | mCalendarBox->show(); |
482 | 482 | ||
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) |
496 | { | 490 | { |
497 | fillCalCombo( event->calID() ); | 491 | fillCalCombo( event->calID() ); |
498 | mAlarmMessage = event->summary(); | 492 | mAlarmMessage = event->summary(); |
499 | if ( ! event->location().isEmpty() ) | 493 | if ( ! event->location().isEmpty() ) |
500 | mAlarmMessage += " ("+event->location()+")"; | 494 | mAlarmMessage += " ("+event->location()+")"; |
501 | mAlarmIncrCombo->setCurrentItem(0); | 495 | mAlarmIncrCombo->setCurrentItem(0); |
502 | mSummaryEdit->setEditText(event->summary()); | 496 | mSummaryEdit->setEditText(event->summary()); |
503 | mLocationEdit->setEditText(event->location()); | 497 | mLocationEdit->setEditText(event->location()); |
504 | mDescriptionEdit->setText(event->description()); | 498 | mDescriptionEdit->setText(event->description()); |
505 | 499 | ||
506 | #if 0 | 500 | #if 0 |
507 | // organizer information | 501 | // organizer information |
508 | mOwnerLabel->setText(i18n("Owner: ") + event->organizer()); | 502 | mOwnerLabel->setText(i18n("Owner: ") + event->organizer()); |
509 | #endif | 503 | #endif |
510 | 504 | ||
511 | enableAlarmEdit( event->isAlarmEnabled() ); | 505 | enableAlarmEdit( event->isAlarmEnabled() ); |
512 | //qDebug("KOEditorGeneral::readIncidence(Incidence *event) "); | 506 | //qDebug("KOEditorGeneral::readIncidence(Incidence *event) "); |
513 | if(!event->isAlarmEnabled()) { | 507 | if(!event->isAlarmEnabled()) { |
514 | // TODO: Implement a KPrefsComboItem to solve this in a clean way. | 508 | // TODO: Implement a KPrefsComboItem to solve this in a clean way. |
515 | int alarmTime; | 509 | int alarmTime; |
516 | int a[] = { 1,5,10,15,30,60,180, 1440 }; | 510 | int a[] = { 1,5,10,15,30,60,180, 1440 }; |
517 | int index = KOPrefs::instance()->mAlarmTime; | 511 | int index = KOPrefs::instance()->mAlarmTime; |
518 | if (index < 0 || index > 7) { | 512 | if (index < 0 || index > 7) { |
519 | alarmTime = 15; | 513 | alarmTime = 15; |
520 | } else { | 514 | } else { |
521 | alarmTime = a[index]; | 515 | alarmTime = a[index]; |
522 | } | 516 | } |
523 | mAlarmTimeEdit->setValue(alarmTime); | 517 | mAlarmTimeEdit->setValue(alarmTime); |
524 | } | 518 | } |
525 | mAlarmButton->setChecked( event->isAlarmEnabled() ); | 519 | mAlarmButton->setChecked( event->isAlarmEnabled() ); |
526 | mSecrecyCombo->setCurrentItem(event->secrecy()); | 520 | mSecrecyCombo->setCurrentItem(event->secrecy()); |
527 | mCancelBox->setChecked( event->cancelled() ); | 521 | mCancelBox->setChecked( event->cancelled() ); |
528 | mAlarmProgramButton->setOn(false); | 522 | mAlarmProgramButton->setOn(false); |
529 | mAlarmSoundButton->setOn(false); | 523 | mAlarmSoundButton->setOn(false); |
530 | 524 | ||
531 | // set up alarm stuff | 525 | // set up alarm stuff |
532 | QPtrList<Alarm> alarms = event->alarms(); | 526 | QPtrList<Alarm> alarms = event->alarms(); |
533 | Alarm* alarm; | 527 | Alarm* alarm; |
534 | mAlarmIncrCombo->setCurrentItem(0); | 528 | mAlarmIncrCombo->setCurrentItem(0); |
535 | for ( alarm = alarms.first(); alarm; alarm = alarms.next() ) { | 529 | for ( alarm = alarms.first(); alarm; alarm = alarms.next() ) { |
536 | int offset; | 530 | int offset; |
537 | if ( alarm->hasTime() ) { | 531 | if ( alarm->hasTime() ) { |
538 | QDateTime t = alarm->time(); | 532 | QDateTime t = alarm->time(); |
539 | offset = event->dtStart().secsTo( t ); | 533 | offset = event->dtStart().secsTo( t ); |
540 | } else { | 534 | } else { |
541 | offset = alarm->startOffset().asSeconds(); | 535 | offset = alarm->startOffset().asSeconds(); |
542 | } | 536 | } |
543 | if ( offset != 0 ) { | 537 | if ( offset != 0 ) { |
544 | offset = offset / -60; // make minutes | 538 | offset = offset / -60; // make minutes |
545 | if (offset % 60 == 0) { // divides evenly into hours? | 539 | if (offset % 60 == 0) { // divides evenly into hours? |
546 | offset = offset / 60; | 540 | offset = offset / 60; |
547 | mAlarmIncrCombo->setCurrentItem(1); | 541 | mAlarmIncrCombo->setCurrentItem(1); |
548 | if (offset % 24 == 0) { // divides evenly into days? | 542 | if (offset % 24 == 0) { // divides evenly into days? |
549 | offset = offset / 24; | 543 | offset = offset / 24; |
550 | mAlarmIncrCombo->setCurrentItem(2); | 544 | mAlarmIncrCombo->setCurrentItem(2); |
551 | } | 545 | } |
552 | } | 546 | } |
553 | } | 547 | } |
554 | mAlarmTimeEdit->setValue( offset ); | 548 | mAlarmTimeEdit->setValue( offset ); |
555 | if (alarm->type() == Alarm::Procedure) { | 549 | if (alarm->type() == Alarm::Procedure) { |
556 | 550 | ||
557 | mAlarmProgram = alarm->programFile(); | 551 | mAlarmProgram = alarm->programFile(); |
558 | mAlarmProgramButton->setOn(true); | 552 | mAlarmProgramButton->setOn(true); |
559 | QString dispStr = i18n("Running '%1'").arg(mAlarmProgram); | 553 | QString dispStr = i18n("Running '%1'").arg(mAlarmProgram); |
560 | QToolTip::add(mAlarmProgramButton, dispStr); | 554 | QToolTip::add(mAlarmProgramButton, dispStr); |
561 | } | 555 | } |
562 | else if (alarm->type() == Alarm::Audio) { | 556 | else if (alarm->type() == Alarm::Audio) { |
563 | mAlarmSound = alarm->audioFile(); | 557 | mAlarmSound = alarm->audioFile(); |
564 | if ( ! QFile::exists( mAlarmSound ) ) | 558 | if ( ! QFile::exists( mAlarmSound ) ) |
565 | mAlarmSound = KOPrefs::instance()->mDefaultAlarmFile; | 559 | mAlarmSound = KOPrefs::instance()->mDefaultAlarmFile; |
566 | mAlarmSoundButton->setOn(true); | 560 | mAlarmSoundButton->setOn(true); |
567 | QString dispStr = i18n("Playing '%1'").arg(mAlarmSound); | 561 | QString dispStr = i18n("Playing '%1'").arg(mAlarmSound); |
568 | QToolTip::add(mAlarmSoundButton, dispStr); | 562 | QToolTip::add(mAlarmSoundButton, dispStr); |
569 | } | 563 | } |
570 | mAlarmButton->setChecked(alarm->enabled()); | 564 | mAlarmButton->setChecked(alarm->enabled()); |
571 | enableAlarmEdit( alarm->enabled() ); | 565 | enableAlarmEdit( alarm->enabled() ); |
572 | //qDebug("nableAlarmEdit( alarm->enabled() )********* "); | 566 | //qDebug("nableAlarmEdit( alarm->enabled() )********* "); |
573 | // TODO: Deal with multiple alarms | 567 | // TODO: Deal with multiple alarms |
574 | break; // For now, stop after the first alarm | 568 | break; // For now, stop after the first alarm |
575 | } | 569 | } |
576 | 570 | ||
577 | setCategories(event->categoriesStr()); | 571 | setCategories(event->categoriesStr()); |
578 | } | 572 | } |
579 | 573 | ||
580 | void KOEditorGeneral::writeIncidence(Incidence *event) | 574 | void KOEditorGeneral::writeIncidence(Incidence *event) |
581 | { | 575 | { |
582 | // kdDebug() << "KOEditorGeneral::writeEvent()" << endl; | 576 | // kdDebug() << "KOEditorGeneral::writeEvent()" << endl; |
583 | mLocationEdit->save(KOLocationBox::LOCATION); | 577 | mLocationEdit->save(KOLocationBox::LOCATION); |
584 | event->setSummary(mSummaryEdit->currentText()); | 578 | event->setSummary(mSummaryEdit->currentText()); |
585 | event->setLocation(mLocationEdit->currentText()); | 579 | event->setLocation(mLocationEdit->currentText()); |
586 | event->setDescription(mDescriptionEdit->text()); | 580 | event->setDescription(mDescriptionEdit->text()); |
587 | event->setCategories(mCategoriesLabel->text()); | 581 | event->setCategories(mCategoriesLabel->text()); |
588 | event->setSecrecy(mSecrecyCombo->currentItem()); | 582 | event->setSecrecy(mSecrecyCombo->currentItem()); |
589 | event->setCancelled(mCancelBox->isChecked() );; | 583 | event->setCancelled(mCancelBox->isChecked() );; |
590 | // alarm stuff | 584 | // alarm stuff |
591 | if (mAlarmButton->isChecked()) { | 585 | if (mAlarmButton->isChecked()) { |
592 | if (event->alarms().count() == 0) | 586 | if (event->alarms().count() == 0) |
593 | event->newAlarm(); | 587 | event->newAlarm(); |
594 | QPtrList<Alarm> alarms = event->alarms(); | 588 | QPtrList<Alarm> alarms = event->alarms(); |
595 | Alarm *alarm; | 589 | Alarm *alarm; |
596 | for (alarm = alarms.first(); alarm; alarm = alarms.next() ) { | 590 | for (alarm = alarms.first(); alarm; alarm = alarms.next() ) { |
597 | alarm->setEnabled(true); | 591 | alarm->setEnabled(true); |
598 | int j = mAlarmTimeEdit->value()* -60; | 592 | int j = mAlarmTimeEdit->value()* -60; |
599 | if (mAlarmIncrCombo->currentItem() == 1) | 593 | if (mAlarmIncrCombo->currentItem() == 1) |
600 | j = j * 60; | 594 | j = j * 60; |
601 | else if (mAlarmIncrCombo->currentItem() == 2) | 595 | else if (mAlarmIncrCombo->currentItem() == 2) |
602 | j = j * (60 * 24); | 596 | j = j * (60 * 24); |
603 | alarm->setStartOffset( j ); | 597 | alarm->setStartOffset( j ); |
604 | 598 | ||
605 | if (!mAlarmProgram.isEmpty() && mAlarmProgramButton->isOn()) { | 599 | if (!mAlarmProgram.isEmpty() && mAlarmProgramButton->isOn()) { |
606 | alarm->setProcedureAlarm(mAlarmProgram); | 600 | alarm->setProcedureAlarm(mAlarmProgram); |
607 | } | 601 | } |
608 | else if (!mAlarmSound.isEmpty() && mAlarmSoundButton->isOn()) | 602 | else if (!mAlarmSound.isEmpty() && mAlarmSoundButton->isOn()) |
609 | alarm->setAudioAlarm(mAlarmSound); | 603 | alarm->setAudioAlarm(mAlarmSound); |
610 | else | 604 | else |
611 | alarm->setType(Alarm::Invalid); | 605 | alarm->setType(Alarm::Invalid); |
612 | //alarm->setAudioAlarm("default"); | 606 | //alarm->setAudioAlarm("default"); |
613 | // TODO: Deal with multiple alarms | 607 | // TODO: Deal with multiple alarms |
614 | break; // For now, stop after the first alarm | 608 | break; // For now, stop after the first alarm |
615 | } | 609 | } |
616 | } else { | 610 | } else { |
617 | Alarm* alarm = event->alarms().first(); | 611 | Alarm* alarm = event->alarms().first(); |
618 | if ( alarm ) { | 612 | if ( alarm ) { |
619 | alarm->setEnabled(false); | 613 | alarm->setEnabled(false); |
620 | alarm->setType(Alarm::Invalid); | 614 | alarm->setType(Alarm::Invalid); |
621 | } | 615 | } |
622 | } | 616 | } |
623 | event->setCalID( getCalendarID() ); | 617 | event->setCalID( getCalendarID() ); |
624 | } | 618 | } |
diff --git a/korganizer/kojournalview.cpp b/korganizer/kojournalview.cpp index 9b0e748..0523954 100644 --- a/korganizer/kojournalview.cpp +++ b/korganizer/kojournalview.cpp | |||
@@ -1,235 +1,237 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of KOrganizer. | 2 | This file is part of KOrganizer. |
3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> | 3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> |
4 | 4 | ||
5 | This program is free software; you can redistribute it and/or modify | 5 | This program is free software; you can redistribute it and/or modify |
6 | it under the terms of the GNU General Public License as published by | 6 | it under the terms of the GNU General Public License as published by |
7 | the Free Software Foundation; either version 2 of the License, or | 7 | the Free Software Foundation; either version 2 of the License, or |
8 | (at your option) any later version. | 8 | (at your option) any later version. |
9 | 9 | ||
10 | This program is distributed in the hope that it will be useful, | 10 | This program is distributed in the hope that it will be useful, |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
13 | GNU General Public License for more details. | 13 | GNU General Public License for more details. |
14 | 14 | ||
15 | You should have received a copy of the GNU General Public License | 15 | You should have received a copy of the GNU General Public License |
16 | along with this program; if not, write to the Free Software | 16 | along with this program; if not, write to the Free Software |
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
18 | 18 | ||
19 | As a special exception, permission is given to link this program | 19 | As a special exception, permission is given to link this program |
20 | with any edition of Qt, and distribute the resulting executable, | 20 | with any edition of Qt, and distribute the resulting executable, |
21 | without including the source code for Qt in the source distribution. | 21 | without including the source code for Qt in the source distribution. |
22 | */ | 22 | */ |
23 | 23 | ||
24 | // | 24 | // |
25 | // View of Journal entries | 25 | // View of Journal entries |
26 | 26 | ||
27 | #include <qlayout.h> | 27 | #include <qlayout.h> |
28 | #include <qscrollview.h> | 28 | #include <qscrollview.h> |
29 | #include <qpopupmenu.h> | 29 | #include <qpopupmenu.h> |
30 | #include <qhbox.h> | 30 | #include <qhbox.h> |
31 | #include <qpushbutton.h> | 31 | #include <qpushbutton.h> |
32 | #include <qlabel.h> | 32 | #include <qlabel.h> |
33 | #include <qpushbutton.h> | 33 | #include <qpushbutton.h> |
34 | #include <qapplication.h> | 34 | #include <qapplication.h> |
35 | 35 | ||
36 | #include <klocale.h> | 36 | #include <klocale.h> |
37 | #include <kdebug.h> | 37 | #include <kdebug.h> |
38 | #include "koprefs.h" | 38 | #include "koprefs.h" |
39 | #include <kglobal.h> | 39 | #include <kglobal.h> |
40 | 40 | ||
41 | #include <libkcal/calendar.h> | 41 | #include <libkcal/calendar.h> |
42 | 42 | ||
43 | #include "journalentry.h" | 43 | #include "journalentry.h" |
44 | 44 | ||
45 | #include "kojournalview.h" | 45 | #include "kojournalview.h" |
46 | using namespace KOrg; | 46 | using namespace KOrg; |
47 | 47 | ||
48 | KOJournalView::KOJournalView(Calendar *calendar, QWidget *parent, | 48 | KOJournalView::KOJournalView(Calendar *calendar, QWidget *parent, |
49 | const char *name) | 49 | const char *name) |
50 | : KOrg::BaseView(calendar, parent, name) | 50 | : KOrg::BaseView(calendar, parent, name) |
51 | { | 51 | { |
52 | mCalendar = calendar; | 52 | mCalendar = calendar; |
53 | QHBox * vb = new QHBox ( this ); | 53 | QHBox * vb = new QHBox ( this ); |
54 | QPushButton * newJournal = new QPushButton( vb ); | 54 | QPushButton * newJournal = new QPushButton( vb ); |
55 | QPixmap icon; | 55 | QPixmap icon; |
56 | if ( QApplication::desktop()->width() < 321 ) | 56 | if ( QApplication::desktop()->width() < 321 ) |
57 | icon = SmallIcon("ko16old"); | 57 | icon = SmallIcon("ko16old"); |
58 | else | 58 | else |
59 | icon = SmallIcon("ko24old"); | 59 | icon = SmallIcon("ko24old"); |
60 | newJournal->setPixmap (icon ) ; | 60 | newJournal->setPixmap (icon ) ; |
61 | int size = newJournal->sizeHint().height(); | 61 | int size = newJournal->sizeHint().height(); |
62 | newJournal->setFixedSize( size, size ); | 62 | newJournal->setFixedSize( size, size ); |
63 | mDateLabel = new QLabel ( vb ); | 63 | mDateLabel = new QLabel ( vb ); |
64 | mDateLabel->setMargin(1); | 64 | mDateLabel->setMargin(1); |
65 | mDateLabel->setAlignment(AlignCenter); | 65 | mDateLabel->setAlignment(AlignCenter); |
66 | QScrollView * sv = new QScrollView( this ); | 66 | QScrollView * sv = new QScrollView( this ); |
67 | QVBoxLayout * hbl = new QVBoxLayout( this ); | 67 | QVBoxLayout * hbl = new QVBoxLayout( this ); |
68 | hbl->addWidget( vb ); | 68 | hbl->addWidget( vb ); |
69 | hbl->addWidget( sv ); | 69 | hbl->addWidget( sv ); |
70 | parWid = new QWidget( sv->viewport() ); | 70 | parWid = new QWidget( sv->viewport() ); |
71 | sv->addChild(parWid); | 71 | sv->addChild(parWid); |
72 | sv->setResizePolicy( QScrollView:: AutoOneFit ); | 72 | sv->setResizePolicy( QScrollView:: AutoOneFit ); |
73 | mTopLayout = new QVBoxLayout(parWid); | 73 | mTopLayout = new QVBoxLayout(parWid); |
74 | connect( newJournal, SIGNAL( clicked() ), this , SLOT( newJournal() ) ); | 74 | connect( newJournal, SIGNAL( clicked() ), this , SLOT( newJournal() ) ); |
75 | getNewEntry(); | 75 | getNewEntry(); |
76 | } | 76 | } |
77 | 77 | ||
78 | KOJournalView::~KOJournalView() | 78 | KOJournalView::~KOJournalView() |
79 | { | 79 | { |
80 | } | 80 | } |
81 | 81 | ||
82 | int KOJournalView::currentDateCount() | 82 | int KOJournalView::currentDateCount() |
83 | { | 83 | { |
84 | return 0; | 84 | return 0; |
85 | } | 85 | } |
86 | JournalEntry* KOJournalView::getNewEntry() | 86 | JournalEntry* KOJournalView::getNewEntry() |
87 | { | 87 | { |
88 | JournalEntry* Entry = new JournalEntry(mCalendar,parWid); | 88 | JournalEntry* Entry = new JournalEntry(mCalendar,parWid); |
89 | jEntries.append( Entry ); | 89 | jEntries.append( Entry ); |
90 | mTopLayout->addWidget(Entry); | 90 | mTopLayout->addWidget(Entry); |
91 | Entry->setFont ( KOPrefs::instance()->mJornalViewFont ); | 91 | Entry->setFont ( KOPrefs::instance()->mJornalViewFont ); |
92 | connect ( Entry,SIGNAL(deleteJournal(Journal *) ),this ,SIGNAL(deleteJournal(Journal *) ) ) ; | 92 | connect ( Entry,SIGNAL(deleteJournal(Journal *) ),this ,SIGNAL(deleteJournal(Journal *) ) ) ; |
93 | connect ( Entry,SIGNAL(newJournal() ),this ,SLOT(newJournal() ) ) ; | 93 | connect ( Entry,SIGNAL(newJournal() ),this ,SLOT(newJournal() ) ) ; |
94 | connect ( Entry,SIGNAL(showJournalOnly( Journal * ) ),this ,SLOT(showOnly ( Journal* ) ) ) ; | 94 | connect ( Entry,SIGNAL(showJournalOnly( Journal * ) ),this ,SLOT(showOnly ( Journal* ) ) ) ; |
95 | return Entry; | 95 | return Entry; |
96 | } | 96 | } |
97 | 97 | ||
98 | QPtrList<Incidence> KOJournalView::selectedIncidences() | 98 | QPtrList<Incidence> KOJournalView::selectedIncidences() |
99 | { | 99 | { |
100 | QPtrList<Incidence> eventList; | 100 | QPtrList<Incidence> eventList; |
101 | 101 | ||
102 | return eventList; | 102 | return eventList; |
103 | } | 103 | } |
104 | void KOJournalView::updateConfig() | 104 | void KOJournalView::updateConfig() |
105 | { | 105 | { |
106 | JournalEntry* mEntry = jEntries.first(); | 106 | JournalEntry* mEntry = jEntries.first(); |
107 | while ( mEntry ) { | 107 | while ( mEntry ) { |
108 | mEntry->setFont ( KOPrefs::instance()->mJornalViewFont ); | 108 | mEntry->setFont ( KOPrefs::instance()->mJornalViewFont ); |
109 | mEntry = jEntries.next(); | 109 | mEntry = jEntries.next(); |
110 | } | 110 | } |
111 | } | 111 | } |
112 | void KOJournalView::updateView() | 112 | void KOJournalView::updateView() |
113 | { | 113 | { |
114 | JournalEntry* mEntry = jEntries.first(); | 114 | JournalEntry* mEntry = jEntries.first(); |
115 | while ( mEntry ) { | 115 | while ( mEntry ) { |
116 | mEntry->setFont ( KOPrefs::instance()->mJornalViewFont ); | 116 | mEntry->setFont ( KOPrefs::instance()->mJornalViewFont ); |
117 | mEntry = jEntries.next(); | 117 | mEntry = jEntries.next(); |
118 | } | 118 | } |
119 | showDates( mDate, QDate() ); | 119 | showDates( mDate, QDate() ); |
120 | } | 120 | } |
121 | void KOJournalView::checkModified() | 121 | void KOJournalView::checkModified() |
122 | { | 122 | { |
123 | flushView(); | 123 | flushView(); |
124 | } | 124 | } |
125 | void KOJournalView::flushView() | 125 | void KOJournalView::flushView() |
126 | { | 126 | { |
127 | static bool ff = false; | 127 | static bool ff = false; |
128 | if ( ff ) return; | 128 | if ( ff ) return; |
129 | ff = true; | 129 | ff = true; |
130 | JournalEntry* mEntry = jEntries.first(); | 130 | JournalEntry* mEntry = jEntries.first(); |
131 | while ( mEntry ) { | 131 | while ( mEntry ) { |
132 | mEntry->flushEntry(); | 132 | mEntry->flushEntry(); |
133 | mEntry = jEntries.next(); | 133 | mEntry = jEntries.next(); |
134 | } | 134 | } |
135 | ff = false; | 135 | ff = false; |
136 | } | 136 | } |
137 | 137 | ||
138 | void KOJournalView::clearList() | 138 | void KOJournalView::clearList() |
139 | { | 139 | { |
140 | JournalEntry* mEntry = jEntries.first(); | 140 | JournalEntry* mEntry = jEntries.first(); |
141 | while ( mEntry ) { | 141 | while ( mEntry ) { |
142 | mEntry->clear(); | 142 | mEntry->clear(); |
143 | mEntry = jEntries.next(); | 143 | mEntry = jEntries.next(); |
144 | } | 144 | } |
145 | } | 145 | } |
146 | void KOJournalView::newJournal() | 146 | void KOJournalView::newJournal() |
147 | { | 147 | { |
148 | //qDebug(" KOJournalView::newJournal()"); | 148 | //qDebug(" KOJournalView::newJournal()"); |
149 | flushView(); | 149 | flushView(); |
150 | Journal* mJournal = new Journal; | 150 | Journal* mJournal = new Journal; |
151 | mJournal->setDtStart(QDateTime(mDate,QTime(0,0,0))); | 151 | mJournal->setDtStart(QDateTime(mDate,QTime(0,0,0))); |
152 | mCalendar->addJournal(mJournal); | 152 | mCalendar->addJournal(mJournal); |
153 | showDates( mDate, QDate() ); | 153 | showDates( mDate, QDate() ); |
154 | } | 154 | } |
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() ); |
162 | return; | 162 | return; |
163 | } | 163 | } |
164 | QPtrList<Journal> jl; | 164 | QPtrList<Journal> jl; |
165 | jl.append ( j ); | 165 | jl.append ( j ); |
166 | showList( jl ); | 166 | showList( jl ); |
167 | JournalEntry* mEntry = jEntries.first(); | 167 | JournalEntry* mEntry = jEntries.first(); |
168 | mEntry->setShowOnly(); | 168 | mEntry->setShowOnly(); |
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(); |
176 | int iii = 0; | 176 | int iii = 0; |
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(); |
191 | } | 193 | } |
192 | ++iii; | 194 | ++iii; |
193 | } | 195 | } |
194 | while ( mEntry ) { | 196 | while ( mEntry ) { |
195 | mEntry->setDate(mDate); | 197 | mEntry->setDate(mDate); |
196 | mEntry->clear(); | 198 | mEntry->clear(); |
197 | if ( mEntry != firstEntry ) { | 199 | if ( mEntry != firstEntry ) { |
198 | mEntry->hide(); | 200 | mEntry->hide(); |
199 | mEntry->setVisibleMode( false ); | 201 | mEntry->setVisibleMode( false ); |
200 | } | 202 | } |
201 | else { | 203 | else { |
202 | mEntry->setVisibleMode( true ); | 204 | mEntry->setVisibleMode( true ); |
203 | mEntry->show(); | 205 | mEntry->show(); |
204 | } | 206 | } |
205 | mEntry = jEntries.next(); | 207 | mEntry = jEntries.next(); |
206 | } | 208 | } |
207 | } | 209 | } |
208 | 210 | ||
209 | void KOJournalView::showDates(const QDate &start, const QDate &) | 211 | void KOJournalView::showDates(const QDate &start, const QDate &) |
210 | { | 212 | { |
211 | mDate = start; | 213 | mDate = start; |
212 | mDateLabel->setText(KGlobal::locale()->formatDate(mDate)); | 214 | mDateLabel->setText(KGlobal::locale()->formatDate(mDate)); |
213 | QPtrList<Journal> jl = calendar()->journals4Date( start ); | 215 | QPtrList<Journal> jl = calendar()->journals4Date( start ); |
214 | showList( jl ); | 216 | showList( jl ); |
215 | } | 217 | } |
216 | 218 | ||
217 | void KOJournalView::showEvents(QPtrList<Event>) | 219 | void KOJournalView::showEvents(QPtrList<Event>) |
218 | { | 220 | { |
219 | // After new creation of list view no events are selected. | 221 | // After new creation of list view no events are selected. |
220 | // emit incidenceSelected( 0 ); | 222 | // emit incidenceSelected( 0 ); |
221 | } | 223 | } |
222 | 224 | ||
223 | void KOJournalView::changeEventDisplay(Event *, int /*action*/) | 225 | void KOJournalView::changeEventDisplay(Event *, int /*action*/) |
224 | { | 226 | { |
225 | updateView(); | 227 | updateView(); |
226 | } | 228 | } |
227 | 229 | ||
228 | void KOJournalView::keyPressEvent ( QKeyEvent * e ) | 230 | void KOJournalView::keyPressEvent ( QKeyEvent * e ) |
229 | { | 231 | { |
230 | //qDebug("keyPressEven "); | 232 | //qDebug("keyPressEven "); |
231 | if ( e->state() == Qt::ControlButton ) { | 233 | if ( e->state() == Qt::ControlButton ) { |
232 | if ( e->key () == Qt::Key_Right || e->key () == Qt::Key_Left ) | 234 | if ( e->key () == Qt::Key_Right || e->key () == Qt::Key_Left ) |
233 | e->ignore(); | 235 | e->ignore(); |
234 | } | 236 | } |
235 | } | 237 | } |
diff --git a/korganizer/koprefs.cpp b/korganizer/koprefs.cpp index bb3d720..a886735 100644 --- a/korganizer/koprefs.cpp +++ b/korganizer/koprefs.cpp | |||
@@ -1,605 +1,615 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of KOrganizer. | 2 | This file is part of KOrganizer. |
3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> | 3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> |
4 | 4 | ||
5 | This program is free software; you can redistribute it and/or modify | 5 | This program is free software; you can redistribute it and/or modify |
6 | it under the terms of the GNU General Public License as published by | 6 | it under the terms of the GNU General Public License as published by |
7 | the Free Software Foundation; either version 2 of the License, or | 7 | the Free Software Foundation; either version 2 of the License, or |
8 | (at your option) any later version. | 8 | (at your option) any later version. |
9 | 9 | ||
10 | This program is distributed in the hope that it will be useful, | 10 | This program is distributed in the hope that it will be useful, |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
13 | GNU General Public License for more details. | 13 | GNU General Public License for more details. |
14 | 14 | ||
15 | You should have received a copy of the GNU General Public License | 15 | You should have received a copy of the GNU General Public License |
16 | along with this program; if not, write to the Free Software | 16 | along with this program; if not, write to the Free Software |
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
18 | 18 | ||
19 | As a special exception, permission is given to link this program | 19 | As a special exception, permission is given to link this program |
20 | with any edition of Qt, and distribute the resulting executable, | 20 | with any edition of Qt, and distribute the resulting executable, |
21 | without including the source code for Qt in the source distribution. | 21 | without including the source code for Qt in the source distribution. |
22 | */ | 22 | */ |
23 | 23 | ||
24 | #include <time.h> | 24 | #include <time.h> |
25 | #ifndef _WIN32_ | 25 | #ifndef _WIN32_ |
26 | #include <unistd.h> | 26 | #include <unistd.h> |
27 | #endif | 27 | #endif |
28 | #include <qdir.h> | 28 | #include <qdir.h> |
29 | #include <qtextstream.h> | 29 | #include <qtextstream.h> |
30 | #include <qtextcodec.h> | 30 | #include <qtextcodec.h> |
31 | #include <qstring.h> | 31 | #include <qstring.h> |
32 | #include <qregexp.h> | 32 | #include <qregexp.h> |
33 | #include <qfont.h> | 33 | #include <qfont.h> |
34 | #include <qcolor.h> | 34 | #include <qcolor.h> |
35 | #include <qstringlist.h> | 35 | #include <qstringlist.h> |
36 | #include <stdlib.h> | 36 | #include <stdlib.h> |
37 | 37 | ||
38 | #include <kglobal.h> | 38 | #include <kglobal.h> |
39 | #include <kglobalsettings.h> | 39 | #include <kglobalsettings.h> |
40 | #include <kconfig.h> | 40 | #include <kconfig.h> |
41 | #include <klocale.h> | 41 | #include <klocale.h> |
42 | #include <kdebug.h> | 42 | #include <kdebug.h> |
43 | #include <kemailsettings.h> | 43 | #include <kemailsettings.h> |
44 | #include <kstaticdeleter.h> | 44 | #include <kstaticdeleter.h> |
45 | #include <libkdepim/kpimglobalprefs.h> | 45 | #include <libkdepim/kpimglobalprefs.h> |
46 | 46 | ||
47 | #include "koprefs.h" | 47 | #include "koprefs.h" |
48 | #include "mainwindow.h" | 48 | #include "mainwindow.h" |
49 | 49 | ||
50 | KOPrefs *KOPrefs::mInstance = 0; | 50 | KOPrefs *KOPrefs::mInstance = 0; |
51 | static KStaticDeleter<KOPrefs> insd; | 51 | static KStaticDeleter<KOPrefs> insd; |
52 | 52 | ||
53 | KOPrefs::KOPrefs() : | 53 | KOPrefs::KOPrefs() : |
54 | KPimPrefs("korganizerrc") | 54 | KPimPrefs("korganizerrc") |
55 | { | 55 | { |
56 | mCategoryColors.setAutoDelete(true); | 56 | mCategoryColors.setAutoDelete(true); |
57 | fillMailDefaults(); | 57 | fillMailDefaults(); |
58 | mDefaultCategoryColor = QColor(175,210,255);//196,196,196); | 58 | mDefaultCategoryColor = QColor(175,210,255);//196,196,196); |
59 | QColor defaultHolidayColor = QColor(255,0,0); | 59 | QColor defaultHolidayColor = QColor(255,0,0); |
60 | QColor defaultHighlightColor = QColor(129,112,255);//64,64,255); | 60 | QColor defaultHighlightColor = QColor(129,112,255);//64,64,255); |
61 | QColor defaultAgendaBgColor = QColor(239,241,169);//128,128,128); | 61 | QColor defaultAgendaBgColor = QColor(239,241,169);//128,128,128); |
62 | QColor defaultWorkingHoursColor = QColor(170,223,150);//160,160,160); | 62 | QColor defaultWorkingHoursColor = QColor(170,223,150);//160,160,160); |
63 | QColor defaultTodoDueTodayColor = QColor(255,220,100); | 63 | QColor defaultTodoDueTodayColor = QColor(255,220,100); |
64 | QColor defaultTodoOverdueColor = QColor(255,153,125); | 64 | QColor defaultTodoOverdueColor = QColor(255,153,125); |
65 | QColor defaultTodoRunColor = QColor(99,194,30); | 65 | QColor defaultTodoRunColor = QColor(99,194,30); |
66 | KPrefs::setCurrentGroup("General"); | 66 | KPrefs::setCurrentGroup("General"); |
67 | addItemBool("Enable Group Scheduling",&mEnableGroupScheduling,false); | 67 | addItemBool("Enable Group Scheduling",&mEnableGroupScheduling,false); |
68 | addItemBool("ShowIconNewTodo",&mShowIconNewTodo,true); | 68 | addItemBool("ShowIconNewTodo",&mShowIconNewTodo,true); |
69 | addItemBool("ShowIconNewEvent",&mShowIconNewEvent,true); | 69 | addItemBool("ShowIconNewEvent",&mShowIconNewEvent,true); |
70 | addItemBool("ShowIconSearch",&mShowIconSearch,true); | 70 | addItemBool("ShowIconSearch",&mShowIconSearch,true); |
71 | addItemBool("ShowIconList",&mShowIconList,true); | 71 | addItemBool("ShowIconList",&mShowIconList,true); |
72 | addItemBool("ShowIconDay1",&mShowIconDay1,true); | 72 | addItemBool("ShowIconDay1",&mShowIconDay1,true); |
73 | addItemBool("ShowIconDay5",&mShowIconDay5,true); | 73 | addItemBool("ShowIconDay5",&mShowIconDay5,true); |
74 | addItemBool("ShowIconDay6",&mShowIconDay6,true); | 74 | addItemBool("ShowIconDay6",&mShowIconDay6,true); |
75 | addItemBool("ShowIconDay7",&mShowIconDay7,true); | 75 | addItemBool("ShowIconDay7",&mShowIconDay7,true); |
76 | addItemBool("ShowIconMonth",&mShowIconMonth,true); | 76 | addItemBool("ShowIconMonth",&mShowIconMonth,true); |
77 | addItemBool("ShowIconTodoview",&mShowIconTodoview,true); | 77 | addItemBool("ShowIconTodoview",&mShowIconTodoview,true); |
78 | addItemBool("ShowIconBackFast",&mShowIconBackFast,true); | 78 | addItemBool("ShowIconBackFast",&mShowIconBackFast,true); |
79 | addItemBool("ShowIconBack",&mShowIconBack,true); | 79 | addItemBool("ShowIconBack",&mShowIconBack,true); |
80 | addItemBool("ShowIconToday",&mShowIconToday,true); | 80 | addItemBool("ShowIconToday",&mShowIconToday,true); |
81 | addItemBool("ShowIconForward",&mShowIconForward,true); | 81 | addItemBool("ShowIconForward",&mShowIconForward,true); |
82 | addItemBool("ShowIconForwardFast",&mShowIconForwardFast,true); | 82 | addItemBool("ShowIconForwardFast",&mShowIconForwardFast,true); |
83 | addItemBool("ShowIconWhatsThis",&mShowIconWhatsThis,true); | 83 | addItemBool("ShowIconWhatsThis",&mShowIconWhatsThis,true); |
84 | addItemBool("ShowIconWeekNum",&mShowIconWeekNum,true); | 84 | addItemBool("ShowIconWeekNum",&mShowIconWeekNum,true); |
85 | addItemBool("ShowIconNextDays",&mShowIconNextDays,true); | 85 | addItemBool("ShowIconNextDays",&mShowIconNextDays,true); |
86 | addItemBool("ShowIconNext",&mShowIconNext,true); | 86 | addItemBool("ShowIconNext",&mShowIconNext,true); |
87 | addItemBool("ShowIconJournal",&mShowIconJournal,true); | 87 | addItemBool("ShowIconJournal",&mShowIconJournal,true); |
88 | addItemBool("ShowIconStretch",&mShowIconStretch,true); | 88 | addItemBool("ShowIconStretch",&mShowIconStretch,true); |
89 | addItemBool("ShowIconFilter",&mShowIconFilter,false); | 89 | addItemBool("ShowIconFilter",&mShowIconFilter,false); |
90 | addItemBool("ShowIconOnetoolbar",&mShowIconOnetoolbar,true); | 90 | addItemBool("ShowIconOnetoolbar",&mShowIconOnetoolbar,true); |
91 | 91 | ||
92 | bool addIcons = false; | 92 | bool addIcons = false; |
93 | #ifdef DESKTOP_VERSION | 93 | #ifdef DESKTOP_VERSION |
94 | addIcons = true; | 94 | addIcons = true; |
95 | #endif | 95 | #endif |
96 | addItemBool("ShowIconNavigator",&mShowIconNavigator,addIcons); | 96 | addItemBool("ShowIconNavigator",&mShowIconNavigator,addIcons); |
97 | addItemBool("ShowIconAllday",&mShowIconAllday,addIcons); | 97 | addItemBool("ShowIconAllday",&mShowIconAllday,addIcons); |
98 | addItemBool("ShowIconFilterview",&mShowIconFilterview,addIcons); | 98 | addItemBool("ShowIconFilterview",&mShowIconFilterview,addIcons); |
99 | addItemBool("ShowIconToggleFull",&mShowIconToggleFull,addIcons); | 99 | addItemBool("ShowIconToggleFull",&mShowIconToggleFull,addIcons); |
100 | 100 | ||
101 | addItemInt("LastLoadedLanguage",&mOldLanguage,0); | 101 | addItemInt("LastLoadedLanguage",&mOldLanguage,0); |
102 | 102 | ||
103 | addItemBool("AskForQuit",&mAskForQuit,false); | 103 | addItemBool("AskForQuit",&mAskForQuit,false); |
104 | 104 | ||
105 | #ifndef DESKTOP_VERSION | 105 | #ifndef DESKTOP_VERSION |
106 | addItemBool("ShowFullMenu",&mShowFullMenu,false); | 106 | addItemBool("ShowFullMenu",&mShowFullMenu,false); |
107 | #else | 107 | #else |
108 | addItemBool("ShowFullMenu",&mShowFullMenu,true); | 108 | addItemBool("ShowFullMenu",&mShowFullMenu,true); |
109 | #endif | 109 | #endif |
110 | addItemBool("ToolBarHor",&mToolBarHor, true ); | 110 | addItemBool("ToolBarHor",&mToolBarHor, true ); |
111 | addItemBool("ToolBarUp",&mToolBarUp, false ); | 111 | addItemBool("ToolBarUp",&mToolBarUp, false ); |
112 | addItemBool("ToolBarHorV",&mToolBarHorV, true ); | 112 | addItemBool("ToolBarHorV",&mToolBarHorV, true ); |
113 | addItemBool("ToolBarUpV",&mToolBarUpV, false ); | 113 | addItemBool("ToolBarUpV",&mToolBarUpV, false ); |
114 | addItemBool("ToolBarHorN",&mToolBarHorN, true ); | 114 | addItemBool("ToolBarHorN",&mToolBarHorN, true ); |
115 | addItemBool("ToolBarUpN",&mToolBarUpN, false ); | 115 | addItemBool("ToolBarUpN",&mToolBarUpN, false ); |
116 | addItemBool("ToolBarHorF",&mToolBarHorF, true ); | 116 | addItemBool("ToolBarHorF",&mToolBarHorF, true ); |
117 | addItemBool("ToolBarUpF",&mToolBarUpF, false ); | 117 | addItemBool("ToolBarUpF",&mToolBarUpF, false ); |
118 | addItemBool("ToolBarMiniIcons",&mToolBarMiniIcons, false ); | 118 | addItemBool("ToolBarMiniIcons",&mToolBarMiniIcons, false ); |
119 | addItemInt("Whats Next Days",&mWhatsNextDays,3); | 119 | addItemInt("Whats Next Days",&mWhatsNextDays,3); |
120 | addItemInt("Whats Next Prios",&mWhatsNextPrios,1); | 120 | addItemInt("Whats Next Prios",&mWhatsNextPrios,1); |
121 | 121 | ||
122 | addItemBool("ShowTodoInAgenda",&mShowTodoInAgenda,true); | 122 | addItemBool("ShowTodoInAgenda",&mShowTodoInAgenda,true); |
123 | addItemBool("ShowCompletedTodoInAgenda",&mShowCompletedTodoInAgenda,true); | 123 | addItemBool("ShowCompletedTodoInAgenda",&mShowCompletedTodoInAgenda,true); |
124 | addItemBool("ShowTimeInAgenda",&mShowTimeInAgenda,true); | 124 | addItemBool("ShowTimeInAgenda",&mShowTimeInAgenda,true); |
125 | addItemBool("HideNonStartedTodos",&mHideNonStartedTodos,false); | 125 | addItemBool("HideNonStartedTodos",&mHideNonStartedTodos,false); |
126 | addItemBool("ShowCompletedTodo",&mShowCompletedTodo,true); | 126 | addItemBool("ShowCompletedTodo",&mShowCompletedTodo,true); |
127 | addItemInt("AllDay Size",&mAllDaySize,28); | 127 | addItemInt("AllDay Size",&mAllDaySize,28); |
128 | QString defAlarm = KGlobal::iconLoader()->iconPath()+"koalarm.wav"; | 128 | QString defAlarm = KGlobal::iconLoader()->iconPath()+"koalarm.wav"; |
129 | addItemString("DefaultAlarmFile",&mDefaultAlarmFile,defAlarm ); | 129 | addItemString("DefaultAlarmFile",&mDefaultAlarmFile,defAlarm ); |
130 | 130 | ||
131 | addItemStringList("LocationDefaults",&mLocationDefaults ); | 131 | addItemStringList("LocationDefaults",&mLocationDefaults ); |
132 | addItemStringList("EventSummary User",&mEventSummaryUser); | 132 | addItemStringList("EventSummary User",&mEventSummaryUser); |
133 | addItemStringList("TodoSummary User",&mTodoSummaryUser); | 133 | addItemStringList("TodoSummary User",&mTodoSummaryUser); |
134 | addItemStringList("JournalSummary User",&mJournalSummaryUser); | 134 | addItemStringList("JournalSummary User",&mJournalSummaryUser); |
135 | 135 | ||
136 | addItemBool("Enable Group Scheduling",&mEnableGroupScheduling,false); | 136 | addItemBool("Enable Group Scheduling",&mEnableGroupScheduling,false); |
137 | addItemBool("Enable Project View",&mEnableProjectView,false); | 137 | addItemBool("Enable Project View",&mEnableProjectView,false); |
138 | addItemBool("Auto Save",&mAutoSave,false); | 138 | addItemBool("Auto Save",&mAutoSave,false); |
139 | addItemInt("Auto Save Interval",&mAutoSaveInterval,3); | 139 | addItemInt("Auto Save Interval",&mAutoSaveInterval,3); |
140 | addItemBool("Confirm Deletes",&mConfirm,true); | 140 | addItemBool("Confirm Deletes",&mConfirm,true); |
141 | addItemString("Archive File",&mArchiveFile); | 141 | addItemString("Archive File",&mArchiveFile); |
142 | addItemString("Html Export File",&mHtmlExportFile, | 142 | addItemString("Html Export File",&mHtmlExportFile, |
143 | QDir::homeDirPath() + "/" + i18n("Default export file", "calendar.html")); | 143 | QDir::homeDirPath() + "/" + i18n("Default export file", "calendar.html")); |
144 | addItemBool("Html With Save",&mHtmlWithSave,false); | 144 | addItemBool("Html With Save",&mHtmlWithSave,false); |
145 | 145 | ||
146 | KPrefs::setCurrentGroup("Personal Settings"); | 146 | KPrefs::setCurrentGroup("Personal Settings"); |
147 | 147 | ||
148 | addItemInt("Mail Client",&mMailClient,MailClientKMail); | 148 | addItemInt("Mail Client",&mMailClient,MailClientKMail); |
149 | addItemBool("Use Control Center Email",&mEmailControlCenter,false); | 149 | addItemBool("Use Control Center Email",&mEmailControlCenter,false); |
150 | addItemBool("Bcc",&mBcc,false); | 150 | addItemBool("Bcc",&mBcc,false); |
151 | 151 | ||
152 | KPrefs::setCurrentGroup("Time & Date"); | 152 | KPrefs::setCurrentGroup("Time & Date"); |
153 | 153 | ||
154 | 154 | ||
155 | addItemInt("Default Start Time",&mStartTime,10); | 155 | addItemInt("Default Start Time",&mStartTime,10); |
156 | addItemInt("Default Duration",&mDefaultDuration,2); | 156 | addItemInt("Default Duration",&mDefaultDuration,2); |
157 | addItemInt("Default Alarm Time",&mAlarmTime,3); | 157 | addItemInt("Default Alarm Time",&mAlarmTime,3); |
158 | KPrefs::setCurrentGroup("AlarmSettings"); | 158 | KPrefs::setCurrentGroup("AlarmSettings"); |
159 | addItemInt("AlarmPlayBeeps",&mAlarmPlayBeeps,20); | 159 | addItemInt("AlarmPlayBeeps",&mAlarmPlayBeeps,20); |
160 | addItemInt("AlarmSuspendTime",&mAlarmSuspendTime,7); | 160 | addItemInt("AlarmSuspendTime",&mAlarmSuspendTime,7); |
161 | addItemInt("AlarmSuspendCount",&mAlarmSuspendCount,5); | 161 | addItemInt("AlarmSuspendCount",&mAlarmSuspendCount,5); |
162 | addItemInt("AlarmBeepInterval",&mAlarmBeepInterval,3); | 162 | addItemInt("AlarmBeepInterval",&mAlarmBeepInterval,3); |
163 | 163 | ||
164 | 164 | ||
165 | KPrefs::setCurrentGroup("Calendar"); | 165 | KPrefs::setCurrentGroup("Calendar"); |
166 | 166 | ||
167 | addItemInt("Default Calendar Format",&mDefaultFormat,FormatICalendar); | 167 | addItemInt("Default Calendar Format",&mDefaultFormat,FormatICalendar); |
168 | 168 | ||
169 | KPrefs::setCurrentGroup("Fonts"); | 169 | KPrefs::setCurrentGroup("Fonts"); |
170 | // qDebug(" KPrefs::setCurrentGroup(Fonts); "); | 170 | // qDebug(" KPrefs::setCurrentGroup(Fonts); "); |
171 | QFont fon = KGlobalSettings::generalFont(); | 171 | QFont fon = KGlobalSettings::generalFont(); |
172 | addItemFont("TimeBar Font",&mTimeBarFont,fon ); | 172 | addItemFont("TimeBar Font",&mTimeBarFont,fon ); |
173 | addItemFont("MonthView Font",&mMonthViewFont,fon); | 173 | addItemFont("MonthView Font",&mMonthViewFont,fon); |
174 | addItemFont("AgendaView Font",&mAgendaViewFont,fon); | 174 | addItemFont("AgendaView Font",&mAgendaViewFont,fon); |
175 | addItemFont("MarcusBains Font",&mMarcusBainsFont,fon); | 175 | addItemFont("MarcusBains Font",&mMarcusBainsFont,fon); |
176 | addItemFont("TimeLabels Font",&mTimeLabelsFont,fon); | 176 | addItemFont("TimeLabels Font",&mTimeLabelsFont,fon); |
177 | addItemFont("TodoView Font",&mTodoViewFont,fon); | 177 | addItemFont("TodoView Font",&mTodoViewFont,fon); |
178 | addItemFont("ListView Font",&mListViewFont,fon); | 178 | addItemFont("ListView Font",&mListViewFont,fon); |
179 | addItemFont("DateNavigator Font",&mDateNavigatorFont,fon); | 179 | addItemFont("DateNavigator Font",&mDateNavigatorFont,fon); |
180 | addItemFont("EditBox Font",&mEditBoxFont,fon); | 180 | addItemFont("EditBox Font",&mEditBoxFont,fon); |
181 | addItemFont("JournalView Font",&mJornalViewFont,fon); | 181 | addItemFont("JournalView Font",&mJornalViewFont,fon); |
182 | addItemFont("WhatsNextView Font",&mWhatsNextFont,fon); | 182 | addItemFont("WhatsNextView Font",&mWhatsNextFont,fon); |
183 | addItemFont("EventView Font",&mEventViewFont,fon); | 183 | addItemFont("EventView Font",&mEventViewFont,fon); |
184 | 184 | ||
185 | KPrefs::setCurrentGroup("RemoteSyncing"); | 185 | KPrefs::setCurrentGroup("RemoteSyncing"); |
186 | addItemString("ActiveSyncPort",&mActiveSyncPort,"9197" ); | 186 | addItemString("ActiveSyncPort",&mActiveSyncPort,"9197" ); |
187 | addItemString("ActiveSyncIP",&mActiveSyncIP,"192.168.0.40" ); | 187 | addItemString("ActiveSyncIP",&mActiveSyncIP,"192.168.0.40" ); |
188 | addItemBool("ShowSyncEvents",&mShowSyncEvents,false); | 188 | addItemBool("ShowSyncEvents",&mShowSyncEvents,false); |
189 | addItemInt("LastSyncTime",&mLastSyncTime,0); | 189 | addItemInt("LastSyncTime",&mLastSyncTime,0); |
190 | 190 | ||
191 | #ifdef _WIN32_ | 191 | #ifdef _WIN32_ |
192 | QString hdp= locateLocal("data","korganizer")+"\\\\"; | 192 | QString hdp= locateLocal("data","korganizer")+"\\\\"; |
193 | #else | 193 | #else |
194 | QString hdp= locateLocal("data","korganizer")+"/"; | 194 | QString hdp= locateLocal("data","korganizer")+"/"; |
195 | #endif | 195 | #endif |
196 | 196 | ||
197 | KPrefs::setCurrentGroup("LoadSaveFileNames"); | 197 | KPrefs::setCurrentGroup("LoadSaveFileNames"); |
198 | 198 | ||
199 | addItemString("LastImportFile", &mLastImportFile ,hdp +"import.ics" ); | 199 | addItemString("LastImportFile", &mLastImportFile ,hdp +"import.ics" ); |
200 | addItemString("LastVcalFile", &mLastVcalFile ,hdp +"export.vcs" ); | 200 | addItemString("LastVcalFile", &mLastVcalFile ,hdp +"export.vcs" ); |
201 | addItemString("LastSaveFile", &mLastSaveFile ,hdp +"mybackup.ics" ); | 201 | addItemString("LastSaveFile", &mLastSaveFile ,hdp +"mybackup.ics" ); |
202 | addItemString("LastLoadFile", &mLastLoadFile ,hdp +"mybackup.ics" ); | 202 | addItemString("LastLoadFile", &mLastLoadFile ,hdp +"mybackup.ics" ); |
203 | 203 | ||
204 | 204 | ||
205 | KPrefs::setCurrentGroup("Locale"); | 205 | KPrefs::setCurrentGroup("Locale"); |
206 | addItemBool("ShortDateInViewer",&mShortDateInViewer,false); | 206 | addItemBool("ShortDateInViewer",&mShortDateInViewer,false); |
207 | 207 | ||
208 | 208 | ||
209 | KPrefs::setCurrentGroup("Colors"); | 209 | KPrefs::setCurrentGroup("Colors"); |
210 | addItemColor("Holiday Color",&mHolidayColor,defaultHolidayColor); | 210 | addItemColor("Holiday Color",&mHolidayColor,defaultHolidayColor); |
211 | addItemColor("Highlight Color",&mHighlightColor,defaultHighlightColor); | 211 | addItemColor("Highlight Color",&mHighlightColor,defaultHighlightColor); |
212 | addItemColor("Event Color",&mEventColor,mDefaultCategoryColor); | 212 | addItemColor("Event Color",&mEventColor,mDefaultCategoryColor); |
213 | addItemColor("Todo done Color",&mTodoDoneColor,QColor(111,255,115) ); | 213 | addItemColor("Todo done Color",&mTodoDoneColor,QColor(111,255,115) ); |
214 | addItemColor("Agenda Background Color",&mAgendaBgColor,defaultAgendaBgColor); | 214 | addItemColor("Agenda Background Color",&mAgendaBgColor,defaultAgendaBgColor); |
215 | addItemColor("WorkingHours Color",&mWorkingHoursColor,defaultWorkingHoursColor); | 215 | addItemColor("WorkingHours Color",&mWorkingHoursColor,defaultWorkingHoursColor); |
216 | addItemColor("Todo due today Color",&mTodoDueTodayColor,defaultTodoDueTodayColor); | 216 | addItemColor("Todo due today Color",&mTodoDueTodayColor,defaultTodoDueTodayColor); |
217 | addItemColor("Todo overdue Color",&mTodoOverdueColor,defaultTodoOverdueColor); | 217 | addItemColor("Todo overdue Color",&mTodoOverdueColor,defaultTodoOverdueColor); |
218 | addItemColor("Todo running Color",&mTodoRunColor,defaultTodoRunColor); | 218 | addItemColor("Todo running Color",&mTodoRunColor,defaultTodoRunColor); |
219 | addItemColor("MonthViewEvenColor",&mMonthViewEvenColor,QColor( 160,160,255 )); | 219 | addItemColor("MonthViewEvenColor",&mMonthViewEvenColor,QColor( 160,160,255 )); |
220 | addItemColor("MonthViewOddColor",&mMonthViewOddColor,QColor( 160,255,160 )); | 220 | addItemColor("MonthViewOddColor",&mMonthViewOddColor,QColor( 160,255,160 )); |
221 | addItemColor("MonthViewHolidayColor",&mMonthViewHolidayColor,QColor( 255,160,160 )); | 221 | addItemColor("MonthViewHolidayColor",&mMonthViewHolidayColor,QColor( 255,160,160 )); |
222 | addItemBool("MonthViewUsesDayColors",&mMonthViewUsesDayColors,true); | 222 | addItemBool("MonthViewUsesDayColors",&mMonthViewUsesDayColors,true); |
223 | addItemBool("MonthViewSatSunTog",&mMonthViewSatSunTog,true); | 223 | addItemBool("MonthViewSatSunTog",&mMonthViewSatSunTog,true); |
224 | addItemBool("MonthViewWeek",&mMonthViewWeek,false); | 224 | addItemBool("MonthViewWeek",&mMonthViewWeek,false); |
225 | addItemBool("HightlightDateTimeEdit",&mHightlightDateTimeEdit,false); | 225 | addItemBool("HightlightDateTimeEdit",&mHightlightDateTimeEdit,false); |
226 | addItemColor("AppColor1",&mAppColor1,QColor( 130,170,255 )); | 226 | addItemColor("AppColor1",&mAppColor1,QColor( 130,170,255 )); |
227 | addItemColor("AppColor2",&mAppColor2,QColor( 174,216,255 )); | 227 | addItemColor("AppColor2",&mAppColor2,QColor( 174,216,255 )); |
228 | addItemBool("UseAppColors",&mUseAppColors,false); | 228 | addItemBool("UseAppColors",&mUseAppColors,false); |
229 | 229 | ||
230 | 230 | ||
231 | 231 | ||
232 | KPrefs::setCurrentGroup("Views"); | 232 | KPrefs::setCurrentGroup("Views"); |
233 | addItemBool("Block Popup Menu",&mBlockPopupMenu,false); | 233 | addItemBool("Block Popup Menu",&mBlockPopupMenu,false); |
234 | addItemBool("Show Date Navigator",&mShowDateNavigator,true); | 234 | addItemBool("Show Date Navigator",&mShowDateNavigator,true); |
235 | addItemInt("Hour Size",&mHourSize,8); | 235 | addItemInt("Hour Size",&mHourSize,8); |
236 | addItemBool("Show Daily Recurrences",&mDailyRecur,true); | 236 | addItemBool("Show Daily Recurrences",&mDailyRecur,true); |
237 | addItemBool("Show Weekly Recurrences",&mWeeklyRecur,true); | 237 | addItemBool("Show Weekly Recurrences",&mWeeklyRecur,true); |
238 | addItemBool("Show Month Daily Recurrences",&mMonthDailyRecur,true); | 238 | addItemBool("Show Month Daily Recurrences",&mMonthDailyRecur,true); |
239 | addItemBool("Show Month Weekly Recurrences",&mMonthWeeklyRecur,true); | 239 | addItemBool("Show Month Weekly Recurrences",&mMonthWeeklyRecur,true); |
240 | addItemBool("ShowShortMonthName",&mMonthShowShort,false); | 240 | addItemBool("ShowShortMonthName",&mMonthShowShort,false); |
241 | addItemBool("ShowIconsInMonthCell",&mMonthShowIcons,true); | 241 | addItemBool("ShowIconsInMonthCell",&mMonthShowIcons,true); |
242 | addItemBool("ShowTimesInMonthCell",&mMonthShowTimes,true); | 242 | addItemBool("ShowTimesInMonthCell",&mMonthShowTimes,true); |
243 | #ifdef DESKTOP_VERION | 243 | #ifdef DESKTOP_VERION |
244 | addItemBool("Enable ToolTips",&mEnableToolTips,true); | 244 | addItemBool("Enable ToolTips",&mEnableToolTips,true); |
245 | #else | 245 | #else |
246 | addItemBool("Enable ToolTips",&mEnableToolTips,false); | 246 | addItemBool("Enable ToolTips",&mEnableToolTips,false); |
247 | #endif | 247 | #endif |
248 | addItemBool("Enable MonthView ScrollBars",&mEnableMonthScroll,false); | 248 | addItemBool("Enable MonthView ScrollBars",&mEnableMonthScroll,false); |
249 | addItemBool("Marcus Bains shows seconds",&mMarcusBainsShowSeconds,false); | 249 | addItemBool("Marcus Bains shows seconds",&mMarcusBainsShowSeconds,false); |
250 | addItemBool("Show Marcus Bains",&mMarcusBainsEnabled,true); | 250 | addItemBool("Show Marcus Bains",&mMarcusBainsEnabled,true); |
251 | addItemBool("EditOnDoubleClick",&mEditOnDoubleClick,true); | 251 | addItemBool("EditOnDoubleClick",&mEditOnDoubleClick,true); |
252 | addItemBool("ViewChangeHoldFullscreen",&mViewChangeHoldFullscreen,true); | 252 | addItemBool("ViewChangeHoldFullscreen",&mViewChangeHoldFullscreen,true); |
253 | addItemBool("ViewChangeHoldNonFullscreen",&mViewChangeHoldNonFullscreen,false); | 253 | addItemBool("ViewChangeHoldNonFullscreen",&mViewChangeHoldNonFullscreen,false); |
254 | addItemBool("CenterOnCurrentTime",&mCenterOnCurrentTime,false); | 254 | addItemBool("CenterOnCurrentTime",&mCenterOnCurrentTime,false); |
255 | addItemBool("SetTimeToDayStartAt",&mSetTimeToDayStartAt,true); | 255 | addItemBool("SetTimeToDayStartAt",&mSetTimeToDayStartAt,true); |
256 | addItemBool("HighlightCurrentDay",&mHighlightCurrentDay,true); | 256 | addItemBool("HighlightCurrentDay",&mHighlightCurrentDay,true); |
257 | addItemBool("WNViewShowsParents",&mWNViewShowsParents,true);; | 257 | addItemBool("WNViewShowsParents",&mWNViewShowsParents,true);; |
258 | addItemBool("WNViewShowsPast",&mWNViewShowsPast,true); | 258 | addItemBool("WNViewShowsPast",&mWNViewShowsPast,true); |
259 | addItemBool("WNViewShowLocation",&mWNViewShowLocation,false); | 259 | addItemBool("WNViewShowLocation",&mWNViewShowLocation,false); |
260 | addItemBool("UseHighlightLightColor",&mUseHighlightLightColor,false); | 260 | addItemBool("UseHighlightLightColor",&mUseHighlightLightColor,false); |
261 | addItemBool("ListViewMonthTimespan",&mListViewMonthTimespan,true); | 261 | addItemBool("ListViewMonthTimespan",&mListViewMonthTimespan,true); |
262 | addItemBool("TodoViewUsesCatColors",&mTodoViewUsesCatColors,false); | 262 | addItemBool("TodoViewUsesCatColors",&mTodoViewUsesCatColors,false); |
263 | addItemBool("TodoViewShowsPercentage",&mTodoViewShowsPercentage,false); | 263 | addItemBool("TodoViewShowsPercentage",&mTodoViewShowsPercentage,false); |
264 | addItemBool("TodoViewUsesSmallFont",&mTodoViewUsesSmallFont,true); | 264 | addItemBool("TodoViewUsesSmallFont",&mTodoViewUsesSmallFont,true); |
265 | addItemBool("MonthViewUsesBigFont",&mMonthViewUsesBigFont,true); | 265 | addItemBool("MonthViewUsesBigFont",&mMonthViewUsesBigFont,true); |
266 | addItemBool("TodoViewUsesForegroundColor",&mTodoViewUsesForegroundColor,false); | 266 | addItemBool("TodoViewUsesForegroundColor",&mTodoViewUsesForegroundColor,false); |
267 | addItemBool("MonthViewUsesForegroundColor",&mMonthViewUsesForegroundColor,false); | 267 | addItemBool("MonthViewUsesForegroundColor",&mMonthViewUsesForegroundColor,false); |
268 | #ifdef DESKTOP_VERSION | 268 | #ifdef DESKTOP_VERSION |
269 | addItemBool("UseInternalAlarmNotification",&mUseInternalAlarmNotification,true); | 269 | addItemBool("UseInternalAlarmNotification",&mUseInternalAlarmNotification,true); |
270 | #else | 270 | #else |
271 | addItemBool("UseInternalAlarmNotification",&mUseInternalAlarmNotification,false); | 271 | addItemBool("UseInternalAlarmNotification",&mUseInternalAlarmNotification,false); |
272 | #endif | 272 | #endif |
273 | addItemInt("Day Begins",&mDayBegins,7); | 273 | addItemInt("Day Begins",&mDayBegins,7); |
274 | addItemInt("Working Hours Start",&mWorkingHoursStart,8); | 274 | addItemInt("Working Hours Start",&mWorkingHoursStart,8); |
275 | addItemInt("Working Hours End",&mWorkingHoursEnd,17); | 275 | addItemInt("Working Hours End",&mWorkingHoursEnd,17); |
276 | addItemBool("Exclude Holidays",&mExcludeHolidays,true); | 276 | addItemBool("Exclude Holidays",&mExcludeHolidays,true); |
277 | addItemBool("Exclude Saturdays",&mExcludeSaturdays,true); | 277 | addItemBool("Exclude Saturdays",&mExcludeSaturdays,true); |
278 | 278 | ||
279 | addItemBool("Month View Uses Category Color",&mMonthViewUsesCategoryColor,false); | 279 | addItemBool("Month View Uses Category Color",&mMonthViewUsesCategoryColor,false); |
280 | addItemBool("Full View Month",&mFullViewMonth,true); | 280 | addItemBool("Full View Month",&mFullViewMonth,true); |
281 | addItemBool("Full View Todo",&mFullViewTodo,true); | 281 | addItemBool("Full View Todo",&mFullViewTodo,true); |
282 | addItemBool("Quick Todo",&mEnableQuickTodo,false); | 282 | addItemBool("Quick Todo",&mEnableQuickTodo,false); |
283 | 283 | ||
284 | addItemInt("Next X Days",&mNextXDays,3); | 284 | addItemInt("Next X Days",&mNextXDays,3); |
285 | 285 | ||
286 | KPrefs::setCurrentGroup("Printer"); | 286 | KPrefs::setCurrentGroup("Printer"); |
287 | 287 | ||
288 | KPrefs::setCurrentGroup("Layout"); | 288 | KPrefs::setCurrentGroup("Layout"); |
289 | 289 | ||
290 | addItemBool("CompactDialogs",&mCompactDialogs,false); | 290 | addItemBool("CompactDialogs",&mCompactDialogs,false); |
291 | addItemBool("VerticalScreen",&mVerticalScreen,true); | 291 | addItemBool("VerticalScreen",&mVerticalScreen,true); |
292 | 292 | ||
293 | KPrefs::setCurrentGroup("KOrganizer Plugins"); | 293 | KPrefs::setCurrentGroup("KOrganizer Plugins"); |
294 | 294 | ||
295 | addItemStringList("SelectedPlugins",&mSelectedPlugins,"holidays"); | 295 | addItemStringList("SelectedPlugins",&mSelectedPlugins,"holidays"); |
296 | 296 | ||
297 | KPrefs::setCurrentGroup("Group Scheduling"); | 297 | KPrefs::setCurrentGroup("Group Scheduling"); |
298 | 298 | ||
299 | addItemInt("IMIPScheduler",&mIMIPScheduler,IMIPKMail); | 299 | addItemInt("IMIPScheduler",&mIMIPScheduler,IMIPKMail); |
300 | addItemInt("IMIPSend",&mIMIPSend,IMIPdirectsend); | 300 | addItemInt("IMIPSend",&mIMIPSend,IMIPdirectsend); |
301 | addItemStringList("AdditionalMails",&mAdditionalMails,""); | 301 | addItemStringList("AdditionalMails",&mAdditionalMails,""); |
302 | addItemInt("IMIP auto refresh",&mIMIPAutoRefresh,neverAuto); | 302 | addItemInt("IMIP auto refresh",&mIMIPAutoRefresh,neverAuto); |
303 | addItemInt("IMIP auto insert request",&mIMIPAutoInsertRequest,neverAuto); | 303 | addItemInt("IMIP auto insert request",&mIMIPAutoInsertRequest,neverAuto); |
304 | addItemInt("IMIP auto insert reply",&mIMIPAutoInsertReply,neverAuto); | 304 | addItemInt("IMIP auto insert reply",&mIMIPAutoInsertReply,neverAuto); |
305 | addItemInt("IMIP auto FreeBusy",&mIMIPAutoFreeBusy,neverAuto); | 305 | addItemInt("IMIP auto FreeBusy",&mIMIPAutoFreeBusy,neverAuto); |
306 | addItemInt("IMIP auto save FreeBusy",&mIMIPAutoFreeBusyReply,neverAuto); | 306 | addItemInt("IMIP auto save FreeBusy",&mIMIPAutoFreeBusyReply,neverAuto); |
307 | 307 | ||
308 | KPrefs::setCurrentGroup( "Editors" ); | 308 | KPrefs::setCurrentGroup( "Editors" ); |
309 | 309 | ||
310 | addItemStringList( "EventTemplates", &mEventTemplates ); | 310 | addItemStringList( "EventTemplates", &mEventTemplates ); |
311 | addItemStringList( "TodoTemplates", &mTodoTemplates ); | 311 | addItemStringList( "TodoTemplates", &mTodoTemplates ); |
312 | 312 | ||
313 | addItemInt("DestinationPolicy",&mDestination,standardDestination); | 313 | addItemInt("DestinationPolicy",&mDestination,standardDestination); |
314 | 314 | ||
315 | KPrefs::setCurrentGroup( "ViewOptions" ); | 315 | KPrefs::setCurrentGroup( "ViewOptions" ); |
316 | addItemBool("EVshowDetails",&mEVshowDetails,true); | 316 | addItemBool("EVshowDetails",&mEVshowDetails,true); |
317 | addItemBool("EVshowCreated",&mEVshowCreated,true); | 317 | addItemBool("EVshowCreated",&mEVshowCreated,true); |
318 | addItemBool("EVshowChanged",&mEVshowChanged,true); | 318 | addItemBool("EVshowChanged",&mEVshowChanged,true); |
319 | addItemBool("WTshowDetails",&mWTshowDetails,false); | 319 | addItemBool("WTshowDetails",&mWTshowDetails,false); |
320 | addItemBool("WTshowCreated",&mWTshowCreated,false); | 320 | addItemBool("WTshowCreated",&mWTshowCreated,false); |
321 | addItemBool("WTshowChanged",&mWTshowChanged,false); | 321 | addItemBool("WTshowChanged",&mWTshowChanged,false); |
322 | mCalendars.setAutoDelete( true ); | 322 | mCalendars.setAutoDelete( true ); |
323 | } | 323 | } |
324 | 324 | ||
325 | 325 | ||
326 | KOPrefs::~KOPrefs() | 326 | KOPrefs::~KOPrefs() |
327 | { | 327 | { |
328 | if (mInstance == this) | 328 | if (mInstance == this) |
329 | mInstance = insd.setObject(0); | 329 | mInstance = insd.setObject(0); |
330 | mCalendars.setAutoDelete( true ); | 330 | mCalendars.setAutoDelete( true ); |
331 | mCalendars.clear(); | 331 | mCalendars.clear(); |
332 | //qDebug("KOPrefs::~KOPrefs() "); | 332 | //qDebug("KOPrefs::~KOPrefs() "); |
333 | } | 333 | } |
334 | 334 | ||
335 | 335 | ||
336 | KOPrefs *KOPrefs::instance() | 336 | KOPrefs *KOPrefs::instance() |
337 | { | 337 | { |
338 | if (!mInstance) { | 338 | if (!mInstance) { |
339 | mInstance = insd.setObject(new KOPrefs()); | 339 | mInstance = insd.setObject(new KOPrefs()); |
340 | mInstance->readConfig(); | 340 | mInstance->readConfig(); |
341 | } | 341 | } |
342 | 342 | ||
343 | return mInstance; | 343 | return mInstance; |
344 | } | 344 | } |
345 | 345 | ||
346 | void KOPrefs::usrSetDefaults() | 346 | void KOPrefs::usrSetDefaults() |
347 | { | 347 | { |
348 | 348 | ||
349 | } | 349 | } |
350 | 350 | ||
351 | void KOPrefs::fillMailDefaults() | 351 | void KOPrefs::fillMailDefaults() |
352 | { | 352 | { |
353 | if (mName.isEmpty()) mName = i18n("Anonymous"); | 353 | if (mName.isEmpty()) mName = i18n("Anonymous"); |
354 | if (mEmail.isEmpty()) mEmail = i18n("nobody@nowhere"); | 354 | if (mEmail.isEmpty()) mEmail = i18n("nobody@nowhere"); |
355 | } | 355 | } |
356 | 356 | ||
357 | void KOPrefs::setTimeZoneIdDefault() | 357 | void KOPrefs::setTimeZoneIdDefault() |
358 | { | 358 | { |
359 | ; | 359 | ; |
360 | } | 360 | } |
361 | 361 | ||
362 | void KOPrefs::setAllDefaults() | 362 | void KOPrefs::setAllDefaults() |
363 | { | 363 | { |
364 | setCategoryDefaults(); | 364 | setCategoryDefaults(); |
365 | mEventSummaryUser = getDefaultList() ; | 365 | mEventSummaryUser = getDefaultList() ; |
366 | mTodoSummaryUser = getDefaultList() ; | 366 | mTodoSummaryUser = getDefaultList() ; |
367 | mJournalSummaryUser = getDefaultList() ; | 367 | mJournalSummaryUser = getDefaultList() ; |
368 | mLocationDefaults = getLocationDefaultList(); | 368 | mLocationDefaults = getLocationDefaultList(); |
369 | } | 369 | } |
370 | 370 | ||
371 | void KOPrefs::setCategoryDefaults() | 371 | void KOPrefs::setCategoryDefaults() |
372 | { | 372 | { |
373 | mCustomCategories.clear(); | 373 | mCustomCategories.clear(); |
374 | mCustomCategories = getDefaultList(); | 374 | mCustomCategories = getDefaultList(); |
375 | 375 | ||
376 | QStringList::Iterator it; | 376 | QStringList::Iterator it; |
377 | for (it = mCustomCategories.begin();it != mCustomCategories.end();++it ) { | 377 | for (it = mCustomCategories.begin();it != mCustomCategories.end();++it ) { |
378 | setCategoryColor(*it,mDefaultCategoryColor); | 378 | setCategoryColor(*it,mDefaultCategoryColor); |
379 | } | 379 | } |
380 | } | 380 | } |
381 | QStringList KOPrefs::getLocationDefaultList() | 381 | QStringList KOPrefs::getLocationDefaultList() |
382 | { | 382 | { |
383 | QStringList retval ; | 383 | QStringList retval ; |
384 | retval << i18n("Home") << i18n("Office") << i18n("Library") << i18n("School") << i18n("Doctor") << i18n("Beach") | 384 | retval << i18n("Home") << i18n("Office") << i18n("Library") << i18n("School") << i18n("Doctor") << i18n("Beach") |
385 | << i18n("University") << i18n("Restaurant") << i18n("Bar") << i18n("Conference room") | 385 | << i18n("University") << i18n("Restaurant") << i18n("Bar") << i18n("Conference room") |
386 | << i18n("Cinema") << i18n("Lake") << i18n("Kindergarten") | 386 | << i18n("Cinema") << i18n("Lake") << i18n("Kindergarten") |
387 | << i18n("Germany") << i18n("Sweden") << i18n("Forest") << i18n("Desert") << i18n("Kitchen") ; | 387 | << i18n("Germany") << i18n("Sweden") << i18n("Forest") << i18n("Desert") << i18n("Kitchen") ; |
388 | // << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") | 388 | // << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") |
389 | 389 | ||
390 | retval.sort(); | 390 | retval.sort(); |
391 | return retval; | 391 | return retval; |
392 | } | 392 | } |
393 | QStringList KOPrefs::getDefaultList() | 393 | QStringList KOPrefs::getDefaultList() |
394 | { | 394 | { |
395 | QStringList retval ; | 395 | QStringList retval ; |
396 | retval << i18n("Anniversary") << i18n("Appointment") << i18n("Birthday") << i18n("Business") << i18n("Customer") | 396 | retval << i18n("Anniversary") << i18n("Appointment") << i18n("Birthday") << i18n("Business") << i18n("Customer") |
397 | << i18n("Break") | 397 | << i18n("Break") |
398 | << i18n("Family") << i18n("Favorites") << i18n("Fishing") << i18n("Gifts") | 398 | << i18n("Family") << i18n("Favorites") << i18n("Fishing") << i18n("Gifts") |
399 | << i18n("Holiday") << i18n("Holiday Cards")<< i18n("Hot Contacts") | 399 | << i18n("Holiday") << i18n("Holiday Cards")<< i18n("Hot Contacts") |
400 | << i18n("Meeting") << i18n("Miscellaneous") << i18n("Partner") << i18n("Personal") | 400 | << i18n("Meeting") << i18n("Miscellaneous") << i18n("Partner") << i18n("Personal") |
401 | << i18n("PHB") << i18n("Phone Calls") << i18n("Shopping") | 401 | << i18n("PHB") << i18n("Phone Calls") << i18n("Shopping") |
402 | << i18n("Sports") << i18n("Talk") << i18n("Travel") << i18n("TV") | 402 | << i18n("Sports") << i18n("Talk") << i18n("Travel") << i18n("TV") |
403 | << i18n("Vacation") ; | 403 | << i18n("Vacation") ; |
404 | retval.sort(); | 404 | retval.sort(); |
405 | //qDebug("cat %s ", retval.join("-").latin1()); | 405 | //qDebug("cat %s ", retval.join("-").latin1()); |
406 | return retval; | 406 | return retval; |
407 | } | 407 | } |
408 | // << i18n("Business Travel") << i18n("Education") << i18n("Hiking") << i18n("Hunting") << i18n("Recurring") << i18n("Personal Travel") << i18n("Speach") << i18n("Festival") << i18n("Competition")<< i18n("Party")<< i18n("Projects")<< i18n("Kids") << i18n("Special Occasion")<< i18n("Breakfast")<< i18n("Dinner") << i18n("Lunch")<< i18n("University")<< i18n("School")<< i18n("Flight")<< i18n("Key Customer") << i18n("VIP") << i18n("SyncEvent") << i18n("Cinema") | 408 | // << i18n("Business Travel") << i18n("Education") << i18n("Hiking") << i18n("Hunting") << i18n("Recurring") << i18n("Personal Travel") << i18n("Speach") << i18n("Festival") << i18n("Competition")<< i18n("Party")<< i18n("Projects")<< i18n("Kids") << i18n("Special Occasion")<< i18n("Breakfast")<< i18n("Dinner") << i18n("Lunch")<< i18n("University")<< i18n("School")<< i18n("Flight")<< i18n("Key Customer") << i18n("VIP") << i18n("SyncEvent") << i18n("Cinema") |
409 | void KOPrefs::usrReadConfig() | 409 | void KOPrefs::usrReadConfig() |
410 | { | 410 | { |
411 | config()->setGroup("General"); | 411 | config()->setGroup("General"); |
412 | 412 | ||
413 | //qDebug("KOPrefs::usrReadConfig() "); | 413 | //qDebug("KOPrefs::usrReadConfig() "); |
414 | mCustomCategories = config()->readListEntry("Custom Categories"); | 414 | mCustomCategories = config()->readListEntry("Custom Categories"); |
415 | mOldLoadedLanguage = mOldLanguage ; | 415 | mOldLoadedLanguage = mOldLanguage ; |
416 | mOldLanguage = KPimGlobalPrefs::instance()->mPreferredLanguage; | 416 | mOldLanguage = KPimGlobalPrefs::instance()->mPreferredLanguage; |
417 | if (mLocationDefaults.isEmpty()) { | 417 | if (mLocationDefaults.isEmpty()) { |
418 | mLocationDefaults = getLocationDefaultList(); | 418 | mLocationDefaults = getLocationDefaultList(); |
419 | } | 419 | } |
420 | 420 | ||
421 | if (mEventSummaryUser.isEmpty()) { | 421 | if (mEventSummaryUser.isEmpty()) { |
422 | mEventSummaryUser = getDefaultList() ; | 422 | mEventSummaryUser = getDefaultList() ; |
423 | } | 423 | } |
424 | if (mTodoSummaryUser.isEmpty()) { | 424 | if (mTodoSummaryUser.isEmpty()) { |
425 | mTodoSummaryUser = getDefaultList() ; | 425 | mTodoSummaryUser = getDefaultList() ; |
426 | } | 426 | } |
427 | 427 | ||
428 | if (mCustomCategories.isEmpty()) setCategoryDefaults(); | 428 | if (mCustomCategories.isEmpty()) setCategoryDefaults(); |
429 | 429 | ||
430 | config()->setGroup("Personal Settings"); | 430 | config()->setGroup("Personal Settings"); |
431 | mName = config()->readEntry("user_name",""); | 431 | mName = config()->readEntry("user_name",""); |
432 | mEmail = config()->readEntry("user_email",""); | 432 | mEmail = config()->readEntry("user_email",""); |
433 | fillMailDefaults(); | 433 | fillMailDefaults(); |
434 | 434 | ||
435 | config()->setGroup("Category Colors"); | 435 | config()->setGroup("Category Colors"); |
436 | QStringList::Iterator it; | 436 | QStringList::Iterator it; |
437 | for (it = mCustomCategories.begin();it != mCustomCategories.end();++it ) { | 437 | for (it = mCustomCategories.begin();it != mCustomCategories.end();++it ) { |
438 | setCategoryColor(*it,config()->readColorEntry(*it,&mDefaultCategoryColor)); | 438 | setCategoryColor(*it,config()->readColorEntry(*it,&mDefaultCategoryColor)); |
439 | 439 | ||
440 | } | 440 | } |
441 | KConfig fc (locateLocal("config","kopicalendarrc")); | 441 | KConfig fc (locateLocal("config","kopicalendarrc")); |
442 | fc.setGroup("CC"); | 442 | fc.setGroup("CC"); |
443 | int numCals = fc.readNumEntry("NumberCalendars",0 ); | 443 | int numCals = fc.readNumEntry("NumberCalendars",0 ); |
444 | mNextAvailableCalendar = 1; | 444 | mNextAvailableCalendar = 1; |
445 | if ( numCals == 0 ) { | 445 | if ( numCals == 0 ) { |
446 | KopiCalendarFile *kkf = getNewCalendar(); | 446 | KopiCalendarFile *kkf = getNewCalendar(); |
447 | kkf->isStandard = true; | 447 | kkf->isStandard = true; |
448 | kkf->mName = i18n("Standard"); | 448 | kkf->mName = i18n("Standard"); |
449 | kkf->mFileName = locateLocal( "data", "korganizer/mycalendar.ics" ); | 449 | kkf->mFileName = locateLocal( "data", "korganizer/mycalendar.ics" ); |
450 | } | 450 | } |
451 | while ( mNextAvailableCalendar <= numCals ) { | 451 | while ( mNextAvailableCalendar <= numCals ) { |
452 | //qDebug("Read cal #%d ", mNextAvailableCalendar ); | 452 | //qDebug("Read cal #%d ", mNextAvailableCalendar ); |
453 | QString prefix = "Cal_" +QString::number( mNextAvailableCalendar ); | 453 | QString prefix = "Cal_" +QString::number( mNextAvailableCalendar ); |
454 | KopiCalendarFile *kkf = getNewCalendar(); | 454 | KopiCalendarFile *kkf = getNewCalendar(); |
455 | kkf->isStandard = fc.readBoolEntry( prefix+"_isStandard", false ); | 455 | kkf->isStandard = fc.readBoolEntry( prefix+"_isStandard", false ); |
456 | kkf->isEnabled = fc.readBoolEntry( prefix+"_isEnabled", true); | 456 | kkf->isEnabled = fc.readBoolEntry( prefix+"_isEnabled", true); |
457 | kkf->isAlarmEnabled = fc.readBoolEntry( prefix+"_isAlarmEnabled", true); | 457 | kkf->isAlarmEnabled = fc.readBoolEntry( prefix+"_isAlarmEnabled", true); |
458 | kkf->isReadOnly = fc.readBoolEntry( prefix+"_isReadOnly", false); | 458 | kkf->isReadOnly = fc.readBoolEntry( prefix+"_isReadOnly", false); |
459 | kkf->mName = fc.readEntry( prefix+"_Name", "Calendar"); | 459 | kkf->mName = fc.readEntry( prefix+"_Name", "Calendar"); |
460 | kkf->mFileName = fc.readEntry( prefix+"_FileName", kkf->mFileName); | 460 | kkf->mFileName = fc.readEntry( prefix+"_FileName", kkf->mFileName); |
461 | kkf->mDefaultColor = fc.readColorEntry( prefix+"_Color",&mEventColor); | 461 | kkf->mDefaultColor = fc.readColorEntry( prefix+"_Color",&mEventColor); |
462 | if ( kkf->mCalNumber == 1 ) { | 462 | if ( kkf->mCalNumber == 1 ) { |
463 | kkf->mFileName = locateLocal( "data", "korganizer/mycalendar.ics" ); | 463 | kkf->mFileName = locateLocal( "data", "korganizer/mycalendar.ics" ); |
464 | } | 464 | } |
465 | //qDebug("NAME %s %s", kkf->mName.latin1(), i18n("Birthdays").latin1() ); | 465 | //qDebug("NAME %s %s", kkf->mName.latin1(), i18n("Birthdays").latin1() ); |
466 | if ( kkf->mName == i18n("Birthdays") ) { | 466 | if ( kkf->mName == i18n("Birthdays") ) { |
467 | kkf->mFileName = locateLocal( "data", "korganizer/birthdays.ics" ); | 467 | kkf->mFileName = locateLocal( "data", "korganizer/birthdays.ics" ); |
468 | } | 468 | } |
469 | } | 469 | } |
470 | 470 | ||
471 | KPimPrefs::usrReadConfig(); | 471 | KPimPrefs::usrReadConfig(); |
472 | } | 472 | } |
473 | 473 | ||
474 | KopiCalendarFile * KOPrefs::getCalendar( int num ) | 474 | KopiCalendarFile * KOPrefs::getCalendar( int num ) |
475 | { | 475 | { |
476 | return mDefCalColors[num-1]; | 476 | return mDefCalColors[num-1]; |
477 | } | 477 | } |
478 | 478 | ||
479 | KopiCalendarFile * KOPrefs::getNewCalendar() | 479 | KopiCalendarFile * KOPrefs::getNewCalendar() |
480 | { | 480 | { |
481 | KopiCalendarFile * kkf = new KopiCalendarFile(); | 481 | KopiCalendarFile * kkf = new KopiCalendarFile(); |
482 | kkf->mCalNumber = mNextAvailableCalendar; | 482 | kkf->mCalNumber = mNextAvailableCalendar; |
483 | mDefCalColors.resize( mNextAvailableCalendar ); | 483 | mDefCalColors.resize( mNextAvailableCalendar ); |
484 | mDefCalColors[mNextAvailableCalendar-1] = kkf; | 484 | mDefCalColors[mNextAvailableCalendar-1] = kkf; |
485 | ++mNextAvailableCalendar; | 485 | ++mNextAvailableCalendar; |
486 | kkf->mDefaultColor = mEventColor; | 486 | kkf->mDefaultColor = mEventColor; |
487 | kkf->mName = i18n("New Calendar"); | 487 | kkf->mName = i18n("New Calendar"); |
488 | mCalendars.append( kkf ); | 488 | mCalendars.append( kkf ); |
489 | return kkf; | 489 | return kkf; |
490 | } | 490 | } |
491 | void KOPrefs::deleteCalendar( int num ) | 491 | void KOPrefs::deleteCalendar( int num ) |
492 | { | 492 | { |
493 | KopiCalendarFile * kkf = mCalendars.first(); | 493 | KopiCalendarFile * kkf = mCalendars.first(); |
494 | while ( kkf ) { | 494 | while ( kkf ) { |
495 | if ( kkf->mCalNumber == num ) { | 495 | if ( kkf->mCalNumber == num ) { |
496 | qDebug("KOPrefs::deleteCalendar %d ", num ); | 496 | qDebug("KOPrefs::deleteCalendar %d ", num ); |
497 | mCalendars.remove( kkf ); | 497 | mCalendars.remove( kkf ); |
498 | delete kkf; | 498 | delete kkf; |
499 | return; | 499 | return; |
500 | } | 500 | } |
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; |
507 | } | 517 | } |
508 | QColor KOPrefs::defaultColor( int calNum ) const | 518 | QColor KOPrefs::defaultColor( int calNum ) const |
509 | { | 519 | { |
510 | if ( calNum == 1 ) return mEventColor; | 520 | if ( calNum == 1 ) return mEventColor; |
511 | return (mDefCalColors[calNum-1])->mDefaultColor; | 521 | return (mDefCalColors[calNum-1])->mDefaultColor; |
512 | } | 522 | } |
513 | void KOPrefs::usrWriteConfig() | 523 | void KOPrefs::usrWriteConfig() |
514 | { | 524 | { |
515 | config()->setGroup("General"); | 525 | config()->setGroup("General"); |
516 | config()->writeEntry("Custom Categories",mCustomCategories); | 526 | config()->writeEntry("Custom Categories",mCustomCategories); |
517 | 527 | ||
518 | config()->setGroup("Personal Settings"); | 528 | config()->setGroup("Personal Settings"); |
519 | config()->writeEntry("user_name",mName); | 529 | config()->writeEntry("user_name",mName); |
520 | config()->writeEntry("user_email",mEmail); | 530 | config()->writeEntry("user_email",mEmail); |
521 | 531 | ||
522 | config()->setGroup("Category Colors"); | 532 | config()->setGroup("Category Colors"); |
523 | QDictIterator<QColor> it(mCategoryColors); | 533 | QDictIterator<QColor> it(mCategoryColors); |
524 | while (it.current()) { | 534 | while (it.current()) { |
525 | config()->writeEntry(it.currentKey(),*(it.current())); | 535 | config()->writeEntry(it.currentKey(),*(it.current())); |
526 | ++it; | 536 | ++it; |
527 | } | 537 | } |
528 | KConfig fc (locateLocal("config","kopicalendarrc")); | 538 | KConfig fc (locateLocal("config","kopicalendarrc")); |
529 | fc.setGroup("CC"); | 539 | fc.setGroup("CC"); |
530 | fc.writeEntry("NumberCalendars",mCalendars.count()); | 540 | fc.writeEntry("NumberCalendars",mCalendars.count()); |
531 | int numCal = 1; | 541 | int numCal = 1; |
532 | int writeCal = 0; | 542 | int writeCal = 0; |
533 | while ( numCal < mNextAvailableCalendar ) { | 543 | while ( numCal < mNextAvailableCalendar ) { |
534 | KopiCalendarFile * kkf = mCalendars.first(); | 544 | KopiCalendarFile * kkf = mCalendars.first(); |
535 | while ( kkf ) { | 545 | while ( kkf ) { |
536 | //qDebug("cal num %d %d ", kkf->mCalNumber, numCal); | 546 | //qDebug("cal num %d %d ", kkf->mCalNumber, numCal); |
537 | if ( kkf->mCalNumber == numCal ) { | 547 | if ( kkf->mCalNumber == numCal ) { |
538 | ++writeCal; | 548 | ++writeCal; |
539 | //qDebug("Write calendar %d %d ", numCal , writeCal); | 549 | //qDebug("Write calendar %d %d ", numCal , writeCal); |
540 | QString prefix = "Cal_" + QString::number( writeCal ); | 550 | QString prefix = "Cal_" + QString::number( writeCal ); |
541 | fc.writeEntry( prefix+"_isStandard", kkf->isStandard ); | 551 | fc.writeEntry( prefix+"_isStandard", kkf->isStandard ); |
542 | fc.writeEntry( prefix+"_isEnabled", kkf->isEnabled ); | 552 | fc.writeEntry( prefix+"_isEnabled", kkf->isEnabled ); |
543 | fc.writeEntry( prefix+"_isAlarmEnabled", kkf->isAlarmEnabled ); | 553 | fc.writeEntry( prefix+"_isAlarmEnabled", kkf->isAlarmEnabled ); |
544 | fc.writeEntry( prefix+"_isReadOnly", kkf->isReadOnly ); | 554 | fc.writeEntry( prefix+"_isReadOnly", kkf->isReadOnly ); |
545 | fc.writeEntry( prefix+"_Name", kkf->mName); | 555 | fc.writeEntry( prefix+"_Name", kkf->mName); |
546 | fc.writeEntry( prefix+"_FileName", kkf->mFileName); | 556 | fc.writeEntry( prefix+"_FileName", kkf->mFileName); |
547 | fc.writeEntry( prefix+"_Color",kkf->mDefaultColor); | 557 | fc.writeEntry( prefix+"_Color",kkf->mDefaultColor); |
548 | } | 558 | } |
549 | kkf = mCalendars.next(); | 559 | kkf = mCalendars.next(); |
550 | } | 560 | } |
551 | ++numCal; | 561 | ++numCal; |
552 | } | 562 | } |
553 | fc.sync(); | 563 | fc.sync(); |
554 | KPimPrefs::usrWriteConfig(); | 564 | KPimPrefs::usrWriteConfig(); |
555 | } | 565 | } |
556 | 566 | ||
557 | void KOPrefs::setCategoryColor(QString cat,const QColor & color) | 567 | void KOPrefs::setCategoryColor(QString cat,const QColor & color) |
558 | { | 568 | { |
559 | mCategoryColors.replace(cat,new QColor(color)); | 569 | mCategoryColors.replace(cat,new QColor(color)); |
560 | } | 570 | } |
561 | 571 | ||
562 | QColor *KOPrefs::categoryColor(QString cat) | 572 | QColor *KOPrefs::categoryColor(QString cat) |
563 | { | 573 | { |
564 | QColor *color = 0; | 574 | QColor *color = 0; |
565 | 575 | ||
566 | if (!cat.isEmpty()) color = mCategoryColors[cat]; | 576 | if (!cat.isEmpty()) color = mCategoryColors[cat]; |
567 | 577 | ||
568 | if (color) return color; | 578 | if (color) return color; |
569 | else return &mDefaultCategoryColor; | 579 | else return &mDefaultCategoryColor; |
570 | } | 580 | } |
571 | 581 | ||
572 | void KOPrefs::setFullName(const QString &name) | 582 | void KOPrefs::setFullName(const QString &name) |
573 | { | 583 | { |
574 | mName = name; | 584 | mName = name; |
575 | } | 585 | } |
576 | 586 | ||
577 | void KOPrefs::setEmail(const QString &email) | 587 | void KOPrefs::setEmail(const QString &email) |
578 | { | 588 | { |
579 | //qDebug(" KOPrefs::setEmai*********** %s",email.latin1() ); | 589 | //qDebug(" KOPrefs::setEmai*********** %s",email.latin1() ); |
580 | mEmail = email; | 590 | mEmail = email; |
581 | } | 591 | } |
582 | 592 | ||
583 | QString KOPrefs::fullName() | 593 | QString KOPrefs::fullName() |
584 | { | 594 | { |
585 | if (mEmailControlCenter) { | 595 | if (mEmailControlCenter) { |
586 | KEMailSettings settings; | 596 | KEMailSettings settings; |
587 | return settings.getSetting(KEMailSettings::RealName); | 597 | return settings.getSetting(KEMailSettings::RealName); |
588 | } else { | 598 | } else { |
589 | return mName; | 599 | return mName; |
590 | } | 600 | } |
591 | } | 601 | } |
592 | 602 | ||
593 | QString KOPrefs::email() | 603 | QString KOPrefs::email() |
594 | { | 604 | { |
595 | if (mEmailControlCenter) { | 605 | if (mEmailControlCenter) { |
596 | KEMailSettings settings; | 606 | KEMailSettings settings; |
597 | return settings.getSetting(KEMailSettings::EmailAddress); | 607 | return settings.getSetting(KEMailSettings::EmailAddress); |
598 | } else { | 608 | } else { |
599 | return mEmail; | 609 | return mEmail; |
600 | } | 610 | } |
601 | } | 611 | } |
602 | KConfig* KOPrefs::getConfig() | 612 | KConfig* KOPrefs::getConfig() |
603 | { | 613 | { |
604 | return config(); | 614 | return config(); |
605 | } | 615 | } |
diff --git a/korganizer/koprefs.h b/korganizer/koprefs.h index 53d193b..7ec5327 100644 --- a/korganizer/koprefs.h +++ b/korganizer/koprefs.h | |||
@@ -1,357 +1,358 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of KOrganizer. | 2 | This file is part of KOrganizer. |
3 | Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org> | 3 | Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org> |
4 | 4 | ||
5 | This program is free software; you can redistribute it and/or modify | 5 | This program is free software; you can redistribute it and/or modify |
6 | it under the terms of the GNU General Public License as published by | 6 | it under the terms of the GNU General Public License as published by |
7 | the Free Software Foundation; either version 2 of the License, or | 7 | the Free Software Foundation; either version 2 of the License, or |
8 | (at your option) any later version. | 8 | (at your option) any later version. |
9 | 9 | ||
10 | This program is distributed in the hope that it will be useful, | 10 | This program is distributed in the hope that it will be useful, |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
13 | GNU General Public License for more details. | 13 | GNU General Public License for more details. |
14 | 14 | ||
15 | You should have received a copy of the GNU General Public License | 15 | You should have received a copy of the GNU General Public License |
16 | along with this program; if not, write to the Free Software | 16 | along with this program; if not, write to the Free Software |
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
18 | 18 | ||
19 | As a special exception, permission is given to link this program | 19 | As a special exception, permission is given to link this program |
20 | with any edition of Qt, and distribute the resulting executable, | 20 | with any edition of Qt, and distribute the resulting executable, |
21 | without including the source code for Qt in the source distribution. | 21 | without including the source code for Qt in the source distribution. |
22 | */ | 22 | */ |
23 | #ifndef KOPREFS_H | 23 | #ifndef KOPREFS_H |
24 | #define KOPREFS_H | 24 | #define KOPREFS_H |
25 | 25 | ||
26 | 26 | ||
27 | #include <libkdepim/kpimprefs.h> | 27 | #include <libkdepim/kpimprefs.h> |
28 | #include <qdict.h> | 28 | #include <qdict.h> |
29 | #include <qdir.h> | 29 | #include <qdir.h> |
30 | #include <qobject.h> | 30 | #include <qobject.h> |
31 | 31 | ||
32 | class KConfig; | 32 | class KConfig; |
33 | class QFont; | 33 | class QFont; |
34 | class QColor; | 34 | class QColor; |
35 | class QStringList; | 35 | class QStringList; |
36 | 36 | ||
37 | #define VIEW_WN_VIEW 1 | 37 | #define VIEW_WN_VIEW 1 |
38 | #define VIEW_NX_VIEW 2 | 38 | #define VIEW_NX_VIEW 2 |
39 | #define VIEW_J_VIEW 3 | 39 | #define VIEW_J_VIEW 3 |
40 | #define VIEW_A_VIEW 4 | 40 | #define VIEW_A_VIEW 4 |
41 | #define VIEW_ML_VIEW 5 | 41 | #define VIEW_ML_VIEW 5 |
42 | #define VIEW_M_VIEW 6 | 42 | #define VIEW_M_VIEW 6 |
43 | #define VIEW_L_VIEW 7 | 43 | #define VIEW_L_VIEW 7 |
44 | #define VIEW_T_VIEW 8 | 44 | #define VIEW_T_VIEW 8 |
45 | 45 | ||
46 | class KopiCalendarFile : public QObject | 46 | class KopiCalendarFile : public QObject |
47 | { | 47 | { |
48 | public: | 48 | public: |
49 | KopiCalendarFile( ) : QObject( ) | 49 | KopiCalendarFile( ) : QObject( ) |
50 | { | 50 | { |
51 | isStandard = false; | 51 | isStandard = false; |
52 | isEnabled = true; | 52 | isEnabled = true; |
53 | isAlarmEnabled = true; | 53 | isAlarmEnabled = true; |
54 | isReadOnly = false; | 54 | isReadOnly = false; |
55 | mName = "Calendar"; | 55 | mName = "Calendar"; |
56 | mFileName = QDir::homeDirPath() + "/icalfile.ics"; | 56 | mFileName = QDir::homeDirPath() + "/icalfile.ics"; |
57 | mCalNumber = 0; | 57 | mCalNumber = 0; |
58 | mDefaultColor = Qt::red; | 58 | mDefaultColor = Qt::red; |
59 | mErrorOnLoad = false; | 59 | mErrorOnLoad = false; |
60 | } | 60 | } |
61 | bool isStandard; | 61 | bool isStandard; |
62 | bool isEnabled; | 62 | bool isEnabled; |
63 | bool isAlarmEnabled; | 63 | bool isAlarmEnabled; |
64 | bool isReadOnly; | 64 | bool isReadOnly; |
65 | bool mErrorOnLoad; | 65 | bool mErrorOnLoad; |
66 | QString mName; | 66 | QString mName; |
67 | QString mFileName; | 67 | QString mFileName; |
68 | int mCalNumber; | 68 | int mCalNumber; |
69 | QColor mDefaultColor; | 69 | QColor mDefaultColor; |
70 | QDateTime mLoadDt; | 70 | QDateTime mLoadDt; |
71 | }; | 71 | }; |
72 | class KOPrefs : public KPimPrefs | 72 | class KOPrefs : public KPimPrefs |
73 | { | 73 | { |
74 | public: | 74 | public: |
75 | enum { FormatVCalendar, FormatICalendar }; | 75 | enum { FormatVCalendar, FormatICalendar }; |
76 | enum { MailClientKMail, MailClientSendmail }; | 76 | enum { MailClientKMail, MailClientSendmail }; |
77 | enum { IMIPDummy, IMIPKMail }; | 77 | enum { IMIPDummy, IMIPKMail }; |
78 | enum { IMIPOutbox, IMIPdirectsend }; | 78 | enum { IMIPOutbox, IMIPdirectsend }; |
79 | enum { neverAuto, addressbookAuto, selectedAuto }; | 79 | enum { neverAuto, addressbookAuto, selectedAuto }; |
80 | enum { standardDestination, askDestination }; | 80 | enum { standardDestination, askDestination }; |
81 | 81 | ||
82 | virtual ~KOPrefs(); | 82 | virtual ~KOPrefs(); |
83 | 83 | ||
84 | /** Get instance of KOPrefs. It is made sure that there is only one | 84 | /** Get instance of KOPrefs. It is made sure that there is only one |
85 | instance. */ | 85 | instance. */ |
86 | static KOPrefs *instance(); | 86 | static KOPrefs *instance(); |
87 | 87 | ||
88 | /** Set preferences to default values */ | 88 | /** Set preferences to default values */ |
89 | void usrSetDefaults(); | 89 | void usrSetDefaults(); |
90 | 90 | ||
91 | /** Read preferences from config file */ | 91 | /** Read preferences from config file */ |
92 | void usrReadConfig(); | 92 | void usrReadConfig(); |
93 | 93 | ||
94 | /** Write preferences to config file */ | 94 | /** Write preferences to config file */ |
95 | void usrWriteConfig(); | 95 | void usrWriteConfig(); |
96 | void setCategoryDefaults(); | 96 | void setCategoryDefaults(); |
97 | void setAllDefaults(); | 97 | void setAllDefaults(); |
98 | KopiCalendarFile * getNewCalendar(); | 98 | KopiCalendarFile * getNewCalendar(); |
99 | KopiCalendarFile * getCalendar( int ); | 99 | KopiCalendarFile * getCalendar( int ); |
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 | ||
106 | /** Fill empty mail fields with default values. */ | 107 | /** Fill empty mail fields with default values. */ |
107 | void fillMailDefaults(); | 108 | void fillMailDefaults(); |
108 | 109 | ||
109 | private: | 110 | private: |
110 | /** Constructor disabled for public. Use instance() to create a KOPrefs | 111 | /** Constructor disabled for public. Use instance() to create a KOPrefs |
111 | object. */ | 112 | object. */ |
112 | KOPrefs(); | 113 | KOPrefs(); |
113 | 114 | ||
114 | static KOPrefs *mInstance; | 115 | static KOPrefs *mInstance; |
115 | QStringList getDefaultList(); | 116 | QStringList getDefaultList(); |
116 | QStringList getLocationDefaultList(); | 117 | QStringList getLocationDefaultList(); |
117 | public: | 118 | public: |
118 | // preferences data | 119 | // preferences data |
119 | KConfig* getConfig(); | 120 | KConfig* getConfig(); |
120 | void setFullName(const QString &); | 121 | void setFullName(const QString &); |
121 | QString fullName(); | 122 | QString fullName(); |
122 | void setEmail(const QString &); | 123 | void setEmail(const QString &); |
123 | QString email(); | 124 | QString email(); |
124 | 125 | ||
125 | QString mAdditional; | 126 | QString mAdditional; |
126 | 127 | ||
127 | bool mEmailControlCenter; | 128 | bool mEmailControlCenter; |
128 | 129 | ||
129 | bool mBcc; | 130 | bool mBcc; |
130 | bool mAutoSave; | 131 | bool mAutoSave; |
131 | int mAutoSaveInterval; | 132 | int mAutoSaveInterval; |
132 | bool mConfirm; | 133 | bool mConfirm; |
133 | 134 | ||
134 | bool mEnableGroupScheduling; | 135 | bool mEnableGroupScheduling; |
135 | bool mEnableProjectView; | 136 | bool mEnableProjectView; |
136 | 137 | ||
137 | int mDefaultFormat; | 138 | int mDefaultFormat; |
138 | int mMailClient; | 139 | int mMailClient; |
139 | 140 | ||
140 | int mStartTime; | 141 | int mStartTime; |
141 | int mDefaultDuration; | 142 | int mDefaultDuration; |
142 | int mAlarmTime; | 143 | int mAlarmTime; |
143 | 144 | ||
144 | int mWorkingHoursStart; | 145 | int mWorkingHoursStart; |
145 | int mWorkingHoursEnd; | 146 | int mWorkingHoursEnd; |
146 | bool mExcludeHolidays; | 147 | bool mExcludeHolidays; |
147 | bool mExcludeSaturdays; | 148 | bool mExcludeSaturdays; |
148 | bool mMarcusBainsShowSeconds; | 149 | bool mMarcusBainsShowSeconds; |
149 | 150 | ||
150 | QFont mTimeBarFont; | 151 | QFont mTimeBarFont; |
151 | QFont mMonthViewFont; | 152 | QFont mMonthViewFont; |
152 | QFont mAgendaViewFont; | 153 | QFont mAgendaViewFont; |
153 | QFont mMarcusBainsFont; | 154 | QFont mMarcusBainsFont; |
154 | QFont mTimeLabelsFont; | 155 | QFont mTimeLabelsFont; |
155 | QFont mTodoViewFont; | 156 | QFont mTodoViewFont; |
156 | QFont mListViewFont; | 157 | QFont mListViewFont; |
157 | QFont mDateNavigatorFont; | 158 | QFont mDateNavigatorFont; |
158 | QFont mEditBoxFont; | 159 | QFont mEditBoxFont; |
159 | QFont mJornalViewFont; | 160 | QFont mJornalViewFont; |
160 | QFont mWhatsNextFont; | 161 | QFont mWhatsNextFont; |
161 | QFont mEventViewFont; | 162 | QFont mEventViewFont; |
162 | 163 | ||
163 | 164 | ||
164 | 165 | ||
165 | 166 | ||
166 | QColor mHolidayColor; | 167 | QColor mHolidayColor; |
167 | QColor mHighlightColor; | 168 | QColor mHighlightColor; |
168 | QColor mEventColor; | 169 | QColor mEventColor; |
169 | QColor mTodoDoneColor; | 170 | QColor mTodoDoneColor; |
170 | QColor mAgendaBgColor; | 171 | QColor mAgendaBgColor; |
171 | QColor mWorkingHoursColor; | 172 | QColor mWorkingHoursColor; |
172 | QColor mTodoDueTodayColor; | 173 | QColor mTodoDueTodayColor; |
173 | QColor mTodoOverdueColor; | 174 | QColor mTodoOverdueColor; |
174 | QColor mTodoRunColor; | 175 | QColor mTodoRunColor; |
175 | QColor mMonthViewEvenColor; | 176 | QColor mMonthViewEvenColor; |
176 | QColor mMonthViewOddColor; | 177 | QColor mMonthViewOddColor; |
177 | QColor mMonthViewHolidayColor; | 178 | QColor mMonthViewHolidayColor; |
178 | bool mMonthViewUsesDayColors; | 179 | bool mMonthViewUsesDayColors; |
179 | bool mMonthViewSatSunTog; | 180 | bool mMonthViewSatSunTog; |
180 | bool mMonthViewWeek; | 181 | bool mMonthViewWeek; |
181 | QColor mAppColor1; | 182 | QColor mAppColor1; |
182 | QColor mAppColor2; | 183 | QColor mAppColor2; |
183 | bool mUseAppColors; | 184 | bool mUseAppColors; |
184 | 185 | ||
185 | int mDayBegins; | 186 | int mDayBegins; |
186 | int mHourSize; | 187 | int mHourSize; |
187 | int mAllDaySize; | 188 | int mAllDaySize; |
188 | bool mShowFullMenu; | 189 | bool mShowFullMenu; |
189 | bool mDailyRecur; | 190 | bool mDailyRecur; |
190 | bool mWeeklyRecur; | 191 | bool mWeeklyRecur; |
191 | bool mMonthDailyRecur; | 192 | bool mMonthDailyRecur; |
192 | bool mMonthWeeklyRecur; | 193 | bool mMonthWeeklyRecur; |
193 | bool mMonthShowIcons; | 194 | bool mMonthShowIcons; |
194 | bool mMonthShowTimes; | 195 | bool mMonthShowTimes; |
195 | bool mMonthShowShort; | 196 | bool mMonthShowShort; |
196 | bool mEnableToolTips; | 197 | bool mEnableToolTips; |
197 | bool mEnableMonthScroll; | 198 | bool mEnableMonthScroll; |
198 | bool mFullViewMonth; | 199 | bool mFullViewMonth; |
199 | bool mMonthViewUsesCategoryColor; | 200 | bool mMonthViewUsesCategoryColor; |
200 | bool mFullViewTodo; | 201 | bool mFullViewTodo; |
201 | bool mShowCompletedTodo; | 202 | bool mShowCompletedTodo; |
202 | bool mMarcusBainsEnabled; | 203 | bool mMarcusBainsEnabled; |
203 | int mNextXDays; | 204 | int mNextXDays; |
204 | int mWhatsNextDays; | 205 | int mWhatsNextDays; |
205 | int mWhatsNextPrios; | 206 | int mWhatsNextPrios; |
206 | bool mEnableQuickTodo; | 207 | bool mEnableQuickTodo; |
207 | 208 | ||
208 | bool mCompactDialogs; | 209 | bool mCompactDialogs; |
209 | bool mVerticalScreen; | 210 | bool mVerticalScreen; |
210 | 211 | ||
211 | bool mShowIconNewTodo; | 212 | bool mShowIconNewTodo; |
212 | bool mShowIconNewEvent; | 213 | bool mShowIconNewEvent; |
213 | bool mShowIconSearch; | 214 | bool mShowIconSearch; |
214 | bool mShowIconList; | 215 | bool mShowIconList; |
215 | bool mShowIconDay1; | 216 | bool mShowIconDay1; |
216 | bool mShowIconDay5; | 217 | bool mShowIconDay5; |
217 | bool mShowIconDay6; | 218 | bool mShowIconDay6; |
218 | bool mShowIconDay7; | 219 | bool mShowIconDay7; |
219 | bool mShowIconMonth; | 220 | bool mShowIconMonth; |
220 | bool mShowIconTodoview; | 221 | bool mShowIconTodoview; |
221 | bool mShowIconBackFast; | 222 | bool mShowIconBackFast; |
222 | bool mShowIconBack; | 223 | bool mShowIconBack; |
223 | bool mShowIconToday; | 224 | bool mShowIconToday; |
224 | bool mShowIconForward; | 225 | bool mShowIconForward; |
225 | bool mShowIconForwardFast; | 226 | bool mShowIconForwardFast; |
226 | bool mShowIconWhatsThis; | 227 | bool mShowIconWhatsThis; |
227 | bool mShowIconWeekNum; | 228 | bool mShowIconWeekNum; |
228 | bool mShowIconNextDays; | 229 | bool mShowIconNextDays; |
229 | bool mShowIconNext; | 230 | bool mShowIconNext; |
230 | bool mShowIconJournal; | 231 | bool mShowIconJournal; |
231 | bool mShowIconFilter; | 232 | bool mShowIconFilter; |
232 | bool mShowIconOnetoolbar; | 233 | bool mShowIconOnetoolbar; |
233 | bool mShowIconNavigator; | 234 | bool mShowIconNavigator; |
234 | bool mShowIconAllday; | 235 | bool mShowIconAllday; |
235 | bool mShowIconFilterview; | 236 | bool mShowIconFilterview; |
236 | bool mShowIconToggleFull; | 237 | bool mShowIconToggleFull; |
237 | 238 | ||
238 | bool mShowIconStretch; | 239 | bool mShowIconStretch; |
239 | 240 | ||
240 | bool mToolBarHor; | 241 | bool mToolBarHor; |
241 | bool mToolBarUp; | 242 | bool mToolBarUp; |
242 | bool mToolBarHorV; | 243 | bool mToolBarHorV; |
243 | bool mToolBarUpV; | 244 | bool mToolBarUpV; |
244 | bool mToolBarHorN; | 245 | bool mToolBarHorN; |
245 | bool mToolBarUpN; | 246 | bool mToolBarUpN; |
246 | bool mToolBarHorF; | 247 | bool mToolBarHorF; |
247 | bool mToolBarUpF; | 248 | bool mToolBarUpF; |
248 | bool mToolBarMiniIcons; | 249 | bool mToolBarMiniIcons; |
249 | 250 | ||
250 | bool mAskForQuit; | 251 | bool mAskForQuit; |
251 | bool mUsePassWd; | 252 | bool mUsePassWd; |
252 | bool mShowSyncEvents; | 253 | bool mShowSyncEvents; |
253 | bool mShowTodoInAgenda; | 254 | bool mShowTodoInAgenda; |
254 | bool mShowCompletedTodoInAgenda; | 255 | bool mShowCompletedTodoInAgenda; |
255 | bool mShowTimeInAgenda; | 256 | bool mShowTimeInAgenda; |
256 | bool mHideNonStartedTodos; | 257 | bool mHideNonStartedTodos; |
257 | 258 | ||
258 | bool mBlockPopupMenu; | 259 | bool mBlockPopupMenu; |
259 | 260 | ||
260 | int mLastSyncTime; | 261 | int mLastSyncTime; |
261 | void setCategoryColor(QString cat,const QColor & color); | 262 | void setCategoryColor(QString cat,const QColor & color); |
262 | QColor *categoryColor(QString cat); | 263 | QColor *categoryColor(QString cat); |
263 | 264 | ||
264 | QString mArchiveFile; | 265 | QString mArchiveFile; |
265 | QString mHtmlExportFile; | 266 | QString mHtmlExportFile; |
266 | bool mHtmlWithSave; | 267 | bool mHtmlWithSave; |
267 | 268 | ||
268 | QStringList mSelectedPlugins; | 269 | QStringList mSelectedPlugins; |
269 | 270 | ||
270 | QString mLastImportFile; | 271 | QString mLastImportFile; |
271 | QString mLastVcalFile; | 272 | QString mLastVcalFile; |
272 | QString mLastSaveFile; | 273 | QString mLastSaveFile; |
273 | QString mLastLoadFile; | 274 | QString mLastLoadFile; |
274 | 275 | ||
275 | 276 | ||
276 | QString mDefaultAlarmFile; | 277 | QString mDefaultAlarmFile; |
277 | int mIMIPScheduler; | 278 | int mIMIPScheduler; |
278 | int mIMIPSend; | 279 | int mIMIPSend; |
279 | QStringList mAdditionalMails; | 280 | QStringList mAdditionalMails; |
280 | int mIMIPAutoRefresh; | 281 | int mIMIPAutoRefresh; |
281 | int mIMIPAutoInsertReply; | 282 | int mIMIPAutoInsertReply; |
282 | int mIMIPAutoInsertRequest; | 283 | int mIMIPAutoInsertRequest; |
283 | int mIMIPAutoFreeBusy; | 284 | int mIMIPAutoFreeBusy; |
284 | int mIMIPAutoFreeBusyReply; | 285 | int mIMIPAutoFreeBusyReply; |
285 | 286 | ||
286 | QStringList mTodoTemplates; | 287 | QStringList mTodoTemplates; |
287 | QStringList mEventTemplates; | 288 | QStringList mEventTemplates; |
288 | 289 | ||
289 | int mDestination; | 290 | int mDestination; |
290 | 291 | ||
291 | 292 | ||
292 | bool mEditOnDoubleClick; | 293 | bool mEditOnDoubleClick; |
293 | bool mViewChangeHoldFullscreen; | 294 | bool mViewChangeHoldFullscreen; |
294 | bool mViewChangeHoldNonFullscreen; | 295 | bool mViewChangeHoldNonFullscreen; |
295 | bool mCenterOnCurrentTime; | 296 | bool mCenterOnCurrentTime; |
296 | bool mSetTimeToDayStartAt; | 297 | bool mSetTimeToDayStartAt; |
297 | bool mHighlightCurrentDay; | 298 | bool mHighlightCurrentDay; |
298 | bool mUseHighlightLightColor; | 299 | bool mUseHighlightLightColor; |
299 | bool mListViewMonthTimespan; | 300 | bool mListViewMonthTimespan; |
300 | bool mWNViewShowsParents; | 301 | bool mWNViewShowsParents; |
301 | bool mWNViewShowsPast; | 302 | bool mWNViewShowsPast; |
302 | bool mWNViewShowLocation; | 303 | bool mWNViewShowLocation; |
303 | bool mTodoViewShowsPercentage; | 304 | bool mTodoViewShowsPercentage; |
304 | bool mTodoViewUsesCatColors; | 305 | bool mTodoViewUsesCatColors; |
305 | bool mMonthViewUsesBigFont; | 306 | bool mMonthViewUsesBigFont; |
306 | bool mTodoViewUsesSmallFont; | 307 | bool mTodoViewUsesSmallFont; |
307 | bool mTodoViewUsesForegroundColor; | 308 | bool mTodoViewUsesForegroundColor; |
308 | bool mMonthViewUsesForegroundColor; | 309 | bool mMonthViewUsesForegroundColor; |
309 | 310 | ||
310 | bool mHightlightDateTimeEdit; | 311 | bool mHightlightDateTimeEdit; |
311 | bool mShortDateInViewer; | 312 | bool mShortDateInViewer; |
312 | 313 | ||
313 | bool mShowDateNavigator; | 314 | bool mShowDateNavigator; |
314 | 315 | ||
315 | QStringList mLocationDefaults; | 316 | QStringList mLocationDefaults; |
316 | QStringList mEventSummaryUser; | 317 | QStringList mEventSummaryUser; |
317 | QStringList mTodoSummaryUser; | 318 | QStringList mTodoSummaryUser; |
318 | QStringList mJournalSummaryUser; | 319 | QStringList mJournalSummaryUser; |
319 | 320 | ||
320 | bool mUseInternalAlarmNotification; | 321 | bool mUseInternalAlarmNotification; |
321 | int mAlarmPlayBeeps; | 322 | int mAlarmPlayBeeps; |
322 | int mAlarmSuspendTime; | 323 | int mAlarmSuspendTime; |
323 | int mAlarmSuspendCount; | 324 | int mAlarmSuspendCount; |
324 | int mAlarmBeepInterval; | 325 | int mAlarmBeepInterval; |
325 | int mOldLanguage; | 326 | int mOldLanguage; |
326 | int mOldLoadedLanguage; | 327 | int mOldLoadedLanguage; |
327 | 328 | ||
328 | 329 | ||
329 | QString mActiveSyncPort; | 330 | QString mActiveSyncPort; |
330 | QString mActiveSyncIP; | 331 | QString mActiveSyncIP; |
331 | 332 | ||
332 | // settings for eventviewer | 333 | // settings for eventviewer |
333 | bool mEVshowDetails; | 334 | bool mEVshowDetails; |
334 | bool mEVshowCreated; | 335 | bool mEVshowCreated; |
335 | bool mEVshowChanged; | 336 | bool mEVshowChanged; |
336 | bool mWTshowDetails; | 337 | bool mWTshowDetails; |
337 | bool mWTshowCreated; | 338 | bool mWTshowCreated; |
338 | bool mWTshowChanged; | 339 | bool mWTshowChanged; |
339 | 340 | ||
340 | int mCurrentDisplayedView; | 341 | int mCurrentDisplayedView; |
341 | QPtrList<KopiCalendarFile> mCalendars; | 342 | QPtrList<KopiCalendarFile> mCalendars; |
342 | int mNextAvailableCalendar; | 343 | int mNextAvailableCalendar; |
343 | 344 | ||
344 | private: | 345 | private: |
345 | QDict<QColor> mCategoryColors; | 346 | QDict<QColor> mCategoryColors; |
346 | QArray<KopiCalendarFile*> mDefCalColors; | 347 | QArray<KopiCalendarFile*> mDefCalColors; |
347 | QColor mDefaultCategoryColor; | 348 | QColor mDefaultCategoryColor; |
348 | 349 | ||
349 | QFont mDefaultTimeBarFont; | 350 | QFont mDefaultTimeBarFont; |
350 | QFont mDefaultViewFont; | 351 | QFont mDefaultViewFont; |
351 | QFont mDefaultMonthViewFont; | 352 | QFont mDefaultMonthViewFont; |
352 | 353 | ||
353 | QString mName; | 354 | QString mName; |
354 | QString mEmail; | 355 | QString mEmail; |
355 | }; | 356 | }; |
356 | 357 | ||
357 | #endif | 358 | #endif |