| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | #include "qg_insertoptions.h" |
| | #include "rs_actionblocksinsert.h" |
| | #include "ui_qg_insertoptions.h" |
| |
|
| | |
| | |
| | |
| | |
| | QG_InsertOptions::QG_InsertOptions() |
| | : LC_ActionOptionsWidgetBase(RS2::ActionBlocksInsert, "Insert", "Insert") |
| | , ui(new Ui::Ui_InsertOptions{}){ |
| | ui->setupUi(this); |
| | connect(ui->leAngle, &QLineEdit::editingFinished, this, &QG_InsertOptions::onAngleEditingFinished); |
| | connect(ui->leFactor, &QLineEdit::editingFinished, this, &QG_InsertOptions::onFactorEditingFinished); |
| | connect(ui->leColumnSpacing, &QLineEdit::editingFinished, this, &QG_InsertOptions::onColumnSpacingEditingFinished); |
| | connect(ui->leRowSpacing, &QLineEdit::editingFinished, this, &QG_InsertOptions::onRowSpacingEditingFinished); |
| | connect(ui->sbRows, &QSpinBox::valueChanged, this, &QG_InsertOptions::onRowsValueChanged); |
| | connect(ui->sbColumns, &QSpinBox::valueChanged, this, &QG_InsertOptions::onColumnsValueChanged); |
| |
|
| | pickAngleSetup("angle", ui->tbPickAngle, ui->leAngle); |
| | pickDistanceSetup("spacingX", ui->tbPickSpacingX, ui->leColumnSpacing); |
| | pickDistanceSetup("spacingY", ui->tbPickSpacingY, ui->leRowSpacing); |
| | } |
| |
|
| | |
| | |
| | |
| | QG_InsertOptions::~QG_InsertOptions() = default; |
| |
|
| | |
| | |
| | |
| | |
| | void QG_InsertOptions::languageChange(){ |
| | ui->retranslateUi(this); |
| | } |
| |
|
| | void QG_InsertOptions::doSaveSettings() { |
| | save("Angle", ui->leAngle->text()); |
| | save("Factor", ui->leFactor->text()); |
| | save("Columns", ui->sbColumns->text()); |
| | save("Rows", ui->sbRows->text()); |
| | save("ColumnSpacing", ui->leColumnSpacing->text()); |
| | save("RowSpacing", ui->leRowSpacing->text()); |
| | } |
| |
|
| | void QG_InsertOptions::doSetAction(RS_ActionInterface *a, bool update) { |
| | m_action = dynamic_cast<RS_ActionBlocksInsert*>(a); |
| |
|
| | QString angle; |
| | QString factor; |
| | int columns; |
| | int rows; |
| | QString columnSpacing; |
| | QString rowSpacing; |
| | if (update) { |
| | angle = fromDouble(RS_Math::rad2deg(m_action->getAngle())); |
| | factor = fromDouble(m_action->getFactor()); |
| | columns = m_action->getColumns(); |
| | rows = m_action->getRows(); |
| | columnSpacing = fromDouble(m_action->getColumnSpacing()); |
| | rowSpacing = fromDouble(m_action->getRowSpacing()); |
| | } else { |
| | angle = load("Angle", "0.0"); |
| | factor = load("Factor", "1.0"); |
| | columns = loadInt("Columns", 1); |
| | rows = loadInt("Rows", 1); |
| | columnSpacing = load("ColumnSpacing", "1.0"); |
| | rowSpacing = load("RowSpacing", "1.0"); |
| | } |
| | setAngleToActionAndView(angle); |
| | setFactorToActionAndView(factor); |
| | setColumnsToActionAndView(columns); |
| | setRowsToActionAndView(rows); |
| | setColumnSpacingActionAndView(columnSpacing); |
| | setRowSpacingToActionAndView(rowSpacing); |
| | } |
| |
|
| | |
| |
|
| | void QG_InsertOptions::setRowSpacingToActionAndView(QString val) { |
| | ui->leRowSpacing->setText(val); |
| | m_action->setRowSpacing(RS_Math::eval(val)); |
| | } |
| |
|
| | void QG_InsertOptions::setColumnSpacingActionAndView(QString val) { |
| | ui->leColumnSpacing->setText(val); |
| | m_action->setColumnSpacing(RS_Math::eval(val)); |
| | } |
| |
|
| | void QG_InsertOptions::setColumnsToActionAndView(int columns) { |
| | m_action->setColumns(columns); |
| | ui->sbColumns->setValue(columns); |
| | } |
| |
|
| | void QG_InsertOptions::setRowsToActionAndView(int rows) { |
| | ui->sbRows->setValue(rows); |
| | m_action->setRows(rows); |
| | } |
| |
|
| | void QG_InsertOptions::setFactorToActionAndView(QString val) { |
| | ui->leFactor->setText(val); |
| | m_action->setFactor(RS_Math::eval(val)); |
| | } |
| |
|
| | void QG_InsertOptions::setAngleToActionAndView(QString val) { |
| | ui->leAngle->setText(val); |
| | double angle; |
| | if (toDoubleAngleDegrees(val, angle, 0, false)) { |
| | m_action->setAngle(angle); |
| | } |
| | } |
| |
|
| | void QG_InsertOptions::onAngleEditingFinished(){ |
| | setAngleToActionAndView(ui->leAngle->text()); |
| | } |
| |
|
| | void QG_InsertOptions::onFactorEditingFinished(){ |
| | setFactorToActionAndView(ui->leFactor->text()); |
| | } |
| |
|
| | void QG_InsertOptions::onColumnSpacingEditingFinished() { |
| | setColumnSpacingActionAndView(ui->leColumnSpacing->text()); |
| | } |
| |
|
| | void QG_InsertOptions::onRowSpacingEditingFinished() { |
| | setRowSpacingToActionAndView(ui->leRowSpacing->text()); |
| | } |
| |
|
| | void QG_InsertOptions::onRowsValueChanged([[maybe_unused]]int number) { |
| | setRowsToActionAndView(ui->sbRows->value()); |
| | } |
| |
|
| | void QG_InsertOptions::onColumnsValueChanged([[maybe_unused]]int number) { |
| | setColumnsToActionAndView(ui->sbColumns->value()); |
| | } |
| |
|