[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: playground/libs/goya/goya
From: Rafael Fernández López <ereslibre () kde ! org>
Date: 2008-01-31 21:59:59
Message-ID: 1201816799.178629.28214.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 769228 by ereslibre:
No hard coded values
M +18 -6 toolbutton.cpp
--- trunk/playground/libs/goya/goya/toolbutton.cpp #769227:769228
@@ -143,12 +143,23 @@
Q_ASSERT(style);
- return style->sizeFromContents(QStyle::CT_ToolButton, optionToolButton,
- QSize(optionToolButton->fontMetrics.width(optionToolButton->text) +
- style->subControlRect(QStyle::CC_ToolButton, optionToolButton, \
QStyle::SC_ToolButtonMenu).width() +
- optionToolButton->iconSize.width() + 16, //FIXME: fix this \
hard coded values, is in my todo (ereslibre)
- qMax(optionToolButton->fontMetrics.height(),
- optionToolButton->iconSize.height()) + 3));
+ QStyleOptionButton buttonOption;
+ buttonOption.initFrom(Widget::d->canvas->itemView());
+
+ buttonOption.text = optionToolButton->text;
+ buttonOption.icon = optionToolButton->icon;
+ buttonOption.iconSize = optionToolButton->iconSize;
+ buttonOption.state = optionToolButton->state;
+
+ QSize buttonSize = style->sizeFromContents(QStyle::CT_PushButton, &buttonOption,
+ \
QSize(optionToolButton->fontMetrics.width(optionToolButton->text) + + \
optionToolButton->iconSize.width(), + \
qMax(optionToolButton->fontMetrics.height(), + \
optionToolButton->iconSize.height()))); +
+ QSize retSize(buttonSize.width() + style->subControlRect(QStyle::CC_ToolButton, optionToolButton, \
QStyle::SC_ToolButtonMenu).width(), buttonSize.height()); +
+ return retSize;
}
void ToolButton::paint(const QStyleOption *option, QPainter *painter,
@@ -167,6 +178,7 @@
QStyleOptionToolButton opt(*optionToolButton);
QStyleOptionButton opt2;
+ opt2.initFrom(Widget::d->canvas->itemView());
opt2.rect = opt.rect;
opt2.rect.setWidth(option->rect.width() - style->subControlRect(QStyle::CC_ToolButton, \
optionToolButton, QStyle::SC_ToolButtonMenu).width());
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic