- added double clicking support on tab icons

This commit is contained in:
Guido Ranzuglia granzuglia 2016-08-01 10:33:47 +00:00
parent f6001aed86
commit 83fe9ffbbd
5 changed files with 234 additions and 2 deletions

View File

@ -57,8 +57,7 @@ LayerDialog::LayerDialog(QWidget *parent )
_globaldoctool->setVisible(false);
///////////////////////////////////
MLRenderingParametersTab* tabw = createRenderingParametersTab();
if (tabw != NULL)
if (createRenderingParametersTab() != NULL)
{
tabw->setVisible(true);
ui->renderingLayout->addWidget(tabw);
@ -671,6 +670,7 @@ void LayerDialog::updatePerMeshItemSelectionStatus()
item->setBackground(3,QBrush(Qt::yellow));
item->setForeground(3,QBrush(Qt::blue));
ui->meshTreeWidget->setCurrentItem(item);
tabw->updatePerMeshRenderingAction(item->_rendertoolbar->getRenderingActions());
}
else
{

View File

@ -769,6 +769,18 @@ void MLRenderingParametersTab::setAssociatedMeshId( int meshid )
(*itt)->setAssociatedMeshId(meshid);
}
void MLRenderingParametersTab::activateRenderingMode(int index)
{
if ((index >= 0) && (index < _paract.size()))
{
MLRenderingAction* act = _paract[index];
if (act != NULL)
{
act->setChecked(!act->isChecked());
emit updateRenderingDataAccordingToAction(_meshid, act);
}
}
}
void MLRenderingParametersTab::switchTab(int meshid,const QString& tabname)
{
@ -786,6 +798,8 @@ void MLRenderingParametersTab::updateGUIAccordingToRenderingData(const MLRenderi
void MLRenderingParametersTab::initGui(const QList<MLRenderingAction*>& tab)
{
_paract.resize(tab.size());
int ii = 0;
foreach(MLRenderingAction* ract,tab)
{
if (ract != NULL)
@ -794,12 +808,18 @@ void MLRenderingParametersTab::initGui(const QList<MLRenderingAction*>& tab)
if (fr != NULL)
{
_parframe[ract->text()] = fr;
MLRenderingAction* sister = NULL;
ract->createSisterAction(sister, this);
if (sister != NULL)
_paract[ii] = sister;
addTab(fr,ract->icon(),"");
connect(fr,SIGNAL(updateRenderingDataAccordingToActions(int,const QList<MLRenderingAction*>&)),this,SIGNAL(updateRenderingDataAccordingToActions(int,const QList<MLRenderingAction*>&)));
connect(fr,SIGNAL(updateRenderingDataAccordingToAction(int,MLRenderingAction*)),this,SIGNAL(updateRenderingDataAccordingToAction(int,MLRenderingAction*)));
}
}
++ii;
}
connect(this, SIGNAL(tabBarDoubleClicked(int)), this, SLOT(activateRenderingMode(int)));
}
void MLRenderingParametersTab::updateVisibility(MeshModel* mm)
@ -808,6 +828,13 @@ void MLRenderingParametersTab::updateVisibility(MeshModel* mm)
itt.value()->updateVisibility(mm);
}
void MLRenderingParametersTab::updatePerMeshRenderingAction(QList<MLRenderingAction*>& acts)
{
_paract.clear();
for(int ii = 0;ii < acts.size();++ii)
_paract.push_back(acts[ii]);
}
MLRenderingParametersTab::~MLRenderingParametersTab()
{
for(QMap<QString,MLRenderingParametersFrame*>::iterator it = _parframe.begin();it != _parframe.end();++it)

View File

@ -351,6 +351,8 @@ public:
void getCurrentRenderingDataAccordingToGUI(MLRenderingData& dt) const;
int associatedMeshId() const {return _meshid;}
void updateVisibility(MeshModel* mm);
void updatePerMeshRenderingAction(QList<MLRenderingAction*>& acts);
private:
void initGui(const QList<MLRenderingAction*>& tab);
@ -358,6 +360,7 @@ private:
public slots:
void switchTab(int meshid,const QString& tabname);
void setAssociatedMeshId(int meshid);
void activateRenderingMode(int index);
signals:
void updateRenderingDataAccordingToActions(int,const QList<MLRenderingAction*>&);
@ -365,6 +368,7 @@ signals:
private:
QMap<QString,MLRenderingParametersFrame*> _parframe;
QVector<MLRenderingAction*> _paract;
};
#endif

View File

@ -53,6 +53,11 @@ MLRenderingBBoxAction::MLRenderingBBoxAction( int meshid,QObject* parent)
setText(QString("Bounding Box"));
}
void MLRenderingBBoxAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingBBoxAction(meshId(), par);
}
void MLRenderingBBoxAction::updateRenderingData(MLRenderingData& rd)
{
MLPerViewGLOptions opts;
@ -85,6 +90,11 @@ MLRenderingPointsAction::MLRenderingPointsAction( int meshid,QObject* parent)
setText(QString("Points"));
}
void MLRenderingPointsAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingPointsAction(meshId(), par);
}
void MLRenderingPointsAction::updateRenderingData(MLRenderingData& rd )
{
rd.set(MLRenderingData::PR_POINTS,isChecked());
@ -109,6 +119,11 @@ MLRenderingWireAction::MLRenderingWireAction( int meshid,QObject* parent)
setText(QString("Wireframe"));
}
void MLRenderingWireAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingWireAction(meshId(), par);
}
void MLRenderingWireAction::updateRenderingData(MLRenderingData& rd )
{
rd.set(MLRenderingData::PR_WIREFRAME_TRIANGLES,isChecked());
@ -133,6 +148,11 @@ MLRenderingSolidAction::MLRenderingSolidAction( int meshid,QObject* parent )
setText(QString("Fill"));
}
void MLRenderingSolidAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingSolidAction(meshId(), par);
}
void MLRenderingSolidAction::updateRenderingData( MLRenderingData& rd )
{
rd.set(MLRenderingData::PR_SOLID,isChecked());
@ -155,6 +175,11 @@ MLRenderingFauxEdgeWireAction::MLRenderingFauxEdgeWireAction( int meshid,QObject
setText(QString("Edges Wireframe"));
}
void MLRenderingFauxEdgeWireAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingFauxEdgeWireAction(meshId(), par);
}
void MLRenderingFauxEdgeWireAction::updateRenderingData( MLRenderingData& rd )
{
rd.set(MLRenderingData::PR_WIREFRAME_EDGES,isChecked());
@ -182,6 +207,11 @@ MLRenderingPerFaceNormalAction::MLRenderingPerFaceNormalAction( int meshid,QObje
setText(QString("Face"));
}
void MLRenderingPerFaceNormalAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingPerFaceNormalAction(meshId(), par);
}
void MLRenderingPerFaceNormalAction::updateRenderingData(MLRenderingData& rd )
{
rd.set(MLRenderingData::PR_SOLID,MLRenderingData::ATT_NAMES::ATT_FACENORMAL,isChecked());
@ -204,6 +234,11 @@ MLRenderingPerVertexNormalAction::MLRenderingPerVertexNormalAction(MLRenderingDa
setText(QString("Vert"));
}
void MLRenderingPerVertexNormalAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingPerVertexNormalAction(_pm, meshId(), par);
}
void MLRenderingPerVertexNormalAction::updateRenderingData(MLRenderingData& rd )
{
rd.set(_pm,MLRenderingData::ATT_NAMES::ATT_VERTNORMAL,isChecked());
@ -226,6 +261,11 @@ MLRenderingPerVertTextCoordAction::MLRenderingPerVertTextCoordAction(MLRendering
setText(QString("Enabled"));
}
void MLRenderingPerVertTextCoordAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingPerVertTextCoordAction(_pm,meshId(), par);
}
void MLRenderingPerVertTextCoordAction::updateRenderingData(MLRenderingData& rd )
{
rd.set(_pm,MLRenderingData::ATT_NAMES::ATT_VERTTEXTURE,isChecked());
@ -251,6 +291,11 @@ MLRenderingPerWedgeTextCoordAction::MLRenderingPerWedgeTextCoordAction(int meshi
{
}
void MLRenderingPerWedgeTextCoordAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingPerWedgeTextCoordAction(meshId(), par);
}
void MLRenderingPerWedgeTextCoordAction::updateRenderingData(MLRenderingData& rd )
{
rd.set(MLRenderingData::PR_SOLID,MLRenderingData::ATT_NAMES::ATT_WEDGETEXTURE,isChecked());
@ -279,6 +324,11 @@ MLRenderingDoubleLightingAction::MLRenderingDoubleLightingAction( int meshid,QOb
setText(QString("Enabled"));
}
void MLRenderingDoubleLightingAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingDoubleLightingAction(meshId(), par);
}
void MLRenderingDoubleLightingAction::updateRenderingData(MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -309,6 +359,11 @@ MLRenderingFancyLightingAction::MLRenderingFancyLightingAction( int meshid,QObje
setText(QString("Fancy Lighting"));
}
void MLRenderingFancyLightingAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingFancyLightingAction(meshId(), par);
}
void MLRenderingFancyLightingAction::updateRenderingData(MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -343,6 +398,11 @@ MLRenderingNoShadingAction::MLRenderingNoShadingAction(MLRenderingData::PRIMITIV
setToolTip(QString("Light on/off"));
}
void MLRenderingNoShadingAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingNoShadingAction(_pm,meshId(), par);
}
void MLRenderingNoShadingAction::updateRenderingData(MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -411,6 +471,11 @@ MLRenderingFaceCullAction::MLRenderingFaceCullAction( int meshid,QObject* parent
setText(QString("BackFace Culling"));
}
void MLRenderingFaceCullAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingFaceCullAction(meshId(), par);
}
void MLRenderingFaceCullAction::updateRenderingData(MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -441,6 +506,11 @@ MLRenderingPerMeshColorAction::MLRenderingPerMeshColorAction(MLRenderingData::PR
setText(QString("Mesh"));
}
void MLRenderingPerMeshColorAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingPerMeshColorAction(_pm,meshId(), par);
}
void MLRenderingPerMeshColorAction::updateRenderingData(MLRenderingData& rd)
{
MLPerViewGLOptions opts;
@ -525,6 +595,11 @@ MLRenderingPerVertexColorAction::MLRenderingPerVertexColorAction(MLRenderingData
setText(QString("Vert"));
}
void MLRenderingPerVertexColorAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingPerVertexColorAction(_pm, meshId(), par);
}
void MLRenderingPerVertexColorAction::updateRenderingData(MLRenderingData& rd )
{
rd.set(_pm,MLRenderingData::ATT_NAMES::ATT_VERTCOLOR,isChecked());
@ -547,6 +622,11 @@ MLRenderingPerFaceColorAction::MLRenderingPerFaceColorAction(int meshid,QObject*
setText(QString("Face"));
}
void MLRenderingPerFaceColorAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingPerFaceColorAction(meshId(), par);
}
void MLRenderingPerFaceColorAction::updateRenderingData(MLRenderingData& rd )
{
rd.set(MLRenderingData::PR_SOLID,MLRenderingData::ATT_NAMES::ATT_FACECOLOR,isChecked());
@ -574,6 +654,11 @@ MLRenderingUserDefinedColorAction::MLRenderingUserDefinedColorAction( MLRenderin
setText(QString("User-Def"));
}
void MLRenderingUserDefinedColorAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingUserDefinedColorAction(_pm,meshId(), par);
}
void MLRenderingUserDefinedColorAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -664,6 +749,11 @@ MLRenderingSelectionAction::MLRenderingSelectionAction( int meshid,QObject* pare
setText(QString("Selection"));
}
void MLRenderingSelectionAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingSelectionAction(meshId(), par);
}
void MLRenderingSelectionAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -694,6 +784,11 @@ MLRenderingPointsDotAction::MLRenderingPointsDotAction( int meshid,QObject* pare
setText("Dot");
}
void MLRenderingPointsDotAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingPointsDotAction(meshId(), par);
}
void MLRenderingPointsDotAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -725,6 +820,11 @@ MLRenderingVertSelectionAction::MLRenderingVertSelectionAction( int meshid,QObje
setText("Vert Selection");
}
void MLRenderingVertSelectionAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingVertSelectionAction(meshId(), par);
}
void MLRenderingVertSelectionAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -756,6 +856,11 @@ MLRenderingFaceSelectionAction::MLRenderingFaceSelectionAction( int meshid,QObje
setText("Face Selection");
}
void MLRenderingFaceSelectionAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingFaceSelectionAction(meshId(), par);
}
void MLRenderingFaceSelectionAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -786,6 +891,11 @@ MLRenderingBBoxPerMeshColorAction::MLRenderingBBoxPerMeshColorAction( int meshid
setText("Mesh");
}
void MLRenderingBBoxPerMeshColorAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingBBoxPerMeshColorAction(meshId(), par);
}
void MLRenderingBBoxPerMeshColorAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -828,6 +938,11 @@ MLRenderingBBoxUserDefinedColorAction::MLRenderingBBoxUserDefinedColorAction( in
setText("User-Def");
}
void MLRenderingBBoxUserDefinedColorAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingBBoxUserDefinedColorAction(meshId(), par);
}
void MLRenderingBBoxUserDefinedColorAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -880,6 +995,11 @@ MLRenderingEdgeDecoratorAction::MLRenderingEdgeDecoratorAction( int meshid,QObje
}
void MLRenderingEdgeDecoratorAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingEdgeDecoratorAction(meshId(), par);
}
void MLRenderingEdgeDecoratorAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -912,6 +1032,11 @@ MLRenderingEdgeBoundaryAction::MLRenderingEdgeBoundaryAction( int meshid,QObject
setText("Edges Boundary");
}
void MLRenderingEdgeBoundaryAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingEdgeBoundaryAction(meshId(), par);
}
void MLRenderingEdgeBoundaryAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -944,6 +1069,11 @@ MLRenderingFaceBoundaryAction::MLRenderingFaceBoundaryAction( int meshid,QObject
setText("Faces Boundary");
}
void MLRenderingFaceBoundaryAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingFaceBoundaryAction(meshId(), par);
}
void MLRenderingFaceBoundaryAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -976,6 +1106,11 @@ MLRenderingEdgeManifoldAction::MLRenderingEdgeManifoldAction( int meshid,QObject
setText("No 2-Manifold Edges Decorator");
}
void MLRenderingEdgeManifoldAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingEdgeManifoldAction(meshId(), par);
}
void MLRenderingEdgeManifoldAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -1008,6 +1143,11 @@ MLRenderingVertManifoldAction::MLRenderingVertManifoldAction( int meshid,QObject
setText("No 2-Manifold Vertices Decorator");
}
void MLRenderingVertManifoldAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingVertManifoldAction(meshId(), par);
}
void MLRenderingVertManifoldAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -1040,6 +1180,11 @@ MLRenderingTexBorderAction::MLRenderingTexBorderAction( int meshid,QObject* pare
setText("Texture Borders Decorator");
}
void MLRenderingTexBorderAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingTexBorderAction(meshId(), par);
}
void MLRenderingTexBorderAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -1072,6 +1217,11 @@ MLRenderingDotAction::MLRenderingDotAction( int meshid,QObject* parent )
setText("Dot Decorator");
}
void MLRenderingDotAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingDotAction(meshId(), par);
}
void MLRenderingDotAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -1104,6 +1254,11 @@ MLRenderingPointsSizeAction::MLRenderingPointsSizeAction( int meshid,QObject* pa
setText("Point Size");
}
void MLRenderingPointsSizeAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingPointsSizeAction(meshId(), par);
}
void MLRenderingPointsSizeAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -1143,6 +1298,11 @@ MLRenderingWireWidthAction::MLRenderingWireWidthAction( int meshid,QObject* pare
setText("Edge Width");
}
void MLRenderingWireWidthAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingWireWidthAction(meshId(), par);
}
void MLRenderingWireWidthAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;
@ -1196,6 +1356,11 @@ MLRenderingBBoxQuotedInfoAction::MLRenderingBBoxQuotedInfoAction( int meshid,QOb
}
void MLRenderingBBoxQuotedInfoAction::createSisterAction(MLRenderingAction *& sisteract, QObject * par)
{
sisteract = new MLRenderingBBoxQuotedInfoAction(meshId(), par);
}
void MLRenderingBBoxQuotedInfoAction::updateRenderingData( MLRenderingData& rd )
{
MLPerViewGLOptions opts;

View File

@ -12,6 +12,7 @@ public:
MLRenderingAction(QObject* parent);
MLRenderingAction(int meshid,QObject* parent);
virtual void createSisterAction(MLRenderingAction*& sisteract,QObject* par) = 0;
virtual void updateRenderingData(MLRenderingData& rd) = 0;
virtual bool isRenderingDataEnabled(const MLRenderingData& rd) const = 0;
virtual bool isCheckableConditionValid(MeshModel*) const {return true;}
@ -28,6 +29,8 @@ class MLRenderingBBoxAction : public MLRenderingAction
public:
MLRenderingBBoxAction(QObject* parent);
MLRenderingBBoxAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
bool isOnOffOption(MLRenderingAction* onact = 0,MLRenderingAction* offact = 0);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
@ -40,6 +43,7 @@ public:
MLRenderingPointsAction(QObject* parent);
MLRenderingPointsAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -51,6 +55,7 @@ public:
MLRenderingWireAction(QObject* parent);
MLRenderingWireAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -62,6 +67,7 @@ public:
MLRenderingSolidAction(QObject* parent);
MLRenderingSolidAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -73,6 +79,7 @@ public:
MLRenderingFauxEdgeWireAction(QObject* parent);
MLRenderingFauxEdgeWireAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
bool isCheckableConditionValid(MeshModel*) const;
@ -85,6 +92,7 @@ public:
MLRenderingPerFaceNormalAction(QObject* parent);
MLRenderingPerFaceNormalAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -96,6 +104,7 @@ public:
MLRenderingPerVertexNormalAction(MLRenderingData::PRIMITIVE_MODALITY pm,QObject* parent);
MLRenderingPerVertexNormalAction(MLRenderingData::PRIMITIVE_MODALITY pm,int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
private:
@ -109,6 +118,7 @@ public:
MLRenderingPointsDotAction(QObject* parent);
MLRenderingPointsDotAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -121,6 +131,7 @@ public:
MLRenderingPerVertTextCoordAction(MLRenderingData::PRIMITIVE_MODALITY pm,QObject* parent);
MLRenderingPerVertTextCoordAction(MLRenderingData::PRIMITIVE_MODALITY pm,int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
bool isCheckableConditionValid(MeshModel*) const;
@ -135,6 +146,7 @@ public:
MLRenderingPerWedgeTextCoordAction(QObject* parent);
MLRenderingPerWedgeTextCoordAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
bool isCheckableConditionValid(MeshModel*) const;
@ -147,6 +159,7 @@ public:
MLRenderingDoubleLightingAction(QObject* parent);
MLRenderingDoubleLightingAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -158,6 +171,7 @@ public:
MLRenderingFancyLightingAction(QObject* parent);
MLRenderingFancyLightingAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -169,6 +183,7 @@ public:
MLRenderingNoShadingAction(MLRenderingData::PRIMITIVE_MODALITY pm,QObject* parent);
MLRenderingNoShadingAction(MLRenderingData::PRIMITIVE_MODALITY pm,int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
private:
@ -182,6 +197,7 @@ public:
MLRenderingFaceCullAction(QObject* parent);
MLRenderingFaceCullAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -193,6 +209,7 @@ public:
MLRenderingPerMeshColorAction(MLRenderingData::PRIMITIVE_MODALITY pm,QObject* parent);
MLRenderingPerMeshColorAction(MLRenderingData::PRIMITIVE_MODALITY pm,int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
void setColor(const QColor& col);
@ -211,6 +228,7 @@ public:
MLRenderingBBoxPerMeshColorAction(QObject* parent);
MLRenderingBBoxPerMeshColorAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
void setColor(const QColor& col);
@ -228,6 +246,7 @@ public:
MLRenderingPerVertexColorAction(MLRenderingData::PRIMITIVE_MODALITY pm,QObject* parent);
MLRenderingPerVertexColorAction(MLRenderingData::PRIMITIVE_MODALITY pm,int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
private:
@ -241,6 +260,7 @@ public:
MLRenderingPerFaceColorAction(QObject* parent);
MLRenderingPerFaceColorAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
bool isCheckableConditionValid(MeshModel*) const;
@ -253,6 +273,7 @@ public:
MLRenderingUserDefinedColorAction(MLRenderingData::PRIMITIVE_MODALITY pm,QObject* parent);
MLRenderingUserDefinedColorAction(MLRenderingData::PRIMITIVE_MODALITY pm,int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
void setColor(const vcg::Color4b& col);
@ -271,6 +292,7 @@ public:
MLRenderingBBoxUserDefinedColorAction(QObject* parent);
MLRenderingBBoxUserDefinedColorAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
void setColor(const QColor& col);
@ -292,6 +314,7 @@ public:
void setValue(float value) {_value = value;}
float getValue() {return _value;}
virtual void createSisterAction(MLRenderingAction*& sisteract, QObject* par) = 0;
virtual void updateRenderingData(MLRenderingData& rd) = 0;
virtual bool isRenderingDataEnabled(const MLRenderingData& rd) const = 0;
virtual float getValueFromRenderingData(const MLRenderingData& rd) const = 0;
@ -306,6 +329,7 @@ public:
MLRenderingPointsSizeAction(QObject* parent);
MLRenderingPointsSizeAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
float getValueFromRenderingData(const MLRenderingData& rd) const;
@ -318,6 +342,7 @@ public:
MLRenderingWireWidthAction(QObject* parent);
MLRenderingWireWidthAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
float getValueFromRenderingData(const MLRenderingData& rd) const;
@ -330,6 +355,7 @@ public:
MLRenderingSelectionAction(QObject* parent);
MLRenderingSelectionAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -341,6 +367,7 @@ public:
MLRenderingVertSelectionAction(QObject* parent);
MLRenderingVertSelectionAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -352,6 +379,7 @@ public:
MLRenderingFaceSelectionAction(QObject* parent);
MLRenderingFaceSelectionAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -363,6 +391,7 @@ public:
MLRenderingEdgeDecoratorAction(QObject* parent);
MLRenderingEdgeDecoratorAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -374,6 +403,7 @@ public:
MLRenderingEdgeBoundaryAction(QObject* parent);
MLRenderingEdgeBoundaryAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -385,6 +415,7 @@ public:
MLRenderingFaceBoundaryAction(QObject* parent);
MLRenderingFaceBoundaryAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -396,6 +427,7 @@ public:
MLRenderingEdgeManifoldAction(QObject* parent);
MLRenderingEdgeManifoldAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -407,6 +439,7 @@ public:
MLRenderingVertManifoldAction(QObject* parent);
MLRenderingVertManifoldAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -419,6 +452,7 @@ public:
MLRenderingTexBorderAction(QObject* parent);
MLRenderingTexBorderAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -441,6 +475,7 @@ public:
MLRenderingDotAction(QObject* parent);
MLRenderingDotAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};
@ -452,6 +487,7 @@ public:
MLRenderingBBoxQuotedInfoAction(QObject* parent);
MLRenderingBBoxQuotedInfoAction(int meshid,QObject* parent);
void createSisterAction(MLRenderingAction*& sisteract, QObject* par);
void updateRenderingData(MLRenderingData& rd);
bool isRenderingDataEnabled(const MLRenderingData& rd) const;
};