diff --git a/src/widgets/atcoreinstancewidget.h b/src/widgets/atcoreinstancewidget.h --- a/src/widgets/atcoreinstancewidget.h +++ b/src/widgets/atcoreinstancewidget.h @@ -18,8 +18,8 @@ #pragma once #include -#include #include +#include #include #include #include @@ -75,8 +75,8 @@ QAction *m_stopAction; QSettings m_settings; QString m_theme; - AxisControl *m_axisControl; LogWidget *m_logWidget; + MovementWidget *m_movementWidget; PlotWidget *m_plotWidget; PrintWidget *m_printWidget; SdWidget *m_sdWidget; @@ -88,7 +88,6 @@ void disableMotors(); void handlePrinterStatusChanged(AtCore::STATES newState); void checkTemperature(uint sensorType, uint number, uint temp); - void axisControlClicked(QChar axis, int value); void enableControls(bool b); void buildToolbar(); void print(); diff --git a/src/widgets/atcoreinstancewidget.cpp b/src/widgets/atcoreinstancewidget.cpp --- a/src/widgets/atcoreinstancewidget.cpp +++ b/src/widgets/atcoreinstancewidget.cpp @@ -35,9 +35,9 @@ ui = new Ui::AtCoreInstanceWidget; ui->setupUi(this); - m_axisControl = new AxisControl(); - m_axisControl->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Minimum); - ui->controlsLayout->addWidget(m_axisControl); + m_movementWidget = new MovementWidget(false); + m_movementWidget->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Minimum); + ui->controlsLayout->addWidget(m_movementWidget); m_plotWidget = new PlotWidget(); ui->controlTabLayout->addWidget(m_plotWidget); @@ -260,7 +260,17 @@ connect(m_printWidget, &PrintWidget::fanSpeedChanged, &m_core, &AtCore::setFanSpeed); connect(m_printWidget, &PrintWidget::flowRateChanged, &m_core, &AtCore::setFlowRate); connect(m_printWidget, &PrintWidget::printSpeedChanged, &m_core, &AtCore::setPrinterSpeed); - connect(m_axisControl, &AxisControl::clicked, this, &AtCoreInstanceWidget::axisControlClicked); + //Movement Widget + connect(m_movementWidget, &MovementWidget::absoluteMove, [this](const QLatin1Char & axis, const double value) { + m_logWidget->appendLog(GCode::description(GCode::G1)); + m_core.move(axis, value); + }); + connect(m_movementWidget, &MovementWidget::relativeMove, [this](const QLatin1Char & axis, const double value) { + m_logWidget->appendLog(i18n("Relative Move: %1, %2", axis, QString::number(value))); + m_core.setRelativePosition(); + m_core.move(axis, value); + m_core.setAbsolutePosition(); + }); //Sd Card Stuff connect(&m_core, &AtCore::sdCardFileListChanged, m_sdWidget, &SdWidget::updateFilelist); @@ -435,13 +445,6 @@ m_logWidget->appendLog(msg); } -void AtCoreInstanceWidget::axisControlClicked(QChar axis, int value) -{ - m_core.setRelativePosition(); - m_core.pushCommand(GCode::toCommand(GCode::G1, QStringLiteral("%1%2").arg(axis, QString::number(value)))); - m_core.setAbsolutePosition(); -} - void AtCoreInstanceWidget::enableControls(bool b) { ui->mainTab->setEnabled(b);