qt/LedOK/program/progcreatedlg.cpp
2023-04-18 14:14:46 +08:00

109 lines
3.0 KiB
C++

#include "progcreatedlg.h"
#include "gutil/qgui.h"
#include "globaldefine.h"
#include <QLabel>
#include <QPushButton>
ProgCreateDlg::ProgCreateDlg(QString name, int width, int height, QString remarks, QString widths, QWidget *parent) : BaseDlg(parent) {
auto vBox = new VBox(this);
auto hBox = new HBox(vBox);
hBox->setContentsMargins(0, 0, 0, 0);
hBox->addStretch();
auto label = new QLabel(tr("Solution Information"));
hBox->addWidget(label);
hBox->addStretch();
auto btnClose = new QPushButton("X");
btnClose->setProperty("ssType", "progManageTool");
connect(btnClose, &QPushButton::clicked, this, &QDialog::close);
hBox->addWidget(btnClose);
auto line = new QFrame;
line->setFrameShape(QFrame::HLine);
line->setFrameShadow(QFrame::Sunken);
vBox->addWidget(line);
hBox = new HBox(vBox);
label = new QLabel(tr("Solution Name"));
label->setMinimumWidth(90);
label->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
hBox->addWidget(label);
hBox->addSpacing(6);
fdName = new QLineEdit;
if(name.isEmpty()) name = QDateTime::currentDateTime().toString("yyyyMMddhhmmsszzz");
else fdName->setDisabled(true);
fdName->setText(name);
hBox->addWidget(fdName);
hBox = new HBox(vBox);
hBox->setSpacing(12);
label = new QLabel(tr("Resolution"));
label->setMinimumWidth(90);
label->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
hBox->addWidget(label);
hBox->addSpacing(6);
auto label_4 = new QLabel(tr("Width"));
hBox->addWidget(label_4);
fdWidth = new QSpinBox;
fdWidth->setMaximum(99999);
fdWidth->setValue(width);
hBox->addWidget(fdWidth);
auto label_5 = new QLabel(tr("Height"));
hBox->addWidget(label_5);
fdHeight = new QSpinBox;
fdHeight->setMaximum(99999);
fdHeight->setValue(height);
hBox->addWidget(fdHeight);
hBox->addStretch();
hBox = new HBox(vBox);
label = new QLabel(tr("Remarks"));
label->setMinimumWidth(90);
label->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
hBox->addWidget(label);
hBox->addSpacing(6);
fdRemark = new QTextEdit(remarks);
fdRemark->setFixedSize(300, 80);
hBox->addWidget(fdRemark);
line = new QFrame;
line->setFrameShape(QFrame::HLine);
line->setFrameShadow(QFrame::Sunken);
vBox->addWidget(line);
hBox = new HBox(vBox);
auto lbSplitWidth = new QLabel(tr("每段打折宽度 (用空格分隔)"));
hBox->addWidget(lbSplitWidth);
fdSplitWidths = new QLineEdit(widths);
fdSplitWidths->setPlaceholderText("256 256 256 ...");
hBox->addWidget(fdSplitWidths);
if(! gWidthSplit) {
lbSplitWidth->setVisible(false);
fdSplitWidths->setVisible(false);
}
hBox = new HBox(vBox);
hBox->addStretch();
auto bnOK = new QPushButton(tr("OK"));
connect(bnOK, &QPushButton::clicked, this, &QDialog::accept);
hBox->addWidget(bnOK);
auto bnCancel = new QPushButton(tr("Cancel"));
connect(bnCancel, &QPushButton::clicked, this, &QDialog::reject);
hBox->addWidget(bnCancel);
}