Skip to content

Commit

Permalink
Fem: Change TaskPostBoxes constructors to specific view providers
Browse files Browse the repository at this point in the history
  • Loading branch information
marioalexis84 authored and wwmayer committed Oct 13, 2023
1 parent 259a9db commit 3f1ecf9
Show file tree
Hide file tree
Showing 4 changed files with 56 additions and 50 deletions.
45 changes: 12 additions & 33 deletions src/Mod/Fem/Gui/TaskPostBoxes.cpp
Expand Up @@ -135,7 +135,7 @@ std::string PointMarker::ObjectInvisible()
}


PROPERTY_SOURCE(FemGui::ViewProviderPointMarker, Gui::ViewProviderDocumentObject)
PROPERTY_SOURCE(FemGui::ViewProviderPointMarker, Gui::ViewProvider)

ViewProviderPointMarker::ViewProviderPointMarker()
{
Expand Down Expand Up @@ -280,7 +280,6 @@ TaskDlgPost::~TaskDlgPost() = default;

QDialogButtonBox::StandardButtons TaskDlgPost::getStandardButtons() const
{

// check if we only have gui task boxes
bool guionly = true;
for (auto it : m_boxes) {
Expand Down Expand Up @@ -333,7 +332,7 @@ void TaskDlgPost::open()
{
// a transaction is already open at creation time of the pad
QString msg = QObject::tr("Edit post processing object");
Gui::Command::openCommand((const char*)msg.toUtf8());
Gui::Command::openCommand(msg.toUtf8().constData());
}

void TaskDlgPost::clicked(int button)
Expand Down Expand Up @@ -379,7 +378,6 @@ void TaskDlgPost::recompute()

void TaskDlgPost::modifyStandardButtons(QDialogButtonBox* box)
{

if (box->button(QDialogButtonBox::Apply)) {
box->button(QDialogButtonBox::Apply)->setDefault(true);
}
Expand All @@ -388,7 +386,7 @@ void TaskDlgPost::modifyStandardButtons(QDialogButtonBox* box)

// ***************************************************************************
// box to set the coloring
TaskPostDisplay::TaskPostDisplay(Gui::ViewProviderDocumentObject* view, QWidget* parent)
TaskPostDisplay::TaskPostDisplay(ViewProviderFemPostObject* view, QWidget* parent)
: TaskPostBox(view,
Gui::BitmapFactory().pixmap("FEM_ResultShow"),
tr("Result display options"),
Expand All @@ -410,7 +408,6 @@ TaskPostDisplay::TaskPostDisplay(Gui::ViewProviderDocumentObject* view, QWidget*

// get Transparency from ViewProvider
int trans = getTypedView<ViewProviderFemPostObject>()->Transparency.getValue();
Base::Console().Log("Transparency %i: \n", trans);
// sync the trancparency slider
ui->Transparency->setValue(trans);
ui->Transparency->setToolTip(QString::number(trans) + QString::fromLatin1(" %"));
Expand Down Expand Up @@ -463,7 +460,6 @@ void TaskPostDisplay::onVectorModeActivated(int i)

void TaskPostDisplay::onTransparencyValueChanged(int i)
{

getTypedView<ViewProviderFemPostObject>()->Transparency.setValue(i);
ui->Transparency->setToolTip(QString::number(i) + QString::fromLatin1(" %"));
// highlight the tooltip
Expand All @@ -476,14 +472,12 @@ void TaskPostDisplay::applyPythonCode()

// ***************************************************************************
// functions
TaskPostFunction::TaskPostFunction(ViewProviderDocumentObject* view, QWidget* parent)
TaskPostFunction::TaskPostFunction(ViewProviderFemPostFunction* view, QWidget* parent)
: TaskPostBox(view,
Gui::BitmapFactory().pixmap("fem-post-geo-plane"),
tr("Implicit function"),
parent)
{
assert(view->isDerivedFrom(ViewProviderFemPostFunction::getClassTypeId()));

// we load the views widget
FunctionWidget* w = getTypedView<ViewProviderFemPostFunction>()->createControlWidget();
w->setParent(this);
Expand All @@ -506,16 +500,15 @@ void TaskPostFunction::applyPythonCode()

// ***************************************************************************
// data along line filter
TaskPostDataAlongLine::TaskPostDataAlongLine(ViewProviderDocumentObject* view, QWidget* parent)
TaskPostDataAlongLine::TaskPostDataAlongLine(ViewProviderFemPostDataAlongLine* view,
QWidget* parent)
: TaskPostBox(view,
Gui::BitmapFactory().pixmap("FEM_PostFilterDataAlongLine"),
tr("Data along a line options"),
parent)
, ui(new Ui_TaskPostDataAlongLine)
, marker(nullptr)
{
assert(view->isDerivedFrom(ViewProviderFemPostDataAlongLine::getClassTypeId()));

// we load the views widget
proxy = new QWidget(this);
ui->setupUi(proxy);
Expand Down Expand Up @@ -933,16 +926,14 @@ plt.show()\n";

// ***************************************************************************
// data at point filter
TaskPostDataAtPoint::TaskPostDataAtPoint(ViewProviderDocumentObject* view, QWidget* parent)
TaskPostDataAtPoint::TaskPostDataAtPoint(ViewProviderFemPostDataAtPoint* view, QWidget* parent)
: TaskPostBox(view,
Gui::BitmapFactory().pixmap("FEM_PostFilterDataAtPoint"),
tr("Data at point options"),
parent)
, ui(new Ui_TaskPostDataAtPoint)
, marker(nullptr)
{
assert(view->isDerivedFrom(ViewProviderFemPostDataAtPoint::getClassTypeId()));

// we load the views widget
proxy = new QWidget(this);
ui->setupUi(proxy);
Expand Down Expand Up @@ -1311,7 +1302,7 @@ std::string TaskPostDataAtPoint::toString(double val) const

// ***************************************************************************
// clip filter
TaskPostClip::TaskPostClip(ViewProviderDocumentObject* view,
TaskPostClip::TaskPostClip(ViewProviderFemPostClip* view,
App::PropertyLink* function,
QWidget* parent)
: TaskPostBox(view,
Expand All @@ -1320,7 +1311,6 @@ TaskPostClip::TaskPostClip(ViewProviderDocumentObject* view,
parent)
, ui(new Ui_TaskPostClip)
{
assert(view->isDerivedFrom(ViewProviderFemPostClip::getClassTypeId()));
assert(function);
Q_UNUSED(function);

Expand Down Expand Up @@ -1482,15 +1472,13 @@ void TaskPostClip::onInsideOutToggled(bool val)

// ***************************************************************************
// contours filter
TaskPostContours::TaskPostContours(ViewProviderDocumentObject* view, QWidget* parent)
TaskPostContours::TaskPostContours(ViewProviderFemPostContours* view, QWidget* parent)
: TaskPostBox(view,
Gui::BitmapFactory().pixmap("FEM_PostFilterContours"),
tr("Contours filter options"),
parent)
, ui(new Ui_TaskPostContours)
{
assert(view->isDerivedFrom(ViewProviderFemPostContours::getClassTypeId()));

// load the views widget
proxy = new QWidget(this);
ui->setupUi(proxy);
Expand Down Expand Up @@ -1612,16 +1600,13 @@ void TaskPostContours::onNoColorChanged(bool state)

// ***************************************************************************
// cut filter
TaskPostCut::TaskPostCut(ViewProviderDocumentObject* view,
App::PropertyLink* function,
QWidget* parent)
TaskPostCut::TaskPostCut(ViewProviderFemPostCut* view, App::PropertyLink* function, QWidget* parent)
: TaskPostBox(view,
Gui::BitmapFactory().pixmap("FEM_PostFilterCutFunction"),
tr("Function cut, choose implicit function"),
parent)
, ui(new Ui_TaskPostCut)
{
assert(view->isDerivedFrom(ViewProviderFemPostCut::getClassTypeId()));
assert(function);
Q_UNUSED(function)

Expand Down Expand Up @@ -1760,15 +1745,13 @@ void TaskPostCut::onFunctionBoxCurrentIndexChanged(int idx)

// ***************************************************************************
// scalar clip filter
TaskPostScalarClip::TaskPostScalarClip(ViewProviderDocumentObject* view, QWidget* parent)
TaskPostScalarClip::TaskPostScalarClip(ViewProviderFemPostScalarClip* view, QWidget* parent)
: TaskPostBox(view,
Gui::BitmapFactory().pixmap("FEM_PostFilterClipScalar"),
tr("Scalar clip options"),
parent)
, ui(new Ui_TaskPostScalarClip)
{
assert(view->isDerivedFrom(ViewProviderFemPostScalarClip::getClassTypeId()));

// we load the views widget
proxy = new QWidget(this);
ui->setupUi(proxy);
Expand Down Expand Up @@ -1892,15 +1875,13 @@ void TaskPostScalarClip::onInsideOutToggled(bool val)

// ***************************************************************************
// warp vector filter
TaskPostWarpVector::TaskPostWarpVector(ViewProviderDocumentObject* view, QWidget* parent)
TaskPostWarpVector::TaskPostWarpVector(ViewProviderFemPostWarpVector* view, QWidget* parent)
: TaskPostBox(view,
Gui::BitmapFactory().pixmap("FEM_PostFilterWarp"),
tr("Warp options"),
parent)
, ui(new Ui_TaskPostWarpVector)
{
assert(view->isDerivedFrom(ViewProviderFemPostWarpVector::getClassTypeId()));

// we load the views widget
proxy = new QWidget(this);
ui->setupUi(proxy);
Expand Down Expand Up @@ -1971,7 +1952,6 @@ void TaskPostWarpVector::applyPythonCode()
void TaskPostWarpVector::onVectorCurrentIndexChanged(int idx)
{
// combobox to choose the result to warp

static_cast<Fem::FemPostWarpVectorFilter*>(getObject())->Vector.setValue(idx);
recompute();
}
Expand Down Expand Up @@ -2003,7 +1983,6 @@ void TaskPostWarpVector::onValueValueChanged(double warp_factor)

// TODO warp factor should not be smaller than min and greater than max,
// but problems on automate change of warp_factor, see on_Max_valueChanged

static_cast<Fem::FemPostWarpVectorFilter*>(getObject())->Factor.setValue(warp_factor);
recompute();

Expand Down
39 changes: 29 additions & 10 deletions src/Mod/Fem/Gui/TaskPostBoxes.h
Expand Up @@ -62,6 +62,7 @@ namespace FemGui
// ***************************************************************************
// point marker
class ViewProviderPointMarker;

class PointMarker: public QObject
{
Q_OBJECT
Expand Down Expand Up @@ -89,7 +90,7 @@ class PointMarker: public QObject
};


class FemGuiExport ViewProviderPointMarker: public Gui::ViewProviderDocumentObject
class FemGuiExport ViewProviderPointMarker: public Gui::ViewProvider
{
PROPERTY_HEADER_WITH_OVERRIDE(FemGui::ViewProviderPointMarker);

Expand Down Expand Up @@ -237,12 +238,14 @@ class TaskDlgPost: public Gui::TaskView::TaskDialog

// ***************************************************************************
// box to set the coloring
class ViewProviderFemPostObject;

class TaskPostDisplay: public TaskPostBox
{
Q_OBJECT

public:
explicit TaskPostDisplay(Gui::ViewProviderDocumentObject* view, QWidget* parent = nullptr);
explicit TaskPostDisplay(ViewProviderFemPostObject* view, QWidget* parent = nullptr);
~TaskPostDisplay() override;

void applyPythonCode() override;
Expand All @@ -267,12 +270,14 @@ class TaskPostDisplay: public TaskPostBox

// ***************************************************************************
// functions
class ViewProviderFemPostFunction;

class TaskPostFunction: public TaskPostBox
{
Q_OBJECT

public:
explicit TaskPostFunction(Gui::ViewProviderDocumentObject* view, QWidget* parent = nullptr);
explicit TaskPostFunction(ViewProviderFemPostFunction* view, QWidget* parent = nullptr);
~TaskPostFunction() override;

void applyPythonCode() override;
Expand All @@ -286,12 +291,14 @@ class TaskPostFunction: public TaskPostBox

// ***************************************************************************
// data along line filter
class ViewProviderFemPostDataAlongLine;

class TaskPostDataAlongLine: public TaskPostBox
{
Q_OBJECT

public:
explicit TaskPostDataAlongLine(Gui::ViewProviderDocumentObject* view,
explicit TaskPostDataAlongLine(ViewProviderFemPostDataAlongLine* view,
QWidget* parent = nullptr);
~TaskPostDataAlongLine() override;

Expand Down Expand Up @@ -322,12 +329,14 @@ class TaskPostDataAlongLine: public TaskPostBox

// ***************************************************************************
// data at point filter
class ViewProviderFemPostDataAtPoint;

class TaskPostDataAtPoint: public TaskPostBox
{
Q_OBJECT

public:
explicit TaskPostDataAtPoint(Gui::ViewProviderDocumentObject* view, QWidget* parent = nullptr);
explicit TaskPostDataAtPoint(ViewProviderFemPostDataAtPoint* view, QWidget* parent = nullptr);
~TaskPostDataAtPoint() override;

void applyPythonCode() override;
Expand All @@ -352,12 +361,14 @@ class TaskPostDataAtPoint: public TaskPostBox

// ***************************************************************************
// clip filter
class ViewProviderFemPostClip;

class TaskPostClip: public TaskPostBox
{
Q_OBJECT

public:
TaskPostClip(Gui::ViewProviderDocumentObject* view,
TaskPostClip(ViewProviderFemPostClip* view,
App::PropertyLink* function,
QWidget* parent = nullptr);
~TaskPostClip() override;
Expand Down Expand Up @@ -386,12 +397,14 @@ class TaskPostClip: public TaskPostBox

// ***************************************************************************
// contours filter
class ViewProviderFemPostContours;

class TaskPostContours: public TaskPostBox
{
Q_OBJECT

public:
explicit TaskPostContours(Gui::ViewProviderDocumentObject* view, QWidget* parent = nullptr);
explicit TaskPostContours(ViewProviderFemPostContours* view, QWidget* parent = nullptr);
~TaskPostContours() override;

void applyPythonCode() override;
Expand All @@ -412,12 +425,14 @@ class TaskPostContours: public TaskPostBox

// ***************************************************************************
// cut filter
class ViewProviderFemPostCut;

class TaskPostCut: public TaskPostBox
{
Q_OBJECT

public:
TaskPostCut(Gui::ViewProviderDocumentObject* view,
TaskPostCut(ViewProviderFemPostCut* view,
App::PropertyLink* function,
QWidget* parent = nullptr);
~TaskPostCut() override;
Expand All @@ -444,12 +459,14 @@ class TaskPostCut: public TaskPostBox

// ***************************************************************************
// scalar clip filter
class ViewProviderFemPostScalarClip;

class TaskPostScalarClip: public TaskPostBox
{
Q_OBJECT

public:
explicit TaskPostScalarClip(Gui::ViewProviderDocumentObject* view, QWidget* parent = nullptr);
explicit TaskPostScalarClip(ViewProviderFemPostScalarClip* view, QWidget* parent = nullptr);
~TaskPostScalarClip() override;

void applyPythonCode() override;
Expand All @@ -469,12 +486,14 @@ class TaskPostScalarClip: public TaskPostBox

// ***************************************************************************
// warp vector filter
class ViewProviderFemPostWarpVector;

class TaskPostWarpVector: public TaskPostBox
{
Q_OBJECT

public:
explicit TaskPostWarpVector(Gui::ViewProviderDocumentObject* view, QWidget* parent = nullptr);
explicit TaskPostWarpVector(ViewProviderFemPostWarpVector* view, QWidget* parent = nullptr);
~TaskPostWarpVector() override;

void applyPythonCode() override;
Expand Down

0 comments on commit 3f1ecf9

Please sign in to comment.