diff --git a/src/dialogs/QskDialog.cpp b/src/dialogs/QskDialog.cpp index cab266e3..e10db5eb 100644 --- a/src/dialogs/QskDialog.cpp +++ b/src/dialogs/QskDialog.cpp @@ -206,13 +206,8 @@ static QString qskSelectWindow( class QskDialog::PrivateData { public: - PrivateData() - : policy( QskDialog::TopLevelWindow ) - { - } - QPointer< QWindow > transientParent; - QskDialog::Policy policy : 2; + QskDialog::Policy policy = QskDialog::TopLevelWindow; }; QskDialog::QskDialog() @@ -226,11 +221,8 @@ QskDialog::~QskDialog() QskDialog* QskDialog::instance() { - static QskDialog* s_instance = nullptr; - if ( s_instance == nullptr ) - s_instance = new QskDialog(); - - return s_instance; + static QskDialog instance; + return &instance; } void QskDialog::setPolicy( Policy policy ) diff --git a/src/dialogs/QskDialog.h b/src/dialogs/QskDialog.h index 55f0e080..8203ed82 100644 --- a/src/dialogs/QskDialog.h +++ b/src/dialogs/QskDialog.h @@ -147,8 +147,6 @@ class QSK_EXPORT QskDialog : public QObject QskDialog(); ~QskDialog() override; - static QskDialog* s_instance; - class PrivateData; std::unique_ptr< PrivateData > m_data; };