MeshLib Documentation
Loading...
Searching...
No Matches
MRMeshModifier.h
Go to the documentation of this file.
1#pragma once
2#include "exports.h"
3#include "MRStatePlugin.h"
5
6namespace MR
7{
8class RenderObject;
9struct Mesh;
10class MRVIEWER_CLASS MeshModifier : public RibbonMenuItem
11{
12public:
13 MRVIEWER_API MeshModifier( std::string name, StatePluginTabs tab = StatePluginTabs::Mesh );
14 virtual ~MeshModifier() = default;
15
16 MRVIEWER_API virtual bool action() override;
17
18 // RenderObject here for auto update
19 MRVIEWER_API bool modify( const std::vector<std::shared_ptr<VisualObject>>& selectedObjects );
20
21 MRVIEWER_API StatePluginTabs getTab() const;
22
23 // check if search mask satisfies for this modifier
24 MRVIEWER_API bool checkStringMask( const std::string& mask ) const;
25
26private:
27 virtual bool modify_( const std::vector<std::shared_ptr<VisualObject>>& selectedObjects ) = 0;
28 StatePluginTabs tab_;
29};
30}
Definition MRMeshModifier.h:11
MRVIEWER_API MeshModifier(std::string name, StatePluginTabs tab=StatePluginTabs::Mesh)
MRVIEWER_API bool checkStringMask(const std::string &mask) const
MRVIEWER_API bool modify(const std::vector< std::shared_ptr< VisualObject > > &selectedObjects)
virtual ~MeshModifier()=default
virtual MRVIEWER_API bool action() override
MRVIEWER_API StatePluginTabs getTab() const
Definition MRRibbonMenuItem.h:20
Definition MRCameraOrientationPlugin.h:8
struct MRMESH_CLASS Mesh
Definition MRMesh/MRMeshFwd.h:475
StatePluginTabs
Definition MRStatePlugin.h:58