diff --git a/src/controls/QskPushButton.cpp b/src/controls/QskPushButton.cpp index 376b44c0..85fcd3d9 100644 --- a/src/controls/QskPushButton.cpp +++ b/src/controls/QskPushButton.cpp @@ -12,6 +12,7 @@ #include "QskTextOptions.h" #include "QskSkin.h" #include "QskSetup.h" +#include "QskSkinlet.h" #include @@ -208,6 +209,11 @@ void QskPushButton::updateLayout() } } +QRectF QskPushButton::layoutRect() const +{ + return innerBox( Panel, effectiveSkinlet()->subControlRect( this, Panel ) ); +} + QSizeF QskPushButton::contentsSizeHint() const { QSizeF size( 0, 0 ); diff --git a/src/controls/QskPushButton.h b/src/controls/QskPushButton.h index a72bfec1..582ab20b 100644 --- a/src/controls/QskPushButton.h +++ b/src/controls/QskPushButton.h @@ -63,6 +63,7 @@ public: QFont font() const; virtual QSizeF contentsSizeHint() const override; + virtual QRectF layoutRect() const override; Q_SIGNALS: void cornerChanged(); diff --git a/src/controls/QskTabButton.cpp b/src/controls/QskTabButton.cpp index 4f3a7f44..ea832dc1 100644 --- a/src/controls/QskTabButton.cpp +++ b/src/controls/QskTabButton.cpp @@ -6,6 +6,7 @@ #include "QskTabButton.h" #include "QskTabBar.h" #include "QskTextOptions.h" +#include "QskSkinlet.h" #include #include @@ -93,6 +94,11 @@ QSizeF QskTabButton::contentsSizeHint() const return size; } +QRectF QskTabButton::layoutRect() const +{ + return innerBox( Panel, effectiveSkinlet()->subControlRect( this, Panel ) ); +} + QskAspect::Placement QskTabButton::effectivePlacement() const { using namespace QskAspect; diff --git a/src/controls/QskTabButton.h b/src/controls/QskTabButton.h index 9f611bf9..d9108143 100644 --- a/src/controls/QskTabButton.h +++ b/src/controls/QskTabButton.h @@ -36,6 +36,7 @@ public: QskTextOptions textOptions() const; virtual QSizeF contentsSizeHint() const override; + virtual QRectF layoutRect() const override; virtual QskAspect::Placement effectivePlacement() const override; QskTabBar* tabBar() const;