summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin Smith <git@kismith.co.uk>2009-11-26 17:31:53 (GMT)
committerKevin Smith <git@kismith.co.uk>2009-11-26 17:46:21 (GMT)
commiteebdef9a7724ff7fa86a5d1cca37759d37bbb336 (patch)
tree7dd76b8e5d364eb1b019b2511a839a9eac8397e4 /Swift/Controllers/UIInterfaces
parent39e58e4593f54a65f810e73728fe2490958fcba2 (diff)
downloadswift-eebdef9a7724ff7fa86a5d1cca37759d37bbb336.zip
swift-eebdef9a7724ff7fa86a5d1cca37759d37bbb336.tar.bz2
Plumbing to show a dummy XMLConsoleWidget in the chat tabs.
This should all work now, and the XMLConsoleController needs to talk to the QtXMLConsoleWidget through the XMLConsoleWidget interface. Resolves: #256
Diffstat (limited to 'Swift/Controllers/UIInterfaces')
-rw-r--r--Swift/Controllers/UIInterfaces/LoginWindow.h23
-rw-r--r--Swift/Controllers/UIInterfaces/LoginWindowFactory.h23
-rw-r--r--Swift/Controllers/UIInterfaces/XMLConsoleWidget.h7
-rw-r--r--Swift/Controllers/UIInterfaces/XMLConsoleWidgetFactory.h12
4 files changed, 65 insertions, 0 deletions
diff --git a/Swift/Controllers/UIInterfaces/LoginWindow.h b/Swift/Controllers/UIInterfaces/LoginWindow.h
new file mode 100644
index 0000000..cfa20c7
--- /dev/null
+++ b/Swift/Controllers/UIInterfaces/LoginWindow.h
@@ -0,0 +1,23 @@
+#ifndef SWIFTEN_LoginWindow_H
+#define SWIFTEN_LoginWindow_H
+
+#include "Swiften/Base/String.h"
+
+#include <boost/signals.hpp>
+#include <boost/shared_ptr.hpp>
+
+namespace Swift {
+ class MainWindow;
+ class LoginWindow {
+ public:
+ virtual ~LoginWindow() {};
+ virtual void morphInto(MainWindow *mainWindow) = 0;
+ virtual void loggedOut() = 0;
+ virtual void setMessage(const String&) = 0;
+ virtual void addAvailableAccount(const String& defaultJID, const String& defaultPassword, const String& defaultCertificate) = 0;
+ boost::signal<void (const String&, const String&, const String& /* certificateFile */, bool)> onLoginRequest;
+ boost::signal<void ()> onCancelLoginRequest;
+ };
+}
+#endif
+
diff --git a/Swift/Controllers/UIInterfaces/LoginWindowFactory.h b/Swift/Controllers/UIInterfaces/LoginWindowFactory.h
new file mode 100644
index 0000000..d2dc31b
--- /dev/null
+++ b/Swift/Controllers/UIInterfaces/LoginWindowFactory.h
@@ -0,0 +1,23 @@
+#ifndef SWIFTEN_LoginWindowFactory_H
+#define SWIFTEN_LoginWindowFactory_H
+
+
+
+namespace Swift {
+ class LoginWindow;
+ class String;
+ class UIEventStream;
+
+ class LoginWindowFactory {
+ public:
+ virtual ~LoginWindowFactory() {};
+
+ /**
+ * Transfers ownership of result.
+ */
+ virtual LoginWindow* createLoginWindow(UIEventStream* uiEventStream) = 0;
+
+ };
+}
+#endif
+
diff --git a/Swift/Controllers/UIInterfaces/XMLConsoleWidget.h b/Swift/Controllers/UIInterfaces/XMLConsoleWidget.h
new file mode 100644
index 0000000..69628df
--- /dev/null
+++ b/Swift/Controllers/UIInterfaces/XMLConsoleWidget.h
@@ -0,0 +1,7 @@
+#pragma once
+
+namespace Swift {
+ class XMLConsoleWidget {
+
+ };
+}
diff --git a/Swift/Controllers/UIInterfaces/XMLConsoleWidgetFactory.h b/Swift/Controllers/UIInterfaces/XMLConsoleWidgetFactory.h
new file mode 100644
index 0000000..fa7707a
--- /dev/null
+++ b/Swift/Controllers/UIInterfaces/XMLConsoleWidgetFactory.h
@@ -0,0 +1,12 @@
+#pragma once
+
+#include "Swift/Controllers/UIInterfaces/XMLConsoleWidget.h"
+
+namespace Swift {
+ class UIEventStream;
+ class XMLConsoleWidgetFactory {
+ public:
+ virtual XMLConsoleWidget* createXMLConsoleWidget() = 0;
+ virtual ~XMLConsoleWidgetFactory() {};
+ };
+}