diff --git a/src/plugins/qmldesigner/CMakeLists.txt b/src/plugins/qmldesigner/CMakeLists.txt index 6ec60cc2159..3a005e763b5 100644 --- a/src/plugins/qmldesigner/CMakeLists.txt +++ b/src/plugins/qmldesigner/CMakeLists.txt @@ -52,7 +52,7 @@ add_qtc_plugin(QmlDesigner QmlJS LanguageUtils QmlEditorWidgets AdvancedDockingSystem Qt::QuickWidgets Qt::CorePrivate Qt::Xml Qt::Svg Sqlite Zip Qt::GuiPrivate PUBLIC_DEPENDS - QmlDesignerUtils QmlPuppetCommunication QmlDesignerCore + QmlDesignerUtils QmlPuppetCommunication QmlDesignerCore DesignSystem DEFINES IDE_LIBRARY_BASENAME=\"${IDE_LIBRARY_BASE_PATH}\" SHARE_QML_PATH="${CMAKE_CURRENT_SOURCE_DIR}/../../../share/qtcreator/qmldesigner" @@ -727,14 +727,6 @@ extend_qtc_plugin(QmlDesigner messagemodel.h ) -extend_qtc_plugin(QmlDesigner - SOURCES_PREFIX components/designsystem - SOURCES - dsconstants.h - dsthememanager.h dsthememanager.cpp - dsthemegroup.cpp dsthemegroup.h -) - add_qtc_plugin(assetexporterplugin PLUGIN_CLASS AssetExporterPlugin CONDITION TARGET QmlDesigner diff --git a/src/plugins/qmldesigner/libs/CMakeLists.txt b/src/plugins/qmldesigner/libs/CMakeLists.txt index 7cac0a93a3d..be2d12733cb 100644 --- a/src/plugins/qmldesigner/libs/CMakeLists.txt +++ b/src/plugins/qmldesigner/libs/CMakeLists.txt @@ -1,2 +1,3 @@ add_subdirectory(designercore) add_subdirectory(qmldesignerutils) +add_subdirectory(designsystem) diff --git a/src/plugins/qmldesigner/libs/designsystem/CMakeLists.txt b/src/plugins/qmldesigner/libs/designsystem/CMakeLists.txt new file mode 100644 index 00000000000..8830807ce08 --- /dev/null +++ b/src/plugins/qmldesigner/libs/designsystem/CMakeLists.txt @@ -0,0 +1,16 @@ +add_qtc_library(DesignSystem STATIC + PUBLIC_INCLUDES ${CMAKE_CURRENT_LIST_DIR} + DEPENDS + Qt::Core QmlDesignerCore + SOURCES + dsconstants.h + dsthemegroup.h dsthemegroup.cpp + dsthememanager.h dsthememanager.cpp +) + +extend_qtc_library(DesignSystem + CONDITION ENABLE_COMPILE_WARNING_AS_ERROR + PROPERTIES COMPILE_WARNING_AS_ERROR ON + PUBLIC_COMPILE_OPTIONS + $<$:-Wno-error=maybe-uninitialized> +) diff --git a/src/plugins/qmldesigner/libs/designsystem/designsystem_global.h b/src/plugins/qmldesigner/libs/designsystem/designsystem_global.h new file mode 100644 index 00000000000..835c8b0ad3d --- /dev/null +++ b/src/plugins/qmldesigner/libs/designsystem/designsystem_global.h @@ -0,0 +1,14 @@ +// Copyright (C) 2024 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 + +#pragma once + +#include + +#if defined(DESIGNSYSTEM_LIBRARY) +# define DESIGNSYSTEM_EXPORT Q_DECL_EXPORT +#elif defined(DESIGNSYSTEM_STATIC_LIBRARY) +# define DESIGNSYSTEM_EXPORT +#else +# define DESIGNSYSTEM_EXPORT Q_DECL_IMPORT +#endif diff --git a/src/plugins/qmldesigner/components/designsystem/dsconstants.h b/src/plugins/qmldesigner/libs/designsystem/dsconstants.h similarity index 100% rename from src/plugins/qmldesigner/components/designsystem/dsconstants.h rename to src/plugins/qmldesigner/libs/designsystem/dsconstants.h diff --git a/src/plugins/qmldesigner/components/designsystem/dsthemegroup.cpp b/src/plugins/qmldesigner/libs/designsystem/dsthemegroup.cpp similarity index 100% rename from src/plugins/qmldesigner/components/designsystem/dsthemegroup.cpp rename to src/plugins/qmldesigner/libs/designsystem/dsthemegroup.cpp diff --git a/src/plugins/qmldesigner/components/designsystem/dsthemegroup.h b/src/plugins/qmldesigner/libs/designsystem/dsthemegroup.h similarity index 94% rename from src/plugins/qmldesigner/components/designsystem/dsthemegroup.h rename to src/plugins/qmldesigner/libs/designsystem/dsthemegroup.h index b76e2f3d504..e61a915623e 100644 --- a/src/plugins/qmldesigner/components/designsystem/dsthemegroup.h +++ b/src/plugins/qmldesigner/libs/designsystem/dsthemegroup.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 #pragma once -#include "qmldesignercomponents_global.h" +#include "designsystem_global.h" #include "dsconstants.h" #include "nodeinstanceglobal.h" @@ -18,7 +18,7 @@ enum class DECORATION_CONTEXT { COMPONENT_THEME, }; -class QMLDESIGNERCOMPONENTS_EXPORT DSThemeGroup +class DESIGNSYSTEM_EXPORT DSThemeGroup { struct PropertyData { diff --git a/src/plugins/qmldesigner/components/designsystem/dsthememanager.cpp b/src/plugins/qmldesigner/libs/designsystem/dsthememanager.cpp similarity index 100% rename from src/plugins/qmldesigner/components/designsystem/dsthememanager.cpp rename to src/plugins/qmldesigner/libs/designsystem/dsthememanager.cpp diff --git a/src/plugins/qmldesigner/components/designsystem/dsthememanager.h b/src/plugins/qmldesigner/libs/designsystem/dsthememanager.h similarity index 94% rename from src/plugins/qmldesigner/components/designsystem/dsthememanager.h rename to src/plugins/qmldesigner/libs/designsystem/dsthememanager.h index e3ac9e2e4c9..0972dcd7893 100644 --- a/src/plugins/qmldesigner/components/designsystem/dsthememanager.h +++ b/src/plugins/qmldesigner/libs/designsystem/dsthememanager.h @@ -3,7 +3,7 @@ #pragma once -#include "qmldesignercomponents_global.h" +#include "designsystem_global.h" #include "dsconstants.h" #include "dsthemegroup.h" @@ -15,7 +15,8 @@ namespace QmlDesigner { using ThemeName = PropertyName; class DSTheme; -class QMLDESIGNERCOMPONENTS_EXPORT DSThemeManager + +class DESIGNSYSTEM_EXPORT DSThemeManager { public: