From 1ef997c51785fcc9b70c7f5a348d3bbb5d5e2120 Mon Sep 17 00:00:00 2001 From: jorenchik Date: Sun, 3 Nov 2024 18:37:56 +0200 Subject: [PATCH] group question fixes --- src/qtapp/mdemList.cpp | 2 +- src/qtapp/trainWindow.cpp | 17 +++++++++-------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/qtapp/mdemList.cpp b/src/qtapp/mdemList.cpp index e61a433..1f283c2 100644 --- a/src/qtapp/mdemList.cpp +++ b/src/qtapp/mdemList.cpp @@ -1063,7 +1063,7 @@ QMainWindow *initMdemListWindow() { errorView = new ErrorView; errorView->box.setObjectName("error-box"); errorView->box.setLayout(&errorView->layout); - errorView->box.setMinimumHeight(30); + errorView->box.setMinimumHeight(70); errorView->box.setStyleSheet( QString( "QWidget#error-box {" diff --git a/src/qtapp/trainWindow.cpp b/src/qtapp/trainWindow.cpp index 9ea6cd1..55da0e0 100644 --- a/src/qtapp/trainWindow.cpp +++ b/src/qtapp/trainWindow.cpp @@ -234,6 +234,7 @@ QStandardItemModel *groupItemModel; QListView *groupItemList; QWidget *wGroupQuestion; QVBoxLayout *vGroups; +QSpacerItem *groupSpacer; std::vector groupModels; // Questions & State @@ -448,11 +449,7 @@ void setupMultiChoiceQuestion(MultiElementQuestion *question) { } void setupGroupQuestion(GroupQuestion *question) { - auto groupSpacer = new QSpacerItem( - 50, 50, - QSizePolicy::Minimum, - QSizePolicy::Expanding - ); + vGroups->removeItem(groupSpacer); lQuestionText->setText( QString::fromStdString(question->questionText) @@ -514,7 +511,7 @@ void setupGroupQuestion(GroupQuestion *question) { auto item = groupItemModel->item(i, 0); item->setData(INCORRECT, Qt::UserRole + 1); } - for (size_t i = 0; i < groupViews.size(); i++) { + for (size_t i = 0; i < question->groups.size(); i++) { auto groupView = groupViews[i]; auto group = question->groups[i]; for (int j = 0; j < groupView->itemModel.rowCount(); ++j) { @@ -549,9 +546,8 @@ void setupGroupQuestion(GroupQuestion *question) { btnShowAnswer, &QToolButton::clicked, [question](bool checked) { - // TODO: release everything and add the correct things to the groups releaseAllInModel(groupItemModel); - for (size_t i = 0; i < groupViews.size(); i++) { + for (size_t i = 0; i < question->groups.size(); i++) { auto groupView = groupViews[i]; auto group = question->groups[i]; releaseAllInModel(&groupView->itemModel); @@ -943,6 +939,11 @@ QMainWindow *initTrainWindow() { "border:none;" ); auto hGroupQuestion = new QHBoxLayout(); + groupSpacer = new QSpacerItem( + 50, 50, + QSizePolicy::Minimum, + QSizePolicy::Expanding + ); wGroupQuestion->setLayout(hGroupQuestion);