author | zautrix <zautrix> | 2004-11-06 23:30:02 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2004-11-06 23:30:02 (UTC) |
commit | 023e0e82dd8bf6421d12492a2dd25534fc43ad31 (patch) (unidiff) | |
tree | cf0533e3ccc642cb57a41953f184f457fa5365ba /kmicromail/viewmail.cpp | |
parent | f8841c92d5251f713eb7a025af8fdee52de45b3d (diff) | |
download | kdepimpi-023e0e82dd8bf6421d12492a2dd25534fc43ad31.zip kdepimpi-023e0e82dd8bf6421d12492a2dd25534fc43ad31.tar.gz kdepimpi-023e0e82dd8bf6421d12492a2dd25534fc43ad31.tar.bz2 |
many ompi fixes
-rw-r--r-- | kmicromail/viewmail.cpp | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/kmicromail/viewmail.cpp b/kmicromail/viewmail.cpp index 2093678..4883231 100644 --- a/kmicromail/viewmail.cpp +++ b/kmicromail/viewmail.cpp | |||
@@ -69,65 +69,65 @@ bool AttachItem::isParentof(const QValueList<int>&path) | |||
69 | } | 69 | } |
70 | return true; | 70 | return true; |
71 | } | 71 | } |
72 | 72 | ||
73 | AttachItem* ViewMail::searchParent(const QValueList<int>&path) | 73 | AttachItem* ViewMail::searchParent(const QValueList<int>&path) |
74 | { | 74 | { |
75 | QListViewItemIterator it( attachments ); | 75 | QListViewItemIterator it( attachments ); |
76 | for ( ; it.current(); ++it ) | 76 | for ( ; it.current(); ++it ) |
77 | { | 77 | { |
78 | AttachItem*ati = (AttachItem*)it.current(); | 78 | AttachItem*ati = (AttachItem*)it.current(); |
79 | if (ati->isParentof(path)) return ati; | 79 | if (ati->isParentof(path)) return ati; |
80 | } | 80 | } |
81 | return 0; | 81 | return 0; |
82 | } | 82 | } |
83 | 83 | ||
84 | AttachItem* ViewMail::lastChild(AttachItem*parent) | 84 | AttachItem* ViewMail::lastChild(AttachItem*parent) |
85 | { | 85 | { |
86 | if (!parent) return 0; | 86 | if (!parent) return 0; |
87 | AttachItem* item = (AttachItem*)parent->firstChild(); | 87 | AttachItem* item = (AttachItem*)parent->firstChild(); |
88 | if (!item) return item; | 88 | if (!item) return item; |
89 | AttachItem*temp=0; | 89 | AttachItem*temp=0; |
90 | while( (temp=(AttachItem*)item->nextSibling())) | 90 | while( (temp=(AttachItem*)item->nextSibling())) |
91 | { | 91 | { |
92 | item = temp; | 92 | item = temp; |
93 | } | 93 | } |
94 | return item; | 94 | return item; |
95 | } | 95 | } |
96 | 96 | ||
97 | void ViewMail::setBody(const RecBodyP&body ) | 97 | void ViewMail::setBody(const RecBodyP&body ) |
98 | { | 98 | { |
99 | 99 | ||
100 | m_body = body; | 100 | m_body = body; |
101 | m_mail[2] = QString::fromUtf8( body->Bodytext().latin1() ); | 101 | m_mail[2] = body->Bodytext(); |
102 | // qDebug("********text %s ",m_mail[2].latin1() ); | 102 | // qDebug("********text %s ",m_mail[2].latin1() ); |
103 | attachbutton->setEnabled(body->Parts().count()>0); | 103 | attachbutton->setEnabled(body->Parts().count()>0); |
104 | attachments->setEnabled(body->Parts().count()>0); | 104 | attachments->setEnabled(body->Parts().count()>0); |
105 | if (body->Parts().count()==0) | 105 | if (body->Parts().count()==0) |
106 | { | 106 | { |
107 | return; | 107 | return; |
108 | } | 108 | } |
109 | AttachItem * curItem=0; | 109 | AttachItem * curItem=0; |
110 | AttachItem * parentItem = 0; | 110 | AttachItem * parentItem = 0; |
111 | QString type=body->Description()->Type()+"/"+body->Description()->Subtype(); | 111 | QString type=body->Description()->Type()+"/"+body->Description()->Subtype(); |
112 | QString desc,fsize; | 112 | QString desc,fsize; |
113 | double s = body->Description()->Size(); | 113 | double s = body->Description()->Size(); |
114 | int w; | 114 | int w; |
115 | w=0; | 115 | w=0; |
116 | 116 | ||
117 | while (s>1024) | 117 | while (s>1024) |
118 | { | 118 | { |
119 | s/=1024; | 119 | s/=1024; |
120 | ++w; | 120 | ++w; |
121 | if (w>=2) break; | 121 | if (w>=2) break; |
122 | } | 122 | } |
123 | 123 | ||
124 | QString q=""; | 124 | QString q=""; |
125 | switch(w) | 125 | switch(w) |
126 | { | 126 | { |
127 | case 1: | 127 | case 1: |
128 | q="k"; | 128 | q="k"; |
129 | break; | 129 | break; |
130 | case 2: | 130 | case 2: |
131 | q="M"; | 131 | q="M"; |
132 | break; | 132 | break; |
133 | default: | 133 | default: |
@@ -272,116 +272,116 @@ void ViewMail::slotItemClicked( QListViewItem * item , const QPoint & point, int | |||
272 | output.close(); | 272 | output.close(); |
273 | delete content; | 273 | delete content; |
274 | MailImageDlg iview(""); | 274 | MailImageDlg iview(""); |
275 | iview.setName(tmpfile); | 275 | iview.setName(tmpfile); |
276 | KApplication::execDialog(&iview); | 276 | KApplication::execDialog(&iview); |
277 | output.remove(); | 277 | output.remove(); |
278 | } | 278 | } |
279 | } | 279 | } |
280 | break; | 280 | break; |
281 | case 1: | 281 | case 1: |
282 | if ( ( ( AttachItem* )item )->Partnumber() == -1 ) | 282 | if ( ( ( AttachItem* )item )->Partnumber() == -1 ) |
283 | { | 283 | { |
284 | setText(); | 284 | setText(); |
285 | } | 285 | } |
286 | else | 286 | else |
287 | { | 287 | { |
288 | if ( m_recMail->Wrapper() != 0l ) | 288 | if ( m_recMail->Wrapper() != 0l ) |
289 | { // make sure that there is a wrapper , even after delete or simular actions | 289 | { // make sure that there is a wrapper , even after delete or simular actions |
290 | browser->setText( m_recMail->Wrapper()->fetchTextPart( m_recMail, m_body->Parts()[ ( ( AttachItem* )item )->Partnumber() ] ) ); | 290 | browser->setText( m_recMail->Wrapper()->fetchTextPart( m_recMail, m_body->Parts()[ ( ( AttachItem* )item )->Partnumber() ] ) ); |
291 | } | 291 | } |
292 | } | 292 | } |
293 | break; | 293 | break; |
294 | } | 294 | } |
295 | delete menu; | 295 | delete menu; |
296 | } | 296 | } |
297 | 297 | ||
298 | 298 | ||
299 | void ViewMail::setMail(const RecMailP&mail ) | 299 | void ViewMail::setMail(const RecMailP&mail ) |
300 | { | 300 | { |
301 | 301 | ||
302 | m_recMail = mail; | 302 | m_recMail = mail; |
303 | 303 | ||
304 | m_mail[0] = QString::fromUtf8( mail->getFrom().latin1() ); | 304 | m_mail[0] = mail->getFrom(); |
305 | m_mail[1] = QString::fromUtf8( mail->getSubject().latin1() ); | 305 | m_mail[1] = mail->getSubject(); |
306 | m_mail[3] = QString::fromUtf8( mail->getDate().latin1() ); | 306 | m_mail[3] = mail->getDate(); |
307 | m_mail[4] = QString::fromUtf8( mail->Msgid().latin1() ); | 307 | m_mail[4] = mail->Msgid(); |
308 | 308 | ||
309 | m_mail2[0] = mail->To(); | 309 | m_mail2[0] = mail->To(); |
310 | m_mail2[1] = mail->CC(); | 310 | m_mail2[1] = mail->CC(); |
311 | m_mail2[2] = mail->Bcc(); | 311 | m_mail2[2] = mail->Bcc(); |
312 | 312 | ||
313 | setText(); | 313 | setText(); |
314 | } | 314 | } |
315 | 315 | ||
316 | 316 | ||
317 | 317 | ||
318 | ViewMail::ViewMail( QWidget *parent, const char *name, WFlags fl) | 318 | ViewMail::ViewMail( QWidget *parent, const char *name, WFlags fl) |
319 | : ViewMailBase(parent, name, fl), _inLoop(false) | 319 | : ViewMailBase(parent, name, fl), _inLoop(false) |
320 | { | 320 | { |
321 | m_gotBody = false; | 321 | m_gotBody = false; |
322 | deleted = false; | 322 | deleted = false; |
323 | 323 | ||
324 | connect( reply, SIGNAL(activated()), SLOT(slotReply())); | 324 | connect( reply, SIGNAL(activated()), SLOT(slotReply())); |
325 | connect( forward, SIGNAL(activated()), SLOT(slotForward())); | 325 | connect( forward, SIGNAL(activated()), SLOT(slotForward())); |
326 | connect( deleteMail, SIGNAL( activated() ), SLOT( slotDeleteMail() ) ); | 326 | connect( deleteMail, SIGNAL( activated() ), SLOT( slotDeleteMail() ) ); |
327 | connect( showHtml, SIGNAL( toggled(bool) ), SLOT( slotShowHtml(bool) ) ); | 327 | connect( showHtml, SIGNAL( toggled(bool) ), SLOT( slotShowHtml(bool) ) ); |
328 | connect( closeMail, SIGNAL( activated() ), SLOT( close() ) ); | 328 | connect( closeMail, SIGNAL( activated() ), SLOT( close() ) ); |
329 | 329 | ||
330 | attachments->setEnabled(m_gotBody); | 330 | attachments->setEnabled(m_gotBody); |
331 | connect( attachments, SIGNAL( clicked(QListViewItem*,const QPoint&, int) ), SLOT( slotItemClicked(QListViewItem*,const QPoint&, int) ) ); | 331 | connect( attachments, SIGNAL( clicked(QListViewItem*,const QPoint&, int) ), SLOT( slotItemClicked(QListViewItem*,const QPoint&, int) ) ); |
332 | 332 | ||
333 | readConfig(); | 333 | readConfig(); |
334 | attachments->setSorting(-1); | 334 | attachments->setSorting(-1); |
335 | } | 335 | } |
336 | 336 | ||
337 | void ViewMail::readConfig() | 337 | void ViewMail::readConfig() |
338 | { | 338 | { |
339 | 339 | ||
340 | setFont ( KOPrefs::instance()->mReadFont ); | 340 | setFont ( KOPrefs::instance()->mReadFont ); |
341 | m_showHtml = KOPrefs::instance()->mViewAsHtml; | 341 | m_showHtml = KOPrefs::instance()->mViewAsHtml; |
342 | showHtml->setOn( m_showHtml ); | 342 | showHtml->setOn( m_showHtml ); |
343 | } | 343 | } |
344 | 344 | ||
345 | void ViewMail::setText() | 345 | void ViewMail::setText() |
346 | { | 346 | { |
347 | 347 | ||
348 | QString toString; | 348 | QString toString; |
349 | QString ccString; | 349 | QString ccString; |
350 | QString bccString; | 350 | QString bccString; |
351 | 351 | ||
352 | 352 | ||
353 | toString = QString::fromUtf8(m_mail2[0].join(",").latin1()); | 353 | toString = m_mail2[0].join(","); |
354 | ccString = QString::fromUtf8(m_mail2[1].join(",").latin1()); | 354 | ccString = m_mail2[1].join(","); |
355 | bccString = QString::fromUtf8(m_mail2[2].join(",").latin1()); | 355 | bccString = m_mail2[2].join(","); |
356 | 356 | ||
357 | 357 | ||
358 | setCaption( i18n("E-Mail by %1").arg( m_mail[0] ) ); | 358 | setCaption( i18n("E-Mail by %1").arg( m_mail[0] ) ); |
359 | 359 | ||
360 | m_mailHtml = "<html><body>" | 360 | m_mailHtml = "<html><body>" |
361 | "<table width=\"100%\" border=\"0\"><tr bgcolor=\"#FFDD76\"><td>" | 361 | "<table width=\"100%\" border=\"0\"><tr bgcolor=\"#FFDD76\"><td>" |
362 | "<div align=left><b>" + deHtml( m_mail[1] ) + "</b></div>" | 362 | "<div align=left><b>" + deHtml( m_mail[1] ) + "</b></div>" |
363 | "</td></tr><tr bgcolor=\"#EEEEE6\"><td>" | 363 | "</td></tr><tr bgcolor=\"#EEEEE6\"><td>" |
364 | "<b>" + i18n( "From" ) + ": </b><font color=#6C86C0>" + deHtml( m_mail[0] ) + "</font><br>" | 364 | "<b>" + i18n( "From" ) + ": </b><font color=#6C86C0>" + deHtml( m_mail[0] ) + "</font><br>" |
365 | "<b>" + i18n( "To" ) + ": </b><font color=#6C86C0>" + deHtml( toString ) + "</font><br><b>" + | 365 | "<b>" + i18n( "To" ) + ": </b><font color=#6C86C0>" + deHtml( toString ) + "</font><br><b>" + |
366 | i18n( "Cc" ) + ": </b>" + deHtml( ccString ) + "<br>" | 366 | i18n( "Cc" ) + ": </b>" + deHtml( ccString ) + "<br>" |
367 | "<b>" + i18n( "Date" ) + ": </b> " + m_mail[3] + | 367 | "<b>" + i18n( "Date" ) + ": </b> " + m_mail[3] + |
368 | "</td></tr></table><font>"; | 368 | "</td></tr></table><font>"; |
369 | 369 | ||
370 | if ( !m_showHtml ) | 370 | if ( !m_showHtml ) |
371 | { | 371 | { |
372 | browser->setText( QString( m_mailHtml) + deHtml( m_mail[2] ) + "</font></html>" ); | 372 | browser->setText( QString( m_mailHtml) + deHtml( m_mail[2] ) + "</font></html>" ); |
373 | } | 373 | } |
374 | else | 374 | else |
375 | { | 375 | { |
376 | browser->setText( QString( m_mailHtml) + m_mail[2] + "</font></html>" ); | 376 | browser->setText( QString( m_mailHtml) + m_mail[2] + "</font></html>" ); |
377 | } | 377 | } |
378 | // remove later in favor of a real handling | 378 | // remove later in favor of a real handling |
379 | m_gotBody = true; | 379 | m_gotBody = true; |
380 | } | 380 | } |
381 | 381 | ||
382 | 382 | ||
383 | ViewMail::~ViewMail() | 383 | ViewMail::~ViewMail() |
384 | { | 384 | { |
385 | m_recMail->Wrapper()->cleanMimeCache(); | 385 | m_recMail->Wrapper()->cleanMimeCache(); |
386 | hide(); | 386 | hide(); |
387 | } | 387 | } |
@@ -421,67 +421,67 @@ QString ViewMail::deHtml(const QString &string) | |||
421 | return string_; | 421 | return string_; |
422 | } | 422 | } |
423 | 423 | ||
424 | void ViewMail::slotReply() | 424 | void ViewMail::slotReply() |
425 | { | 425 | { |
426 | if (!m_gotBody) | 426 | if (!m_gotBody) |
427 | { | 427 | { |
428 | QMessageBox::information(this, i18n("Error"), i18n("<p>The mail body is not yet downloaded, so you cannot reply yet."), i18n("Ok")); | 428 | QMessageBox::information(this, i18n("Error"), i18n("<p>The mail body is not yet downloaded, so you cannot reply yet."), i18n("Ok")); |
429 | return; | 429 | return; |
430 | } | 430 | } |
431 | 431 | ||
432 | QString rtext; | 432 | QString rtext; |
433 | rtext += QString("* %1 wrote on %2:\n") // no i18n on purpose | 433 | rtext += QString("* %1 wrote on %2:\n") // no i18n on purpose |
434 | .arg( m_mail[0] ) | 434 | .arg( m_mail[0] ) |
435 | .arg( m_mail[3] ); | 435 | .arg( m_mail[3] ); |
436 | 436 | ||
437 | QString text = m_mail[2]; | 437 | QString text = m_mail[2]; |
438 | QStringList lines = QStringList::split(QRegExp("\\n"), text); | 438 | QStringList lines = QStringList::split(QRegExp("\\n"), text); |
439 | QStringList::Iterator it; | 439 | QStringList::Iterator it; |
440 | for (it = lines.begin(); it != lines.end(); it++) | 440 | for (it = lines.begin(); it != lines.end(); it++) |
441 | { | 441 | { |
442 | rtext += "> " + *it + "\n"; | 442 | rtext += "> " + *it + "\n"; |
443 | } | 443 | } |
444 | rtext += "\n"; | 444 | rtext += "\n"; |
445 | 445 | ||
446 | QString prefix; | 446 | QString prefix; |
447 | if ( m_mail[1].find(QRegExp("^Re: .*$")) != -1) prefix = ""; | 447 | if ( m_mail[1].find(QRegExp("^Re: .*$")) != -1) prefix = ""; |
448 | else prefix = "Re: "; // no i18n on purpose | 448 | else prefix = "Re: "; // no i18n on purpose |
449 | 449 | ||
450 | Settings *settings = new Settings(); | 450 | Settings *settings = new Settings(); |
451 | ComposeMail composer( settings ,this, 0, true); | 451 | ComposeMail composer( settings ,this, 0, true); |
452 | if (m_recMail->Replyto().isEmpty()) { | 452 | if (m_recMail->Replyto().isEmpty()) { |
453 | composer.setTo( QString::fromUtf8( m_recMail->getFrom().latin1())); | 453 | composer.setTo(m_recMail->getFrom()); |
454 | } else { | 454 | } else { |
455 | composer.setTo( QString::fromUtf8( m_recMail->Replyto().latin1())); | 455 | composer.setTo(m_recMail->Replyto()); |
456 | } | 456 | } |
457 | composer.setSubject( prefix + m_mail[1] ); | 457 | composer.setSubject( prefix + m_mail[1] ); |
458 | composer.setMessage( rtext ); | 458 | composer.setMessage( rtext ); |
459 | composer.setInReplyTo(m_recMail->Msgid()); | 459 | composer.setInReplyTo(m_recMail->Msgid()); |
460 | 460 | ||
461 | if ( QDialog::Accepted == KApplication::execDialog( &composer ) ) | 461 | if ( QDialog::Accepted == KApplication::execDialog( &composer ) ) |
462 | { | 462 | { |
463 | m_recMail->Wrapper()->answeredMail(m_recMail); | 463 | m_recMail->Wrapper()->answeredMail(m_recMail); |
464 | } | 464 | } |
465 | delete settings; | 465 | delete settings; |
466 | } | 466 | } |
467 | 467 | ||
468 | void ViewMail::slotForward() | 468 | void ViewMail::slotForward() |
469 | { | 469 | { |
470 | if (!m_gotBody) | 470 | if (!m_gotBody) |
471 | { | 471 | { |
472 | QMessageBox::information(this, i18n("Error"), i18n("<p>The mail body is not yet downloaded, so you cannot forward yet."), i18n("Ok")); | 472 | QMessageBox::information(this, i18n("Error"), i18n("<p>The mail body is not yet downloaded, so you cannot forward yet."), i18n("Ok")); |
473 | return; | 473 | return; |
474 | } | 474 | } |
475 | 475 | ||
476 | QString ftext; | 476 | QString ftext; |
477 | ftext += QString("\n----- Forwarded message from %1 -----\n\n") | 477 | ftext += QString("\n----- Forwarded message from %1 -----\n\n") |
478 | .arg( m_mail[0] ); | 478 | .arg( m_mail[0] ); |
479 | if (!m_mail[3].isNull()) | 479 | if (!m_mail[3].isNull()) |
480 | ftext += QString("Date: %1\n") | 480 | ftext += QString("Date: %1\n") |
481 | .arg( m_mail[3] ); | 481 | .arg( m_mail[3] ); |
482 | if (!m_mail[0].isNull()) | 482 | if (!m_mail[0].isNull()) |
483 | ftext += QString("From: %1\n") | 483 | ftext += QString("From: %1\n") |
484 | .arg( m_mail[0] ); | 484 | .arg( m_mail[0] ); |
485 | if (!m_mail[1].isNull()) | 485 | if (!m_mail[1].isNull()) |
486 | ftext += QString("Subject: %1\n") | 486 | ftext += QString("Subject: %1\n") |
487 | .arg( m_mail[1] ); | 487 | .arg( m_mail[1] ); |