diff --git a/sources/TerminalStrip/ui/terminalstripeditorwindow.cpp b/sources/TerminalStrip/ui/terminalstripeditorwindow.cpp
index 581c5073c..ac595a8b9 100644
--- a/sources/TerminalStrip/ui/terminalstripeditorwindow.cpp
+++ b/sources/TerminalStrip/ui/terminalstripeditorwindow.cpp
@@ -15,6 +15,7 @@
You should have received a copy of the GNU General Public License
along with QElectroTech. If not, see .
*/
+#include "freeterminaleditor.h"
#include "terminalstripeditorwindow.h"
#include "ui_terminalstripeditorwindow.h"
#include "terminalstriptreedockwidget.h"
@@ -22,7 +23,11 @@
#include "terminalstripcreatordialog.h"
#include "../UndoCommand/addterminalstripcommand.h"
#include "../../qetproject.h"
+#include "../realterminal.h"
+static int EMPTY_PAGE = 0;
+static int FREE_TERMINAL_PAGE = 1;
+static int TERMINAL_STRIP_PAGE = 2;
/**
* @brief TerminalStripEditorWindow::TerminalStripEditorWindow
* @param project
@@ -37,7 +42,12 @@ TerminalStripEditorWindow::TerminalStripEditorWindow(QETProject *project, QWidge
ui->m_remove_terminal->setDisabled(true);
addTreeDockWidget();
+ m_free_terminal_editor = new FreeTerminalEditor(m_project, this);
+
connect(m_tree_dock, &TerminalStripTreeDockWidget::currentStripChanged, this, &TerminalStripEditorWindow::currentStripChanged);
+
+ ui->m_stacked_widget->insertWidget(EMPTY_PAGE, new QWidget(ui->m_stacked_widget));
+ ui->m_stacked_widget->insertWidget(FREE_TERMINAL_PAGE, m_free_terminal_editor);
}
/**
@@ -66,7 +76,24 @@ void TerminalStripEditorWindow::addTreeDockWidget()
void TerminalStripEditorWindow::currentStripChanged(TerminalStrip *strip)
{
Q_UNUSED(strip)
+ updateUi();
+
+}
+
+void TerminalStripEditorWindow::updateUi()
+{
ui->m_remove_terminal->setEnabled(m_tree_dock->currentIsStrip());
+
+ ui->m_stacked_widget->setCurrentIndex(EMPTY_PAGE);
+
+ if (auto real_terminal = m_tree_dock->currentRealTerminal())
+ {
+ if (!real_terminal->parentStrip())
+ {
+ ui->m_stacked_widget->setCurrentIndex(FREE_TERMINAL_PAGE);
+ m_free_terminal_editor->reload();
+ }
+ }
}
/**
@@ -104,18 +131,6 @@ void TerminalStripEditorWindow::on_m_remove_terminal_triggered()
}
}
-// auto item = ui->m_tree_view->currentItem();
-// if (auto strip = m_item_strip_H.value(item))
-// {
-// m_item_strip_H.remove(item);
-// m_uuid_strip_H.remove(strip->uuid());
-// delete item;
-
-// m_project->undoStack()->push(new RemoveTerminalStripCommand(strip, m_project));
-// }
-
-// on_m_reload_pb_clicked();
-
}
diff --git a/sources/TerminalStrip/ui/terminalstripeditorwindow.h b/sources/TerminalStrip/ui/terminalstripeditorwindow.h
index 343f02419..ea1f7acc6 100644
--- a/sources/TerminalStrip/ui/terminalstripeditorwindow.h
+++ b/sources/TerminalStrip/ui/terminalstripeditorwindow.h
@@ -23,6 +23,7 @@
class QETProject;
class TerminalStripTreeDockWidget;
class TerminalStrip;
+class FreeTerminalEditor;
namespace Ui {
class TerminalStripEditorWindow;
@@ -44,11 +45,13 @@ class TerminalStripEditorWindow : public QMainWindow
private:
void addTreeDockWidget();
void currentStripChanged(TerminalStrip *strip);
+ void updateUi();
private:
Ui::TerminalStripEditorWindow *ui;
- QETProject *m_project = nullptr;
+ QETProject *m_project {nullptr};
TerminalStripTreeDockWidget *m_tree_dock;
+ FreeTerminalEditor *m_free_terminal_editor {nullptr};
};
#endif // TERMINALSTRIPEDITORWINDOW_H
diff --git a/sources/TerminalStrip/ui/terminalstripeditorwindow.ui b/sources/TerminalStrip/ui/terminalstripeditorwindow.ui
index 0acef215e..e0335630d 100644
--- a/sources/TerminalStrip/ui/terminalstripeditorwindow.ui
+++ b/sources/TerminalStrip/ui/terminalstripeditorwindow.ui
@@ -13,7 +13,20 @@
Gestionnaire de borniers
-
+
+
+ -
+
+
+ -
+
+
+ QDialogButtonBox::Cancel|QDialogButtonBox::Ok
+
+
+
+
+