36 lines
737 B
C++
36 lines
737 B
C++
#include "OptionButton.h"
|
|
|
|
#include <QLayout>
|
|
#include <QStyle>
|
|
#include <QStyleOptionButton>
|
|
|
|
OptionButton::OptionButton(QWidget* parent)
|
|
: QPushButton(parent)
|
|
{
|
|
}
|
|
|
|
QSize OptionButton::sizeHint() const
|
|
{
|
|
if (layout() == nullptr)
|
|
{
|
|
return QPushButton::sizeHint();
|
|
}
|
|
return sizeForFace(layout()->sizeHint());
|
|
}
|
|
|
|
QSize OptionButton::minimumSizeHint() const
|
|
{
|
|
if (layout() == nullptr)
|
|
{
|
|
return QPushButton::minimumSizeHint();
|
|
}
|
|
return sizeForFace(layout()->minimumSize());
|
|
}
|
|
|
|
QSize OptionButton::sizeForFace(const QSize& faceSize) const
|
|
{
|
|
QStyleOptionButton option;
|
|
initStyleOption(&option);
|
|
return style()->sizeFromContents(QStyle::CT_PushButton, &option, faceSize, this);
|
|
}
|