50 #ifndef OBJECTSELECTIONPLUGIN_HH 51 #define OBJECTSELECTIONPLUGIN_HH 62 #include <OpenFlipper/BasePlugin/INIInterface.hh> 67 #include <OpenFlipper/INIFile/INIFile.hh> 82 Q_PLUGIN_METADATA(IID
"org.OpenFlipper.Plugins.Plugin-SelectionObject")
97 void nodeVisibilityChanged(
int _identifier);
98 void setSlotDescription(QString _slotName, QString _slotDescription,
99 QStringList _parameters, QStringList _descriptions);
102 void log(
Logtype _type, QString _message);
103 void log(QString _message);
106 void scriptInfo(QString _functionName);
109 void addSelectionEnvironment(QString _modeName, QString _description, QString _icon, QString& _handleName);
110 void registerType(QString _handleName,
DataType _type);
111 void addPrimitiveType(QString _handleName, QString _name, QString _icon, SelectionInterface::PrimitiveType& _typeHandle);
112 void addSelectionOperations(QString _handleName, QStringList _operationsList, QString _category, SelectionInterface::PrimitiveType _type = 0u);
113 void showToggleSelectionMode(QString _handleName,
bool _show, SelectionInterface::PrimitiveType _associatedTypes);
114 void showVolumeLassoSelectionMode(QString _handleName,
bool _show, SelectionInterface::PrimitiveType _associatedTypes);
116 void getActiveDataTypes(SelectionInterface::TypeList& _types);
117 void getActivePrimitiveType(SelectionInterface::PrimitiveType& _type);
118 void targetObjectsOnly(
bool& _targetsOnly);
120 void registerKeyShortcut(
int _key, Qt::KeyboardModifiers _modifiers = Qt::NoModifier);
123 void deleteObject(
int _id);
128 void loadIniFile(
INIFile& _ini,
int _id);
129 void saveIniFile(
INIFile& _ini,
int _id);
132 void initializePlugin();
133 void pluginsInitialized();
134 void noguiSupported() {};
138 void slotToggleSelection(QMouseEvent* _event, SelectionInterface::PrimitiveType _currentType,
bool _deselect);
149 void loadSelection(
int _objId,
const QString& _filename);
155 return (QString(tr(
"Object Selection")));
159 return (QString(tr(
"Allows to select objects")));
176 return QString(
"1.0");
225 #endif // OBJECTSELECTIONPLUGIN_HH defined
void slotToggleSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
Called whenever the user performs a toggle selection.
void slotVolumeLassoSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
Called whenever the user performs a volume lasso selection.
void selectObjects(IdList _list)
Select specified objects.
QString description()
Return a description of what the plugin is doing.
ObjectSelectionPlugin()
Default constructor.
void updateSlotDescriptions()
Set slot descriptions for scripting functions.
Logtype
Log types for Message Window.
Interface for all Plugins which do logging to the logging window of the framework.
std::vector< int > IdList
Standard Type for id Lists used for scripting.
QString environmentHandle_
Handle to selection environment.
void slotSaveSelection(INIFile &_file)
Save selection for all objects in the scene.
Interface for all plugins which want to use selection functions.
IdList getObjectSelection()
Get selected objects.
void invertObjectSelection()
Invert object selection.
void slotSelectionOperation(QString _operation)
A specific operation is requested.
void slotLoadSelection(const INIFile &_file)
Load selection for specific objects in the scene.
void deselectAllObjects()
Deselect all objects.
Keyboard Event Interface.
void selectAllObjects()
Select all objects.
Interface class for Plugins which have to store information in ini files.
QVector< QPoint > volumeLassoPoints_
Keep volume lasso points.
Class for the handling of simple configuration files.
void slotKeyShortcutEvent(int _key, Qt::KeyboardModifiers _modifiers)
One of the previously registered keys has been pressed.
Interface for all Plugins which provide scriptable Functions.
PrimitiveType objectType_
Primitive type handles:
QString name()
Return a name for the plugin.
~ObjectSelectionPlugin()
Default destructor.
Interface class from which all plugins have to be created.
Interface class for backup handling.
Interface for all plugins which want to Load or Save files and create Objects.
void deleteSelectedObjects()
Delete selected objects.