/***************************************************************************
- * Copyright (C) 2005-08 by the Quassel IRC Team *
+ * Copyright (C) 2005-2018 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
***************************************************************************/
-#ifndef MONOAPPLICATION_H_
-#define MONOAPPLICATION_H_
+#pragma once
+
+#include <QPointer>
+#include <QThread>
#include "qtuiapplication.h"
-class CoreApplicationInternal;
+class Core;
+class InternalPeer;
-class MonolithicApplication : public QtUiApplication {
+class MonolithicApplication : public QtUiApplication
+{
+ Q_OBJECT
- public:
+public:
MonolithicApplication(int &, char **);
- ~MonolithicApplication();
+ ~MonolithicApplication() override;
- bool init();
+ bool init() override;
- private:
- CoreApplicationInternal *_internal;
-};
+signals:
+ void connectInternalPeer(QPointer<InternalPeer> peer);
+
+private slots:
+ void onConnectionRequest(QPointer<InternalPeer> peer);
-#endif
+private:
+ void startInternalCore();
+
+private:
+ QPointer<Core> _core;
+ QThread _coreThread;
+};