Noether  0.0.0
Loading...
Searching...
No Matches
GUI Interfaces

Abstract interfaces for the various components of the GUI. More...

Detailed Description

Abstract interfaces for the various components of the GUI.

The GUI package provides two template interfaces for providing UI support: BaseWidget and WidgetPlugin.

BaseWidget is a Qt widget that uses its UI elements to produce an instance of one of the tool path planning concept Interfaces. Each implementation of a tool path planning concept should provide its own widget such that it can be used in the GUI application.
WidgetPlugin is the base class for a plugin that can be dynamically loaded at run-time to provide widgets to populate the GUI. The GUI itself finds available WidgetPlugin classes (via the NOETHER_PLUGIN_LIBS environment variable), loads them, and uses them to produce widgets to populate the various pages of the GUI. Just as each of the tool path planning concept Interfaces should provide a BaseWidget to configure itself, each BaseWidget should also have a corresponding WidgetPlugin that allows it to be loaded into the GUI.
See Customization for more information about how to provide a custom tool path planning elements.
The image below shows the architecture of the GUI components.

Modules

 Widgets
 Instantitations of the BaseWidget interface.
 
 Widget Plugins
 Instantitations of the WidgetPlugin interface.
 

Classes

class  noether::WidgetPlugin< T >
 Base class for a plugin that can generate a Qt widget. More...
 
class  noether::BaseWidget< T >
 Base class for a widget "factory" that can produce classes of a specifiable type. More...