Diffstat (limited to 'noncore/unsupported/mail2/mainwindow.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/unsupported/mail2/mainwindow.cpp | 44 |
1 files changed, 42 insertions, 2 deletions
diff --git a/noncore/unsupported/mail2/mainwindow.cpp b/noncore/unsupported/mail2/mainwindow.cpp index 047c54b..a596653 100644 --- a/noncore/unsupported/mail2/mainwindow.cpp +++ b/noncore/unsupported/mail2/mainwindow.cpp @@ -1,4 +1,5 @@ #include <qmessagebox.h> #include <qaction.h> +#include <qpe/qcopenvelope_qws.h> #include "mailstatusbar.h" @@ -11,4 +12,5 @@ #include "composer.h" #include "viewmail.h" +#include "mailfactory.h" MainWindow::MainWindow(QWidget *parent, const char *name, WFlags fl) @@ -29,17 +31,55 @@ MainWindow::MainWindow(QWidget *parent, const char *name, WFlags fl) connect(status, SIGNAL(stop()), mailView, SLOT(stop())); - connect(compose, SIGNAL(activated()), SLOT(slotCompose())); + connect(compose, SIGNAL(activated()), SLOT(slotComposeNoParams())); connect(sendQueue, SIGNAL(activated()), SLOT(slotSendQueued())); connect(findmails, SIGNAL(activated()), SLOT(slotSearch())); connect(configure, SIGNAL(activated()), SLOT(slotConfigure())); + + // Added by Stefan Eilers to allow starting by addressbook.. +#if !defined(QT_NO_COP) + QCopChannel *addressChannel = new QCopChannel("QPE/Application/mail" , this ); + connect (addressChannel, SIGNAL( received(const QCString &, const QByteArray &)), + this, SLOT ( appMessage(const QCString &, const QByteArray &) ) ); +#endif } -void MainWindow::slotCompose() +// Added by Stefan Eilers to allow starting by addressbook.. +void MainWindow::appMessage(const QCString &msg, const QByteArray &data) +{ + if (msg == "writeMail(QString,QString)") { + QDataStream stream(data,IO_ReadOnly); + QString name, email; + stream >> name >> email; + + qWarning("opie-mail:: Should send mail to %s with address %s", name.latin1(), email.latin1() ); + + slotCompose( name, email ); + + }else{ + QString str_message = msg; + qWarning("opie-mail:: Received unknown QCop-Message: %s", str_message.latin1() ); + } +} + +void MainWindow::slotCompose( const QString& name, const QString& email ) { Composer composer(this, 0, true); + + // If there is a mailaddress given, create message.. + if ( ! name.isEmpty() ){ + qWarning("opie-mail:: Compose mail for %s with address %s", name.latin1(), email.latin1() ); + SendMail compMail; + compMail.setTo( "\"" + name + "\"" + " " + "<"+ email + ">"); + composer.setSendMail( compMail ); + } composer.showMaximized(); composer.exec(); } +void MainWindow::slotComposeNoParams() +{ + slotCompose( 0l, 0l); +} + void MainWindow::slotSendQueued() { |