having valid layoutRects for buttons

This commit is contained in:
Uwe Rathmann 2017-11-17 08:03:38 +01:00
parent 559c73eae8
commit 2ebfd306e1
4 changed files with 14 additions and 0 deletions

View File

@ -12,6 +12,7 @@
#include "QskTextOptions.h" #include "QskTextOptions.h"
#include "QskSkin.h" #include "QskSkin.h"
#include "QskSetup.h" #include "QskSetup.h"
#include "QskSkinlet.h"
#include <QFontMetricsF> #include <QFontMetricsF>
@ -208,6 +209,11 @@ void QskPushButton::updateLayout()
} }
} }
QRectF QskPushButton::layoutRect() const
{
return innerBox( Panel, effectiveSkinlet()->subControlRect( this, Panel ) );
}
QSizeF QskPushButton::contentsSizeHint() const QSizeF QskPushButton::contentsSizeHint() const
{ {
QSizeF size( 0, 0 ); QSizeF size( 0, 0 );

View File

@ -63,6 +63,7 @@ public:
QFont font() const; QFont font() const;
virtual QSizeF contentsSizeHint() const override; virtual QSizeF contentsSizeHint() const override;
virtual QRectF layoutRect() const override;
Q_SIGNALS: Q_SIGNALS:
void cornerChanged(); void cornerChanged();

View File

@ -6,6 +6,7 @@
#include "QskTabButton.h" #include "QskTabButton.h"
#include "QskTabBar.h" #include "QskTabBar.h"
#include "QskTextOptions.h" #include "QskTextOptions.h"
#include "QskSkinlet.h"
#include <QFontMetricsF> #include <QFontMetricsF>
#include <QPointer> #include <QPointer>
@ -93,6 +94,11 @@ QSizeF QskTabButton::contentsSizeHint() const
return size; return size;
} }
QRectF QskTabButton::layoutRect() const
{
return innerBox( Panel, effectiveSkinlet()->subControlRect( this, Panel ) );
}
QskAspect::Placement QskTabButton::effectivePlacement() const QskAspect::Placement QskTabButton::effectivePlacement() const
{ {
using namespace QskAspect; using namespace QskAspect;

View File

@ -36,6 +36,7 @@ public:
QskTextOptions textOptions() const; QskTextOptions textOptions() const;
virtual QSizeF contentsSizeHint() const override; virtual QSizeF contentsSizeHint() const override;
virtual QRectF layoutRect() const override;
virtual QskAspect::Placement effectivePlacement() const override; virtual QskAspect::Placement effectivePlacement() const override;
QskTabBar* tabBar() const; QskTabBar* tabBar() const;