author | harlekin <harlekin> | 2003-12-20 00:05:37 (UTC) |
---|---|---|
committer | harlekin <harlekin> | 2003-12-20 00:05:37 (UTC) |
commit | dc088ad432189b4883f7654ef6b2c1e2f69112cc (patch) (side-by-side diff) | |
tree | 090f6afd960e644d7da1fae3b8c8ffa97b669b59 | |
parent | 00a0c8cf03fe746c1e3ba608bf298c8e66d065f9 (diff) | |
download | opie-dc088ad432189b4883f7654ef6b2c1e2f69112cc.zip opie-dc088ad432189b4883f7654ef6b2c1e2f69112cc.tar.gz opie-dc088ad432189b4883f7654ef6b2c1e2f69112cc.tar.bz2 |
- beginning of a settings dialog
- button for switching between html and plain text view of the mail
- hide some unused icons
- completed alwins idea about status icons ( alwin you missed the one that sets the read icon .-) )
- beginning of a status widget
-
-rw-r--r-- | noncore/net/mail/mail.pro | 12 | ||||
-rw-r--r-- | noncore/net/mail/mainwindow.cpp | 20 | ||||
-rw-r--r-- | noncore/net/mail/mainwindow.h | 3 | ||||
-rw-r--r-- | noncore/net/mail/opiemail.cpp | 2 | ||||
-rw-r--r-- | noncore/net/mail/viewmail.cpp | 21 | ||||
-rw-r--r-- | noncore/net/mail/viewmail.h | 5 | ||||
-rw-r--r-- | noncore/net/mail/viewmailbase.cpp | 5 | ||||
-rw-r--r-- | noncore/net/mail/viewmailbase.h | 3 |
8 files changed, 64 insertions, 7 deletions
diff --git a/noncore/net/mail/mail.pro b/noncore/net/mail/mail.pro index d058db7..49be889 100644 --- a/noncore/net/mail/mail.pro +++ b/noncore/net/mail/mail.pro @@ -15,7 +15,9 @@ HEADERS = defines.h \ mailtypes.h \ mailistviewitem.h \ pop3wrapper.h \ - abstractmail.h + abstractmail.h \ + settingsdialog.h \ + statuswidget.h SOURCES = main.cpp \ opiemail.cpp \ @@ -32,7 +34,9 @@ SOURCES = main.cpp \ settings.cpp \ mailtypes.cpp \ pop3wrapper.cpp \ - abstractmail.cpp + abstractmail.cpp \ + settingsdialog.cpp \ + statuswidget.cpp INTERFACES = editaccountsui.ui \ selectmailtypeui.ui \ @@ -42,7 +46,9 @@ INTERFACES = editaccountsui.ui \ smtpconfigui.ui \ addresspickerui.ui \ logindialogui.ui \ - composemailui.ui + composemailui.ui \ + settingsdialogui.ui \ + statuswidgetui.ui INCLUDEPATH += $(OPIEDIR)/include diff --git a/noncore/net/mail/mainwindow.cpp b/noncore/net/mail/mainwindow.cpp index 9a37510..d3b9c34 100644 --- a/noncore/net/mail/mainwindow.cpp +++ b/noncore/net/mail/mainwindow.cpp @@ -11,10 +11,12 @@ #include "defines.h" #include "mainwindow.h" +#include "settingsdialog.h" #include "viewmail.h" #include "mailtypes.h" #include "mailistviewitem.h" + MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags ) : QMainWindow( parent, name, flags ) { @@ -45,10 +47,12 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags ) sendQueued->addTo( toolBar ); sendQueued->addTo( mailMenu ); + /* syncFolders = new QAction( tr( "Sync mailfolders" ), ICON_SYNC, 0, 0, this ); syncFolders->addTo( toolBar ); syncFolders->addTo( mailMenu ); + */ showFolders = new QAction( tr( "Show/Hide folders" ), ICON_SHOWFOLDERS, 0, 0, this, 0, true ); @@ -58,10 +62,12 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags ) connect(showFolders, SIGNAL( toggled( bool ) ), SLOT( slotShowFolders( bool ) ) ); + /* searchMails = new QAction( tr( "Search mails" ), ICON_SEARCHMAILS, 0, 0, this ); searchMails->addTo( toolBar ); searchMails->addTo( mailMenu ); + */ deleteMails = new QAction(tr("Delete Mail"), QIconSet(Resource::loadPixmap("mail/delete")), 0, 0, this); deleteMails->addTo( toolBar ); @@ -72,6 +78,8 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags ) editSettings = new QAction( tr( "Edit settings" ), ICON_EDITSETTINGS, 0, 0, this ); editSettings->addTo( settingsMenu ); + connect( editSettings, SIGNAL( activated() ), + SLOT( slotEditSettings() ) ); editAccounts = new QAction( tr( "Configure accounts" ), ICON_EDITACCOUNTS, 0, 0, this ); @@ -99,10 +107,14 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags ) mailView->setAllColumnsShowFocus(true); mailView->setSorting(-1); + statusWidget = new StatusWidget( view ); + layout->addWidget( mailView ); + layout->addWidget( statusWidget ); layout->setStretchFactor( folderView, 1 ); layout->setStretchFactor( mailView, 2 ); + slotAdjustLayout(); connect( mailView, SIGNAL( clicked( QListViewItem * ) ),this, @@ -141,6 +153,12 @@ void MainWindow::slotAdjustColumns() mailView->setColumnWidth( 4, 50 ); } +void MainWindow::slotEditSettings() { + SettingsDialog settingsDialog( this, 0, true ); + settingsDialog.showMaximized(); + settingsDialog.exec(); +} + void MainWindow::slotShowFolders( bool show ) { qDebug( "Show Folders" ); @@ -179,7 +197,7 @@ void MainWindow::displayMail(QListViewItem*item) if ( readMail.deleted ) { folderView->refreshCurrent(); } else { - ( (MailListViewItem*)item )->setPixmap( 0, Resource::loadPixmap( "mail/kmmsgunseen") ); + ( (MailListViewItem*)item )->setPixmap( 0, Resource::loadPixmap( "") ); } } diff --git a/noncore/net/mail/mainwindow.h b/noncore/net/mail/mainwindow.h index 21af190..4e4f4bb 100644 --- a/noncore/net/mail/mainwindow.h +++ b/noncore/net/mail/mainwindow.h @@ -9,6 +9,7 @@ #include <qmenubar.h> #include "accountview.h" +#include "statuswidget.h" class RecMail; @@ -28,9 +29,11 @@ protected slots: virtual void displayMail(QListViewItem*); virtual void slotDeleteMail(); void slotAdjustLayout(); + void slotEditSettings(); protected: QToolBar *toolBar; + StatusWidget *statusWidget; QMenuBar *menuBar; QPopupMenu *mailMenu, *settingsMenu; QAction *composeMail, *sendQueued, *showFolders, *searchMails, *deleteMails, diff --git a/noncore/net/mail/opiemail.cpp b/noncore/net/mail/opiemail.cpp index 740e4cf..7ab4e0d 100644 --- a/noncore/net/mail/opiemail.cpp +++ b/noncore/net/mail/opiemail.cpp @@ -11,7 +11,7 @@ OpieMail::OpieMail( QWidget *parent, const char *name, WFlags flags ) connect( composeMail, SIGNAL( activated() ), SLOT( slotComposeMail() ) ); connect( sendQueued, SIGNAL( activated() ), SLOT( slotSendQueued() ) ); - connect( searchMails, SIGNAL( activated() ), SLOT( slotSearchMails() ) ); +// connect( searchMails, SIGNAL( activated() ), SLOT( slotSearchMails() ) ); connect( editSettings, SIGNAL( activated() ), SLOT( slotEditSettings() ) ); connect( editAccounts, SIGNAL( activated() ), SLOT( slotEditAccounts() ) ); } diff --git a/noncore/net/mail/viewmail.cpp b/noncore/net/mail/viewmail.cpp index d86454c..e11fe1f 100644 --- a/noncore/net/mail/viewmail.cpp +++ b/noncore/net/mail/viewmail.cpp @@ -6,6 +6,8 @@ #include <qfile.h> #include <qapplication.h> +#include <qpe/config.h> + #include <opie/ofiledialog.h> #include "settings.h" @@ -109,6 +111,12 @@ for (unsigned int i = 0; i < body.Parts().count();++i) { } } + +void ViewMail::slotShowHtml( bool state ) { + m_showHtml = state; + setText(); +} + void ViewMail::slotItemClicked( QListViewItem * item , const QPoint & point, int ) { if (!item ) return; @@ -189,13 +197,22 @@ ViewMail::ViewMail( QWidget *parent, const char *name, WFlags fl) connect(reply, SIGNAL(activated()), SLOT(slotReply())); connect(forward, SIGNAL(activated()), SLOT(slotForward())); connect( deleteMail, SIGNAL( activated() ), SLOT( slotDeleteMail( ) ) ); + connect( showHtml, SIGNAL( toggled( bool ) ), SLOT( slotShowHtml( bool ) ) ); attachments->setEnabled(m_gotBody); connect( attachments, SIGNAL( clicked ( QListViewItem *, const QPoint & , int ) ), SLOT( slotItemClicked( QListViewItem *, const QPoint & , int ) ) ); + readConfig(); } +void ViewMail::readConfig() { + Config cfg( "mail" ); + cfg.setGroup( "Settings" ); + m_showHtml = cfg.readBoolEntry( "showHtml", false ); + showHtml->setOn( m_showHtml ); +} + void ViewMail::setText() { @@ -225,7 +242,11 @@ void ViewMail::setText() "<b>" + tr( "Date" ) + ": </b> " + m_mail[3] + "</td></tr></table><font face=fixed>"; + if ( !m_showHtml ) { browser->setText( QString( m_mailHtml) + deHtml( m_mail[2] ) + "</font></html>" ); + } else { + browser->setText( QString( m_mailHtml) + m_mail[2] + "</font></html>" ); + } // remove later in favor of a real handling m_gotBody = true; } diff --git a/noncore/net/mail/viewmail.h b/noncore/net/mail/viewmail.h index dd7f854..bf7a4dd 100644 --- a/noncore/net/mail/viewmail.h +++ b/noncore/net/mail/viewmail.h @@ -42,14 +42,17 @@ protected slots: void setText(); void slotItemClicked( QListViewItem * item , const QPoint & point, int c ); void slotDeleteMail( ); - + void slotShowHtml( bool ); private: + void readConfig(); + bool _inLoop; QString m_mailHtml; bool m_gotBody; RecBody m_body; RecMail m_recMail; + bool m_showHtml; // 0 from 1 subject 2 bodytext 3 date QMap <int,QString> m_mail; diff --git a/noncore/net/mail/viewmailbase.cpp b/noncore/net/mail/viewmailbase.cpp index 0c7f671..e69617d 100644 --- a/noncore/net/mail/viewmailbase.cpp +++ b/noncore/net/mail/viewmailbase.cpp @@ -43,6 +43,11 @@ ViewMailBase::ViewMailBase(QWidget *parent, const char *name, WFlags fl) attachbutton->addTo(mailmenu); connect(attachbutton, SIGNAL(toggled(bool)), SLOT(slotChangeAttachview(bool))); + + showHtml = new QAction( tr( "Show Html" ), QIconSet( Resource::loadPixmap( "mail/attach" ) ), 0, 0, this, 0, true ); + showHtml->addTo( toolbar ); + showHtml->addTo( mailmenu ); + deleteMail = new QAction(tr("Delete Mail"), QIconSet(Resource::loadPixmap("mail/delete")), 0, 0, this); deleteMail->addTo(toolbar); deleteMail->addTo(mailmenu); diff --git a/noncore/net/mail/viewmailbase.h b/noncore/net/mail/viewmailbase.h index 898522e..6d2a5b2 100644 --- a/noncore/net/mail/viewmailbase.h +++ b/noncore/net/mail/viewmailbase.h @@ -19,7 +19,7 @@ public: ViewMailBase(QWidget *parent = 0, const char *name = 0, WFlags fl = 0); protected: - QAction *reply, *forward, *attachbutton, *deleteMail; + QAction *reply, *forward, *attachbutton, *deleteMail, *showHtml; QListView *attachments; QToolBar *toolbar; QTextBrowser *browser; @@ -30,6 +30,7 @@ protected: protected slots: void slotChangeAttachview(bool state); + }; #endif |