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