summaryrefslogtreecommitdiffabout
path: root/korganizer
authorzautrix <zautrix>2005-03-25 19:42:13 (UTC)
committer zautrix <zautrix>2005-03-25 19:42:13 (UTC)
commitae440bf75e7f74f35f83d082de9c7a34d2d3c65d (patch) (unidiff)
treec1aa1e79a58463081e207479ee0ccad5c9f8e9cf /korganizer
parent89a72c007045dcfa5dbf57012b4cf0c2aebd1495 (diff)
downloadkdepimpi-ae440bf75e7f74f35f83d082de9c7a34d2d3c65d.zip
kdepimpi-ae440bf75e7f74f35f83d082de9c7a34d2d3c65d.tar.gz
kdepimpi-ae440bf75e7f74f35f83d082de9c7a34d2d3c65d.tar.bz2
layout fixes
Diffstat (limited to 'korganizer') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/koagendaview.cpp32
-rw-r--r--korganizer/koeditorgeneral.cpp34
2 files changed, 31 insertions, 35 deletions
diff --git a/korganizer/koagendaview.cpp b/korganizer/koagendaview.cpp
index 5508210..f287216 100644
--- a/korganizer/koagendaview.cpp
+++ b/korganizer/koagendaview.cpp
@@ -118,49 +118,61 @@ void TimeLabels::drawContents(QPainter *p,int cx, int cy, int cw, int ch)
118 // these two assignments fix the weird redraw bug 118 // these two assignments fix the weird redraw bug
119 cx = contentsX() + 2; 119 cx = contentsX() + 2;
120 cw = contentsWidth() - 2; 120 cw = contentsWidth() - 2;
121 // end of workaround 121 // end of workaround
122 122
123 int cell = ((int)(cy/mCellHeight)); 123 int cell = ((int)(cy/mCellHeight));
124 int y = cell * mCellHeight; 124 int y = cell * mCellHeight;
125 QFontMetrics fm = fontMetrics(); 125 QFontMetrics fm = fontMetrics();
126 QString hour; 126 QString hour;
127 QString suffix; 127 QString suffix;
128 QString fullTime; 128 QString fullTime;
129 int tW = fm.width("24:00i"); 129 int tW = fm.width("24:00i");
130 int timeHeight = fm.height();
131 if ( timeHeight > mCellHeight )
132 timeHeight = mCellHeight-1;
133 int borderWidth = 5;
134 QFont nFont = p->font();
135 QFont sFont = nFont;
136 sFont.setPointSize( sFont.pointSize()/2+2 );
137 if (!KGlobal::locale()->use12Clock())
138 suffix = "00";
139 QFontMetrics fmS( sFont );
140 int sHei = fmS.height();
130 141
131 while (y < cy + ch) { 142 while (y < cy + ch) {
132 p->drawLine(cx,y,cx+tW,y); 143 p->drawLine(cx,y,cx+tW,y);
133 hour.setNum(cell); 144 hour.setNum(cell);
134 suffix = "am";
135 145
136 // handle 24h and am/pm time formats 146 // handle 24h and am/pm time formats
137 if (KGlobal::locale()->use12Clock()) { 147 if (KGlobal::locale()->use12Clock()) {
138 if (cell > 11) suffix = "pm"; 148 if (cell > 11) suffix = "pm";
149 else
150 suffix = "am";
139 if (cell == 0) hour.setNum(12); 151 if (cell == 0) hour.setNum(12);
140 if (cell > 12) hour.setNum(cell - 12); 152 if (cell > 12) hour.setNum(cell - 12);
141 } else {
142 suffix = ":00";
143 } 153 }
144 154
145 // create string in format of "XX:XX" or "XXpm/am" 155 // create string in format of "XX:XX" or "XXpm/am"
146 fullTime = hour + suffix; 156 fullTime = hour;// + suffix;
147 157
148 // center and draw the time label 158 // center and draw the time label
149 int timeWidth = fm.width(fullTime+"i"); 159 int timeWidth = fm.width(fullTime+"i");
150 int offset = this->width() - timeWidth; 160 int tw2 = fm.width(suffix);
151 int borderWidth = 5; 161 int offset = this->width() - timeWidth - tw2;
152 int timeHeight = fm.height(); 162 p->setFont( nFont );
153 timeHeight = timeHeight + 2 - ( timeHeight / 4 ); 163 p->drawText(cx - borderWidth + offset, y+ timeHeight, fullTime);
154 p->drawText(cx -borderWidth + offset, y+ timeHeight, fullTime); 164 p->setFont( sFont );
165 offset += timeWidth;
166 p->drawText(cx - borderWidth + offset, y+ sHei, suffix);
155 167
156 // increment indices 168 // increment indices
157 y += mCellHeight; 169 y += mCellHeight;
158 cell++; 170 cell++;
159 } 171 }
160} 172}
161 173
162/** 174/**
163 Calculates the minimum width. 175 Calculates the minimum width.
164*/ 176*/
165int TimeLabels::minimumWidth() const 177int TimeLabels::minimumWidth() const
166{ 178{
@@ -871,26 +883,24 @@ void KOAgendaView::updateView()
871} 883}
872 884
873 885
874/* 886/*
875 Update configuration settings for the agenda view. This method is not 887 Update configuration settings for the agenda view. This method is not
876 complete. 888 complete.
877*/ 889*/
878void KOAgendaView::updateConfig() 890void KOAgendaView::updateConfig()
879{ 891{
880 if ( mBlockUpdating ) 892 if ( mBlockUpdating )
881 return; 893 return;
882 894
883
884
885 // update config for children 895 // update config for children
886 mTimeLabels->updateConfig(); 896 mTimeLabels->updateConfig();
887 mAgenda->storePosition(); 897 mAgenda->storePosition();
888 mAgenda->updateConfig(); 898 mAgenda->updateConfig();
889 mAllDayAgenda->updateConfig(); 899 mAllDayAgenda->updateConfig();
890 // widget synchronization 900 // widget synchronization
891 //TODO: find a better way, maybe signal/slot 901 //TODO: find a better way, maybe signal/slot
892 mTimeLabels->positionChanged(); 902 mTimeLabels->positionChanged();
893 903
894 // for some reason, this needs to be called explicitly 904 // for some reason, this needs to be called explicitly
895 mTimeLabels->repaint(); 905 mTimeLabels->repaint();
896 906
diff --git a/korganizer/koeditorgeneral.cpp b/korganizer/koeditorgeneral.cpp
index 4ee5292..cf0d4ae 100644
--- a/korganizer/koeditorgeneral.cpp
+++ b/korganizer/koeditorgeneral.cpp
@@ -219,80 +219,75 @@ void KOEditorGeneral::initAlarm(QWidget *parent,QBoxLayout *topLayout)
219 // if ( KOPrefs::instance()->mCompactDialogs ) { 219 // if ( KOPrefs::instance()->mCompactDialogs ) {
220 // mAlarmSoundButton->hide(); 220 // mAlarmSoundButton->hide();
221 // mAlarmProgramButton->hide(); 221 // mAlarmProgramButton->hide();
222 // } 222 // }
223} 223}
224 224
225void KOEditorGeneral::pickAlarmSound() 225void KOEditorGeneral::pickAlarmSound()
226{ 226{
227 227
228 qDebug("KOEditorGeneral::pickAlarmSound() %d",mAlarmSoundButton->isOn() ); 228 qDebug("KOEditorGeneral::pickAlarmSound() %d",mAlarmSoundButton->isOn() );
229 //QString prefix = mAlarmSound; 229 //QString prefix = mAlarmSound;
230 if (!mAlarmSoundButton->isOn()) { 230 if (!mAlarmSoundButton->isOn()) {
231 //mAlarmSound = ""; 231 mAlarmSoundButton->setOn(true);
232 QToolTip::remove(mAlarmSoundButton); 232 ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Audio Al.: ") + getFittingPath(mAlarmSound) );
233 QToolTip::add(mAlarmSoundButton, i18n("No sound set"));
234 mAlarmProgramButton->setOn(true);
235 mAlarmSoundButton->setOn(false);
236 pickAlarmProgram();
237 } else { 233 } else {
238 QString fileName(KFileDialog::getOpenFileName(mAlarmSound, 234 QString fileName(KFileDialog::getOpenFileName(mAlarmSound,
239 i18n("*.wav|Wav Files"), 0)); 235 i18n("*.wav|Wav Files"), 0));
240 if (!fileName.isEmpty()) { 236 if (!fileName.isEmpty()) {
241 mAlarmSound = fileName; 237 mAlarmSound = fileName;
242 QToolTip::remove(mAlarmSoundButton); 238 QToolTip::remove(mAlarmSoundButton);
243 QString dispStr = i18n("Playing '%1'").arg(fileName); 239 QString dispStr = i18n("Playing '%1'").arg(fileName);
244 QToolTip::add(mAlarmSoundButton, dispStr); 240 QToolTip::add(mAlarmSoundButton, dispStr);
245 mAlarmProgramButton->setOn(false); 241 mAlarmProgramButton->setOn(false);
246 mAlarmSoundButton->setOn(true); 242 mAlarmSoundButton->setOn(true);
247 } else { 243 } else {
248 mAlarmProgramButton->setOn(true); 244 mAlarmProgramButton->setOn(true);
249 mAlarmSoundButton->setOn(false); 245 mAlarmSoundButton->setOn(false);
250 246
251 } 247 }
252 } 248 }
253 249#if 0
254 if (mAlarmProgramButton->isOn()) 250 if (mAlarmProgramButton->isOn())
255 ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Proc.Al.: ") + getFittingPath(mAlarmProgram) ); 251 ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Proc.Al.: ") + getFittingPath(mAlarmProgram) );
256 if ( mAlarmSoundButton->isOn()) 252 if ( mAlarmSoundButton->isOn())
257 ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Audio Al.: ") + getFittingPath(mAlarmSound) ); 253 ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Audio Al.: ") + getFittingPath(mAlarmSound) );
254#endif
258} 255}
259 256
260void KOEditorGeneral::pickAlarmProgram() 257void KOEditorGeneral::pickAlarmProgram()
261{ 258{
262 if (!mAlarmProgramButton->isOn()) { 259 if (!mAlarmProgramButton->isOn()) {
263 //mAlarmProgram = ""; 260 mAlarmProgramButton->setOn(true);
264 QToolTip::remove(mAlarmProgramButton); 261 ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Proc.Al.: ") + getFittingPath(mAlarmProgram) );
265 QToolTip::add(mAlarmProgramButton, i18n("No program set"));
266 mAlarmProgramButton->setOn(false);
267 mAlarmSoundButton->setOn(true);
268 pickAlarmSound();
269 } else { 262 } else {
270 QString fileName(KFileDialog::getOpenFileName(mAlarmProgram,i18n("Procedure Alarm: ") , 0)); 263 QString fileName(KFileDialog::getOpenFileName(mAlarmProgram,i18n("Procedure Alarm: ") , 0));
271 if (!fileName.isEmpty()) { 264 if (!fileName.isEmpty()) {
272 mAlarmProgram = fileName; 265 mAlarmProgram = fileName;
273 QToolTip::remove(mAlarmProgramButton); 266 QToolTip::remove(mAlarmProgramButton);
274 QString dispStr = i18n("Running '%1'").arg(fileName); 267 QString dispStr = i18n("Running '%1'").arg(fileName);
275 QToolTip::add(mAlarmProgramButton, dispStr); 268 QToolTip::add(mAlarmProgramButton, dispStr);
276 mAlarmSoundButton->setOn(false); 269 mAlarmSoundButton->setOn(false);
277 mAlarmProgramButton->setOn(true); 270 mAlarmProgramButton->setOn(true);
278 } else { 271 } else {
279 mAlarmProgramButton->setOn(false); 272 mAlarmProgramButton->setOn(false);
280 mAlarmSoundButton->setOn(true); 273 mAlarmSoundButton->setOn(true);
281 } 274 }
282 } 275 }
276#if 0
283 if (mAlarmProgramButton->isOn()) 277 if (mAlarmProgramButton->isOn())
284 ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Proc.Al.: ") + getFittingPath(mAlarmProgram) ); 278 ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Proc.Al.: ") + getFittingPath(mAlarmProgram) );
285 if ( mAlarmSoundButton->isOn()) 279 if ( mAlarmSoundButton->isOn())
286 ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Audio Al.: ") + getFittingPath(mAlarmSound) ); 280 ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Audio Al.: ") + getFittingPath(mAlarmSound) );
281#endif
287} 282}
288 283
289 284
290QString KOEditorGeneral::getFittingPath( const QString s ) 285QString KOEditorGeneral::getFittingPath( const QString s )
291{ 286{
292 int maxlen = 50; 287 int maxlen = 50;
293 if ( QApplication::desktop()->width() < 640 ) { 288 if ( QApplication::desktop()->width() < 640 ) {
294 if ( QApplication::desktop()->width() < 320 ) 289 if ( QApplication::desktop()->width() < 320 )
295 maxlen = 22; 290 maxlen = 22;
296 else 291 else
297 maxlen = 35; 292 maxlen = 35;
298 } 293 }
@@ -305,35 +300,26 @@ QString KOEditorGeneral::getFittingPath( const QString s )
305void KOEditorGeneral::enableAlarmEdit(bool enable) 300void KOEditorGeneral::enableAlarmEdit(bool enable)
306{ 301{
307 if ( enable ) { 302 if ( enable ) {
308 if (!mAlarmProgramButton->isOn() && !mAlarmSoundButton->isOn()) { 303 if (!mAlarmProgramButton->isOn() && !mAlarmSoundButton->isOn()) {
309 mAlarmSoundButton->setOn( true ); 304 mAlarmSoundButton->setOn( true );
310 if ( mAlarmSound.isEmpty() ) 305 if ( mAlarmSound.isEmpty() )
311 mAlarmSound = KOPrefs::instance()->mDefaultAlarmFile; 306 mAlarmSound = KOPrefs::instance()->mDefaultAlarmFile;
312 else { 307 else {
313 if ( ! QFile::exists( mAlarmSound ) ) 308 if ( ! QFile::exists( mAlarmSound ) )
314 mAlarmSound = KOPrefs::instance()->mDefaultAlarmFile; 309 mAlarmSound = KOPrefs::instance()->mDefaultAlarmFile;
315 } 310 }
316 } 311 }
317 if (mAlarmProgramButton->isOn())
318 ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Proc.Al.: ") + getFittingPath(mAlarmProgram) );
319 if (!mAlarmSound.isEmpty() && mAlarmSoundButton->isOn())
320 ((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Audio Al.: ") + getFittingPath(mAlarmSound) );
321 }
322 else {
323 ((QWidget*)parent())->topLevelWidget()->setCaption(mAlarmMessage);
324 //((QWidget*)parent())->topLevelWidget()->setCaption(i18n("Edit item: ") + mSummaryEdit->currentText());
325
326
327 } 312 }
313 ((QWidget*)parent())->topLevelWidget()->setCaption(mAlarmMessage);
328 mAlarmTimeEdit->setEnabled(enable); 314 mAlarmTimeEdit->setEnabled(enable);
329 mAlarmSoundButton->setEnabled(enable); 315 mAlarmSoundButton->setEnabled(enable);
330 mAlarmProgramButton->setEnabled(enable); 316 mAlarmProgramButton->setEnabled(enable);
331 mAlarmIncrCombo->setEnabled(enable); 317 mAlarmIncrCombo->setEnabled(enable);
332} 318}
333 319
334void KOEditorGeneral::disableAlarmEdit(bool disable) 320void KOEditorGeneral::disableAlarmEdit(bool disable)
335{ 321{
336 enableAlarmEdit( !disable ); 322 enableAlarmEdit( !disable );
337} 323}
338 324
339void KOEditorGeneral::enableAlarm( bool enable ) 325void KOEditorGeneral::enableAlarm( bool enable )
@@ -391,25 +377,25 @@ void KOEditorGeneral::setDefaults(bool allDay)
391 mLocationEdit->setEditText(""); 377 mLocationEdit->setEditText("");
392 mDescriptionEdit->setText(""); 378 mDescriptionEdit->setText("");
393 mAlarmSound = KOPrefs::instance()->mDefaultAlarmFile; 379 mAlarmSound = KOPrefs::instance()->mDefaultAlarmFile;
394 setCategories(""); 380 setCategories("");
395} 381}
396void KOEditorGeneral::setSecrecy( int num ) 382void KOEditorGeneral::setSecrecy( int num )
397{ 383{
398 mSecrecyCombo->setCurrentItem(num); 384 mSecrecyCombo->setCurrentItem(num);
399} 385}
400void KOEditorGeneral::readIncidence(Incidence *event) 386void KOEditorGeneral::readIncidence(Incidence *event)
401{ 387{
402 388
403 mAlarmMessage = i18n("Edit") +" "+event->summary(); 389 mAlarmMessage = event->summary();
404 mAlarmIncrCombo->setCurrentItem(0); 390 mAlarmIncrCombo->setCurrentItem(0);
405 mSummaryEdit->setEditText(event->summary()); 391 mSummaryEdit->setEditText(event->summary());
406 mLocationEdit->setEditText(event->location()); 392 mLocationEdit->setEditText(event->location());
407 mDescriptionEdit->setText(event->description()); 393 mDescriptionEdit->setText(event->description());
408 394
409#if 0 395#if 0
410 // organizer information 396 // organizer information
411 mOwnerLabel->setText(i18n("Owner: ") + event->organizer()); 397 mOwnerLabel->setText(i18n("Owner: ") + event->organizer());
412#endif 398#endif
413 399
414 enableAlarmEdit( event->isAlarmEnabled() ); 400 enableAlarmEdit( event->isAlarmEnabled() );
415 //qDebug("KOEditorGeneral::readIncidence(Incidence *event) "); 401 //qDebug("KOEditorGeneral::readIncidence(Incidence *event) ");