diff --git a/src/interfaces/icore.cpp b/src/interfaces/icore.cpp index 5fe64ba..cdd37d9 100644 --- a/src/interfaces/icore.cpp +++ b/src/interfaces/icore.cpp @@ -1,48 +1,46 @@ /**************************************************************************** ** ** Copyright (C) 2016 by Sandro S. Andrade ** ** This program is free software; you can redistribute it and/or ** modify it under the terms of the GNU General Public License as ** published by the Free Software Foundation; either version 2 of ** the License or (at your option) version 3 or any later version ** accepted by the membership of KDE e.V. (or its successor approved ** by the membership of KDE e.V.), which shall act as a proxy ** defined in Section 14 of version 3 of the license. ** ** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** ** You should have received a copy of the GNU General Public License ** along with this program. If not, see . ** ****************************************************************************/ #include "icore.h" namespace Minuet { - ICore *ICore::m_self = 0; ICore::~ICore() { m_self = 0; } ICore *ICore::self() { return m_self; } ICore::ICore(QObject *parent) : QObject(parent) { Q_ASSERT(m_self == 0); m_self = this; } } - diff --git a/src/interfaces/icore.h b/src/interfaces/icore.h index 65ecbf8..4e75471 100644 --- a/src/interfaces/icore.h +++ b/src/interfaces/icore.h @@ -1,67 +1,66 @@ /**************************************************************************** ** ** Copyright (C) 2016 by Sandro S. Andrade ** ** This program is free software; you can redistribute it and/or ** modify it under the terms of the GNU General Public License as ** published by the Free Software Foundation; either version 2 of ** the License or (at your option) version 3 or any later version ** accepted by the membership of KDE e.V. (or its successor approved ** by the membership of KDE e.V.), which shall act as a proxy ** defined in Section 14 of version 3 of the license. ** ** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** ** You should have received a copy of the GNU General Public License ** along with this program. If not, see . ** ****************************************************************************/ #ifndef MINUET_ICORE_H #define MINUET_ICORE_H #include #include namespace Minuet { - class IPluginController; class ISoundController; class IExerciseController; class IUiController; class MINUETINTERFACES_EXPORT ICore : public QObject { Q_OBJECT - Q_PROPERTY(IPluginController * pluginController READ pluginController CONSTANT); - Q_PROPERTY(ISoundController * soundController READ soundController NOTIFY soundControllerChanged); - Q_PROPERTY(IExerciseController * exerciseController READ exerciseController CONSTANT); - Q_PROPERTY(IUiController * uiController READ uiController CONSTANT); + Q_PROPERTY(IPluginController *pluginController READ pluginController CONSTANT); + Q_PROPERTY(ISoundController *soundController READ soundController NOTIFY soundControllerChanged); + Q_PROPERTY(IExerciseController *exerciseController READ exerciseController CONSTANT); + Q_PROPERTY(IUiController *uiController READ uiController CONSTANT); public: virtual ~ICore() override; static ICore *self(); virtual Minuet::IPluginController *pluginController() = 0; virtual Minuet::ISoundController *soundController() = 0; virtual Minuet::IExerciseController *exerciseController() = 0; virtual Minuet::IUiController *uiController() = 0; Q_SIGNALS: void soundControllerChanged(ISoundController *newSoundController); protected: explicit ICore(QObject *parent = 0); static ICore *m_self; }; } #endif