Added support to adhere the minimumSizeHint() of the content widget of a dock widget

This commit is contained in:
Uwe Kindler
2020-03-26 07:09:01 +01:00
parent 661d0c4356
commit d0f4ce3248
2 changed files with 40 additions and 1 deletions

View File

@@ -82,6 +82,7 @@ struct DockWidgetPrivate
QSize ToolBarIconSizeFloating = QSize(24, 24);
bool IsFloatingTopLevel = false;
QList<QAction*> TitleBarActions;
CDockWidget::eMinimumSizeHintMode MinimumSizeHintMode = CDockWidget::MinimumSizeHintFromDockWidget;
/**
* Private data constructor
@@ -424,6 +425,13 @@ void CDockWidget::setToggleViewActionMode(eToggleViewActionMode Mode)
}
//============================================================================
void CDockWidget::setMinimumSizeHintMode(eMinimumSizeHintMode Mode)
{
d->MinimumSizeHintMode = Mode;
}
//============================================================================
void CDockWidget::toggleView(bool Open)
{
@@ -753,7 +761,14 @@ void CDockWidget::setClosedState(bool Closed)
//============================================================================
QSize CDockWidget::minimumSizeHint() const
{
return QSize(60, 40);
if (d->MinimumSizeHintMode == CDockWidget::MinimumSizeHintFromDockWidget || !d->Widget)
{
return QSize(60, 40);
}
else
{
return d->Widget->minimumSizeHint();
}
}