From 05200f9266a4e8e723450abb281c597a48da2e9f Mon Sep 17 00:00:00 2001 From: Berthold Stoeger Date: Sun, 22 Sep 2019 14:33:33 +0200 Subject: Cleanup: unify idiosyncratic singletons The way we handle singletons in QML, QML insists on allocating the objects. This leads to a very idiosyncratic way of handling singletons: The global instance pointer is set in the constructor. Unify all these by implementing a "SillySingleton" template. All of the weird singleton-classes can derive from this template and don't have to bother with reimplementing the instance() function with all the safety-checks, etc. This serves firstly as documentation but also improves debugging as we will now see wanted and unwanted creation and destruction of these weird singletons. Signed-off-by: Berthold Stoeger --- mobile-widgets/qmlmanager.cpp | 8 -------- 1 file changed, 8 deletions(-) (limited to 'mobile-widgets/qmlmanager.cpp') diff --git a/mobile-widgets/qmlmanager.cpp b/mobile-widgets/qmlmanager.cpp index 858f2c730..3c9adebbd 100644 --- a/mobile-widgets/qmlmanager.cpp +++ b/mobile-widgets/qmlmanager.cpp @@ -44,7 +44,6 @@ #include "core/settings/qPrefUnit.h" #include "core/trip.h" -QMLManager *QMLManager::m_instance = NULL; bool noCloudToCloud = false; #define RED_FONT QLatin1Literal("") @@ -150,7 +149,6 @@ QMLManager::QMLManager() : m_locationServiceEnabled(false), m_showNonDiveComputers(false) { LOG_STP("qmlmgr starting"); - m_instance = this; m_lastDevicePixelRatio = qApp->devicePixelRatio(); timer.start(); connect(qobject_cast(QApplication::instance()), &QApplication::applicationStateChanged, this, &QMLManager::applicationStateChanged); @@ -451,12 +449,6 @@ QMLManager::~QMLManager() if (appLogFileOpen) appLogFile.close(); #endif - m_instance = NULL; -} - -QMLManager *QMLManager::instance() -{ - return m_instance; } #define CLOUDURL QString(prefs.cloud_base_url) -- cgit v1.2.3-70-g09d2