added "layer" section to filter menu, moved two plugin to this new section

This commit is contained in:
Marco Callieri mcallieri 2008-07-03 16:36:02 +00:00
parent 649108aacd
commit 2aa084f01c
7 changed files with 29 additions and 1 deletions

View File

@ -289,7 +289,7 @@ class MeshFilterInterface
{
public:
typedef int FilterIDType;
enum FilterClass { Generic, Selection, Cleaning, Remeshing, FaceColoring, VertexColoring, MeshCreation, Smoothing, Quality, Normal} ;
enum FilterClass { Generic, Selection, Cleaning, Remeshing, FaceColoring, VertexColoring, MeshCreation, Smoothing, Quality, Layer, Normal} ;
virtual ~MeshFilterInterface() {}
// The longer string describing each filtering action

View File

@ -352,6 +352,7 @@ private:
QMenu *filterMenuSmoothing;
QMenu *filterMenuQuality;
QMenu *filterMenuNormal;
QMenu *filterMenuLayer;
QMenu *editMenu;

View File

@ -522,6 +522,7 @@ void MainWindow::createMenus()
filterMenuSmoothing = filterMenu->addMenu(tr("Smoothing"));
filterMenuQuality = filterMenu->addMenu(tr("Quality"));
filterMenuNormal = filterMenu->addMenu(tr("Normal and Orientation"));
filterMenuLayer = filterMenu->addMenu(tr("Layer"));
//////////////////// Menu Render //////////////////////////////////////////////////////////////////////////
renderMenu = menuBar()->addMenu(tr("&Render"));
@ -642,6 +643,8 @@ void MainWindow::loadPlugins()
filterMenuNormal->addAction(filterAction); break;
case MeshFilterInterface::Quality :
filterMenuQuality->addAction(filterAction); break;
case MeshFilterInterface::Layer :
filterMenuLayer->addAction(filterAction); break;
case MeshFilterInterface::MeshCreation :
fileMenuNew->addAction(filterAction); break;
case MeshFilterInterface::Generic :

View File

@ -154,4 +154,15 @@ bool FilterSplitterPlugin::applyFilter(QAction *filter, MeshDocument &md, Filter
return true;
}
const FilterSplitterPlugin::FilterClass FilterSplitterPlugin::getClass(QAction *a)
{
switch(ID(a))
{
case FP_SPLITSELECT :
return MeshFilterInterface::Layer;
default :
return MeshFilterInterface::Generic;
}
}
Q_EXPORT_PLUGIN(FilterSplitterPlugin)

View File

@ -43,6 +43,7 @@ public:
virtual const QString filterInfo(FilterIDType filter);
virtual const PluginInfo &pluginInfo();
virtual bool autoDialog(QAction *) {return true;}
virtual const FilterClass getClass(QAction *);
virtual void initParameterSet(QAction *,MeshDocument &/*m*/, FilterParameterSet & /*parent*/);
virtual bool applyFilter(QAction *filter, MeshDocument &m, FilterParameterSet & /*parent*/, vcg::CallBackPos * cb) ;
virtual bool applyFilter(QAction *filter, MeshModel &, FilterParameterSet & /*parent*/, vcg::CallBackPos * cb) { assert(0); return false;} ;

View File

@ -145,4 +145,15 @@ bool SampleFilterDocPlugin::applyFilter(QAction *filter, MeshDocument &md, Filte
return true;
}
const SampleFilterDocPlugin::FilterClass SampleFilterDocPlugin::getClass(QAction *a)
{
switch(ID(a))
{
case FP_FLATTEN :
return MeshFilterInterface::Layer;
default :
return MeshFilterInterface::Generic;
}
}
Q_EXPORT_PLUGIN(SampleFilterDocPlugin)

View File

@ -53,6 +53,7 @@ public:
virtual const QString filterInfo(FilterIDType filter);
virtual const PluginInfo &pluginInfo();
virtual bool autoDialog(QAction *) {return true;}
virtual const FilterClass getClass(QAction *);
virtual void initParameterSet(QAction *,MeshDocument &/*m*/, FilterParameterSet & /*parent*/);
virtual bool applyFilter(QAction *filter, MeshDocument &m, FilterParameterSet & /*parent*/, vcg::CallBackPos * cb) ;
virtual bool applyFilter(QAction *filter, MeshModel &, FilterParameterSet & /*parent*/, vcg::CallBackPos * cb) { assert(0); return false;} ;