50 #ifndef HOLEFILLINGPLUGIN_HH
51 #define HOLEFILLINGPLUGIN_HH
67 #include "holefillerToolbar.hh"
82 #if QT_VERSION >= 0x050000
83 Q_PLUGIN_METADATA(IID
"org.OpenFlipper.Plugins.Plugin-HoleFilling")
89 void updatedObject(
int _id,
const UpdateType& _type);
91 void addPickMode(
const std::string& _mode );
93 void log(
Logtype _type, QString _message);
94 void log(QString _message);
98 void scriptInfo( QString _functionName );
100 void setSlotDescription(QString _slotName , QString _slotDescription,
101 QStringList _parameters , QStringList _descriptions);
104 void addToolbox( QString _name , QWidget* _widget, QIcon* _icon );
110 void slotMouseWheelEvent(QWheelEvent * ,
const std::string & ){};
126 QString
name() {
return (QString(
"Hole Filler")); };
127 QString
description( ) {
return (QString(
"Fill Holes or connect meshes")); };
139 void getSelectedHoles(std::vector<int>& _holeIds, std::vector<int>& _objIds);
152 void fillHole(
int _objectID,
int _edgeHandle);
156 QString version() {
return QString(
"1.3"); };
159 #endif //HOLEFILLINGPLUGIN_HH
Interface class from which all plugins have to be created.
void pluginsInitialized()
add PickModes after initialization
Logtype
Log types for Message Window.
void slotItemSelectionChanged()
slot for displaying selected holes
void slotFillSelection()
Fill all selected holes.
void slotMouseEvent(QMouseEvent *)
Mouse Event from main application ( Picking Mode )
const UpdateType UPDATE_ALL(UpdateTypeSet(1))
Identifier for all updates.
void slotCellDoubleClicked(int _row, int _col)
Slot for filling holes from double-clicked rows.
void detectButton()
detect holes on all objects
void update_menu()
update the entries in the tableWidget
Interface for all Plugins which do logging to the logging window of the framework.
HoleFillerPlugin()
Constructor.
std::vector< std::pair< int, int > > holeMapping_
map from the index in the table to (object-id, hole-id)
void slotObjectUpdated(int _identifier, const UpdateType &_type)
check for holes if an object has changed
void fillHole(int _objectID, int _edgeHandle)
fill a hole in given object where _edgeHandle is on the boundary
Interface for all Plugins which provide scriptable Functions.
QString name()
Return a name for the plugin.
QString description()
Return a description of what the plugin is doing.
Allow access to picking functions.
Interface class for backup handling.
Interface class for receiving mouse events.
void fillAllHoles(int _objectID)
fill all holes from a given object
Plugins can add its own toolbox to the main widget's toolbox area by using this interface.
void getSelectedHoles(std::vector< int > &_holeIds, std::vector< int > &_objIds)
get a map from objectID to (selected) holeIDs
HoleFillerToolbarWidget * tool_
Widget for Toolbox.
void initializePlugin()
Initialize the toolbox widget.