MCPcopy Create free account
hub / github.com/Project-LemonLime/Project_LemonLime / TestCaseEditWidget

Method TestCaseEditWidget

src/testcaseeditwidget.cpp:18–49  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

16#include <QAction>
17
18TestCaseEditWidget::TestCaseEditWidget(QWidget *parent) : QWidget(parent), ui(new Ui::TestCaseEditWidget) {
19 ui->setupUi(this);
20 editTestCase = nullptr;
21 deleteAction = new QAction(this);
22 deleteAction->setShortcutContext(Qt::WidgetShortcut);
23 deleteAction->setShortcut(QKeySequence::Delete);
24 deleteAction->setEnabled(false);
25 ui->fileList->addAction(deleteAction);
26 QValidator *subtaskDependenceValidator =
27 new QRegularExpressionValidator(QRegularExpression("[0-9,]+$"), ui->subtaskDependecne);
28 ui->subtaskDependecne->setValidator(subtaskDependenceValidator);
29 ui->fullScore->setValidator(new QIntValidator(1, Settings::upperBoundForFullScore(), this));
30 ui->timeLimit->setValidator(new QIntValidator(1, Settings::upperBoundForTimeLimit(), this));
31 ui->memoryLimit->setValidator(new QIntValidator(1, Settings::upperBoundForMemoryLimit(), this));
32 ui->fileList->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
33 ui->inputFileEdit->setFilters(QDir::Files);
34 ui->outputFileEdit->setFilters(QDir::Files);
35 connect(this, &TestCaseEditWidget::dataPathChanged, ui->inputFileEdit, &FileLineEdit::refreshFileList);
36 connect(this, &TestCaseEditWidget::dataPathChanged, ui->outputFileEdit, &FileLineEdit::refreshFileList);
37 connect(ui->subtaskDependecne, &QLineEdit::editingFinished, this,
38 &TestCaseEditWidget::subtaskDependenceChanged); // auto save subtaskDependence
39 connect(ui->addButton, &QPushButton::clicked, this, &TestCaseEditWidget::addSingleCase);
40 connect(deleteAction, &QAction::triggered, this, &TestCaseEditWidget::deleteSingleCase);
41 connect(ui->fullScore, &QLineEdit::textChanged, this, &TestCaseEditWidget::fullScoreChanged);
42 connect(ui->timeLimit, &QLineEdit::textChanged, this, &TestCaseEditWidget::timeLimitChanged);
43 connect(ui->memoryLimit, &QLineEdit::textChanged, this, &TestCaseEditWidget::memoryLimitChanged);
44 connect(ui->subtaskDependenceClearButton, &QPushButton::clicked, this,
45 &TestCaseEditWidget::subtaskDependenceClear);
46 connect(ui->fileList, &QTableWidget::itemSelectionChanged, this,
47 &TestCaseEditWidget::fileListSelectionChanged);
48 connect(ui->fileList, &QTableWidget::itemChanged, this, &TestCaseEditWidget::fileListItemChanged);
49}
50
51TestCaseEditWidget::~TestCaseEditWidget() { delete ui; }
52

Callers

nothing calls this directly

Calls 1

setFiltersMethod · 0.80

Tested by

no test coverage detected