diff --git a/qmlexport/CMakeLists.txt b/qmlexport/CMakeLists.txt index f0ea7541..a4660b24 100644 --- a/qmlexport/CMakeLists.txt +++ b/qmlexport/CMakeLists.txt @@ -7,13 +7,11 @@ set(HEADERS QskQmlGlobal.h QskShortcutQml.h QskLayoutQml.h - QskMainQml.h QskQml.h) set(SOURCES QskShortcutQml.cpp QskLayoutQml.cpp - QskMainQml.cpp QskQml.cpp) set(target qskqmlexport) diff --git a/qmlexport/QskMainQml.cpp b/qmlexport/QskMainQml.cpp deleted file mode 100644 index 05cb69e8..00000000 --- a/qmlexport/QskMainQml.cpp +++ /dev/null @@ -1,69 +0,0 @@ -/****************************************************************************** - * QSkinny - Copyright (C) The authors - * SPDX-License-Identifier: BSD-3-Clause - *****************************************************************************/ - -#include "QskMainQml.h" -#include -#include - -static void qskRegisterConverter() -{ - QMetaType::registerConverter< int, QskSetupFlagsQml >(); -} - -Q_CONSTRUCTOR_FUNCTION( qskRegisterConverter ) - -QskMain::QskMain( QObject* parent ) - : QObject( parent ) -{ - // how to supress warnings about a missing skinListChanged - // as we don't have it ?? - - connect( setup(), &QskSetup::skinChanged, - this, &QskMain::skinChanged, Qt::QueuedConnection ); - - connect( setup(), &QskSetup::itemUpdateFlagsChanged, - this, &QskMain::itemUpdateFlagsChanged, Qt::QueuedConnection ); -} - -QStringList QskMain::skinList() const -{ - auto manager = QskSkinManager::instance(); - return manager ? manager->skinNames() : QStringList(); -} - -QQmlListProperty< QObject > QskMain::data() -{ -#if QT_VERSION >= QT_VERSION_CHECK( 6, 0, 0 ) - using SizeType = qsizetype; -#else - using SizeType = int; -#endif - - return QQmlListProperty< QObject >( - this, nullptr, - []( QQmlListProperty< QObject >* property, QObject* value ) - { - auto main = static_cast< QskMain* >( property->object ); - main->m_data.append( value ); - }, - []( QQmlListProperty< QObject >* property ) - { - auto main = static_cast< const QskMain* >( property->object ); - return static_cast< SizeType >( main->m_data.count() ); - }, - []( QQmlListProperty< QObject >* property, SizeType index ) - { - auto main = static_cast< const QskMain* >( property->object ); - return main->m_data.at( index ); - }, - []( QQmlListProperty< QObject >* property ) - { - auto main = static_cast< QskMain* >( property->object ); - main->m_data.clear(); - } - ); -} - -#include "moc_QskMainQml.cpp" diff --git a/qmlexport/QskMainQml.h b/qmlexport/QskMainQml.h deleted file mode 100644 index 438a4e6e..00000000 --- a/qmlexport/QskMainQml.h +++ /dev/null @@ -1,66 +0,0 @@ -/****************************************************************************** - * QSkinny - Copyright (C) The authors - * SPDX-License-Identifier: BSD-3-Clause - *****************************************************************************/ - -#ifndef QSK_SETUP_QML_H -#define QSK_SETUP_QML_H - -#include "QskQmlGlobal.h" - -#include - -#include -#include - -class QskSetupFlagsQml : public QskQuickItem::UpdateFlags -{ - Q_GADGET - - public: - template< typename ... Args > - QskSetupFlagsQml( Args&&... args ) - : QskQuickItem::UpdateFlags( std::forward< Args >( args ) ... ) - { - } - - Q_INVOKABLE int valueOf() const { return int( *this ); } -}; - -class QskMain : public QObject -{ - public: - Q_OBJECT - - Q_PRIVATE_PROPERTY( setup(), QString skin READ skinName - WRITE setSkin NOTIFY skinChanged ) - - Q_PROPERTY( QStringList skinList READ skinList NOTIFY skinListChanged ) - - Q_PRIVATE_PROPERTY( setup(), QskSetupFlagsQml itemUpdateFlags - READ itemUpdateFlags WRITE setItemUpdateFlags NOTIFY itemUpdateFlagsChanged ) - - Q_PROPERTY( QQmlListProperty< QObject > data READ data ) - Q_CLASSINFO( "DefaultProperty", "data" ) - - public: - QskMain( QObject* parent = nullptr ); - - QStringList skinList() const; - QQmlListProperty< QObject > data(); - - Q_SIGNALS: - void skinListChanged(); // never emitted - void skinChanged(); - void inputPanelChanged(); - void itemUpdateFlagsChanged(); - - private: - static inline QskSetup* setup() { return QskSetup::instance(); } - - QObjectList m_data; -}; - -Q_DECLARE_METATYPE( QskSetupFlagsQml ) - -#endif diff --git a/qmlexport/QskQml.cpp b/qmlexport/QskQml.cpp index b8c2c20a..e5581aad 100644 --- a/qmlexport/QskQml.cpp +++ b/qmlexport/QskQml.cpp @@ -8,7 +8,6 @@ #include "QskLayoutQml.h" #include "QskShortcutQml.h" -#include "QskMainQml.h" #include #include @@ -196,7 +195,6 @@ void QskQml::registerTypes() qmlRegisterUncreatableType< QskSkin >( QSK_MODULE_NAME, 1, 0, "Skin", QString() ); qRegisterMetaType< QskSkin* >(); - registerObject< QskMain >(); registerObject< QskShortcutQml >( "Shortcut" ); registerObject< QskWindow >(); diff --git a/src/controls/QskSetup.cpp b/src/controls/QskSetup.cpp index 8fcf0319..25727ddb 100644 --- a/src/controls/QskSetup.cpp +++ b/src/controls/QskSetup.cpp @@ -285,10 +285,4 @@ bool QskSetup::eventFilter( QObject* object, QEvent* event ) return false; } -QskSetup* QskSetup::qmlAttachedProperties( QObject* ) -{ - return QskSetup::instance(); -} - -Q_DECLARE_METATYPE( QskSkin* ) #include "moc_QskSetup.cpp" diff --git a/src/controls/QskSetup.h b/src/controls/QskSetup.h index 1ea4c7f0..d824b0c2 100644 --- a/src/controls/QskSetup.h +++ b/src/controls/QskSetup.h @@ -49,8 +49,6 @@ class QSK_EXPORT QskSetup : public QObject static void setup(); static void cleanup(); - static QskSetup* qmlAttachedProperties( QObject* ); - Q_SIGNALS: void skinChanged( QskSkin* ); void itemUpdateFlagsChanged();