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