[Sketcher] Fix catching of rendering order change
model()->layoutChanged signal didn't work at all, was never emitted by widget Replaced with an eventFilter catching ChildRemoved to further emit the signal
This commit is contained in:
committed by
abdullahtahiriyo
parent
392ad609b4
commit
3528429363
@@ -36,6 +36,8 @@
|
||||
#include <Base/Tools.h>
|
||||
#include <Base/UnitsApi.h>
|
||||
|
||||
#include <QEvent>
|
||||
|
||||
#include "ViewProviderSketch.h"
|
||||
|
||||
using namespace SketcherGui;
|
||||
@@ -58,8 +60,7 @@ SketcherGeneralWidget::SketcherGeneralWidget(QWidget *parent)
|
||||
this, SLOT(onSetGridSize(double)));
|
||||
connect(ui->checkBoxAutoconstraints, SIGNAL(stateChanged(int)),
|
||||
this, SIGNAL(emitToggleAutoconstraints(int)));
|
||||
connect(ui->renderingOrder->model(), SIGNAL(layoutChanged()),
|
||||
this, SLOT(onRenderOrderChanged()));
|
||||
ui->renderingOrder->installEventFilter(this);
|
||||
}
|
||||
|
||||
SketcherGeneralWidget::~SketcherGeneralWidget()
|
||||
@@ -67,6 +68,14 @@ SketcherGeneralWidget::~SketcherGeneralWidget()
|
||||
delete ui;
|
||||
}
|
||||
|
||||
bool SketcherGeneralWidget::eventFilter(QObject *object, QEvent *event)
|
||||
{
|
||||
if (object == ui->renderingOrder && event->type() == QEvent::ChildRemoved) {
|
||||
onRenderOrderChanged();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
void SketcherGeneralWidget::saveSettings()
|
||||
{
|
||||
ui->checkBoxShowGrid->onSave();
|
||||
|
||||
@@ -49,6 +49,8 @@ class SketcherGeneralWidget : public QWidget
|
||||
public:
|
||||
SketcherGeneralWidget(QWidget *parent=0);
|
||||
~SketcherGeneralWidget();
|
||||
|
||||
bool eventFilter(QObject *object, QEvent *event);
|
||||
|
||||
void saveSettings();
|
||||
void saveOrderingOrder();
|
||||
|
||||
Reference in New Issue
Block a user