64 #ifndef MVIEWWIDGET_HH
65 #define MVIEWWIDGET_HH
70 #include <OpenFlipper/widgets/glWidget/QtBaseViewer.hh>
74 #include <QMainWindow>
76 #include <QStackedWidget>
77 #include <QSplashScreen>
79 #include <QDockWidget>
81 #include <QProgressDialog>
83 #include <QtScript/QScriptEngine>
84 #include <QtScript/QtScript>
86 #include "OpenFlipper/INIFile/INIFile.hh"
92 #include "OpenFlipper/Scripting/scriptPrototypes/prototypeVec3d.hh"
93 #include "OpenFlipper/Scripting/scriptPrototypes/prototypeVec4d.hh"
94 #include "OpenFlipper/Scripting/scriptPrototypes/prototypeMatrix4x4.hh"
95 #include "OpenFlipper/Scripting/scriptPrototypes/prototypeDataType.hh"
96 #include <OpenFlipper/Scripting/scriptWrappers/vec3dWrapper.hh>
97 #include <OpenFlipper/Scripting/scriptWrappers/vec4dWrapper.hh>
98 #include <OpenFlipper/Scripting/scriptWrappers/matrix4x4Wrapper.hh>
99 #include <OpenFlipper/Scripting/scriptWrappers/DataTypeWrapper.hh>
114 #include <OpenFlipper/widgets/processManagerWidget/processManagerWidget.hh>
118 #include <OpenFlipper/Core/PluginInfo.hh>
120 #include <ACG/Scenegraph/CoordsysNode.hh>
122 #include <OpenFlipper/threads/JobInfo.hh>
125 #include <OpenFlipper/common/InformationPlugins.hh>
126 #include "SpinBoxEventFilter.hh"
200 void addTexture( QString, QString , uint,
int );
206 void addMultiTexture( QString _textureGroup , QString _name , QString _filename ,
int _id ,
int& _textureId );
218 void setTextureMode(QString _textureName ,QString _mode,
int _id);
239 void textureGetImage( QString _textureName , QImage& _image ,
int _id );
242 void textureIndex( QString _textureName,
int _id,
int& _index);
248 void textureName(
int _id,
int _textureIndex, QString& _textureName);
251 void textureFilename(
int _id, QString _textureName, QString& _textureFilename);
257 void getSubTextures(
int _id, QString _multiTextureName, QStringList& _subTextures );
266 void addPrimitiveType(QString _handleName, QString _name, QString _icon, SelectionInterface::PrimitiveType& _typeHandle);
270 SelectionInterface::PrimitiveType _associatedTypes, QString& _customIdentifier);
272 SelectionInterface::PrimitiveType _associatedTypes, QString& _customIdentifier,
276 void addSelectionOperations(QString _handleName, QStringList _operationsList, QString _category, SelectionInterface::PrimitiveType _type);
282 void showToggleSelectionMode(QString _handleName,
bool _show, SelectionInterface::PrimitiveType _associatedTypes);
285 void showLassoSelectionMode(QString _handleName,
bool _show, SelectionInterface::PrimitiveType _associatedTypes);
294 void showSphereSelectionMode(QString _handleName,
bool _show, SelectionInterface::PrimitiveType _associatedTypes);
306 void toggleSelection(QMouseEvent* _event, SelectionInterface::PrimitiveType _currentType,
bool _deselect);
309 void lassoSelection(QMouseEvent* _event, SelectionInterface::PrimitiveType _currentType,
bool _deselect);
312 void volumeLassoSelection(QMouseEvent* _event, SelectionInterface::PrimitiveType _currentType,
bool _deselect);
315 void surfaceLassoSelection(QMouseEvent* _event, SelectionInterface::PrimitiveType _currentType,
bool _deselect);
318 void sphereSelection(QMouseEvent* _event,
double _radius, SelectionInterface::PrimitiveType _currentType,
bool _deselect);
324 void floodFillSelection(QMouseEvent* _event,
double _maxAngle, SelectionInterface::PrimitiveType _currentType,
bool _deselect);
327 void componentsSelection(QMouseEvent* _event, SelectionInterface::PrimitiveType _currentType,
bool _deselect);
330 void customSelection(QMouseEvent* _event, SelectionInterface::PrimitiveType _currentType, QString _customIdentifier,
bool _deselect);
351 void keyShortcutEvent(
int _key, Qt::KeyboardModifiers _modifiers = Qt::NoModifier);
376 void undo(
int _objectid);
377 void redo(
int _objectid);
432 void slotAddTexture( QString _textureName , QString _filename , uint _dimension ,
int _id );
435 void slotAddTexture( QString _textureName , QString _filename , uint _dimension );
438 void slotMultiTextureAdded( QString _textureGroup , QString _name , QString _filename ,
int _id ,
int& _textureId );
439 void slotMultiTextureAdded( QString _textureGroup , QString _name , QString _filename ,
int _id ,
int* _textureId );
481 void slotTextureName(
int _id,
int _textureIndex, QString& _textureName);
490 void slotGetSubTextures(
int _id, QString _multiTextureName, QStringList& _subTextures );
511 void slotAddPrimitiveType(QString _handleName, QString _name, QString _icon, SelectionInterface::PrimitiveType& _typeHandle);
523 SelectionInterface::PrimitiveType _associatedTypes, QString& _customIdentifier);
536 SelectionInterface::PrimitiveType _associatedTypes, QString& _customIdentifier,
540 void slotAddSelectionOperations(QString _handleName, QStringList _operationsList, QString _category, SelectionInterface::PrimitiveType _type);
570 void slotToggleSelection(QMouseEvent* _event, SelectionInterface::PrimitiveType _currentType,
bool _deselect);
573 void slotLassoSelection(QMouseEvent* _event, SelectionInterface::PrimitiveType _currentType,
bool _deselect);
582 void slotSphereSelection(QMouseEvent* _event,
double _radius, SelectionInterface::PrimitiveType _currentType,
bool _deselect);
588 void slotFloodFillSelection(QMouseEvent* _event,
double _maxAngle, SelectionInterface::PrimitiveType _currentType,
bool _deselect);
591 void slotComponentsSelection(QMouseEvent* _event, SelectionInterface::PrimitiveType _currentType,
bool _deselect);
594 void slotCustomSelection(QMouseEvent* _event, SelectionInterface::PrimitiveType _currentType, QString _customIdentifier,
bool _deselect);
631 void slotCrossPluginConnect( QString _pluginName1,
const char* _signal, QString _pluginName2,
const char* _slot);
711 void snapshot(
unsigned int _viewerId = 0,
int _width = 0,
int _height = 0,
bool _alpha =
false,
bool _hideCoordsys =
false,
int _numSamples = 1);
724 bool comments_visible_only,
bool comments_targeted_only,
725 bool store_material_info,
int snapshot_width,
int snapshot_height,
726 bool snapshot_transparent,
bool hide_coord_sys,
727 int snapshot_multisampling,
bool store_view);
739 QList<int>
objectList (QString _selection, QStringList _types);
928 bool saveObject(
int _id, QString _filename );
930 void saveObject(
int _id, QString _filename,
int _pluginID );
952 void saveSettings(QString filePath,
bool is_saveObjectInfo,
bool is_targetOnly,
bool is_saveAll,
953 bool is_askOverwrite,
bool is_saveProgramSettings,
bool is_savePluginSettings);
993 void slotWheelEvent( QWheelEvent * _event,
const std::string & _mode);
1020 void addToolbox(QString _name ,QWidget* _widget);
1023 void addToolbox(QString _name ,QWidget* _widget, QIcon* _icon);
1026 void addToolbox(QString _name ,QWidget* _widget, QIcon* _icon,
1027 QWidget* _headerAreaWidget);
1036 QWidget *
getToolbox(QString _pluginName, QString _toolboxName);
1038 void activateToolbox(QString _pluginName, QString _toolboxName,
bool activate);
1111 bool _coreSettings ,
1112 bool _perPluginSettings,
1113 bool _loadObjects );
1130 bool _relativePaths,
1132 bool _saveSystemSettings,
1133 bool _savePluginSettings ,
1134 bool _saveObjectInfo,
1135 std::map<int,QString>& _fileMapping);
1141 void writeObjFile(QString _filename,
bool _relativePaths,
bool _targetOnly, std::map<int,QString>& _fileMapping);
1159 void log(QString _message );
1195 bool checkSlot(QObject* _plugin ,
const char* _slotSignature);
1198 bool checkSignal(QObject* _plugin ,
const char* _signalSignature);
1224 void loadPlugin(
const QString& _filename,
const bool _silent, QString& _licenseErrors , QObject* _plugin = 0 );
1242 void genericMetadataDeserialized(QString key, QString value);
1243 void objectMetadataDeserialized(QString object_name, QString value);
1244 #if QT_VERSION >= 0x050000
1245 void objectMetadataDeserializedJson(
1246 QString object_name, QJsonDocument value);
1250 void slotMetadataDeserialized(
const QVector<QPair<QString, QString> > &data);
1262 void scriptInfo( QString _pluginName , QString _functionName );
1269 QStringList _parameters, QStringList _descriptions);
1279 void createWidget(QString _objectName, QString _uiFilename,
bool _show =
true);
1324 void slotScriptInfo( QString _pluginName , QString _functionName );
1345 QStringList _parameters, QStringList _descriptions);
1349 QStringList _parameters, QStringList _descriptions);
1353 QStringList& _parameters, QStringList& _descriptions );
1385 void slotFunctionExists( QString _pluginName , QString _functionName ,
bool& _exists );
1393 void slotCall( QString _pluginName , QString _functionName ,
bool& _success );
1400 void slotCall( QString _expression ,
bool& _success );
1412 void slotGetValue(QString _expression, QVariant& _result );
1449 bool getJob(QString _jobId,
int& _index);
1454 void slotStartJob( QString _jobId, QString _description ,
int _min ,
int _max,
bool _blocking );
1531 void hookUpEventFilter(QWidget *widget);
1573 QScriptValue
myPrintFunction(QScriptContext *context, QScriptEngine *engine);
1579 QScriptValue
helpFunction(QScriptContext *context, QScriptEngine *engine);
1582 #endif // MVIEWWIDGET_HH defined
SeparatorNode * dataRootNode_
Root Node for data objects.
void slotGetScriptingEngine(QScriptEngine *&_engine)
Core scripting engine.
bool checkLibraryVersions()
Checks for library inconsistencies.
std::vector< int > IdList
Standard Type for id Lists used for scripting.
void slotGetDescription(QString _function, QString &_fnDescription, QStringList &_parameters, QStringList &_descriptions)
get available descriptions for a given public slot
void surfaceLassoSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: This signal is emitted when standard surface lasso selection has been performed...
void slotAddPrimitiveType(QString _handleName, QString _name, QString _icon, SelectionInterface::PrimitiveType &_typeHandle)
SelectionInterface: Called when a new, non-standard primitive type should be handled.
void slotToggleSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: Called when toggle selection operation has been performed.
void slotBlockPlugin(const QString &_rpcName)
Function for Blocking Plugins. Blocked plugins will unloaded and not loaded wthin the next starts...
void addTexture(QString, QString, uint, int)
The texture with the given name and filename has been added.
void slotShowLassoSelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: Provide lasso selection operation for specific selection mode.
void slotSetSlotDescription(QString _slotName, QString _slotDescription, QStringList _parameters, QStringList _descriptions)
set a description for one of the plugin's public slots
void slotGetAllFilters(QStringList &_list)
Called when a plugin requests a list of file-filters.
void loggerState(int _state)
Change the logging window state.
void textureIndex(QString _textureName, int _id, int &_index)
get the texture index
void textureName(int _id, int _textureIndex, QString &_textureName)
get the texture name
void slotSetJobState(QString _jobId, int _value)
A job state has been updated by a plugin.
void slotVolumeLassoSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: Called when volume lasso selection operation has been performed.
int nextBackupId_
Id for the next backup.
void snapshot(unsigned int _viewerId=0, int _width=0, int _height=0, bool _alpha=false, bool _hideCoordsys=false, int _numSamples=1)
QTimer * redrawTimer_
If enabled, this timer will block screen refresh if done more then 30 times per second.
void getActivePrimitiveType(SelectionInterface::PrimitiveType &_type)
SelectionInterface: This signal is emitted when the active (selected) primitive type should be fetche...
QScriptEngine scriptEngine_
Core scripting engine.
bool capture_
Slot called everytime the view is updated.
void slotTextureFilename(int _id, QString _textureName, QString &_textureFilename)
Called by plugins if texture name should be fetched.
QTime lastVideoTime_
Slot called everytime the view is updated.
void slotTextureIndexPropertyName(int _id, QString &_propertyName)
Called by plugins if texture index property name should be fetched.
void getSubTextures(int _id, QString _multiTextureName, QStringList &_subTextures)
get a multi-texture's sub textures
void slotUpdateAllTextures()
Update all textures in the plugins.
void showVolumeLassoSelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: This signal is emitted when standard volume lasso selection is required...
void setViewMode(QString _viewMode)
Set the active ViewMode.
int captureType_
Slot called everytime the view is updated.
void openedFile(int _id)
Tell the plugins that a file has been opened ( -> Database)
void objectDeleted(int)
Called after an object has been deleted.
void slotWheelEvent(QWheelEvent *_event, const std::string &_mode)
Gets called by examiner widget when Wheel is moved in picking mode.
void showFloodFillSelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: This signal is emitted when standard flood fill selection is required.
void setDescriptions()
set the descriptions for scriptable slots of the core
void jobCanceled(QString _jobId)
A job has been started by a plugin.
void slotJobCancelRequested(QString _jobId)
Called by dialogs if cancel button is pressed.
void slotLogToFile(Logtype _type, QString _message)
log to file
void iniLoad(INIFile &, int)
If an ini File is opened, this signal is send to Plugins capable of handling ini files.
void slotTargetObjectsOnly(bool &_targetsOnly)
SelectionInterface: Called when target restriction state should be fetched.
bool saveObjectsTo(IdList _ids, QString _filename)
void iniLoadOptions(INIFile &_ini)
This signal is used to tell the plugins to load their new status.
void moveToolBoxToTop(QString _name)
Move selected toolbox to top of side area.
void addToolbox(QString _name, QWidget *_widget)
Add a Toolbox from a plugin or from scripting.
void PluginWheelEvent(QWheelEvent *, const std::string &)
When this Signal is emitted when a Wheel Event occures.
void slotVisibilityChanged(int _id)
Called when a plugin changes the visibility of an object.
void slotAddHiddenPickMode(const std::string &_mode)
Add a new and invisible picking mode to the examiner_widget_.
void keyShortcutEvent(int _key, Qt::KeyboardModifiers _modifiers=Qt::NoModifier)
SelectionInterface: This signal is emitted when a key shortcut has been pressed.
void addViewModeIcon(QString _modeName, QString _iconName)
Scripting function to set an icon for a view mode.
bool checkOpenGLCapabilities()
OpenGL capability check.
void registerKeyShortcut(int _key, Qt::KeyboardModifiers _modifiers)
SelectionInterface: This signal is emitted when a type selection plugin wants to listen to a key even...
QTime * redrawTime_
Holds the time since last redraw.
void viewerSnapshot()
Take a snapshot from all viewers.
void slotShowClosestBoundarySelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: Provide closest boundary selection operation for specific selection mode...
prototypeMatrix4x4 matrix4x4Prototype_
Prototype for the Matrix type.
void showReducedMenuBar(bool reduced)
Core scripting engine.
bool checkSlot(QObject *_plugin, const char *_slotSignature)
Check if a plugin has a slot.
void setToolBoxActive(QString _toolBoxName, bool _active)
Scripting function to activate or deactivate a toolbox.
void setMaxFrameRate(int _rate)
set the maximal framerate ( automatically enables framerate restriction )
void slotRegisterType(QString _handleName, DataType _type)
SelectionInterface: Called when a data type is added for a specific selection type.
void slotGetActivePrimitiveType(SelectionInterface::PrimitiveType &_type)
SelectionInterface: Called when active primitive type should be fetched.
void log(Logtype _type, QString _message)
Logg with OUT,WARN or ERR as type.
prototypeVec3d vec3dPrototype_
Prototype for the Vector type.
void saveSelection(INIFile &_file)
SelectionInterface: This signal is emitted when a selection should be written into a file...
const std::vector< PluginInfo > plugins() const
List of all loaded plugins_.
void slotUpdateTexture(QString _name, int _identifier)
Tell the plugins to update the given texture.
int getObjectId(QString _filename)
Get object id from filename.
void slotEmptyObjectAdded(int _id)
Called when an empty object has been Added.
void clearAllComments(int objId)
Called when a plugin requests an update in the viewer.
void readGUIOptions(INIFile &_ini)
Read Options that needs the GUI to be set up completely.
void restrictFrameRate(bool _enable)
Enable or disable framerate restriction.
void readApplicationOptions(INIFile &_ini)
Get and set Application options from ini file.
void slotTextureIndex(QString _textureName, int _id, int &_index)
Called by plugins if texture index should be fetched.
void slotCancelJob(QString _jobId)
A job state has been canceled by a plugin.
void addViewModeToolbars(QString _modeName, QString _toolbarList)
Scripting function to set toolbars in a view mode.
void snapshotBaseFileName(QString _fname, unsigned int _viewerId=0)
void textureIndexPropertyName(int _id, QString &_propertyName)
get the texture index property name
void openIniFile(QString _filename, bool _coreSettings, bool _perPluginSettings, bool _loadObjects)
Load information from an ini file.
void unblockSceneGraphUpdates()
Unblock the scenegraph updates.
void init()
Second initialization stage.
void snapshotFileType(QString _type, unsigned int _viewerId=0)
Set the file type for snapshots.
void slotExecuteAfterStartup()
Executed after loading core completly to load files from commandline.
void slotFinishJob(QString _jobId)
A job state has been finished by a plugin.
void clearAll()
Clear all data objects.
Class for the handling of simple configuration files.
void stopVideoCapture()
Stop video capturing.
void executeScript(QString _script)
Core scripting engine.
void slotGetCurrentRenderer(unsigned int _viewer, QString &_rendererName)
called to get the currently active renderer renderer for a specific viewer
void slotAddEmptyObject(DataType _type, int &_id)
Slot adding empty object of a given type.
void addSelectionEnvironment(QString _modeName, QString _description, QString _icon, QString &_handleName)
SelectionInterface: This signal is emitted when a new toolbutton should be added. ...
void emptyObjectAdded(int _id)
Tell the plugins that an empty object has been added.
void saveAllObjectsTo()
Slot for saving objects to a new location.
QList< SlotInfo > globalFunctions_
Core scripting engine.
void updateView()
Called when a plugin requests an update in the viewer.
void createWidget(QString _objectName, QString _uiFilename, bool _show=true)
Create an script object from a ui file.
bool checkSignal(QObject *_plugin, const char *_signalSignature)
Check if a plugin has a signal.
void resizeViewers(int _width, int _height)
resize the examinerViewer
std::vector< std::string > commandLineScriptNames_
Vector storing filenames from commandline to be opened after application startup (script files) ...
void slotTextureGetImage(QString _textureName, QImage &_image)
Called by plugins if texture image should be fetched.
void slotScriptError(const QScriptValue &error)
Core scripting engine.
void updateUI()
process events during script execution to keep the ui alive
void slotStartJob(QString _jobId, QString _description, int _min, int _max, bool _blocking)
A job has been started by a plugin.
void slotExit()
Exit Application.
void loadObjectFinished(QString _filename)
Vector storing filenames from commandline to be opened after application startup (objects) ...
void slotGetValue(QString _expression, QVariant &_result)
void slotTextureName(int _id, int _textureIndex, QString &_textureName)
Called by plugins if texture name should be fetched.
void textureGetImage(QString _textureName, QImage &_image)
fetch texture image
void slotGetCurrentTexture(int _id, QString &_textureName)
Called by plugins if current texture should be retrieved.
void addMultiTexture(QString _textureGroup, QString _name, QString _filename, int _id, int &_textureId)
The texture with the given name and filename has been added.
void slotShowSurfaceLassoSelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: Provide surface lasso selection operation for specific selection mode...
QVector< ViewMode * > viewModes_
List of available draw modes.
void slotFloodFillSelection(QMouseEvent *_event, double _maxAngle, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: Called when flood fill selection operation has been performed.
void restored(int _objectId)
Backup Plugin tells other Plugins that a restore has happened.
void setSlotDescription(QString _slotName, QString _slotDescription, QStringList _parameters, QStringList _descriptions)
Core scripting engine.
void showLassoSelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: This signal is emitted when standard lasso selection is required.
void enableOpenMeshErrorLog(bool _state)
Enable or disable OpenMesh error logging.
void addViewModeContextMenus(QString _modeName, QString _contextMenuList)
Scripting function to set context menus in a view mode.
void loadPlugins()
Load all plugins from default plugin directory and from INI-File.
void deserializeMaterialProperties(int _objId, QString _props)
Serialize material properties.
void writeVersionNumbers(QString _filename)
write the current versions of all plugins to ini file
void slotSetRenderer(unsigned int _viewer, QString _rendererName)
called to switch the renderer for a specific viewer
void objectPropertiesChanged(int _id)
Tell plugins that object properties such as object names have been changed.
void applyOptions()
after ini-files have been loaded and core is up or if options have been changed -> apply Options ...
void activateToolbox(QString _pluginName, QString _toolboxName, bool activate)
Gets called by examiner widget when mouse is moved in picking mode.
void iniLoadOptionsLast(INIFile &_ini)
This signal is used to tell the plugins to load their new status after objects are loaded...
QSplashScreen * splash_
SplashScreen, only used in gui mode.
bool saveObject(int _id, QString _filename)
Save an object.
void slotClosestBoundarySelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: Called when closest boundary selection operation has been performed.
void saveOptions()
Save the current options to the standard ini file.
void showSurfaceLassoSelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: This signal is emitted when standard surface lasso selection is required...
void slotShowSphereSelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: Provide sphere selection operation for specific selection mode.
void iniSaveOptions(INIFile &_ini)
This signal is used to tell the plugins to save their current status.
void slotPluginExists(QString _pluginName, bool &_exists)
Check if a plugin exists.
void exitApplication()
exit the current application
std::vector< PluginLogger * > loggers_
Logger interfaces between plugins and core logger.
void slotComponentsSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: Called when connected components selection operation has been performed...
void saveObjects(IdList _ids, QString _filename, int _pluginID)
QWidget * getToolbox(QString _pluginName, QString _toolboxName)
prototypeVec4d vec4dPrototype_
Prototype for the Vector type.
void executeFileScript(QString _filename)
Core scripting engine.
void slotExecuteScript(QString _script)
std::vector< dataTypes > supportedDataTypes_
Type-Plugins.
void slotSurfaceLassoSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: Called when surface lasso selection operation has been performed.
QTimer videoTimer_
Slot called everytime the view is updated.
void exitFailure()
Aborts the application with an error code.
void viewUpdated()
Slot called everytime the view is updated.
void updateTexture(QString, int)
Tell the plugins to update the given texture.
Interface class for type definitions.
void resizeApplication(int _width, int _height)
resize the whole Application
void slotShowFloodFillSelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: Provide flood fill selection operation for specific selection mode...
void setTextureMode(QString _textureName, QString _mode, int _id)
A texture mode should be changed.
void updatedTextures(QString, int)
This Signal is send to the plugins if a texture has been updated.
void slotAddPickMode(const std::string &_mode)
Add a new picking mode to the examiner_widget_.
void slotSwitchTexture(QString _textureName, int _id)
Tells Plugins to switch to the given Texture.
void switchTexture(QString, int)
Switch Texture Plugins to a given Mode.
void slotSelectionOperation(QString _operation)
SelectionInterface: Called when a non-interactive operation has been performed.
void slotRegisterKeyShortcut(int _key, Qt::KeyboardModifiers _modifiers)
SelectionInterface: Called when a key shortcut is to be registered.
void slotShowToggleSelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: Provide toggle selection operation for specific selection mode.
void iniSave(INIFile &_ini, int _id)
This signal is used to tell the plugins to save the data of _id to the given file.
QString getCurrentViewMode()
Get current view mode.
void slotObjectSelectionChanged(int _id)
Called by Plugins if they changed the active object.
void checkScenegraphDirty()
Called to check if the scenegraph needs to be redrawn.
void slotGenerateBackup(int _id, QString _name, UpdateType _type)
Slot for generating type specific backups.
void PluginMouseEventLight(QMouseEvent *)
Emitted when an light event occurs.
void slotObjectPropertiesChanged(int _id)
Called by plugins if object properties like names have changed.
SeparatorNode * root_node_scenegraph_
Scenegraphs root node.
void pluginViewChanged()
This signal is emitted if one of the viewers updated its view.
QString serializeMaterialProperties(int _objId)
Serialize material properties.
void addSelectionOperations(QString _handleName, QStringList _operationsList, QString _category, SelectionInterface::PrimitiveType _type)
SelectionInterface: This signal is used to add non-interactive operations for a specific primitive ty...
void slotUnBlockPlugin(const QString &_rpcName)
Function for UnBlocking Plugins. Plugins will not loaded automatically.
void slotGetAllAvailableFunctions(QStringList &_functions)
Core scripting engine.
void saveOnExit(INIFile &_ini)
This signal is emitted before the core deletes its data and exits.
void blockSceneGraphUpdates()
Block the scenegraph updates.
void applicationSnapshot()
Take a snapshot from the whole app.
void volumeLassoSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: This signal is emitted when standard volume lasso selection has been performed...
void slotSphereSelection(QMouseEvent *_event, double _radius, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: Called when sphere selection operation has been performed.
void showToolbox(bool _state)
Show or hide toolbox.
void slotDeleteAllObjects()
Called when a plugin wants to delete all objects.
void pluginsInitialized()
Called after all plugins are loaded.
void textureChangeImage(QString _textureName, QImage &_image)
Change the image for a given texture.
void fullscreen(bool _state)
set fullscreen mode
void loadSelection(const INIFile &_file)
SelectionInterface: This signal is emitted when a selection should be loaded from a file...
void slotMultiTextureAdded(QString _textureGroup, QString _name, QString _filename, int _id, int &_textureId)
Called by a plugin if it creates a multitexture.
void slotTextureChangeImage(QString _textureName, QImage &_image)
Called by plugins if texture image should be changed.
void blockScenegraphUpdates(bool _block)
Called when a plugin wants to lock or unlock scenegraph updates.
std::vector< PluginInfo > plugins_
List of all loaded plugins_.
void loadSettings()
Load status from file.
void registerType(QString _handleName, DataType _type)
SelectionInterface: This signal is emitted when a data type should be registered for a selection mode...
void setToolBoxSide(QString _side)
Scripting function to set the side of the main window on which the toolbox should be displayed...
void setViewModeIcon(QString _mode, QString _iconName)
Set the icon of a viewMode.
QScriptValue helpFunction(QScriptContext *context, QScriptEngine *engine)
Function to print help about scripting functions.
void slotLog(Logtype _type, QString _message)
Console logger.
void slotSetJobName(QString _jobId, QString _name)
A job's widget caption has been updated by a plugin.
void slotKeyShortcutEvent(int _key, Qt::KeyboardModifiers _modifiers)
SelectionInterface: Called when a key event occurred.
void showStatusBar(bool _state)
Show or hide Status Bar.
ProcessManagerWidget * processManager_
A job has been started by a plugin.
void slotAddSelectionEnvironment(QString _modeName, QString _description, QString _icon, QString &_handleName)
SelectionInterface: Called when a new selection type button should be added to the toolbar...
Logtype
Log types for Message Window.
void updateAllTextures()
Update all textures in the plugins.
void slotFunctionExists(QString _pluginName, QString _functionName, bool &_exists)
Check if a function exists.
void loadObject()
Open Load Widget.
void visibilityChanged(int _id)
Tell plugins that the visibility of an object has changed.
void loadPlugin(const QString &_filename, const bool _silent, QString &_licenseErrors, QObject *_plugin=0)
Function for loading Plugins.
void finishSplash()
exit the current application
BaseObject * objectRoot_
Pointer to the data rootNode;.
void slotCopyObject(int _oldId, int &_newId)
Slot copying an object.
void slotMouseEventLight(QMouseEvent *_event)
Handle Mouse events when in Light mode.
void slotLoadPlugin()
Load Plugins from menu.
SeparatorNode * dataSeparatorNode_
Toplevel Nodes for data objects.
void slotLassoSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: Called when lasso selection operation has been performed.
void writeObjFile(QString _filename, bool _relativePaths, bool _targetOnly, std::map< int, QString > &_fileMapping)
Write current status to obj file (Application and File Options)
void addPrimitiveType(QString _handleName, QString _name, QString _icon, SelectionInterface::PrimitiveType &_typeHandle)
SelectionInterface: This signal is emitted when a selection plugin should handle a new primitive type...
void slotAddCustomSelectionMode(QString _handleName, QString _modeName, QString _description, QString _icon, SelectionInterface::PrimitiveType _associatedTypes, QString &_customIdentifier)
SelectionInterface: Add new selection mode for specified type.
void writeApplicationOptions(INIFile &_ini)
Write Application options to ini file.
void textureFilename(int _id, QString _textureName, QString &_textureFilename)
get the texture's filename
QStringList scriptingFunctions_
List of all registered scripting functions.
bool saveObjectTo(int _id, QString _filename)
void newObject(int _objectId)
This slot is called by the object manager when a new object is created.
int nextBackupGroupId_
Id for the next backup group.
void addViewModeToolboxes(QString _modeName, QString _toolboxList)
Scripting function to set toolboxes in a view mode.
prototypeDataType DataTypePrototype_
Prototype for the DataType.
void scriptLogFunction(QString _output)
stream for logging to file
void signalObjectUpdated(int)
When this Signal is emitted all Plugins are informed that the object list changed.
void customSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, QString _customIdentifier, bool _deselect)
SelectionInterface: This signal is emitted when a custom selection operation has been performed...
void redo()
Signal send to plugins when whole scene is cleared.
void writeOnExit()
Called if app is closed and writes all information to ini file.
QScriptValue printToFileFunction(QScriptContext *context, QScriptEngine *engine)
Special print function for sending output to a file.
void startVideoCapture(QString _baseName, int _fps, bool _captureViewers)
Start video capturing.
int addEmptyObject(DataType _type)
int lastHeight_
Slot called everytime the view is updated.
std::vector< std::pair< std::string, bool > > commandLineFileNames_
Vector storing filenames from commandline to be opened after application startup (objects) ...
int toolboxindex_
Index of Plugins toolbox widget.
void slotShowVolumeLassoSelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: Provide volume lasso selection operation for specific selection mode...
std::vector< ScriptingWrapper * > scriptingWrappers_
Wrappers for plugin scripting.
SeparatorNode * root_node_scenegraph_global_
Seperator node for global nodes.
QList< SlotInfo > coreSlots_
Core scripting engine.
void slotFileOpened(int _id)
Called when a file has been opened.
void showSphereSelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: This signal is emitted when standard sphere selection is required.
QList< int > objectList(QString _selection, QStringList _types)
return the list of available object that has the given selection and type
void showToggleSelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: This signal is emitted when standard toggle selection is required.
void floodFillSelection(QMouseEvent *_event, double _maxAngle, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: This signal is emitted when standard flood fill selection has been performed...
void resetScenegraph(bool _resetTrackBall)
void slotSetTextureMode(QString _textureName, QString _mode, int _id)
A texture mode should be changed.
void addCustomSelectionMode(QString _handleName, QString _modeName, QString _description, QString _icon, SelectionInterface::PrimitiveType _associatedTypes, QString &_customIdentifier)
SelectionInterface: This signal is emitted when a custom selection mode is added. ...
const UpdateType UPDATE_ALL(UpdateTypeSet(1))
Identifier for all updates.
void lassoSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: This signal is emitted when standard lasso selection has been performed...
void aboutToRestore(int _objectId)
Backup Plugin tells other Plugins that a restore will happen.
QString splashMessage_
Last Splash message;.
void createBackup(int _objectid, QString _name, UpdateType _type=UPDATE_ALL)
Tell backup-plugin to create a backup.
void slotSaveSelection(INIFile &_file)
SelectionInterface: Called when a selection should be stored into a file.
QTextStream * logStream_
stream for logging to file
void targetObjectsOnly(bool &_targetsOnly)
SelectionInterface: This signal is emitted if the current target restriction state is requested...
void setupOptions()
Get all ini files and set basic paths and options.
void getCurrentTexture(int _id, QString &_textureName)
get current texture
void slotExecuteFileScript(QString _filename)
ACG::SceneGraph::CoordsysNode * coordsysNode_
Node for the coordinate system.
void slotAddSelectionOperations(QString _handleName, QStringList _operationsList, QString _category, SelectionInterface::PrimitiveType _type)
SelectionInterface: Called in order to add non-interactive operations for a specific primitive type...
bool getJob(QString _jobId, int &_index)
Find a job in the jobslist.
void allCleared()
Signal send to plugins when whole scene is cleared.
void clearObjectComment(int objId, QString key)
Called when a plugin requests an update in the viewer.
void slotAddEmptyObjectMenu()
Open the add Empty dialog.
void deletedObject(int _objectId)
This slot is called by the object manager when an object is deleted.
void slotShowPlugins()
Show Plugins Dialog.
void undo()
Signal send to plugins when whole scene is cleared.
void pluginSceneDrawn()
This signal is emitted after the scene has been drawn.
void slotGetActiveDataTypes(SelectionInterface::TypeList &_types)
SelectionInterface: Called when active (selected) data types should be fetched.
void saveSettings()
Save current status to a settings file. Solicit file name through dialog.
CoreWidget * coreWidget_
The main applications widget ( only created in gui mode )
void captureVideo()
Function called for every frame when capturing video.
void slotShowComponentsSelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: Provide connected components selection operation for specific selection mode...
void sphereSelection(QMouseEvent *_event, double _radius, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: This signal is emitted when standard sphere selection has been performed...
void objectSelectionChanged(int)
This signal is emitted if the object has been changed (source/target)
SeparatorNode * core_nodes_
Separator Node holding all core scenegraph nodes.
void slotLoadSelection(const INIFile &_file)
SelectionInterface: Called when a selection should be loaded from a file.
void scriptLog(QString _message)
Logging signal for ScriptEngine.
void slotCrossPluginConnect(QString _pluginName1, const char *_signal, QString _pluginName2, const char *_slot)
Called to create inter plugin connections.
void slotScriptInfo(QString _pluginName, QString _functionName)
Core scripting engine.
int lastWidth_
Slot called everytime the view is updated.
void slotGetSubTextures(int _id, QString _multiTextureName, QStringList &_subTextures)
Called by plugins if a multi-texture's sub textures should be fetched.
void deleteObject(int _id)
Called to delete an object.
void slotSetSlotDescriptionGlobalFunction(QString _functionName, QString _slotDescription, QStringList _parameters, QStringList _descriptions)
set a description for a global scripting function
QScriptValue myPrintFunction(QScriptContext *context, QScriptEngine *engine)
Special print function for core logger.
void slotCall(QString _pluginName, QString _functionName, bool &_success)
void moveToolBoxToBottom(QString _name)
Move selected toolbox to bottom of side area.
void multiViewMode(int _mode)
Switch the multiView Mode.
void snapshotCounterStart(const int _counter, unsigned int _viewerId=0)
Set the start index for the snapshot counter.
void slotMouseEventIdentify(QMouseEvent *_event)
Handle Mouse events when in Identifier mode.
void closestBoundarySelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: This signal is emitted when standard closest boundary selection has been performe...
void applicationSnapshotName(QString _name)
Set the baseName for the application snapshot.
void setView(QString view)
Called when a plugin requests an update in the viewer.
QList< JobInfo > currentJobs
A job has been started by a plugin.
void selectionOperation(QString _operation)
SelectionInterface: This signal is emitted when a non-interactive operation has been performed...
void slotSetJobDescription(QString _jobId, QString _text)
A job's widget's status text has been updated by a plugin.
void componentsSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: This signal is emitted when standard connected components selection has been perf...
void commandLineOpen(const char *_filename, bool _asPolyMesh)
Load an object from the commandline on application start.
void slotRecentOpen(QAction *_action)
Open Recent file.
void showViewModeControls(bool _show)
Show or Hide the viewmode control widget.
ACG::SceneGraph::MaterialNode * coordsysMaterialNode_
Node for coordsys Material.
void toggleSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
SelectionInterface: This signal is emitted when standard toggle selection has been performed...
void PluginMouseEvent(QMouseEvent *)
When this Signal is emitted when a Mouse Event occures.
void commandLineScript(const char *_filename)
Load a script from the commandline on application start.
void slotObjectUpdated(int _identifier, const UpdateType &_type=UPDATE_ALL)
Called by the plugins if they changed something in the object list (deleted, added, or other property changes)
void saveAllObjects()
Slot for saving objects from Menu.
void restoreKeyBindings()
Restore key assignments from configs files.
void slotLoad(QString _filename, DataType _type, int &_id)
A plugin wants to load a given file.
void slotAddTexture(QString _textureName, QString _filename, uint _dimension, int _id)
Called by a plugin if it creates a texture.
void externalLog(Logtype _type, QString _message)
This signal is emitted to send log data to a plugin.
void getActiveDataTypes(SelectionInterface::TypeList &_types)
SelectionInterface: This signal is emitted when the active (selected) data types should be fetched...
QTimer * scenegraphCheckTimer_
Timer that starts scenegraph check.
void setViewAndWindowGeometry(QString view)
Called when a plugin requests an update in the viewer.
void slotTextureUpdated(QString _textureName, int _identifier)
A Texture has been updated.
void scriptInfo(QString _pluginName, QString _functionName)
Core scripting engine.
void slotMouseEvent(QMouseEvent *_event)
Gets called by examiner widget when mouse is moved in picking mode.
bool add_sync_host(const QString &_name)
Synchronise two viewers.
void slotCustomSelection(QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, QString _customIdentifier, bool _deselect)
SelectionInterface: Called when custom selection operation has been performed.
void showClosestBoundarySelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: This signal is emitted when standard closest boundary selection is required...
void setObjectComment(int objId, QString key, QString comment)
Called when a plugin requests an update in the viewer.
void writeIniFile(QString _filename, bool _relativePaths, bool _targetOnly, bool _saveSystemSettings, bool _savePluginSettings, bool _saveObjectInfo, std::map< int, QString > &_fileMapping)
Write current status to ini file (Application and File Options)
void showComponentsSelectionMode(QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
SelectionInterface: This signal is emitted when standard connected components selection is required...