Commit Graph
23 Commits
Author SHA1 Message Date
berrux-dev d130c55be5 Fix Qt6 resource compilation so LogView icons are embedded at runtime
- QT5_ADD_RESOURCES was a no-op stub under Qt6, silently dropping .qrc
  files: LogView's :/image/* icons were never compiled into the binary.
  Map the stub onto qt6_add_resources() (outfiles-variable form, which
  appends the generated qrc_*.cpp to the source list). LogView is the
  only caller of the stub.
- nglwidgets' Qt6 branch only processed rme_light_style.qrc;
  nglresources.qrc (which provides :icons/16x16/* toolbar/window icons)
  was left as a raw file in the source list and never compiled
  (CMAKE_AUTORCC is off). Process both qrcs.
- LogView never loads libnglwidgets.so at runtime (--as-needed drops it:
  the code uses no nglwidgets symbols), so its :icons/16x16 resources
  were never registered for the app. Embed the 20 icons LogView actually
  uses directly into LogViewResources.qrc with explicit aliases (rcc
  rejects XML comments in .qrc and, without an alias, registers the full
  relative path as the resource name).
2026-11-03 13:31:02 +01:00
berrux-dev 37bd700564 Fixed make error 2026-10-15 12:21:52 +02:00
berrux-dev 6e7b09cf6f Remove include/ entries and LogView files unused by the release-scope build
Audited the release-scope compilation (TetraIF, Z/src, Lts/Common +
TrainingAreaBase, BUILD_RTI=OFF) for every file under include/:

Removed (zero references from release-scope sources or CMake):
- service-stub header dirs (AlarmManagement, AreaEffectSimulation,
  AssetManagement, AudioVideoManagement, Core, ExerciseEventManagement,
  ExerciseManagement, GuezNasat, InfrastructureManagement, Lts,
  LtsProjectionWorkstation, LtsScriptTimeline, LtsSession,
  MarkerManagement, NotificationManagement, OperatorManagement,
  ParticipantManagement, ProjectDataManagement, ReportManagement,
  Services, SituationReplay, TopicEditorBase, Viewer)
- include/grantlee (codegen modules excluded from the release build)
- include/nglapplication (all headers duplicate Z/src/nglapplication)
- include/poppler (Qt5 header; the build includes poppler/qt6 from the
  system package)
- include/rti (142 Connext DDS headers; only consumers are behind
  BUILD_RTI, which is OFF for this branch)
- TetraIF/LogView zsksxd_tetraForLogView{,_guez}.cpp and
  zsksxd_tetraForLogView_guez.x (the build compiles the .x; the guez
  variant is referenced nowhere; LogView loads the .x from the app dir)

Kept (actively included): include/GeographicLib, include/LtsUtilsGuiDds,
include/NGLLogger.

Also drop the now-dangling include_directories for the removed dirs in
the top-level CMakeLists (include/Viewer/SituationMap) and
Lts/CMakeLists.txt (six stub dirs) - otherwise GCC warns
-Wmissing-include-dirs for every compile.

Verified with a full pipeline rebuild (scope-rebuild15): 0 warnings,
ctest baseline unchanged, all 5 DEBs produced.
2026-10-14 16:51:32 +02:00
torsten 5644914fe3 Formats minimally release source files based on former clang-format 2026-10-14 13:28:01 +00:00
torsten b662e4daf9 Reinserts original comments 2026-10-14 12:56:16 +00:00
berrux-dev 52df1c8ae9 Fix TetraIF build warnings
- LogViewModels: replace deprecated invalidateFilter() with
  begin/endFilterChange() (11 sites)
- LogViewTelegramEdit: move m_logger to match member declaration order
  (-Wreorder) and consume QFile::open results
- PrtCnvBroadcastMgr: move m_logger to match member declaration order
  (-Wreorder)
- PrtCnvCentralThread: add remaining AreaEffectSimulationType values to
  the silent-ignore switch group (-Wswitch)
- PrtCnvMain: consume freopen results in daemonize (-Wunused-result)
2026-10-14 00:23:59 +02:00
torsten 1a38b88229 Adds first successful release run (tbc) 2026-10-12 15:02:02 +00:00
torstenandCopilot 444ac417bf Fix NGL::getLogger() -> N_LogView::getLogger() namespace error
- LogViewTelegramDialog.hpp: Fixed default parameter to use N_LogView::getLogger()
- LogViewTelegram.cpp: Added logger.h include, fixed both constructor initializations
- getLogger() is defined in N_LogView namespace, not NGL namespace

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-09 20:51:36 +00:00
torstenandCopilot 72a30c1e30 Fix LogView call sites to pass logger parameter
- LogViewTelegramDialog.cpp: Pass m_logger to LogViewTableWidget constructor
- LogViewTelegramDialog.cpp: Pass m_logger to LogViewTabWidget constructor
- LogViewTelegramDialog has default logger parameter, so existing call sites work

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-09 20:43:06 +00:00
torstenandCopilot 0e22c5b029 Fix LogViewTelegramEdit m_logger and Qt::TextDate for Qt6
- Add m_logger member variable to LogViewTelegramEdit.hpp
- Initialize m_logger in LogViewTelegramEdit constructor
- Replace Qt::SystemLocaleLongDate with Qt::TextDate for Qt6 compatibility

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-09 20:32:59 +00:00
torstenandCopilot 167a826cbc Fix Logger type to NGL::INGLLogger& in LogView headers
- LogViewField.hpp: Changed Logger& to NGL::INGLLogger& for m_logger member
- LogViewInjectionThread.hpp: Changed Logger& to NGL::INGLLogger& for m_logger member
- Both headers already include logger.h which defines LOGGER_T as NGL::INGLLogger&

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-09 20:26:18 +00:00
torstenandCopilot c9411c04e1 Fix Qt6 compatibility issues and exclude tests from release build
- tests/CMakeLists.txt: Wrap migration_tests in RELEASE_BUILD conditional
- LogViewModels.cpp: Change BackgroundColorRole to BackgroundRole for Qt6
- LogViewField.hpp/cpp: Add m_logger member variable
- LogViewInjectionThread.hpp/cpp: Add m_logger member variable
- LogViewGui.hpp/cpp: Add m_logger member variable, fix QString::split() usage
- LogViewTetraTelegramsParser.hpp: Add m_logger, change QStringRef to QStringView
- LogViewTelegramEdit.hpp: Fix QModelIndex include path (QtGui→QtCore)
- LogViewModels.hpp: Fix QAbstractTableModel include path (QtGui→QtCore)
- PrtCnv/CMakeLists.txt: Add CMAKE_CURRENT_BINARY_DIR for export header, exclude LastTest from release
- CoPrtCnv/CMakeLists.txt: Add PrtCnv include paths for prtcnvlib_export.h
- Lts/Common/CodeGen/CMakeLists.txt: Add CMAKE_CURRENT_BINARY_DIR for export header
- Lts/Proxies/TrainingAreaBase/Plugins/CMakeLists.txt: Exclude WlsTetra from release scope

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-09 20:19:27 +00:00
torstenandCopilot 1b29039a28 Fix LogView Qt6 compatibility: QStringRef to QStringView migration
- Migrated QStringRef to QStringView in LogViewTetraTelegramsParser
  - Updated tokenize() function signature and implementation
  - Updated bracketCount() helper function
  - Updated validStructTokens() function
  - Updated parseStruct(), parseEnum(), parseConstraint() functions
- Migrated QStringRef to QStringView in LogViewGui.cpp
  - Updated splitRef() to splitView() calls
  - Updated QVector<QStringRef> to QVector<QStringView>
- Migrated QStringRef to QStringView in LogViewXdrParser.cpp
  - Updated midRef() to mid() calls
  - Updated leftRef() to left() calls
- Updated Qt6 include paths: QAbstractTableModel and QModelIndex moved to QtCore

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-09 19:46:41 +00:00
torstenandCopilot 1bcc7e4855 TetraIF Qt6 migration: Fix build errors for CoPrtCnv, PrtCnv, and LogView
Code fixes:
- PrtCnvApplication.hpp: Add missing m_logger member variable, change QMutex to QRecursiveMutex (Qt6 deprecated QMutex::Recursive)
- PrtCnvApplication.cpp: Fix constructor initialization for m_logger, remove QMutex::Recursive initialization
- PrtCnvBroadcastMgr.hpp: Add missing m_logger member declaration
- PrtCnvBroadcastMgr.cpp: Fix constructor initialization order for m_logger and m_loggerBcRequest
- PrtCnvCentralThread.cpp: Fix include path from LtsUtils/dds_bitarray.h to LtsUtilsCore/dds_bitarray.h
- LogViewTelegramEditModel.hpp: Fix QAbstractTableModel include from QtGui to QtCore (Qt6 API change)
- TetraIF/CMakeLists.txt: Remove IF(BUILD_RTI) wrapper to match Qt5 behavior (no conditional wrapper)
- CoPrtCnv/CMakeLists.txt: Remove redundant find_package(Qt6) calls in else branch

Build script updates:
- new_docker_build.sh: Add CoPrtCnv, PrtCnvLib, PrtCnv to GROUP6_TARGETS
- new_docker_build.sh: Comment out tDataSampleGenerator and tDataSampleReceiver (pre-existing RTI DDS API errors unrelated to TetraIF migration)

Test files:
- Remove test_tetraif_coprtcnv.cpp, test_tetraif_prtcnv.cpp, test_tetraif_logview.cpp
  These tests included generated export headers (coprtcnv_export.h) not available at test compile time

Validation:
- Docker build completed successfully with BUILD_RTI=ON BUILD_GRANTLEE=ON
- All TetraIF components (CoPrtCnv, PrtCnvLib, PrtCnv, LogViewer) build successfully

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-03 15:22:53 +00:00
torsten 0c1503d85c Adds latest migration results 2026-09-01 12:27:57 +02:00
torsten bb1447c858 Qt6 migration fixes: RTI DDS alias targets, ErrorMessage namespace, DDS header include path 2026-08-27 09:02:26 +02:00
torsten bf0b1a3ddd QDesktopWidget → QScreen: Complete migration in AVM and TetraIF modules
- avm_mvs_video_team_gui_plugin.cpp: QApplication::desktop() → QGuiApplication::primaryScreen()
- LogViewTelegramDialog.cpp: QApplication::desktop() → QGuiApplication::primaryScreen()
- Added QGuiApplication includes where needed
- Removed duplicate QScreen include

This completes the QDesktopWidget API migration across all modules.
QApplication::desktop() is deprecated in Qt5 and removed in Qt6.
Replacement: QGuiApplication::primaryScreen()->geometry() or availableGeometry().

Refs: Qt6 migration, C++17 constraint due to RTI Connext DDS 7.7.0 incompatibility
2026-08-24 20:28:34 +02:00
torsten 793c9f8b81 BUILD_RTI=OFF: Fix remaining include and build issues
TrainingAreaBase:
- Add BUILD_RTI guards to dds_handler.cpp (entire file)
- Add BUILD_RTI guards to recv_from_dds_aes.h for tab_db.h include
- Add BUILD_RTI guards to main_handler.h for tab_db.h include
- Remove duplicate m_logger declaration in main_handler.h
- Add stub headers for RTI types (tab_db_stub.hpp, tab_enums_stub.hpp, etc.)

VideoOverlayManagement:
- Fix member initialization order in handler_overlays.h
- Fix member initialization order in avs_interface.h
- Fix member initialization order in main_handler.h
- Change logger.cpp include from NGLLogger.h to INGLLogger.h
- Add BUILD_RTI guard to handler_overlays.cpp for RTI signal connection

Plugins:
- Migrate QDesktopWidget → QScreen in Light/Dark style plugins
- Fix CMakeLists.txt for SituationReplayManagement (BUILD_RTI guards)
- Fix CMakeLists.txt for CombatNetRadio (Qt6::Core linking)
- Remove QDesktopWidget includes in multiple plugin files

Infrastructure:
- Remove duplicate INGLLogger.h include directory
- Add stub headers for ProjectDataManagement (pdm.hpp, etc.)
- Add stub headers for RoutingServiceNG

BUILD_RTI=OFF build now compiles successfully (1112 targets).
2026-08-24 14:37:16 +02:00
torstenandCopilot 7a6be7474e Qt6 migration: Fix BUILD_RTI=OFF build errors in TrainingAreaBase
- training_area_telegrams.cpp: Fixed QJsonObject initializer syntax (Qt6 requires {{}} not ({}))
- training_area_telegrams.cpp: Fixed fromJson() methods to access m_* members directly
- training_area_telegrams.cpp: Fixed brace mismatches in multiple toJson() methods
- training_area_telegrams.h: Changed Header struct to public members for consistency
- tx_mixin.cpp: Fixed getEquipmentNumber() template for direct member access
- lts_coordinate.cpp: Added missing #include <iomanip>
- MIGRATION_STATUS.md: Added migration progress tracking document

C++17 constraint enforced due to RTI Connext DDS 7.7.0 incompatibility with C++20+

Build status: BUILD_RTI=OFF successful (0 errors, warnings only)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-23 20:49:23 +02:00
torsten 3bb6e89496 Adds immediate migration results in progress 2026-08-19 11:18:24 +02:00
torstenandCopilot b774f4035c Qt6 Migration: DDS-Stubs, Logger-Fixes, Export-Header Korrekturen
- NGL_ADD_LIBRARY2: 87 CMakeLists.txt konvertiert für Export-Header Generierung
- 44 Export-Header Include-Pfade korrigiert (_export.h)
- 81 DDS-Stub-Header generiert (*_dtc.h, *_fts.h, *_dts.h, *_ftc.h)
- INGLLogger: Duplikat gelöscht, m_logger Member entfernt, variadische Makros
- Q_FUNC_INFO Redefinition behoben (Qt6 definiert bereits)
- FATAL_LOG Makro hinzugefügt
- InfrastructureManagement DDS-Stubs (ism.hpp, ism_enums.hpp, ism_ftc.h)
- FilterManagement DDS-Stubs (flt_ftc.h, flt_dts.h)
- AreaEffectSimulation DDS-Stubs (aes.hpp, aes_enums.hpp)
- SymbolAppearance Klasse vollständig definiert mit content() Methode
- BuildingComponentFilter Klasse definiert mit Copy-Konstruktor
- Ftc Factory: nullptr Return (abstract class)
- AesFilter Klasse in aes.hpp hinzugefügt
- Dtc Klasse in ppm.hpp mit participantChanged Signal
- AesType Enum: alle 15 At* Werte definiert
- AesEffectState_def: EsReceived hinzugefügt
- DataModification Enum: eAdded/eModified/eRemoved
- function_reply_object.h → core_types.h Include-Pfad (72 Dateien)
- Enum-Class-Streaming Template-Operator in INGLLogger.h
- ism_mounting_point.h: QImage → QtGui/QImage, QGuiApplication/QScreen
- ism_data_plugin_interface.h: QSet Include, Include-Reihenfolge
- QRegExp → QRegularExpression in tpm_js_parser.cpp
- .underlying() Aufrufe zu direktem Enum-Vergleich korrigiert
- Include-Pfade: aes.hpp in symbol_appearance_settings_impl.h und aes_display_filter_impl.h

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-19 06:06:24 +02:00
torsten 6a2a0667ab Adds immediate migration results 2026-08-18 22:12:24 +02:00
torsten d176b5e0d7 Adds initial intermediate qt6 porting state 2026-08-17 17:54:56 +02:00