50#ifndef POLYLINESELECTIONPLUGIN_HH
51#define POLYLINESELECTIONPLUGIN_HH
62#include <OpenFlipper/BasePlugin/INIInterface.hh>
67#include <OpenFlipper/INIFile/INIFile.hh>
83 Q_PLUGIN_METADATA(IID
"org.OpenFlipper.Plugins.Plugin-SelectionPolyLine")
98 void nodeVisibilityChanged(
int _identifier);
99 void setSlotDescription(QString _slotName, QString _slotDescription,
100 QStringList _parameters, QStringList _descriptions);
103 void log(
Logtype _type, QString _message);
104 void log(QString _message);
107 void scriptInfo(QString _functionName);
110 void addSelectionEnvironment(QString _modeName, QString _description, QString _icon, QString& _handleName);
111 void registerType(QString _handleName,
DataType _type);
112 void addPrimitiveType(QString _handleName, QString _name, QString _icon, SelectionInterface::PrimitiveType& _typeHandle);
113 void addSelectionOperations(QString _handleName, QStringList _operationsList, QString _category, SelectionInterface::PrimitiveType _type = 0u);
114 void showToggleSelectionMode(QString _handleName,
bool _show, SelectionInterface::PrimitiveType _associatedTypes);
115 void showVolumeLassoSelectionMode(QString _handleName,
bool _show, SelectionInterface::PrimitiveType _associatedTypes);
117 void getActiveDataTypes(SelectionInterface::TypeList& _types);
118 void getActivePrimitiveType(SelectionInterface::PrimitiveType& _type);
119 void targetObjectsOnly(
bool& _targetsOnly);
121 void registerKeyShortcut(
int _key, Qt::KeyboardModifiers _modifiers = Qt::NoModifier);
126 void loadIniFile(
INIFile& _ini,
int _id);
127 void saveIniFile(
INIFile& _ini,
int _id);
130 void initializePlugin();
131 void pluginsInitialized();
132 void noguiSupported() {};
135 void slotSelectionOperation(
const QString &_operation);
136 void slotToggleSelection(QMouseEvent* _event, SelectionInterface::PrimitiveType _currentType,
bool _deselect);
147 void loadSelection(
int _objId,
const QString& _filename);
153 return (QString(tr(
"PolyLine Selection")));
157 return (QString(tr(
"Allows to select PolyLines")));
174 return QString(
"1.0");
std::vector< int > IdList
Standard Type for id Lists used for scripting.
Logtype
Log types for Message Window.
Interface class for backup handling.
Interface class from which all plugins have to be created.
Class for the handling of simple configuration files.
Interface class for Plugins which have to store information in ini files.
Keyboard Event Interface.
Interface for all Plugins which do logging to the logging window of the framework.
QString description()
Return a description of what the plugin is doing.
void slotKeyShortcutEvent(int _key, Qt::KeyboardModifiers _modifiers)
One of the previously registered keys has been pressed.
IdList getVertexSelection(int _objectId)
Get current vertex selection.
PrimitiveType vertexType_
Primitive type handles:
PrimitiveType allSupportedTypes_
Handle to selection environment.
void invertEdgeSelection(int _objectId)
Invert edge selection.
void selectEdges(int _objectId, const IdList &_ids, bool _deselect=false)
Select specific edges of a skeleton.
void updateSlotDescriptions()
Set slot descriptions for scripting functions.
void slotVolumeLassoSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
Called whenever the user performs a volume lasso selection.
void slotLoadSelection(const INIFile &_file)
Load selection for specific objects in the scene.
void deselectAllEdges(int _objectId)
Deselect all edges of a skeleton.
QString name()
Return a name for the plugin.
PrimitiveType edgeType_
Handle to selection environment.
QString environmentHandle_
Handle to selection environment.
void selectAllVertices(int _objectId)
Select all vertices of a skeleton.
void invertVertexSelection(int _objectId)
Invert vertex selection.
void deleteSelectedEdges(int _objectId)
Delete selected edges.
PolyLineSelectionPlugin()
Default constructor.
void slotSaveSelection(INIFile &_file)
Save selection for all objects in the scene.
void slotToggleSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
Called whenever the user performs a toggle selection.
void deselectAllVertices(int _objectId)
Deselect all vertices of a skeleton.
void deleteSelectedVertices(int _objectId)
Delete selected vertices.
QVector< QPoint > volumeLassoPoints_
Keep volume lasso points.
IdList getEdgeSelection(int _objectId)
Get current edge selection.
void selectAllEdges(int _objectId)
Select all edges of a skeleton.
void selectVertices(int _objectId, const IdList &_ids, bool _deselect=false)
Select specific vertices of a skeleton.
~PolyLineSelectionPlugin()
Default destructor.
Interface for all Plugins which provide scriptable Functions.
Interface for all plugins which want to use selection functions.