From 8084d002de5e310491eec7fac0713ef29d0cf30f Mon Sep 17 00:00:00 2001 From: conber Date: Tue, 06 Aug 2002 16:32:49 +0000 Subject: ui improvements --- diff --git a/noncore/unsupported/mail2/composer.cpp b/noncore/unsupported/mail2/composer.cpp index 52ebbdd..cb80299 100644 --- a/noncore/unsupported/mail2/composer.cpp +++ b/noncore/unsupported/mail2/composer.cpp @@ -12,8 +12,8 @@ #include #include -//#include "attachdiag.h" +#include "mailstatusbar.h" #include "addresspicker.h" #include "listviewplus.h" #include "smtphandler.h" @@ -32,7 +32,7 @@ Composer::Composer(QWidget *parent, const char *name, WFlags fl, bool sendQueue) : ComposerBase(parent, name, fl), _inLoop(false) { _sendQueued = sendQueue; - abort->setEnabled(false); + status->setStopEnabled(false); to->setFocus(); connect(sendmail, SIGNAL(activated()), SLOT(slotSendMail())); @@ -154,12 +154,12 @@ void Composer::slotSendMail() MailFactory::genMail(header, message, smail, this); if (header.isNull() || message.isNull()) return; // Aborted. - abort->setEnabled(true); + status->setStopEnabled(true); SmtpHandler *handler = new SmtpHandler(header, message, accountsLoaded[from->currentItem()], to->text()); connect(handler, SIGNAL(finished()), SLOT(slotSendFinished())); connect(handler, SIGNAL(error(const QString &)), SLOT(slotSendError(const QString &))); - connect(handler, SIGNAL(status(const QString &)), status, SLOT(setText(const QString &))); + connect(handler, SIGNAL(status(const QString &)), status, SLOT(setStatusText(const QString &))); } void Composer::slotSendQueued() @@ -248,7 +248,7 @@ void Composer::slotSendQueued() effSendCount++; connect(handler, SIGNAL(finished()), SLOT(slotSendQueuedFinished())); connect(handler, SIGNAL(error(const QString &)), SLOT(slotSendQueuedError(const QString &))); - connect(handler, SIGNAL(status(const QString &)), status, SLOT(setText(const QString &))); + connect(handler, SIGNAL(status(const QString &)), status, SLOT(setStatusText(const QString &))); } if (effSendCount < _toSend) @@ -305,7 +305,7 @@ void Composer::slotQueueMail() void Composer::slotSendError(const QString &error) { - status->setText(tr("Error occoured during sending.")); + status->setStatusText(tr("Error occoured during sending.")); QMessageBox::warning(this, tr("Error"), tr("

%1setText(tr("Error occoured during sending.")); + status->setStatusText(tr("Error occoured during sending.")); QMessageBox::warning(this, tr("Error"), tr("

%1The mail was sent successfully.

"), tr("Ok")); - status->setText(QString(0)); - abort->setEnabled(false); + status->setStatusText(QString(0)); + status->setStopEnabled(false); } void Composer::slotSendQueuedFinished() diff --git a/noncore/unsupported/mail2/composerbase.cpp b/noncore/unsupported/mail2/composerbase.cpp index c456ae5..6f6ab8e 100644 --- a/noncore/unsupported/mail2/composerbase.cpp +++ b/noncore/unsupported/mail2/composerbase.cpp @@ -11,6 +11,7 @@ #include #include +#include "mailstatusbar.h" #include "listviewplus.h" #include "composerbase.h" @@ -21,9 +22,9 @@ ComposerBase::ComposerBase(QWidget *parent, const char *name, WFlags fl) setToolBarsMovable(false); toolbar = new QPEToolBar(this); - menubar = new QPEMenuBar( toolbar ); - mailmenu = new QPopupMenu( menubar ); - menubar->insertItem( tr( "Mail" ), mailmenu ); + menubar = new QPEMenuBar( toolbar ); + mailmenu = new QPopupMenu( menubar ); + menubar->insertItem( tr( "Mail" ), mailmenu ); addToolBar(toolbar); toolbar->setHorizontalStretchable(true); @@ -48,10 +49,6 @@ ComposerBase::ComposerBase(QWidget *parent, const char *name, WFlags fl) addressbook->addTo(toolbar); addressbook->addTo(mailmenu); - abort = new QAction(tr("Abort sending"), QIconSet(Resource::loadPixmap("mail/abort")), 0, 0, this); - abort->addTo(toolbar); - abort->addTo(mailmenu); - QWidget *main = new QWidget(this); setCentralWidget(main); @@ -123,8 +120,8 @@ ComposerBase::ComposerBase(QWidget *parent, const char *name, WFlags fl) message->setMinimumHeight(30); attachWindow = new QMainWindow(view, 0, 0); - attachWindow->setMinimumHeight(100); - attachWindow->setMaximumHeight(100); + attachWindow->setMinimumHeight(80); + attachWindow->setMaximumHeight(80); attachWindow->setToolBarsMovable(false); attachWindow->hide(); @@ -156,10 +153,7 @@ ComposerBase::ComposerBase(QWidget *parent, const char *name, WFlags fl) attachPopup->insertItem(tr("Remove"), POPUP_ATTACH_REMOVE); attachView->setPopup(attachPopup); - status = new QLabel(view); - QFont tmpFont = status->font(); - tmpFont.setPixelSize(8); - status->setFont(tmpFont); + status = new MailStatusBar(view); } void ComposerBase::slotAttachfileChanged(bool toggled) diff --git a/noncore/unsupported/mail2/composerbase.h b/noncore/unsupported/mail2/composerbase.h index d832623..58f1157 100644 --- a/noncore/unsupported/mail2/composerbase.h +++ b/noncore/unsupported/mail2/composerbase.h @@ -4,6 +4,7 @@ #include class QMultiLineEdit; +class MailStatusBar; class ListViewPlus; class QPopupMenu; class QPEToolBar; @@ -37,16 +38,17 @@ protected: static const int POPUP_ATTACH_REMOVE = 2; QMultiLineEdit *message; + MailStatusBar *status; ListViewPlus *attachView; QMainWindow *attachWindow; QPopupMenu *attachPopup; QPEToolBar *toolbar, *attachToolbar; QPEMenuBar *menubar; - QPopupMenu *mailmenu; + QPopupMenu *mailmenu; QComboBox *fromBox, *from, *receiversBox, *subjectBox, *priority; QLineEdit *replyto, *to, *cc, *bcc, *subject; QAction *sendmail, *queuemail, *attachfile, *addressbook, *abort, *addattach, *delattach; - QLabel *fromLabel, *status; + QLabel *fromLabel; protected slots: void slotAttachfileChanged(bool toggled); diff --git a/noncore/unsupported/mail2/mail.pro b/noncore/unsupported/mail2/mail.pro index 985a6fb..177509d 100644 --- a/noncore/unsupported/mail2/mail.pro +++ b/noncore/unsupported/mail2/mail.pro @@ -8,6 +8,7 @@ HEADERS = accounteditor.h \ configdiag.h \ folderwidget.h \ listviewplus.h \ + mailstatusbar.h \ mailtable.h \ mainwindow.h \ mainwindowbase.h \ @@ -23,6 +24,7 @@ SOURCES = accounteditor.cpp \ configdiag.cpp \ folderwidget.cpp \ listviewplus.cpp \ + mailstatusbar.cpp \ mailtable.cpp \ main.cpp \ mainwindow.cpp \ diff --git a/noncore/unsupported/mail2/mailstatusbar.cpp b/noncore/unsupported/mail2/mailstatusbar.cpp new file mode 100644 index 0000000..470ea4f --- a/dev/null +++ b/noncore/unsupported/mail2/mailstatusbar.cpp @@ -0,0 +1,58 @@ +#include +#include +#include + +#include "mailstatusbar.h" + +MailStatusBar::MailStatusBar(QWidget *parent, const char *name, WFlags fl) + : QHBox(parent, name, fl) +{ + label = new QLabel(this); + QFont tmpFont = label->font(); + tmpFont.setPixelSize(8); + label->setFont(tmpFont); + + stopButton = new QToolButton(this); + stopButton->setText(" X "); + stopButton->setMaximumHeight(15); + stopButton->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed)); + connect(stopButton, SIGNAL(clicked()), SLOT(stopClicked())); + + progress = new QProgressBar(this); + progress->setCenterIndicator(true); + progress->setMinimumHeight(15); + progress->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed)); + progress->setFrameShape(QFrame::Box); + progress->setFrameShadow(QFrame::Raised); +} + +void MailStatusBar::setStatusText(const QString &text) +{ + label->setText(text); +} + +void MailStatusBar::setStopEnabled(bool enabled) +{ + stopButton->setEnabled(enabled); +} + +void MailStatusBar::setProgressTotalSteps(int steps) +{ + progress->setTotalSteps(steps); +} + +void MailStatusBar::setProgress(int pg) +{ + progress->setProgress(pg); +} + +void MailStatusBar::resetProgress() +{ + progress->reset(); +} + +void MailStatusBar::stopClicked() +{ + emit stop(); +} + diff --git a/noncore/unsupported/mail2/mailstatusbar.h b/noncore/unsupported/mail2/mailstatusbar.h new file mode 100644 index 0000000..11cd538 --- a/dev/null +++ b/noncore/unsupported/mail2/mailstatusbar.h @@ -0,0 +1,38 @@ +#ifndef MAILSTATUSBAR_H +#define MAILSTATUSBAR_H + +#include + +class QLabel; +class QToolButton; +class QProgressBar; + +class MailStatusBar : public QHBox +{ + Q_OBJECT + +public: + MailStatusBar(QWidget *parent = 0, const char *name = 0, WFlags fl = 0); + +public slots: + void setStatusText(const QString &text); + void setStopEnabled(bool enabled); + void setProgressTotalSteps(int steps); + void setProgress(int progress); + void resetProgress(); + +signals: + void stop(); + +protected slots: + void stopClicked(); + +private: + QLabel *label; + QToolButton *stopButton; + QProgressBar *progress; + +}; + +#endif + diff --git a/noncore/unsupported/mail2/mainwindow.cpp b/noncore/unsupported/mail2/mainwindow.cpp index 0044693..047c54b 100644 --- a/noncore/unsupported/mail2/mainwindow.cpp +++ b/noncore/unsupported/mail2/mainwindow.cpp @@ -1,9 +1,7 @@ -#include #include -#include #include -#include +#include "mailstatusbar.h" #include "folderwidget.h" #include "mainwindow.h" #include "configdiag.h" @@ -16,19 +14,19 @@ MainWindow::MainWindow(QWidget *parent, const char *name, WFlags fl) : MainWindowBase(parent, name, fl) { - stopButton->setEnabled(false); + status->setStopEnabled(false); - connect(folderView, SIGNAL(status(const QString &)), statusLabel, SLOT(setText(const QString &))); + connect(folderView, SIGNAL(status(const QString &)), status, SLOT(setStatusText(const QString &))); connect(folderView, SIGNAL(folderSelected(Folder)), mailView, SLOT(setFolder(Folder))); connect(mailView, SIGNAL(mailClicked(IMAPResponseFETCH, IMAPHandler *)), SLOT(mailClicked(IMAPResponseFETCH, IMAPHandler *))); - connect(mailView, SIGNAL(status(const QString &)), statusLabel, SLOT(setText(const QString &))); - connect(mailView, SIGNAL(totalSteps(int)), statusProgress, SLOT(setTotalSteps(int))); - connect(mailView, SIGNAL(progress(int)), statusProgress, SLOT(setProgress(int))); - connect(mailView, SIGNAL(resetProgress()), statusProgress, SLOT(reset())); - connect(mailView, SIGNAL(stopEnabled(bool)), stopButton, SLOT(setEnabled(bool))); + connect(mailView, SIGNAL(status(const QString &)), status, SLOT(setStatusText(const QString &))); + connect(mailView, SIGNAL(totalSteps(int)), status, SLOT(setProgressTotalSteps(int))); + connect(mailView, SIGNAL(progress(int)), status, SLOT(setProgress(int))); + connect(mailView, SIGNAL(resetProgress()), status, SLOT(resetProgress())); + connect(mailView, SIGNAL(stopEnabled(bool)), status, SLOT(setStopEnabled(bool))); - connect(stopButton, SIGNAL(clicked()), mailView, SLOT(stop())); + connect(status, SIGNAL(stop()), mailView, SLOT(stop())); connect(compose, SIGNAL(activated()), SLOT(slotCompose())); connect(sendQueue, SIGNAL(activated()), SLOT(slotSendQueued())); diff --git a/noncore/unsupported/mail2/mainwindowbase.cpp b/noncore/unsupported/mail2/mainwindowbase.cpp index bffe8b3..e35d489 100644 --- a/noncore/unsupported/mail2/mainwindowbase.cpp +++ b/noncore/unsupported/mail2/mainwindowbase.cpp @@ -1,5 +1,3 @@ -#include -#include #include #include #include @@ -11,6 +9,7 @@ #include #include "mainwindowbase.h" +#include "mailstatusbar.h" #include "folderwidget.h" #include "mailtable.h" @@ -65,22 +64,7 @@ MainWindowBase::MainWindowBase(QWidget *parent, const char *name, WFlags fl) mailView = new MailTable(view); mailView->setMinimumHeight(50); - QHBox *status = new QHBox(view); - - statusLabel = new QLabel(status); - QFont tmpFont = statusLabel->font(); - tmpFont.setPixelSize(8); - statusLabel->setFont(tmpFont); - - stopButton = new QToolButton(status); - stopButton->setText(" X "); - stopButton->setMaximumHeight(15); - stopButton->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed)); - - statusProgress = new QProgressBar(status); - statusProgress->setCenterIndicator(true); - statusProgress->setMaximumHeight(15); - statusProgress->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed)); + status = new MailStatusBar(view); } void MainWindowBase::slotFoldersToggled(bool toggled) diff --git a/noncore/unsupported/mail2/mainwindowbase.h b/noncore/unsupported/mail2/mainwindowbase.h index 702933a..11c5ea0 100644 --- a/noncore/unsupported/mail2/mainwindowbase.h +++ b/noncore/unsupported/mail2/mainwindowbase.h @@ -4,15 +4,13 @@ #include class ServerConnection; -class QProgressBar; +class MailStatusBar; class FolderWidget; -class QToolButton; class QPEToolBar; class QPEMenuBar; class QPopupMenu; class MailTable; class QAction; -class QLabel; class MainWindowBase : public QMainWindow { @@ -26,15 +24,13 @@ protected slots: protected: ServerConnection *serverConnection; - QProgressBar *statusProgress; + MailStatusBar *status; FolderWidget *folderView; - QToolButton *stopButton; QPEToolBar *toolbar; QPEMenuBar *menubar; QPopupMenu *mailmenu, *servermenu; MailTable *mailView; QAction *compose, *sendQueue, *folders, *findmails, *configure; - QLabel *statusLabel; }; -- cgit v0.9.0.2