KDDockWidgets API Documentation  1.1.1
Public Member Functions | List of all members
KDDockWidgets::FrameworkWidgetFactory Class Referenceabstract

A factory class for allowing the user to customize some internal widgets. This is optional, and if not provided, a default one will be used, DefaultWidgetFactory. More...

#include <FrameworkWidgetFactory.h>

Inheritance diagram for KDDockWidgets::FrameworkWidgetFactory:
Inheritance graph
[legend]

Public Member Functions

virtual ~FrameworkWidgetFactory ()
 Destructor.Don't delete FrameworkWidgetFactory directly, it's owned by the framework.
 
virtual DropIndicatorOverlayInterface * createDropIndicatorOverlay (DropArea *dropArea) const =0
 Called internally by the framework to create a DropIndicatorOverlayInterface Override to provide your own DropIndicatorOverlayInterface sub-class. More...
 
virtual FloatingWindow * createFloatingWindow (MainWindowBase *parent=nullptr) const =0
 Called internally by the framework to create a FloatingWindow Override to provide your own FloatingWindow sub-class. If overridden then you also need to override the overloads below. More...
 
virtual FloatingWindow * createFloatingWindow (Frame *frame, MainWindowBase *parent=nullptr) const =0
 Called internally by the framework to create a FloatingWindow Override to provide your own FloatingWindow sub-class. If overridden then you also need to override the overloads above. More...
 
virtual Frame * createFrame (QWidgetOrQuick *parent=nullptr, FrameOptions options=FrameOption_None) const =0
 Called internally by the framework to create a Frame class Override to provide your own Frame sub-class. A frame is the widget that holds the titlebar and tab-widget which holds the DockWidgets. More...
 
virtual QWidgetOrQuickcreateRubberBand (QWidgetOrQuick *parent) const =0
 Called internally by the framework to create a RubberBand to show as drop zone Returns a rubber band.
 
virtual Layouting::Separator * createSeparator (Layouting::Widget *parent=nullptr) const =0
 Called internally by the framework to create a Separator Override to provide your own Separator sub-class. The Separator allows the user to resize nested dock widgets. More...
 
virtual SideBar * createSideBar (SideBarLocation loc, MainWindowBase *parent) const =0
 Called internally by the framework to create a SideBar. More...
 
virtual TabBar * createTabBar (TabWidget *parent=nullptr) const =0
 Called internally by the framework to create a TabBar Override to provide your own TabBar sub-class. More...
 
virtual TabWidget * createTabWidget (Frame *parent) const =0
 Called internally by the framework to create a TabWidget Override to provide your own TabWidget sub-class. More...
 
virtual TitleBar * createTitleBar (Frame *frame) const =0
 Called internally by the framework to create a TitleBar Override to provide your own TitleBar sub-class. If overridden then you also need to override the overload below. More...
 
virtual TitleBar * createTitleBar (FloatingWindow *floatingWindow) const =0
 Called internally by the framework to create a TitleBar Override to provide your own TitleBar sub-class. If overridden then you also need to override the overload above. More...
 
virtual QAbstractButtoncreateTitleBarButton (QWidget *parent, TitleBarButtonType) const =0
 Called internally by the framework to create a title bar button parent the button's parent.
 
virtual QIcon iconForButtonType (TitleBarButtonType type, qreal dpr) const =0
 Returns the icon to be used with the specified type. More...
 

Detailed Description

A factory class for allowing the user to customize some internal widgets. This is optional, and if not provided, a default one will be used, DefaultWidgetFactory.

Deriving from DefaultWidgetFactory is recommended, unless you need to override all methods.

Sub-classing FrameworkWidgetFactory allows for fine-grained customization and styling of some non-public widgets, such as titlebars, dock widget frame and tab widgets.

To set your own factory see Config::setFrameworkWidgetFactory()

Will also be useful to provide a QtQuickWidget factory in the future.

See also
Config::setFrameworkWidgetFactory()

Member Function Documentation

virtual DropIndicatorOverlayInterface* KDDockWidgets::FrameworkWidgetFactory::createDropIndicatorOverlay ( DropArea *  dropArea) const
pure virtual

Called internally by the framework to create a DropIndicatorOverlayInterface Override to provide your own DropIndicatorOverlayInterface sub-class.

Parameters
dropAreaJust forward to DropIndicatorOverlayInterface's constructor.

Implemented in KDDockWidgets::DefaultWidgetFactory.

virtual FloatingWindow* KDDockWidgets::FrameworkWidgetFactory::createFloatingWindow ( MainWindowBase parent = nullptr) const
pure virtual

Called internally by the framework to create a FloatingWindow Override to provide your own FloatingWindow sub-class. If overridden then you also need to override the overloads below.

Parameters
parentJust forward to FloatingWindow's constructor.

Implemented in KDDockWidgets::DefaultWidgetFactory.

virtual FloatingWindow* KDDockWidgets::FrameworkWidgetFactory::createFloatingWindow ( Frame *  frame,
MainWindowBase parent = nullptr 
) const
pure virtual

Called internally by the framework to create a FloatingWindow Override to provide your own FloatingWindow sub-class. If overridden then you also need to override the overloads above.

Parameters
frameJust forward to FloatingWindow's constructor.
parentJust forward to FloatingWindow's constructor.

Implemented in KDDockWidgets::DefaultWidgetFactory.

virtual Frame* KDDockWidgets::FrameworkWidgetFactory::createFrame ( QWidgetOrQuick parent = nullptr,
FrameOptions  options = FrameOption_None 
) const
pure virtual

Called internally by the framework to create a Frame class Override to provide your own Frame sub-class. A frame is the widget that holds the titlebar and tab-widget which holds the DockWidgets.

Parameters
parentjust forward to Frame's constructor
optionsjust forward to Frame's constructor

Implemented in KDDockWidgets::DefaultWidgetFactory.

virtual Layouting::Separator* KDDockWidgets::FrameworkWidgetFactory::createSeparator ( Layouting::Widget *  parent = nullptr) const
pure virtual

Called internally by the framework to create a Separator Override to provide your own Separator sub-class. The Separator allows the user to resize nested dock widgets.

Parameters
parentJust forward to Separator's constructor.

Implemented in KDDockWidgets::DefaultWidgetFactory.

virtual SideBar* KDDockWidgets::FrameworkWidgetFactory::createSideBar ( SideBarLocation  loc,
MainWindowBase parent 
) const
pure virtual

Called internally by the framework to create a SideBar.

Parameters
locThe side-bar location without the main window. Just forward into your SideBar sub-class ctor.
parentThe MainWindow. Just forward into your SideBar sub-class ctor.

Implemented in KDDockWidgets::DefaultWidgetFactory.

virtual TabBar* KDDockWidgets::FrameworkWidgetFactory::createTabBar ( TabWidget *  parent = nullptr) const
pure virtual

Called internally by the framework to create a TabBar Override to provide your own TabBar sub-class.

Parameters
parentJust forward to TabBar's's constructor.

Implemented in KDDockWidgets::DefaultWidgetFactory.

virtual TabWidget* KDDockWidgets::FrameworkWidgetFactory::createTabWidget ( Frame *  parent) const
pure virtual

Called internally by the framework to create a TabWidget Override to provide your own TabWidget sub-class.

Parameters
parentJust forward to TabWidget's constructor.

Implemented in KDDockWidgets::DefaultWidgetFactory.

virtual TitleBar* KDDockWidgets::FrameworkWidgetFactory::createTitleBar ( Frame *  frame) const
pure virtual

Called internally by the framework to create a TitleBar Override to provide your own TitleBar sub-class. If overridden then you also need to override the overload below.

Parameters
frameJust forward to TitleBar's constructor.

Implemented in KDDockWidgets::DefaultWidgetFactory.

virtual TitleBar* KDDockWidgets::FrameworkWidgetFactory::createTitleBar ( FloatingWindow *  floatingWindow) const
pure virtual

Called internally by the framework to create a TitleBar Override to provide your own TitleBar sub-class. If overridden then you also need to override the overload above.

Parameters
floatingWindowJust forward to TitleBar's constructor.

Implemented in KDDockWidgets::DefaultWidgetFactory.

virtual QIcon KDDockWidgets::FrameworkWidgetFactory::iconForButtonType ( TitleBarButtonType  type,
qreal  dpr 
) const
pure virtual

Returns the icon to be used with the specified type.

Parameters
dprthe device pixel ratio of the button

Implemented in KDDockWidgets::DefaultWidgetFactory.


Klarälvdalens Datakonsult AB (KDAB)
"The Qt, C++ and OpenGL Experts"
https://www.kdab.com/
KDDockWidgets
Advanced Dock Widget Framework for Qt
https://www.kdab.com/development-resources/qt-tools/kddockwidgets/