group question fixes

This commit is contained in:
jorenchik
2024-11-03 18:37:56 +02:00
parent 3d5455224d
commit 1ef997c517
2 changed files with 10 additions and 9 deletions

View File

@@ -1063,7 +1063,7 @@ QMainWindow *initMdemListWindow() {
errorView = new ErrorView; errorView = new ErrorView;
errorView->box.setObjectName("error-box"); errorView->box.setObjectName("error-box");
errorView->box.setLayout(&errorView->layout); errorView->box.setLayout(&errorView->layout);
errorView->box.setMinimumHeight(30); errorView->box.setMinimumHeight(70);
errorView->box.setStyleSheet( errorView->box.setStyleSheet(
QString( QString(
"QWidget#error-box {" "QWidget#error-box {"

View File

@@ -234,6 +234,7 @@ QStandardItemModel *groupItemModel;
QListView *groupItemList; QListView *groupItemList;
QWidget *wGroupQuestion; QWidget *wGroupQuestion;
QVBoxLayout *vGroups; QVBoxLayout *vGroups;
QSpacerItem *groupSpacer;
std::vector<QStandardItemModel*> groupModels; std::vector<QStandardItemModel*> groupModels;
// Questions & State // Questions & State
@@ -448,11 +449,7 @@ void setupMultiChoiceQuestion(MultiElementQuestion *question) {
} }
void setupGroupQuestion(GroupQuestion *question) { void setupGroupQuestion(GroupQuestion *question) {
auto groupSpacer = new QSpacerItem( vGroups->removeItem(groupSpacer);
50, 50,
QSizePolicy::Minimum,
QSizePolicy::Expanding
);
lQuestionText->setText( lQuestionText->setText(
QString::fromStdString(question->questionText) QString::fromStdString(question->questionText)
@@ -514,7 +511,7 @@ void setupGroupQuestion(GroupQuestion *question) {
auto item = groupItemModel->item(i, 0); auto item = groupItemModel->item(i, 0);
item->setData(INCORRECT, Qt::UserRole + 1); 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 groupView = groupViews[i];
auto group = question->groups[i]; auto group = question->groups[i];
for (int j = 0; j < groupView->itemModel.rowCount(); ++j) { for (int j = 0; j < groupView->itemModel.rowCount(); ++j) {
@@ -549,9 +546,8 @@ void setupGroupQuestion(GroupQuestion *question) {
btnShowAnswer, btnShowAnswer,
&QToolButton::clicked, &QToolButton::clicked,
[question](bool checked) { [question](bool checked) {
// TODO: release everything and add the correct things to the groups
releaseAllInModel(groupItemModel); 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 groupView = groupViews[i];
auto group = question->groups[i]; auto group = question->groups[i];
releaseAllInModel(&groupView->itemModel); releaseAllInModel(&groupView->itemModel);
@@ -943,6 +939,11 @@ QMainWindow *initTrainWindow() {
"border:none;" "border:none;"
); );
auto hGroupQuestion = new QHBoxLayout(); auto hGroupQuestion = new QHBoxLayout();
groupSpacer = new QSpacerItem(
50, 50,
QSizePolicy::Minimum,
QSizePolicy::Expanding
);
wGroupQuestion->setLayout(hGroupQuestion); wGroupQuestion->setLayout(hGroupQuestion);