X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fcoreapplication.h;h=f2f076fc012dcfe764b62e07d7a4b9a467fba8ca;hp=2bd53868a4ceaeebe21a9d0161bdd81696ca0718;hb=c1cf157116de7fc3da96203aa6f03c38c7ebb650;hpb=76db8cdfbeffaaba359c8e80cf2146da9e9e7f8a diff --git a/src/core/coreapplication.h b/src/core/coreapplication.h index 2bd53868..f2f076fc 100644 --- a/src/core/coreapplication.h +++ b/src/core/coreapplication.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2013 by the Quassel Project * + * Copyright (C) 2005-2018 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -18,47 +18,31 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ***************************************************************************/ -#ifndef COREAPPLICATION_H_ -#define COREAPPLICATION_H_ +#pragma once -#ifdef HAVE_KDE -# include -#else -# include -#endif +#include "core-export.h" -#include "quassel.h" - -/// Encapsulates CoreApplication's logic. -/** This allows it to be reused within MonolithicApplication as well. - */ -class CoreApplicationInternal -{ - Q_DECLARE_TR_FUNCTIONS(CoreApplicationInternal) +#include -public: - CoreApplicationInternal(); - ~CoreApplicationInternal(); - - bool init(); +#include -private: - bool _coreCreated; -}; +#include "core.h" +#include "quassel.h" +class Core; -class CoreApplication : public QCoreApplication, public Quassel +class CORE_EXPORT CoreApplication : public QCoreApplication { Q_OBJECT + public: - CoreApplication(int &argc, char **argv); - ~CoreApplication(); + CoreApplication(int& argc, char** argv); - bool init(); + void init(); + +private slots: + void onShutdownComplete(); private: - CoreApplicationInternal *_internal; + std::unique_ptr _core; }; - - -#endif