diff --git a/CMakeLists.txt b/CMakeLists.txt index 0492899da47..613ca453edb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -581,8 +581,6 @@ ELSE (WIN32) ENDIF(WIN32) -ADD_DEFINITIONS("-DCUSTOMWIDGETS_EXPORT=${DLLIMPORT}") - SET(CMAKE_CXX_VISIBILITY_PRESET hidden) INCLUDE(GenerateExportHeader) diff --git a/src/customwidgets/CMakeLists.txt b/src/customwidgets/CMakeLists.txt index 56e5e5d1ffb..1f72236dab6 100644 --- a/src/customwidgets/CMakeLists.txt +++ b/src/customwidgets/CMakeLists.txt @@ -7,10 +7,6 @@ FIND_PACKAGE(Qt5Designer REQUIRED) SET(QT_USE_QTDESIGNER ON) - -REMOVE_DEFINITIONS("-DCUSTOMWIDGETS_EXPORT=${DLLIMPORT}") -ADD_DEFINITIONS("\"-DCUSTOMWIDGETS_EXPORT=${DLLEXPORT}\"") - ######################################################## # Files @@ -107,6 +103,7 @@ INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_SOURCE_DIR}/../gui/editorwidgets/ ${CMAKE_CURRENT_SOURCE_DIR}/../gui/editorwidgets/core ${CMAKE_BINARY_DIR}/src/core + ${CMAKE_BINARY_DIR}/src/customwidgets ${CMAKE_CURRENT_BINARY_DIR}/../ui/ ) INCLUDE_DIRECTORIES(SYSTEM @@ -126,9 +123,6 @@ QT5_ADD_RESOURCES(IMAGE_RCC_SRCS ${IMAGE_RCCS}) ADD_LIBRARY(qgis_customwidgets SHARED ${QGIS_CUSTOMWIDGETS_SRCS} ${QGIS_CUSTOMWIDGETS_MOC_SRCS} ${QGIS_CUSTOMWIDGETS_HDRS} ${IMAGE_RCC_SRCS}) -# TODO: apple -INSTALL(FILES ${QGIS_CUSTOMWIDGETS_HDRS} DESTINATION ${QGIS_INCLUDE_DIR}) - SET_TARGET_PROPERTIES(qgis_customwidgets PROPERTIES VERSION ${COMPLETE_VERSION} SOVERSION ${COMPLETE_VERSION} @@ -139,8 +133,19 @@ ADD_DEPENDENCIES(qgis_customwidgets ui) TARGET_LINK_LIBRARIES(qgis_customwidgets qgis_gui) +GENERATE_EXPORT_HEADER( + qgis_customwidgets + BASE_NAME CUSTOMWIDGETS + EXPORT_FILE_NAME qgis_customwidgets.h +) + +SET(QGIS_CUSTOMWIDGETS_HDRS ${QGIS_CUSTOMWIDGETS_HDRS} ${PROJECT_BINARY_DIR}/qgis_customwidgets.h) + # install INSTALL(TARGETS qgis_customwidgets RUNTIME DESTINATION ${QT_PLUGINS_DIR}/designer LIBRARY DESTINATION ${QT_PLUGINS_DIR}/designer ) + +# TODO: apple +INSTALL(FILES ${QGIS_CUSTOMWIDGETS_HDRS} DESTINATION ${QGIS_INCLUDE_DIR}) diff --git a/src/customwidgets/qgscollapsiblegroupboxplugin.h b/src/customwidgets/qgscollapsiblegroupboxplugin.h index 31b751af837..a7ea82f1b3b 100644 --- a/src/customwidgets/qgscollapsiblegroupboxplugin.h +++ b/src/customwidgets/qgscollapsiblegroupboxplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif class CUSTOMWIDGETS_EXPORT QgsCollapsibleGroupBoxPlugin : public QObject, public QDesignerCustomWidgetInterface diff --git a/src/customwidgets/qgscolorbuttonplugin.h b/src/customwidgets/qgscolorbuttonplugin.h index cdb713cc35e..d44e9186a8d 100644 --- a/src/customwidgets/qgscolorbuttonplugin.h +++ b/src/customwidgets/qgscolorbuttonplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsdatadefinedbuttonplugin.h b/src/customwidgets/qgsdatadefinedbuttonplugin.h index 9ba4eb6c1ae..237396d9b9e 100644 --- a/src/customwidgets/qgsdatadefinedbuttonplugin.h +++ b/src/customwidgets/qgsdatadefinedbuttonplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsdatetimeeditplugin.h b/src/customwidgets/qgsdatetimeeditplugin.h index 67440adf919..b9a3fbd51aa 100644 --- a/src/customwidgets/qgsdatetimeeditplugin.h +++ b/src/customwidgets/qgsdatetimeeditplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsdockwidgetplugin.h b/src/customwidgets/qgsdockwidgetplugin.h index 5d4997a1e0a..cc1aa452b80 100644 --- a/src/customwidgets/qgsdockwidgetplugin.h +++ b/src/customwidgets/qgsdockwidgetplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif class CUSTOMWIDGETS_EXPORT QgsDockWidgetPlugin : public QObject, public QDesignerCustomWidgetInterface diff --git a/src/customwidgets/qgsdoublespinboxplugin.h b/src/customwidgets/qgsdoublespinboxplugin.h index 58c0ac86f77..c26cd0ccac0 100644 --- a/src/customwidgets/qgsdoublespinboxplugin.h +++ b/src/customwidgets/qgsdoublespinboxplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsexpressionbuilderwidgetplugin.h b/src/customwidgets/qgsexpressionbuilderwidgetplugin.h index 68670265af8..61a43edd17a 100644 --- a/src/customwidgets/qgsexpressionbuilderwidgetplugin.h +++ b/src/customwidgets/qgsexpressionbuilderwidgetplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsextentgroupboxplugin.h b/src/customwidgets/qgsextentgroupboxplugin.h index f3167d963fb..cf6cbf3cde0 100644 --- a/src/customwidgets/qgsextentgroupboxplugin.h +++ b/src/customwidgets/qgsextentgroupboxplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsexternalresourcewidgetplugin.h b/src/customwidgets/qgsexternalresourcewidgetplugin.h index ae782cdc485..e5b472679f9 100644 --- a/src/customwidgets/qgsexternalresourcewidgetplugin.h +++ b/src/customwidgets/qgsexternalresourcewidgetplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsfieldcomboboxplugin.h b/src/customwidgets/qgsfieldcomboboxplugin.h index 3d671ec8539..2a99b08fef5 100644 --- a/src/customwidgets/qgsfieldcomboboxplugin.h +++ b/src/customwidgets/qgsfieldcomboboxplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsfieldexpressionwidgetplugin.h b/src/customwidgets/qgsfieldexpressionwidgetplugin.h index f09927d667c..7dbcfba952a 100644 --- a/src/customwidgets/qgsfieldexpressionwidgetplugin.h +++ b/src/customwidgets/qgsfieldexpressionwidgetplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsfilewidgetplugin.h b/src/customwidgets/qgsfilewidgetplugin.h index 9757eda1911..d4c251af2e8 100644 --- a/src/customwidgets/qgsfilewidgetplugin.h +++ b/src/customwidgets/qgsfilewidgetplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsfilterlineeditplugin.h b/src/customwidgets/qgsfilterlineeditplugin.h index d8fe6cb4e3c..1d49cea0c7f 100644 --- a/src/customwidgets/qgsfilterlineeditplugin.h +++ b/src/customwidgets/qgsfilterlineeditplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsmaplayercomboboxplugin.h b/src/customwidgets/qgsmaplayercomboboxplugin.h index c63a5689f2e..35a6873541f 100644 --- a/src/customwidgets/qgsmaplayercomboboxplugin.h +++ b/src/customwidgets/qgsmaplayercomboboxplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsprojectionselectionwidgetplugin.h b/src/customwidgets/qgsprojectionselectionwidgetplugin.h index f340b1560bd..63c3ae91783 100644 --- a/src/customwidgets/qgsprojectionselectionwidgetplugin.h +++ b/src/customwidgets/qgsprojectionselectionwidgetplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsrelationeditorwidgetplugin.h b/src/customwidgets/qgsrelationeditorwidgetplugin.h index 101e007c10a..30c11543496 100644 --- a/src/customwidgets/qgsrelationeditorwidgetplugin.h +++ b/src/customwidgets/qgsrelationeditorwidgetplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsrelationreferencewidgetplugin.h b/src/customwidgets/qgsrelationreferencewidgetplugin.h index 3dc4cd69837..bfe3867ec05 100644 --- a/src/customwidgets/qgsrelationreferencewidgetplugin.h +++ b/src/customwidgets/qgsrelationreferencewidgetplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsscalerangewidgetplugin.h b/src/customwidgets/qgsscalerangewidgetplugin.h index a22c2d4bbc6..84aa45fa18d 100644 --- a/src/customwidgets/qgsscalerangewidgetplugin.h +++ b/src/customwidgets/qgsscalerangewidgetplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsscalewidgetplugin.h b/src/customwidgets/qgsscalewidgetplugin.h index 19afb7de9ea..1fb399494f5 100644 --- a/src/customwidgets/qgsscalewidgetplugin.h +++ b/src/customwidgets/qgsscalewidgetplugin.h @@ -24,6 +24,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif diff --git a/src/customwidgets/qgsspinboxplugin.h b/src/customwidgets/qgsspinboxplugin.h index 0099342c2b9..68a8ecea6f6 100644 --- a/src/customwidgets/qgsspinboxplugin.h +++ b/src/customwidgets/qgsspinboxplugin.h @@ -23,6 +23,7 @@ #else #include <QtUiPlugin/QDesignerCustomWidgetInterface> #include <QtUiPlugin/QDesignerExportWidget> +#include "qgis_customwidgets.h" #endif