X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fcoreapplication.h;h=6f9e9baa28bb4d7ced236590eb2fdd09d7a9225e;hp=3be2dbee12e6eb7dd291cc61060e5e2a532d0c44;hb=8f2ee00f4edef1693628d3af0bdee84d725eb754;hpb=84cd3561e97167ffb98ecab0fd2b884ba1d13ada diff --git a/src/core/coreapplication.h b/src/core/coreapplication.h index 3be2dbee..6f9e9baa 100644 --- a/src/core/coreapplication.h +++ b/src/core/coreapplication.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2014 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,43 +18,31 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ***************************************************************************/ -#ifndef COREAPPLICATION_H_ -#define COREAPPLICATION_H_ +#pragma once -#include - -#include "quassel.h" +#include "core-export.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(); - bool init(); + void init(); + +private slots: + void onShutdownComplete(); private: - CoreApplicationInternal *_internal; + std::unique_ptr _core; }; - - -#endif