Commit Graph
28 Commits
Author SHA1 Message Date
torstenandCopilot a7a5782fc8 fix: Add TrainingAreaBase to release scope and fix QScroller for Qt6
- Add Lts/Proxies/TrainingAreaBase to release scope for training_area_telegrams.h
- Update make_rpm_ubuntu26.py to include Lts/Proxies/TrainingAreaBase in release scope
- Add directory filtering for Lts/Proxies in copy_src_dir_to_dest_dir
- Fix lts_base.h: conditionally compile QScroller code (Qt5 only)
- QScroller removed in Qt6, touch scrolling enabled by default

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-09 18:16:39 +00:00
berrux-dev 8345470273 fix Warning 2026-10-03 09:20:13 +02:00
torsten ed9fc51e7a Migrates ./Lts/Viewer successfully to Qt6 2026-09-23 10:14:59 +02:00
torstenandCopilot 691bf21f3e Replace Qt5:: with Qt6:: in 26 CMakeLists.txt files
Qt6 migration: Update all target_link_libraries to use Qt6::Core, Qt6::Widgets,
Qt6::Network, Qt6::Svg, Qt6::Xml, Qt6::Concurrent, Qt6::PrintSupport, Qt6::Sql,
Qt6::Test, Qt6::WebSockets, Qt6::SerialPort instead of Qt5:: equivalents.

Affected components:
- Lts/Common: LtsRestClient, LtsWidgets
- Lts/Application: THP, SitMapReplayTest
- Lts/Plugins: ParticipantManagement, ServiceManagement
- Lts/Services: VideoOverlayManagement
- Lts/Tools: 18 tool CMakeLists.txt files

Validated with BUILD_RTI=ON and BUILD_RTI=OFF - both builds successful.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-09-15 19:38:18 +00:00
torstenandCopilot 7173785915 Qt6 Migration: Complete migration with DDS/RTI support and build validation
Major Changes:
- Merged latest Qt5 devel content from dlbo (292 files changed, 7 new dirs)
- Consolidated forward-declarations and include folders
- Removed unneeded modules per Niklas' repo check list

Build System Fixes:
- Fixed CMake VERSION_GREATER syntax in ParticipantManagement/CMakeLists.txt
- Added VLC packages (libvlc-dev, vlc-plugin-base) to docker_build.sh
- Added PostgreSQL dev packages (libpq-dev, postgresql-server-dev-all) to Dockerfile
- Fixed locale warnings (ANSI_X3.4-1968 → C.UTF-8)
- Fixed ArcGIS SDK path warnings when BUILD_ARCGIS=OFF

Code Generation Fixes:
- Fixed IDL enum collisions (PortType→CorePortType/DdsutPortType, PdmEventType)
- Fixed Grantlee template svc_translation.cpp.grantlee:
  - Changed {{ idl_enum.name }}_def:: to {{ idl_enum.name }}::
  - Fixed .underlying() calls for C++11 scoped enums (enum class)
- Removed generated files from repo (moc_*, *_dtc.h, *_ftc.h)

Validation:
- BUILD_RTI=ON: SUCCESS
- BUILD_RTI=OFF: SUCCESS
- C++17 standard maintained for RTI 7.7 compatibility
- Ubuntu 26.04 Docker environment verified

Remaining Warnings (expected):
- BgViewer, KDChart, KDReports, Poppler-Qt6 not found (optional features)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-09-15 18:20:26 +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
torstenandCopilot ec83f017be cmake: migrate Qt5:: to Qt6:: in LtsWidgets CMakeLists_rc.txt
- Qt5::Core → Qt6::Core
- Qt5::Gui → Qt6::Gui
- Qt5::Widgets → Qt6::Widgets
- Qt5::Network → Qt6::Network
- Qt5::Svg → Qt6::Svg

Part of Qt5→Qt6 migration under C++17 constraint (RTI Connext DDS 7.7.0 blocker).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-25 15:27:14 +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 c042faae9e Fix BUILD_RTI=OFF build: Guard RTI-only DDS modules
- LtsUtilsSettings: Fix export header include path (angle brackets)
- LtsWidgets: Move LtsUtilsSettings to PUBLIC link libraries
- BatteryNotification: Remove unused QDesktopWidget include
- DDS/FTC: Wrap ddsftccore library in IF(BUILD_RTI) guards
- DDS/FTS: Remove ELSE block, wrap entire library in IF(BUILD_RTI)
- DDS/DTC: Wrap entire library definition in IF(BUILD_RTI)
- DDS/DTS: Wrap entire library definition in IF(BUILD_RTI)
- DDS/DDSConnector: Wrap entire library in IF(BUILD_RTI), remove ELSE
- DDS/Routing: Wrap entire library in IF(BUILD_RTI)

All RTI Connext DDS-specific libraries (ddscore, ddsQoS, ddsgen,
ddsdtc, ddsdts, ddsfts, ddsconnector, routing_plugin) are now
properly guarded so BUILD_RTI=OFF builds can succeed.
2026-08-23 01:19:06 +02:00
torsten 950d669538 Qt6 Migration: BUILD_RTI guards und CMake fixes
- BUILD_RTI conditional compilation für RTI Connext DDS dependencies
- Namespace fixes in core_dtc.h (Core:: → DDS::Core::)
- CMakeLists.txt: BUILD_RTI option und conditional dependencies
- Handler minelayer: namespace closing mit BUILD_RTI guard
- Build erfolgreich mit BUILD_RTI=OFF validiert

Signed-off-by: Torsten Wierschin <torsten.wierschin@life-maps.com>
2026-08-21 18:37:18 +02:00
torsten c599be63e3 Qt6: QActionGroup Include in lts_text_editor2.cpp hinzufügen
- #include <QActionGroup> hinzugefügt für Qt6-Kompatibilität
- Behebt 'incomplete type' Compiler-Fehler
- Teil der LtsWidgets Qt6-Migration
2026-08-21 11:27:25 +02:00
torstenandCopilot 22a3a8d5b1 Fix Qt6 API compatibility in LtsWidgets
- lts_date_time_edit_p.cpp: Replace QWheelEvent::delta() with angleDelta().y()
- lts_notification_box.cpp: Remove QStyleOption::init() call (removed in Qt6)
- lts_text_editor2.cpp: Remove QTextCodec include, use QString::fromUtf8 instead

All changes are Qt6 API compatibility fixes required for building with Qt 6.10.2.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-21 11:19:16 +02:00
torsten 418443c841 LtsWidgets: Qt6 API fixes complete
- QComboBox::activated signal: QString→int parameter (lts_text_editor)
- qAsConst→std::as_const (5 files)
- localPos()→position() (lts_height_plot_widget)
- setMargin→setContentsMargins (tests/window.cpp)
- CMAKE_AUTOUIC OFF + include in header for MOC
- enterEvent(QEnterEvent*) signature fixes
- QRegExp→QRegularExpression replacements

All LtsWidgets module files now Qt6-compatible.
2026-08-21 11:08:24 +02:00
torsten ffa25fb394 LtsWidgets: project_defines.h Include-Pfad korrigiert 2026-08-21 10:35:36 +02:00
torstenandCopilot d890b11c5f Qt6 Migration: LtsWidgets, BUILD_RTI Guards, externe Dependencies dokumentiert
- LtsWidgets Verzeichnis vollständig migriert (Qt5→Qt6)
- BUILD_RTI Guards für RTI-spezifische Module hinzugefügt
- Externe Dependencies in EXTERNAL_DEPS.md dokumentiert
- Qt6 API-Änderungen: QRegExp→QRegularExpression, enterEvent(QEnterEvent*)
- AutoUic-Fehler bei ui_requirement behoben (SKIP_AUTOUIC)
- Include-Pfade korrigiert (LtsElevation, LtsMultiMonitor, LtsUtilsCore)
- MOC-Fehler behoben (Q_INTERFACES entfernt wo nicht benötigt)
- CMakeLists.txt Anpassungen für Qt6 (PUBLIC statt INTERFACE)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-21 10:29:34 +02:00
torsten 27fe03a03a WIP: Build fixes und EXTERNAL_DEPENDENCIES.md 2026-08-21 07:04:40 +02:00
torsten 9c1463546e Qt6-Migration: Type-Struct, DataModification und Signal/Slot Korrekturen
- ppm.hpp: Type-Methoden von id()/typeClass() zu getId()/getTypeClass() umbenannt
  (Vermeidung von Namenskonflikt mit Member-Variablen)
- ppm.hpp: TypeClass::eUndefined zu TypeClass::eUninitialized geändert
- ppm.hpp: operator<< für Type-Struct hinzugefügt (für INGLLogger)
- ppm_enums.hpp: DataModification, TypeClass, SymbolAppearance, SymbolVisibility Enums
- ppm_enums.hpp: operator<< für TypeClass hinzugefügt
- exm_dtc.h: #include ppm_enums.hpp für DataModification
- exm_dtc.h: DataModification zu ParticipantManagement::DataModification qualifiziert
- gna_dtc.h: Signal-Signaturen auf ParticipantManagement::DataModification angepasst
- gna_dtc.h: #include ppm.hpp hinzugefügt
- gna_nasat_aircraft_part_model.h/.cpp: Namespace-Korrekturen, Member-Zugriffe korrigiert
- gna_nasat_aircraft_part_model.h: onTypeChanged-Slot entfernt (im STUB nicht verfügbar)
- pdm_to_string.h/.cpp: DDS-spezifischen Code entfernt (nur STUB)
- flm_enums.hpp: AlarmConfig, VulnerabilityState Enums hinzugefügt
- pws_vnc_handler.h/.cpp: ProjectionWorkstation Namespace korrigiert
- mrk_marker.h: timeStamp() Methode hinzugefügt
- exm_exercise.h: Syntaxfehler korrigiert
- CMakeLists.txt Anpassungen für BUILD_RTI=ON Support

Build mit BUILD_RTI=ON erfolgreich abgeschlossen.
2026-08-20 18:26:08 +02:00
torsten 72cbe318b6 Adds further migration results and moves generated tests in 2026-08-19 21:21:59 +02:00
torstenandCopilot d6b6ffce7c Apply clang-format to Lts/Common and DTC/enum headers
- Formatted all CodeGen module files (9 files)
- Formatted LtsAppDescriptor module files
- Formatted LtsAppManager/AppChooser files
- Applied clang-format to all DTC and enum headers across modules
- Removed coordTransTests from CommonUnitTestsPlaceholder (moved to tests/)

Cosmetic changes only, no functional modifications.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-19 14:46:29 +02:00
torstenandCopilot bafed3705f Qt6 migration: LtsWidgets API fixes, LtsWebSocket logger init, RTI Docker install
- LtsWidgets: Fixed Qt6 API compatibility issues
  - QWheelEvent::delta() → angleDelta().y()
  - QStyleOption::init() → initFrom()
  - QComboBox activated signal signature change
  - QTextCodec removal (UTF-8 default in Qt6)
  - Missing widget includes added

- LtsWebSocket: Fixed m_logger reference initialization
  - Added NGLLoggerBootstrap includes
  - Proper initialization in constructor initializer lists

- CMake: Added BUILD_LTSWEBSOCKET option for temporary exclusion

- Docker: RTI Connext permanent installation script added
  - ci/install-rti-in-docker.sh for persistent RTI setup
  - Removes need for volume mounting RTI into container

- BUILD options: FilterManagement, RTI, Codification, Grantlee, LtsWebSocket
  can be disabled for partial builds during migration

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-19 14:04:26 +02:00
torsten 3bb6e89496 Adds immediate migration results in progress 2026-08-19 11:18:24 +02:00
torstenandCopilot 4c9861a469 BUILD_RTI conditional fixes and Qt6 API updates
- cmake/FindRTI.cmake: Add INTERFACE placeholder targets when RTI not found
- cmake/FindRTI.cmake: Force BUILD_RTI=OFF when RTI not installed
- Lts/Common/LtsSession/CMakeLists.txt: Make LtsSessionDataDds conditional on BUILD_RTI
- Lts/Viewer/CMakeLists.txt: Make LtsDataView conditional on BUILD_RTI
- Lts/Plugins/*/CMakeLists.txt: 97 plugin files wrapped in BUILD_RTI conditionals
- cmake/NGLMacros.cmake: Fix NGL_ADD_BIG_RESOURCES macro (removed premature return())
- Multiple Qt6 API fixes: QLinkedList→std::list, QStringRef→QStringView, etc.
- BUILD_RTI_FIXES_SUMMARY.md: Comprehensive documentation of all fixes

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-19 09:24:50 +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 f14faa04e5 Qt6-Migration: QObject-Include-Fixes + ui_requirement umbenannt
- #include <QObject> zu 106+ Header-Dateien hinzugefügt (Qt6 benötigt explizites Include)
- ui_requirement.h/cpp zu requirement_widget.h/cpp umbenannt (vermeidet AutoUIC-Scan)
- CMakeLists.txt aktualisiert
- Qt6Positioning-Dependency in Dockerfile hinzugefügt

Fixes:
- AutoUIC-Fehler bei AesBaseGui (requirement.ui nicht gefunden)
- QObject-Missing-Include-Fehler in Qt6
- Qt6Location-Modul nicht gefunden (qtpositioning fehlte)
2026-08-19 02:29:53 +02:00
torsten 514ded2739 Fix LtsWidgets BUILD_RTI conditional and include paths
- Wrap entire LtsWidgets library definition in IF(BUILD_RTI) conditional
- Add CMAKE_BINARY_DIR/Lts/Common/LtsUtils/LtsUtilsCore to include paths for export header
- Add debug MESSAGE for build troubleshooting

Part of Qt6 migration with BUILD_RTI support.
2026-08-19 00:11:06 +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