50 #ifndef COMPONENTSPLUGIN_HH
51 #define COMPONENTSPLUGIN_HH
80 #if QT_VERSION >= 0x050000
81 Q_PLUGIN_METADATA(IID
"org.OpenFlipper.Plugins.Plugin-Components")
87 void updatedObject(
int _identifier,
const UpdateType& _type);
88 void setSlotDescription(QString _slotName, QString _slotDescription,
89 QStringList _parameters, QStringList _descriptions);
92 void addEmptyObject(
DataType _type,
int& _id);
93 void copyObject(
int _oldId,
int& _newId);
96 void addToolbar(QToolBar* _toolbar);
97 void getToolBar( QString _name, QToolBar*& _toolbar);
100 void addPickMode(
const std::string& _mode);
103 void scriptInfo( QString _functionName );
106 void log(
Logtype _type, QString _message );
107 void log( QString _message );
110 void createBackup(
int _objectid, QString _name,
UpdateType _type);
113 void deleteObject(
int _id );
119 void noguiSupported(){};
134 QString
name() {
return (QString(
"Components")); };
135 QString
description( ) {
return (QString(
"Handle mesh components")); };
176 template<
class MeshT >
185 template<
class MeshT >
195 template<
class MeshT >
228 QString version() {
return QString(
"1.0"); };
235 #if defined(INCLUDE_TEMPLATES) && !defined(COMPONENTSPLUGIN_CC)
236 #define COMPONENTSPLUGIN_TEMPLATES
237 #include "ComponentsPluginT.cc"
240 #endif //CUTPLUGIN_HH
Add a toolbox to OpenFlipper.
void slotMouseEvent(QMouseEvent *_event)
a mouse event occured
std::vector< int > IdList
Standard Type for id Lists used for scripting.
Interface class for receiving mouse events.
void pluginsInitialized()
Second initialization phase.
QAction * splitAction_
Split into Components Button was hit.
void slotSplitComponentsButton()
Split into Components Button was hit.
Interface for all plugins which want to Load or Save files and create Objects.
QString description()
Return a description of what the plugin is doing.
Interface for all Plugins which provide scriptable Functions.
Interface class for backup handling.
Interface for all Plugins which do logging to the logging window of the framework.
void splitComponent(MeshT *_mesh, MeshT *_copy)
Split mesh into components.
void deleteUnselectedFaces(MeshT *_mesh)
Deletes all faces of a mesh that are not selected.
void splitComponents(QMouseEvent *_event)
Split Components of picked object.
Interface class from which all plugins have to be created.
Logtype
Log types for Message Window.
void initializePlugin()
Initialize the plugin.
ComponentsPlugin()
Constructor.
QString name()
Return a name for the plugin.
QAction * biggestAction_
Split into Components Button was hit.
void setDescriptions()
set scripting slot descriptions
void selectBiggestComponent(MeshT *_mesh)
Select the biggest component of the mesh.
void biggestComponent(QMouseEvent *_event)
Split into Components Button was hit.
void slotBiggestComponentButton()
Split into Components Button was hit.
Allow access to picking functions.
void slotPickModeChanged(const std::string &_mode)
the pickMode changed