diff --git a/qt6-after/qt6-migrated-legatus/CMakeLists.txt b/qt6-after/qt6-migrated-legatus/CMakeLists.txt index 3c6628f70..9a6153ce0 100755 --- a/qt6-after/qt6-migrated-legatus/CMakeLists.txt +++ b/qt6-after/qt6-migrated-legatus/CMakeLists.txt @@ -256,12 +256,17 @@ ENDIF(BUILD_RTI) IF(BUILD_RTI AND TARGET RTI::nddsc) ADD_LIBRARY(ddsc ALIAS RTI::nddsc) ADD_LIBRARY(ddscore ALIAS RTI::nddscore) - ADD_LIBRARY(ddscpp ALIAS RTI::nddscpp) ADD_LIBRARY(ddscpp2 ALIAS RTI::nddscpp2) - ADD_LIBRARY(nddsctesthelpers ALIAS RTI::nddsctesthelpers) - ADD_LIBRARY(ddsftc ALIAS RTI::ddsftc) - ADD_LIBRARY(ddsfts ALIAS RTI::ddsfts) - ADD_LIBRARY(ddsconnector ALIAS RTI::ddsconnector) + # Optionale Targets nur als ALIAS erstellen wenn verfügbar (RTI 7.x hat nicht alle Legacy-Bibliotheken) + # KEINE INTERFACE-Placeholder erstellen - Module müssen selbst mit fehlenden Targets umgehen + IF(TARGET RTI::nddscpp) + ADD_LIBRARY(ddscpp ALIAS RTI::nddscpp) + ENDIF() + IF(TARGET RTI::nddsctesthelpers) + ADD_LIBRARY(nddsctesthelpers ALIAS RTI::nddsctesthelpers) + ENDIF() + # HINWEIS: ddsftc, ddsfts, ddsconnector werden von Lts/DDS/FTC Modulen als INTERFACE Targets erstellt + # Hier KEINE ALIAS erstellen um Target-Kollisionen zu vermeiden ELSE() # BUILD_RTI=OFF: Leere Interface-Libraries als Platzhalter ADD_LIBRARY(ddsc INTERFACE) @@ -269,10 +274,9 @@ ELSE() ADD_LIBRARY(ddscpp INTERFACE) ADD_LIBRARY(ddscpp2 INTERFACE) ADD_LIBRARY(nddsctesthelpers INTERFACE) - ADD_LIBRARY(ddsftc INTERFACE) - ADD_LIBRARY(ddsfts INTERFACE) - ADD_LIBRARY(ddsconnector INTERFACE) -ENDIF() + # HINWEIS: ddsftc, ddsfts, ddsconnector werden von Lts/DDS/FTC Modulen als INTERFACE Targets erstellt + # Hier KEINE Platzhalter erstellen um Target-Kollisionen zu vermeiden +ENDIF(BUILD_RTI AND TARGET RTI::nddsc) ADD_DEFINITIONS(-DQT_USE_QSTRINGBUILDER) ADD_DEFINITIONS(-DQT_NO_CAST_TO_ASCII) diff --git a/qt6-after/qt6-migrated-legatus/include/FileManagement/flm_enums.hpp b/qt6-after/qt6-migrated-legatus/include/FileManagement/flm_enums.hpp index 0191c52c2..ced9895af 100644 --- a/qt6-after/qt6-migrated-legatus/include/FileManagement/flm_enums.hpp +++ b/qt6-after/qt6-migrated-legatus/include/FileManagement/flm_enums.hpp @@ -4,18 +4,22 @@ // Für die Migration erstellen wir minimale Typ-Definitionen basierend auf flm_service.xml #include +#include namespace FileManagement { // Enums aus flm_service.xml -// Für BUILD_RTI=OFF: FileStatus als int, um direkte Vergleiche zu ermöglichen -#ifndef BUILD_RTI -using FileStatus = int; -constexpr int FileStatus_Valid = 0; -constexpr int FileStatus_Deleted = 1; -#else +// FileStatus als enum class für beide Build-Varianten (BUILD_RTI=ON/OFF) enum class FileStatus : int { Valid = 0, Deleted = 1 }; -#endif + +// QDebug-Operator für FileStatus +inline QDebug operator<<(QDebug debug, FileStatus status) +{ + QDebugStateSaver saver(debug); + debug.nospace() << "FileStatus::" + << (status == FileStatus::Valid ? "Valid" : "Deleted"); + return debug; +} enum class FileCategory : int { Global = 1, Exercise = 2, User = 3 };