Migrate LTS Tools Group 6 (D&L) to Qt6

Build script changes:
- Add --group6/--no-group6 argument support to new_docker_build.sh
- Add GROUP6_TARGETS array with 11 LTS tools
- Add BUILD_GROUP6 environment variable export
- Add GROUP6 build invocation in run_build_group function

Test infrastructure:
- Create CTest test files for all 11 Group 6 tools
- Add exclusion filters in tests/CMakeLists.txt for conditional builds
- Tests follow gtest pattern: CompilationStub, Qt6ApiCompatibility, BasicFunctionality

Qt6 migration bug fixes:
- DBAdministration: Fix m_id → id member access (3 files)
- DBAdministration: Add missing QFile include in showLogFile.cpp
- DBUpdate: Add CMAKE_AUTOUIC_SEARCH_PATHS for ui/ directory
- DBUpdate: Fix m_id → id, m_description → description (3 files)

Build validation:
- DBAdministration, DBOperatorSettingsRemover, DBUpdate build successfully
- Remaining tools blocked by pre-existing Group 3 (ExerciseManagement) errors
- Policy checks passed

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
torstenandCopilot committed 2026-09-23 15:21:14 +00:00
1 parent fd3e5e8380
commit 9f0076a197
21 files changed
+548 -18

No files matched your search

@@ -203,7 +203,7 @@ void DBAdministration::onCopyButtonClicked()
{
disableButtons();
auto exercise = m_serverDatabasesModel->getRowData(m_proxyModelServer->mapToSource(m_ui->tableViewServerDatabases->currentIndex()).row());
m_copyExercise->doCopy(exercise.m_id);
m_copyExercise->doCopy(exercise.id);
if (!m_progressDialog)
m_progressDialog = new QProgressDialog(this);
m_progressDialog->setLabelText(tr("Copying database..."));
@@ -234,7 +234,7 @@ void DBAdministration::onDropDbFinished(int exitCode, QProcess::ExitStatus exitS
if (bRemoveLocal)
{
NSqlQuery q(m_copyExercise->evaluationDb());
QString stmt = QStringLiteral("DELETE FROM local_databases WHERE id = ") + QString::number(m_localDatabaseToRemove.m_id);
QString stmt = QStringLiteral("DELETE FROM local_databases WHERE id = ") + QString::number(m_localDatabaseToRemove.id);
if (!q.exec(stmt))
QMessageBox::critical(this, tr ("Remove Database"), tr("Database entry cannot be removed."), QMessageBox::Ok);
else
@@ -45,7 +45,7 @@ bool LocalDatabasesModel::initModel(const QSqlDatabase &db)
while (q.next())
{
LocalExercise e;
e.m_id = q.value(0).toInt();
e.id = q.value(0).toInt();
e.name = q.value(1).toString();
e.dbName = q.value(2).toString();
e.startTime = q.value(3).toLongLong();
@@ -69,7 +69,7 @@ QVariant LocalDatabasesModel::data(const QModelIndex &index, int role) const
switch (index.column())
{
case Id:
return e.m_id;
return e.id;
case Name:
return QString(e.name);
case DbName:
@@ -45,7 +45,7 @@ bool ServerDatabasesModel::initModel(const QSqlDatabase &db)
while (q.next())
{
Exercise e;
e.m_id = q.value(0).toInt();
e.id = q.value(0).toInt();
e.name = q.value(1).toString();
e.startTime = q.value(2).toLongLong();
e.endTime = q.value(3).toLongLong();
@@ -68,7 +68,7 @@ QVariant ServerDatabasesModel::data(const QModelIndex &index, int role) const
switch (index.column())
{
case Id:
return e.m_id;
return e.id;
case Name:
return QString(e.name);
case StartTime:
@@ -10,6 +10,7 @@
#include "showLogFile.h"
#include "ui_showLogFile.h"
#include <nglsettings/nglsettings_settings.h>
#include <QtCore/QFile>
namespace DBAdministration
{