Developer Documentation
|
OpenFlipper is a powerful tool that allows implementing algorithms on geometry with preferably small effort. It bases on the Qt plugin model such that it is easily extendable by user defined plugins. For information on how Qt plugins work we recommend developers to read the Qt documentation. The integration of a plugin into OpenFlipper's user interface and its interactivity are controlled by Plugin Interfaces that can be implemented. Also see Plugin Programming for a few small tutorials on OpenFlipper plugin programming.
The OpenFlipper user interface is composed of four essential widgets each accessible and extendable by user plugins:
The user interactivity is gained by plain Qt mouse and keyboard events. If the plugin wants to interact with the mouse or keyboard, it has to implement the MouseInterface and KeyInterface (for keyboard shortcuts, etc.). Read tutorial Implementing mouse and keyboard interaction to learn how to add mouse and keyboard interactivity to your plugin. Also see Plugin Interfaces for an overview of implementable interfaces.
The viewport widget visualizes the whole scenegraph. One can adjust viewer specific settings by chosing View
in OpenFlippers menu bar. Adjustable settings contain:
The plugin widget shows the Qt toolboxes of the loaded plugins. A plugin can integrate its own toolbox by simply implementing the ToolboxInterface. Providing toolboxes is not mandatory, but most plugins make use of it in order to offer user control to its parameters.
The logging widget is used to display plugin specific information, warnings or errors. By implementing the LoggingInterface a plugin can easily tell the user what is going on inside.
The toolbar at the top of OpenFlipper's main window offers clickable icons to quickly access a plugins function. A user plugin can integrate its own buttons into the tool bar by implementing the ToolbarInterface.