From fe4d56a45a880993b87ff0790ad93f5d145d6d4e Mon Sep 17 00:00:00 2001 From: Miodrag Milanovic Date: Fri, 15 Jun 2018 11:10:11 +0200 Subject: Propagate signals --- gui/designwidget.cc | 3 ++- gui/designwidget.h | 5 ++++- gui/mainwindow.cc | 5 +++++ gui/mainwindow.h | 2 ++ 4 files changed, 13 insertions(+), 2 deletions(-) diff --git a/gui/designwidget.cc b/gui/designwidget.cc index 06b848a5..ac367e4e 100644 --- a/gui/designwidget.cc +++ b/gui/designwidget.cc @@ -220,6 +220,7 @@ void DesignWidget::prepareMenu(const QPoint &pos) QAction *selectAction = new QAction("&Select", this); selectAction->setStatusTip("Select item on view"); + connect(selectAction, SIGNAL(triggered()), this, SLOT(selectObject())); QMenu menu(this); @@ -231,5 +232,5 @@ void DesignWidget::prepareMenu(const QPoint &pos) void DesignWidget::selectObject() { - // info->info("selected " + itemContextMenu->text(0).toStdString() + "\n"); + Q_EMIT info("selected " + itemContextMenu->text(0).toStdString() + "\n"); } diff --git a/gui/designwidget.h b/gui/designwidget.h index e237ec6d..e3f7e622 100644 --- a/gui/designwidget.h +++ b/gui/designwidget.h @@ -23,10 +23,13 @@ class DesignWidget : public QWidget void addProperty(QtVariantProperty *property, const QString &id); void clearProperties(); + Q_SIGNALS: + void info(std::string text); + private Q_SLOTS: void prepareMenu(const QPoint &pos); - void selectObject(); void onItemClicked(QTreeWidgetItem *item, int); + void selectObject(); private: Design *design; diff --git a/gui/mainwindow.cc b/gui/mainwindow.cc index e683e0c5..bd38cc40 100644 --- a/gui/mainwindow.cc +++ b/gui/mainwindow.cc @@ -17,6 +17,9 @@ MainWindow::MainWindow(Design *_design, QWidget *parent) designview->setMinimumWidth(300); designview->setMaximumWidth(300); + connect(designview, SIGNAL(info(std::string)), this, + SLOT(writeInfo(std::string))); + ui->splitter_2->addWidget(designview); tabWidget = new QTabWidget(); @@ -27,3 +30,5 @@ MainWindow::MainWindow(Design *_design, QWidget *parent) } MainWindow::~MainWindow() { delete ui; } + +void MainWindow::writeInfo(std::string text) { info->info(text); } diff --git a/gui/mainwindow.h b/gui/mainwindow.h index 37d8b566..40bb98ef 100644 --- a/gui/mainwindow.h +++ b/gui/mainwindow.h @@ -24,6 +24,8 @@ class MainWindow : public QMainWindow Design *getDesign() { return design; } private Q_SLOTS: + void writeInfo(std::string text); + private: Ui::MainWindow *ui; Design *design; -- cgit v1.2.3