summaryrefslogtreecommitdiff
path: root/noncore/net/mail/viewmail.cpp
authoralwin <alwin>2004-10-28 02:12:12 (UTC)
committer alwin <alwin>2004-10-28 02:12:12 (UTC)
commit6205e982ec6d9ab1893919cd9c943c95b4baae33 (patch) (unidiff)
tree7f5eeab32ad333e441956ce3bccf313609a54b83 /noncore/net/mail/viewmail.cpp
parentbeaee4a305e89b27f0482047daf06919fdd9d732 (diff)
downloadopie-6205e982ec6d9ab1893919cd9c943c95b4baae33.zip
opie-6205e982ec6d9ab1893919cd9c943c95b4baae33.tar.gz
opie-6205e982ec6d9ab1893919cd9c943c95b4baae33.tar.bz2
fixed some problems when displaying mails
but it should reworked cause sometimes there are problems with html mails.
Diffstat (limited to 'noncore/net/mail/viewmail.cpp') (more/less context) (show whitespace changes)
-rw-r--r--noncore/net/mail/viewmail.cpp28
1 files changed, 12 insertions, 16 deletions
diff --git a/noncore/net/mail/viewmail.cpp b/noncore/net/mail/viewmail.cpp
index d5f9b7f..d2f1584 100644
--- a/noncore/net/mail/viewmail.cpp
+++ b/noncore/net/mail/viewmail.cpp
@@ -20,6 +20,7 @@
20#include <qpopupmenu.h> 20#include <qpopupmenu.h>
21#include <qfile.h> 21#include <qfile.h>
22#include <qlayout.h> 22#include <qlayout.h>
23#include <qstylesheet.h>
23 24
24using namespace Opie::Ui; 25using namespace Opie::Ui;
25using namespace Opie::Core; 26using namespace Opie::Core;
@@ -296,6 +297,7 @@ void ViewMail::setMail(const RecMailP&mail )
296 m_mail2[1] = mail->CC(); 297 m_mail2[1] = mail->CC();
297 m_mail2[2] = mail->Bcc(); 298 m_mail2[2] = mail->Bcc();
298 299
300 setCaption(tr("E-Mail by %1").arg( m_mail[0] ) );
299 setText(); 301 setText();
300} 302}
301 303
@@ -329,10 +331,10 @@ void ViewMail::readConfig()
329 331
330void ViewMail::setText() 332void ViewMail::setText()
331{ 333{
332
333 QString toString; 334 QString toString;
334 QString ccString; 335 QString ccString;
335 QString bccString; 336 QString bccString;
337 QString mailHtml;
336 338
337 for ( QStringList::Iterator it = ( m_mail2[0] ).begin(); it != ( m_mail2[0] ).end(); ++it ) 339 for ( QStringList::Iterator it = ( m_mail2[0] ).begin(); it != ( m_mail2[0] ).end(); ++it )
338 { 340 {
@@ -346,10 +348,8 @@ void ViewMail::setText()
346 { 348 {
347 bccString += (*it); 349 bccString += (*it);
348 } 350 }
349 351 browser->setTextFormat(Qt::RichText);
350 setCaption( caption().arg( m_mail[0] ) ); 352 mailHtml = "<html><body>"
351
352 m_mailHtml = "<html><body>"
353 "<table width=\"100%\" border=\"0\"><tr bgcolor=\"#FFDD76\"><td>" 353 "<table width=\"100%\" border=\"0\"><tr bgcolor=\"#FFDD76\"><td>"
354 "<div align=left><b>" + deHtml( m_mail[1] ) + "</b></div>" 354 "<div align=left><b>" + deHtml( m_mail[1] ) + "</b></div>"
355 "</td></tr><tr bgcolor=\"#EEEEE6\"><td>" 355 "</td></tr><tr bgcolor=\"#EEEEE6\"><td>"
@@ -357,15 +357,11 @@ void ViewMail::setText()
357 "<b>" + tr( "To" ) + ": </b><font color=#6C86C0>" + deHtml( toString ) + "</font><br><b>" + 357 "<b>" + tr( "To" ) + ": </b><font color=#6C86C0>" + deHtml( toString ) + "</font><br><b>" +
358 tr( "Cc" ) + ": </b>" + deHtml( ccString ) + "<br>" 358 tr( "Cc" ) + ": </b>" + deHtml( ccString ) + "<br>"
359 "<b>" + tr( "Date" ) + ": </b> " + m_mail[3] + 359 "<b>" + tr( "Date" ) + ": </b> " + m_mail[3] +
360 "</td></tr></table><font face=fixed>"; 360 "</td></tr></table>";
361 361 if ( !m_showHtml ) {
362 if ( !m_showHtml ) 362 browser->setText( mailHtml+"<font face=fixed>" + QStyleSheet::convertFromPlainText(m_mail[2]) + "</font></body></html>" );
363 { 363 } else {
364 browser->setText( QString( m_mailHtml) + deHtml( m_mail[2] ) + "</font></html>" ); 364 browser->setText(mailHtml+m_mail[2].simplifyWhiteSpace()+"</html>");
365 }
366 else
367 {
368 browser->setText( QString( m_mailHtml) + m_mail[2] + "</font></html>" );
369 } 365 }
370 // remove later in favor of a real handling 366 // remove later in favor of a real handling
371 m_gotBody = true; 367 m_gotBody = true;
@@ -403,9 +399,9 @@ void ViewMail::exec()
403 399
404} 400}
405 401
406QString ViewMail::deHtml(const QString &string) 402QString ViewMail::deHtml(const QString &aString)
407{ 403{
408 QString string_ = string; 404 QString string_ = aString;
409 string_.replace(QRegExp("&"), "&amp;"); 405 string_.replace(QRegExp("&"), "&amp;");
410 string_.replace(QRegExp("<"), "&lt;"); 406 string_.replace(QRegExp("<"), "&lt;");
411 string_.replace(QRegExp(">"), "&gt;"); 407 string_.replace(QRegExp(">"), "&gt;");