From a2e2588971cd59eea52d20940e0140e3b62ab58d Mon Sep 17 00:00:00 2001 From: twi-devel Date: Tue, 13 Oct 2026 13:25:23 +0200 Subject: [PATCH] Fix QPointer incomplete type error in Qt6 - Changed QPointer to raw pointer MapGraphicsView* - QPointer in Qt6 requires complete type at point of use, forward declaration insufficient - MapGraphicsView.h requires GRAPHICSVIEW_SUPPORTED macro which is now defined - Added GRAPHICSVIEW_SUPPORTED definition guard in overview_map_handler_impl.h - Updated widget() method to return raw pointer instead of QPointer::data() - Updated createBasicOverviewMap() to use direct new instead of QPointer constructor Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../MapImpl/overview_map_handler_impl.cpp | 4 ++-- .../MapImpl/overview_map_handler_impl.h | 15 +++++++++------ qt6-after/qt6-migrated-legatus/external/ArcGIS | 1 - 3 files changed, 11 insertions(+), 9 deletions(-) delete mode 120000 qt6-after/qt6-migrated-legatus/external/ArcGIS diff --git a/qt6-after/qt6-migrated-legatus/Lts/Viewer/SituationMap/MapImpl/overview_map_handler_impl.cpp b/qt6-after/qt6-migrated-legatus/Lts/Viewer/SituationMap/MapImpl/overview_map_handler_impl.cpp index 243b44dd9..a73a91db8 100755 --- a/qt6-after/qt6-migrated-legatus/Lts/Viewer/SituationMap/MapImpl/overview_map_handler_impl.cpp +++ b/qt6-after/qt6-migrated-legatus/Lts/Viewer/SituationMap/MapImpl/overview_map_handler_impl.cpp @@ -209,7 +209,7 @@ void OverviewMap::init(MapImpl *mainMap, const QColor &color) QWidget *OverviewMap::widget() { - return m_graphicsView.data(); + return m_graphicsView; } bool OverviewMap::createBasicOverviewMap() @@ -218,7 +218,7 @@ bool OverviewMap::createBasicOverviewMap() return true; // create required objects: - m_graphicsView = QPointer(new Esri::ArcGISRuntime::MapGraphicsView(m_mainMap)); + m_graphicsView = new Esri::ArcGISRuntime::MapGraphicsView(m_mainMap); m_graphicsView->setAttributionTextVisible(false); diff --git a/qt6-after/qt6-migrated-legatus/Lts/Viewer/SituationMap/MapImpl/overview_map_handler_impl.h b/qt6-after/qt6-migrated-legatus/Lts/Viewer/SituationMap/MapImpl/overview_map_handler_impl.h index 7cc4fd5b9..3b80df855 100755 --- a/qt6-after/qt6-migrated-legatus/Lts/Viewer/SituationMap/MapImpl/overview_map_handler_impl.h +++ b/qt6-after/qt6-migrated-legatus/Lts/Viewer/SituationMap/MapImpl/overview_map_handler_impl.h @@ -13,10 +13,13 @@ #include #include "situation_map_export.h" -// ESRI +// ESRI - Must be before Qt headers for GRAPHICSVIEW_SUPPORTED macro +// Ensure GRAPHICSVIEW_SUPPORTED is defined for MapGraphicsView (required on Linux) +#ifndef GRAPHICSVIEW_SUPPORTED +#define GRAPHICSVIEW_SUPPORTED +#endif #include - // Qt // Forward: @@ -59,10 +62,10 @@ protected: // Own data: - MapImpl *m_mainMap = nullptr; - QPointer m_graphicsView; - Esri::ArcGISRuntime::Graphic *m_graphic = nullptr; - QColor m_color; + MapImpl *m_mainMap = nullptr; + Esri::ArcGISRuntime::MapGraphicsView *m_graphicsView = nullptr; // Raw pointer - lifetime managed by parent widget + Esri::ArcGISRuntime::Graphic *m_graphic = nullptr; + QColor m_color; }; diff --git a/qt6-after/qt6-migrated-legatus/external/ArcGIS b/qt6-after/qt6-migrated-legatus/external/ArcGIS deleted file mode 120000 index 27fe78239..000000000 --- a/qt6-after/qt6-migrated-legatus/external/ArcGIS +++ /dev/null @@ -1 +0,0 @@ -/workspace/external/ArcGIS \ No newline at end of file