diff --git a/src/atelierui.rc b/src/atelierui.rc
--- a/src/atelierui.rc
+++ b/src/atelierui.rc
@@ -24,8 +24,6 @@
-
-
diff --git a/src/dialogs/profilesdialog.ui b/src/dialogs/profilesdialog.ui
--- a/src/dialogs/profilesdialog.ui
+++ b/src/dialogs/profilesdialog.ui
@@ -21,6 +21,9 @@
Profile
+
+ profileCB
+
-
@@ -76,6 +79,9 @@
Bits per second
+
+ baudCB
+
-
@@ -110,13 +116,19 @@
Dimension Z
+
+ z_delta_dimensionSB
+
-
Radius
+
+ radiusSB
+
-
@@ -153,20 +165,29 @@
Dimension Z
+
+ z_dimensionSB
+
-
Dimension Y
+
+ y_dimensionSB
+
-
Dimension X
+
+ x_dimensionSB
+
-
@@ -213,6 +234,9 @@
Heated bed?
+
+ heatedBedCK
+
-
@@ -230,6 +254,9 @@
Maximum Bed
+
+ bedTempSB
+
-
@@ -247,6 +274,9 @@
Maximum Hotend
+
+ extruderTempSB
+
-
@@ -274,6 +304,9 @@
Firmware
+
+ firmwareCB
+
-
@@ -297,6 +330,9 @@
PostPause
+
+ postPauseLE
+
-
@@ -320,15 +356,22 @@
profileCB
+ removeProfilePB
cartesianRB
+ baudCB
+ tabWidget
deltaRB
radiusSB
z_delta_dimensionSB
x_dimensionSB
y_dimensionSB
z_dimensionSB
heatedBedCK
bedTempSB
+ extruderTempSB
+ postPauseLE
+ firmwareCB
+ buttonBox
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -77,6 +77,11 @@
QString name = QString::number(m_instances->addTab(newInstanceWidget, i18n("Connect a printer")));
newInstanceWidget->setObjectName(name);
connect(this, &MainWindow::profilesChanged, newInstanceWidget, &AtCoreInstanceWidget::updateProfileData);
+ connect(newInstanceWidget, &AtCoreInstanceWidget::requestProfileDialog, [ this ] {
+ std::unique_ptr pd(new ProfilesDialog);
+ pd->exec();
+ emit(profilesChanged());
+ });
connect(newInstanceWidget, &AtCoreInstanceWidget::connectionChanged, this, &MainWindow::atCoreInstanceNameChange);
if(m_instances->count() > 1) {
@@ -96,7 +101,10 @@
btn->setToolTip(text);
btn->setAutoExclusive(true);
btn->setCheckable(true);
+ //3d view is on top set it checked so users see its selected.
+ btn->setChecked(key == "3d");
btn->setIcon(icon);
+ btn->setFixedSize(48,48);
btn->setIconSize(QSize(48,48));
btn->setFlat(true);
m_lateral.m_stack->addWidget(w);
@@ -130,11 +138,13 @@
action = actionCollection()->addAction(QStringLiteral("open_gcode"));
action->setIcon(QIcon::fromTheme("document-open", style()->standardIcon(QStyle::SP_DirOpenIcon)));
action->setText(i18n("&Open GCode"));
+ action->setShortcut(QKeySequence::Open);
connect(action, &QAction::triggered, this, &MainWindow::openFile);
action = actionCollection()->addAction(QStringLiteral("new_instance"));
action->setIcon(QIcon::fromTheme("list-add", QIcon()));
action->setText(i18n("&New Connection"));
+ action->setShortcut(QKeySequence::AddTab);
connect(action, &QAction::triggered, this, &MainWindow::newAtCoreInstance);
action = actionCollection()->addAction(QStringLiteral("profiles"));
diff --git a/src/widgets/atcoreinstancewidget.h b/src/widgets/atcoreinstancewidget.h
--- a/src/widgets/atcoreinstancewidget.h
+++ b/src/widgets/atcoreinstancewidget.h
@@ -86,7 +86,8 @@
void buildConnectionToolbar();
void connectButtonClicked();
signals:
- void extruderCountChanged(int count);
- void disableDisconnect(bool b);
void connectionChanged(QString name);
+ void disableDisconnect(bool b);
+ void extruderCountChanged(int count);
+ void requestProfileDialog();
};
diff --git a/src/widgets/atcoreinstancewidget.cpp b/src/widgets/atcoreinstancewidget.cpp
--- a/src/widgets/atcoreinstancewidget.cpp
+++ b/src/widgets/atcoreinstancewidget.cpp
@@ -167,7 +167,8 @@
{
if(m_core.state() == AtCore::DISCONNECTED) {
if (m_comboProfile->currentText().isEmpty()) {
- QMessageBox::critical(this, i18n("Error"), i18n("Please, create a profile to connect on Settings!"));
+ QMessageBox::information(this, i18n("No Profiles!"), i18n("Connecting Requires creating a profile for your printer. Create a profile in the next dialog then try again."));
+ emit(requestProfileDialog());
return;
}