本文整理汇总了C++中Widget::Layout方法的典型用法代码示例。如果您正苦于以下问题:C++ Widget::Layout方法的具体用法?C++ Widget::Layout怎么用?C++ Widget::Layout使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Widget
的用法示例。
在下文中一共展示了Widget::Layout方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Layout
void Face::Layout()
{
Point size(GetSize());
Point activeArea(std::min(size.x, size.y));
Point activeOffset(std::max(0, (size.x-activeArea.x)/2), std::max(0, (size.y-activeArea.y)/2));
SetActiveArea(activeArea, activeOffset);
Widget *innerWidget = GetInnerWidget();
if (!innerWidget) return;
SetWidgetDimensions(innerWidget, activeOffset, activeArea);
innerWidget->Layout();
}
示例2: Layout
void Button::Layout()
{
Widget *innerWidget = GetInnerWidget();
if (!innerWidget) {
SetActiveArea(Point(GetContext()->GetSkin().ButtonMinInnerSize()) + Point(GetContext()->GetSkin().ButtonNormal().borderWidth*2));
return;
}
const Point innerSize = GetSize() - Point(GetContext()->GetSkin().ButtonNormal().borderWidth*2);
SetWidgetDimensions(innerWidget, Point(GetContext()->GetSkin().ButtonNormal().borderWidth), CalcSize(innerWidget, innerSize));
innerWidget->Layout();
Point innerActiveArea(innerWidget->GetActiveArea());
growToMinimum(innerActiveArea, GetContext()->GetSkin().ButtonMinInnerSize());
SetActiveArea(innerActiveArea + Point(GetContext()->GetSkin().ButtonNormal().borderWidth*2));
}
示例3: Layout
void Button::Layout()
{
Widget *innerWidget = GetInnerWidget();
const Skin::BorderedRectElement &elem(GetContext()->GetSkin().ButtonNormal());
if (!innerWidget) {
SetActiveArea(PreferredSize());
return;
}
const Point innerSize = GetSize() - Point(elem.paddingX*2, elem.paddingY*2);
SetWidgetDimensions(innerWidget, Point(elem.paddingX, elem.paddingY), innerWidget->CalcSize(innerSize));
innerWidget->Layout();
Point innerActiveArea(innerWidget->GetActiveArea());
growToMinimum(innerActiveArea, GetContext()->GetSkin().ButtonMinInnerSize());
SetActiveArea(innerActiveArea + Point(elem.paddingX*2, elem.paddingY*2));
}