KDDockWidgets API Documentation 1.7
Loading...
Searching...
No Matches
Namespaces | Classes | Typedefs | Enumerations | Functions
KDDockWidgets Namespace Reference

Namespaces

namespace  Private
 

Classes

class  Config
 Singleton to allow to choose certain behaviours of the framework. More...
 
class  DefaultWidgetFactory
 The FrameworkWidgetFactory that's used if none is specified. More...
 
class  DockWidget
 Represents a dock widget. More...
 
class  DockWidgetBase
 The DockWidget base-class. DockWidget and DockWidgetBase are only split in two so we can share some code with the QtQuick implementation, which also derives from DockWidgetBase. More...
 
class  DockWidgetQuick
 Represents a dock widget. More...
 
class  FocusScope
 Allows to implement a similar functionality to QtQuick's FocusScope item, in QtWidgets. More...
 
class  FrameworkWidgetFactory
 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...
 
struct  InitialOption
 Struct describing the preferred dock widget size and visibility when adding it to a layout. More...
 
class  LayoutGuestWidget
 LayoutGuestWidget is the type that Item will host. More...
 
class  LayoutSaver
 LayoutSaver allows to save or restore layouts. More...
 
class  MainWindow
 The QMainwindow sub-class that the application should use to be able to dock KDDockWidget::DockWidget instances. More...
 
class  MainWindowBase
 The MainWindow base-class. MainWindow and MainWindowBase are only split in two so we can share some code with the QtQuick implementation, which also derives from MainWindowBase. More...
 
class  MainWindowMDI
 MainWindow sub-class which uses MDI as a layout. More...
 
class  MDIArea
 MDIArea allows to host dock widget in MDI mode. This is an alternative to using a full blown MainWindowMDI. The use case is when you already have a MainWindow (doing normal docking) and you want to add an area where you want to use MDI dock widgets. Instead of docking a MainWindowMDI, you'd just use an MDIArea, and avoid having nested main windows. More...
 
class  RubberBandQuick
 

Typedefs

typedef KDDockWidgets::DockWidgetBase *(* DockWidgetFactoryFunc) (const QString &name)
 
typedef KDDockWidgets::DockWidget DockWidgetType
 
typedef bool(* DropIndicatorAllowedFunc) (DropLocation location, const QVector< DockWidgetBase * > &source, const QVector< DockWidgetBase * > &target, DropArea *dropArea)
 Function to allow more granularity to disallow where widgets are dropped.
 
typedef Layouting::Widget_qwidget LayoutGuestWidgetBase
 
typedef KDDockWidgets::MainWindowBase *(* MainWindowFactoryFunc) (const QString &name)
 
typedef KDDockWidgets::MainWindow MainWindowType
 
typedef KDDockWidgets::MainWindow MDIMainWindowBase
 
typedef QMainWindow QMainWindowOrQuick
 
typedef QWidget QWidgetOrQuick
 
typedef bool(* TabbingAllowedFunc) (const QVector< DockWidgetBase * > &source, const QVector< DockWidgetBase * > &target)
 Function to allow the user more granularity to disallow dock widgets to tab together.
 
typedef QWidget WidgetType
 

Enumerations

enum  AddingOption { AddingOption_None = 0 , AddingOption_StartHidden }
 Only here for source-compat with v1.2. Do not use. Use InitialVisibilityOption instead. More...
 
enum  CursorPosition {
  CursorPosition_Undefined = 0 , CursorPosition_Left = 1 , CursorPosition_Right = 2 , CursorPosition_Top = 4 ,
  CursorPosition_Bottom = 8 , CursorPosition_TopLeft = CursorPosition_Top | CursorPosition_Left , CursorPosition_TopRight = CursorPosition_Top | CursorPosition_Right , CursorPosition_BottomRight = CursorPosition_Bottom | CursorPosition_Right ,
  CursorPosition_BottomLeft = CursorPosition_Bottom | CursorPosition_Left , CursorPosition_Horizontal = CursorPosition_Right | CursorPosition_Left , CursorPosition_Vertical = CursorPosition_Top | CursorPosition_Bottom , CursorPosition_All = CursorPosition_Left | CursorPosition_Right | CursorPosition_Top | CursorPosition_Bottom
}
 
enum class  DefaultSizeMode { ItemSize , Fair , FairButFloor , NoDefaultSizeMode }
 
enum class  DropIndicatorType { Classic , Segmented , None }
 
enum  DropLocation {
  DropLocation_None = 0 , DropLocation_Left = 1 , DropLocation_Top = 2 , DropLocation_Right = 4 ,
  DropLocation_Bottom = 8 , DropLocation_Center = 16 , DropLocation_OutterLeft = 32 , DropLocation_OutterTop = 64 ,
  DropLocation_OutterRight = 128 , DropLocation_OutterBottom = 256 , DropLocation_Inner = DropLocation_Left | DropLocation_Right | DropLocation_Top | DropLocation_Bottom , DropLocation_Outter = DropLocation_OutterLeft | DropLocation_OutterRight | DropLocation_OutterTop | DropLocation_OutterBottom ,
  DropLocation_Horizontal = DropLocation_Left | DropLocation_Right | DropLocation_OutterLeft | DropLocation_OutterRight , DropLocation_Vertical = DropLocation_Top | DropLocation_Bottom | DropLocation_OutterTop | DropLocation_OutterBottom
}
 Enum describing the different drop indicator types. More...
 
enum class  FloatingWindowFlag {
  None = 0 , FromGlobalConfig = 1 , TitleBarHasMinimizeButton = 2 , TitleBarHasMaximizeButton = 4 ,
  KeepAboveIfNotUtilityWindow = 8 , NativeTitleBar = 16 , HideTitleBarWhenTabsVisible = 32 , AlwaysTitleBarWhenFloating = 64 ,
  DontUseParentForFloatingWindows = 128 , UseQtWindow = 256 , UseQtTool = 512
}
 
enum  FrameOption {
  FrameOption_None = 0 , FrameOption_AlwaysShowsTabs = 1 , FrameOption_IsCentralFrame = 2 , FrameOption_IsOverlayed = 4 ,
  FrameOption_NonDockable = 8
}
 
enum class  InitialVisibilityOption { StartVisible = 0 , StartHidden , PreserveCurrentTab }
 
enum  Location {
  Location_None , Location_OnLeft , Location_OnTop , Location_OnRight ,
  Location_OnBottom
}
 
enum  MainWindowOption { MainWindowOption_None = 0 , MainWindowOption_HasCentralFrame = 1 , MainWindowOption_MDI = 2 , MainWindowOption_HasCentralWidget = 4 | MainWindowOption_HasCentralFrame }
 
enum  RestoreOption { RestoreOption_None = 0 , RestoreOption_RelativeToMainWindow = 1 << 0 , RestoreOption_AbsoluteFloatingDockWindows = 1 << 1 }
 
enum class  SideBarLocation {
  None , North , East , West ,
  South
}
 Each main window supports 4 sidebars. More...
 
enum  SuggestedGeometryHint { SuggestedGeometryHint_None , SuggestedGeometryHint_PreserveCenter = 1 , SuggestedGeometryHint_GeometryIsFromDocked = 2 }
 
enum  TabWidgetOption { TabWidgetOption_None = 0 , TabWidgetOption_DocumentMode = 1 }
 
enum class  TitleBarButtonType {
  Close , Float , Minimize , Maximize ,
  Normal , AutoHide , UnautoHide
}
 describes a type of button you can have in the title bar More...
 

Functions

static FrameOptions actualOptions (FrameOptions options)
 
static QString iconName (DropLocation loc, bool active)
 
QString locationStr (Location loc)
 
Qt5Qt6Compat::qhashtype qHash (SideBarLocation loc, Qt5Qt6Compat::qhashtype seed)
 
void registerQmlTypes ()
 
static TabWidgetOptions tabWidgetOptions (FrameOptions options)
 

Typedef Documentation

◆ DockWidgetFactoryFunc

typedef KDDockWidgets::DockWidgetBase *(* KDDockWidgets::DockWidgetFactoryFunc) (const QString &name)

Definition at line 39 of file Config.h.

◆ DockWidgetType

Definition at line 51 of file QWidgetAdapter.h.

◆ DropIndicatorAllowedFunc

typedef bool(* KDDockWidgets::DropIndicatorAllowedFunc) (DropLocation location, const QVector< DockWidgetBase * > &source, const QVector< DockWidgetBase * > &target, DropArea *dropArea)

Function to allow more granularity to disallow where widgets are dropped.

By default, widgets can be dropped to the outer and inner left/right/top/bottom and center. The client app can however provide a lambda via setDropIndicatorAllowedFunc to block (by returning false) any specific locations they desire.

Parameters
locationThe drop indicator location to allow or disallow
sourceThe dock widgets being dragged
targetThe dock widgets within an existing docked tab group
dropAreaThe target drop area. Can belong to a MainWindow or a FloatingWindow.
Returns
true if the docking is allowed.
See also
setDropIndicatorAllowedFunc

Definition at line 54 of file Config.h.

◆ LayoutGuestWidgetBase

Definition at line 48 of file QWidgetAdapter.h.

◆ MainWindowFactoryFunc

typedef KDDockWidgets::MainWindowBase *(* KDDockWidgets::MainWindowFactoryFunc) (const QString &name)

Definition at line 40 of file Config.h.

◆ MainWindowType

Definition at line 49 of file QWidgetAdapter.h.

◆ MDIMainWindowBase

Definition at line 50 of file QWidgetAdapter.h.

◆ QMainWindowOrQuick

Definition at line 47 of file QWidgetAdapter.h.

◆ QWidgetOrQuick

Definition at line 46 of file QWidgetAdapter.h.

◆ TabbingAllowedFunc

typedef bool(* KDDockWidgets::TabbingAllowedFunc) (const QVector< DockWidgetBase * > &source, const QVector< DockWidgetBase * > &target)

Function to allow the user more granularity to disallow dock widgets to tab together.

Deprecated:
Use DropIndicatorAllowedFunc instead.
Parameters
sourceThe dock widgets being dragged
targetThe dock widgets within an existing docked tab group
Returns
true if the docking is allowed.
See also
setTabbingAllowedFunc

Definition at line 65 of file Config.h.

◆ WidgetType

Definition at line 52 of file QWidgetAdapter.h.

Enumeration Type Documentation

◆ AddingOption

Only here for source-compat with v1.2. Do not use. Use InitialVisibilityOption instead.

Enumerator
AddingOption_None 
AddingOption_StartHidden 

Definition at line 77 of file KDDockWidgets.h.

◆ CursorPosition

Enumerator
CursorPosition_Undefined 
CursorPosition_Left 
CursorPosition_Right 
CursorPosition_Top 
CursorPosition_Bottom 
CursorPosition_TopLeft 
CursorPosition_TopRight 
CursorPosition_BottomRight 
CursorPosition_BottomLeft 
CursorPosition_Horizontal 
CursorPosition_Vertical 
CursorPosition_All 

Definition at line 255 of file KDDockWidgets.h.

◆ DefaultSizeMode

enum class KDDockWidgets::DefaultSizeMode
strong
Enumerator
ItemSize 

Simply uses the Item::size() of the item being added. Actual used size might be smaller if our window isn't big enough.

Fair 

Gives an equal relative size as the items that are already in the layout.

FairButFloor 

Equal to fair, but if the item we're adding is smaller than the fair suggestion, then that small size is used.

NoDefaultSizeMode 

Don't do any sizing.

Definition at line 67 of file KDDockWidgets.h.

◆ DropIndicatorType

Enumerator
Classic 

The default.

Segmented 

Segmented indicators.

None 

Don't show any drop indicators while dragging.

Definition at line 192 of file KDDockWidgets.h.

◆ DropLocation

Enum describing the different drop indicator types.

Enumerator
DropLocation_None 
DropLocation_Left 
DropLocation_Top 
DropLocation_Right 
DropLocation_Bottom 
DropLocation_Center 
DropLocation_OutterLeft 
DropLocation_OutterTop 
DropLocation_OutterRight 
DropLocation_OutterBottom 
DropLocation_Inner 
DropLocation_Outter 
DropLocation_Horizontal 
DropLocation_Vertical 

Definition at line 230 of file KDDockWidgets.h.

◆ FloatingWindowFlag

Enumerator
None 
FromGlobalConfig 
TitleBarHasMinimizeButton 
TitleBarHasMaximizeButton 
KeepAboveIfNotUtilityWindow 
NativeTitleBar 
HideTitleBarWhenTabsVisible 
AlwaysTitleBarWhenFloating 
DontUseParentForFloatingWindows 
UseQtWindow 
UseQtTool 

Definition at line 293 of file KDDockWidgets.h.

◆ FrameOption

Enumerator
FrameOption_None 
FrameOption_AlwaysShowsTabs 
FrameOption_IsCentralFrame 
FrameOption_IsOverlayed 
FrameOption_NonDockable 

Definition at line 274 of file KDDockWidgets.h.

◆ InitialVisibilityOption

Enumerator
StartVisible 

The dock widget is made visible when docked.

StartHidden 

Don't show the dock widget when adding it.

PreserveCurrentTab 

When adding as tabbed, don't change the current index.

Definition at line 83 of file KDDockWidgets.h.

◆ Location

Enumerator
Location_None 
Location_OnLeft 
Location_OnTop 

‍Left docking location

Location_OnRight 

‍Top docking location

Location_OnBottom 

‍Right docking location

‍Bottom docking location

Definition at line 44 of file KDDockWidgets.h.

◆ MainWindowOption

Enumerator
MainWindowOption_None 
MainWindowOption_HasCentralFrame 

‍No option set

MainWindowOption_MDI 

‍Makes the MainWindow always have a central frame, for tabbing documents

MainWindowOption_HasCentralWidget 

‍The layout will be MDI. DockWidgets can have arbitrary positions, not restricted by any layout

Definition at line 53 of file KDDockWidgets.h.

◆ RestoreOption

Enumerator
RestoreOption_None 
RestoreOption_RelativeToMainWindow 

Skips restoring the main window geometry and the restored dock widgets will use relative sizing. Loading layouts won't change the main window geometry and just use whatever the user has at the moment.

RestoreOption_AbsoluteFloatingDockWindows 

Skips scaling of floating dock windows relative to the main window.

Definition at line 183 of file KDDockWidgets.h.

◆ SideBarLocation

enum class KDDockWidgets::SideBarLocation
strong

Each main window supports 4 sidebars.

Enumerator
None 
North 
East 
West 
South 

Definition at line 209 of file KDDockWidgets.h.

◆ SuggestedGeometryHint

Enumerator
SuggestedGeometryHint_None 
SuggestedGeometryHint_PreserveCenter 
SuggestedGeometryHint_GeometryIsFromDocked 

Definition at line 200 of file KDDockWidgets.h.

◆ TabWidgetOption

Enumerator
TabWidgetOption_None 
TabWidgetOption_DocumentMode 

Definition at line 285 of file KDDockWidgets.h.

◆ TitleBarButtonType

describes a type of button you can have in the title bar

Enumerator
Close 
Float 
Minimize 
Maximize 
Normal 
AutoHide 
UnautoHide 

Definition at line 218 of file KDDockWidgets.h.

Function Documentation

◆ actualOptions()

static FrameOptions KDDockWidgets::actualOptions ( FrameOptions  options)
static

◆ iconName()

static QString KDDockWidgets::iconName ( DropLocation  loc,
bool  active 
)
static

◆ locationStr()

QString KDDockWidgets::locationStr ( Location  loc)
inline

◆ qHash()

Qt5Qt6Compat::qhashtype KDDockWidgets::qHash ( SideBarLocation  loc,
Qt5Qt6Compat::qhashtype  seed 
)
inline

Definition at line 249 of file KDDockWidgets.h.

◆ registerQmlTypes()

void KDDockWidgets::registerQmlTypes ( )

Definition at line 26 of file QmlTypes.cpp.

◆ tabWidgetOptions()

static TabWidgetOptions KDDockWidgets::tabWidgetOptions ( FrameOptions  options)
static

© 2019-2023 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/
Generated on Wed Nov 1 2023 00:02:31 for KDDockWidgets API Documentation by doxygen 1.9.8