OpenWalnut
1.5.0dev
|
Create instances of WUI widgets. More...
#include <WUIWidgetFactory.h>
Public Types | |
typedef std::shared_ptr< WUIWidgetFactory > | SPtr |
Convenience typedef for a std::shared_ptr< WUIWidgetFactory >. More... | |
typedef std::shared_ptr< const WUIWidgetFactory > | ConstSPtr |
Convenience typedef for a std::shared_ptr< const WUIWidgetFactory >. More... | |
Public Member Functions | |
virtual WUIGridWidget::SPtr | createGridWidget (const std::string &title, WUIWidgetBase::SPtr parent=WUIWidgetBase::SPtr()) const |
Create a grid widget. More... | |
virtual WUITabbedWidget::SPtr | createTabbedWidget (const std::string &title, WUIWidgetBase::SPtr parent=WUIWidgetBase::SPtr()) const |
Create a tabed widget. More... | |
virtual WUIPropertyGroupWidget::SPtr | createPropertyGroupWidget (const std::string &title, WPropGroup properties, WUIWidgetBase::SPtr parent=WUIWidgetBase::SPtr()) const |
Create a property widget. More... | |
virtual WUIViewWidget::SPtr | createViewWidget (std::string title, WGECamera::ProjectionMode projectionMode, std::shared_ptr< WCondition > abordCondition=WCondition::SPtr(), WUIWidgetBase::SPtr parent=WUIWidgetBase::SPtr()) const |
Instruct to open a new view widget. More... | |
virtual | ~WUIWidgetFactory () |
Destructor. More... | |
virtual bool | implementsUI () const =0 |
Query whether the WUI instance supports the WUI Widget interface properly as UIs can simply ignore the WUIWidgetFactory calls done in modules. More... | |
Create instances of WUI widgets.
This needs to be implemented by the UI/GUI developer.
Definition at line 42 of file WUIWidgetFactory.h.
typedef std::shared_ptr< const WUIWidgetFactory > WUIWidgetFactory::ConstSPtr |
Convenience typedef for a std::shared_ptr< const WUIWidgetFactory >.
Definition at line 53 of file WUIWidgetFactory.h.
typedef std::shared_ptr< WUIWidgetFactory > WUIWidgetFactory::SPtr |
Convenience typedef for a std::shared_ptr< WUIWidgetFactory >.
Definition at line 48 of file WUIWidgetFactory.h.
|
inlinevirtual |
Destructor.
Definition at line 165 of file WUIWidgetFactory.h.
|
inlinevirtual |
Create a grid widget.
This kind of widget is basically empty. Add others to it. Parentless widgets are initially invisible. Use WUIWidgetBase::show() to make them visible.
WException | if something was wrong (like parent does not allow nesting). You need to catch this. |
title | the title |
parent | the parent widget which will contain this widget. Can be NULL. |
Definition at line 67 of file WUIWidgetFactory.h.
References createGridWidgetImpl().
|
protectedpure virtual |
Implementation of createGridWidget.
title | the title |
parent | the parent widget which will contain this widget. Can be NULL. |
Implemented in WUIQtWidgetFactory.
Referenced by createGridWidget().
|
inlinevirtual |
Create a property widget.
Parentless widgets are initially invisible. Use WUIWidgetBase::show() to make them visible.
WException | if something was wrong (like parent does not allow nesting). You need to catch this. |
title | the title |
properties | the property group |
parent | the parent widget which will contain this widget. Can be NULL. |
Definition at line 117 of file WUIWidgetFactory.h.
References createPropertyGroupWidgetImpl().
|
protectedpure virtual |
Implementation of createPropertyGroupWidget.
title | the title |
properties | the property group |
parent | the parent widget which will contain this widget. Can be NULL. |
Implemented in WUIQtWidgetFactory.
Referenced by createPropertyGroupWidget().
|
inlinevirtual |
Create a tabed widget.
This kind of widget is basically empty. Add others to it. Parentless widgets are initially invisible. Use WUIWidgetBase::show() to make them visible.
WException | if something was wrong (like parent does not allow nesting). You need to catch this. |
title | the title |
parent | the parent widget which will contain this widget. Can be NULL. |
Definition at line 91 of file WUIWidgetFactory.h.
References createTabbedWidgetImpl().
|
protectedpure virtual |
Implementation of createTabbedWidget.
title | the title |
parent | the parent widget which will contain this widget. Can be NULL. |
Implemented in WUIQtWidgetFactory.
Referenced by createTabbedWidget().
|
inlinevirtual |
Instruct to open a new view widget.
The specified condition should be the shutdown condition of the module, as the function returns only if the widget was created. To ensure that the creation is aborted properly if the module shuts down in the meantime, this condition is used. Parentless widgets are initially invisible. Use WUIWidgetBase::show() to make them visible.
WException | if something was wrong (like parent does not allow nesting). You need to catch this. |
title | the title of the widget |
projectionMode | the kind of projection which should be used |
abordCondition | a condition enforcing abort of widget creation. Can be NULL |
parent | the parent widget which will contain this widget. Can be NULL. |
Definition at line 146 of file WUIWidgetFactory.h.
References createViewWidgetImpl().
|
protectedpure virtual |
Implementation of createViewWidget.
title | the title of the widget |
projectionMode | the kind of projection which should be used |
abordCondition | a condition enforcing abort of widget creation. Can be NULL |
parent | the parent widget which will contain this widget. Can be NULL. |
Implemented in WUIQtWidgetFactory.
Referenced by createViewWidget().
|
pure virtual |
Query whether the WUI instance supports the WUI Widget interface properly as UIs can simply ignore the WUIWidgetFactory calls done in modules.
This is used mainly by WUIRequirement.
Implemented in WUIQtWidgetFactory.
|
inlineprotected |
Set the parent of a widget and notify parent about new child widget.
This is needed as WUIWidgetBase and WUIWidgetFactory are friends. Friendship is not derivable.
widget | the widget to set the parent to |
parent | the parent |
Definition at line 184 of file WUIWidgetFactory.h.
Referenced by WUIQtWidgetFactory::createGridWidgetImpl(), WUIQtWidgetFactory::createPropertyGroupWidgetImpl(), WUIQtWidgetFactory::createTabbedWidgetImpl(), and WUIQtWidgetFactory::createViewWidgetImpl().