summaryrefslogtreecommitdiffstats
path: root/examples/network/mail/smtp.h
diff options
context:
space:
mode:
Diffstat (limited to 'examples/network/mail/smtp.h')
-rw-r--r--examples/network/mail/smtp.h58
1 files changed, 58 insertions, 0 deletions
diff --git a/examples/network/mail/smtp.h b/examples/network/mail/smtp.h
new file mode 100644
index 0000000..0a469a5
--- /dev/null
+++ b/examples/network/mail/smtp.h
@@ -0,0 +1,58 @@
+/****************************************************************************
+**
+** Copyright (C) 1992-2008 Trolltech ASA. All rights reserved.
+**
+** This file is part of an example program for Qt. This example
+** program may be used, distributed and modified without limitation.
+**
+*****************************************************************************/
+
+#ifndef SMTP_H
+#define SMTP_H
+
+#include <qobject.h>
+#include <qstring.h>
+
+class QSocket;
+class QTextStream;
+class QDns;
+
+class Smtp : public QObject
+{
+ Q_OBJECT
+
+public:
+ Smtp( const QString &from, const QString &to,
+ const QString &subject, const QString &body );
+ ~Smtp();
+
+signals:
+ void status( const QString & );
+
+private slots:
+ void dnsLookupHelper();
+ void readyRead();
+ void connected();
+
+private:
+ enum State {
+ Init,
+ Mail,
+ Rcpt,
+ Data,
+ Body,
+ Quit,
+ Close
+ };
+
+ QString message;
+ QString from;
+ QString rcpt;
+ QSocket *socket;
+ QTextStream * t;
+ int state;
+ QString response;
+ QDns * mxLookup;
+};
+
+#endif