本文整理汇总了C++中IRect::right方法的典型用法代码示例。如果您正苦于以下问题:C++ IRect::right方法的具体用法?C++ IRect::right怎么用?C++ IRect::right使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IRect
的用法示例。
在下文中一共展示了IRect::right方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Render
void UIListBox::Render()
{
UIElementPtr pElement = elements_[0];
UIElementPtr pSelElement = elements_[1];
if (this->GetEnabled())
{
pElement->TextureColor().SetState(UICS_Normal);
pElement->FontColor().SetState(UICS_Normal);
pSelElement->TextureColor().SetState(UICS_Normal);
pSelElement->FontColor().SetState(UICS_Normal);
}
else
{
pElement->TextureColor().SetState(UICS_Disabled);
pElement->FontColor().SetState(UICS_Disabled);
pSelElement->TextureColor().SetState(UICS_Disabled);
pSelElement->FontColor().SetState(UICS_Disabled);
}
this->GetDialog()->DrawSprite(*pElement,
IRect(x_, y_, x_ + width_, y_ + height_));
// Render the text
if (!items_.empty())
{
// Find out the height of a single line of text
IRect rc = text_rc_;
IRect rcSel = selection_rc_;
rc.bottom() = static_cast<int32_t>(rc.top() + UIManager::Instance().GetFontSize(pElement->FontIndex()));
// Update the line height formation
text_height_ = rc.Height();
static bool bSBInit;
if (!bSBInit)
{
// Update the page size of the scroll bar
if (text_height_)
{
scroll_bar_.SetPageSize(text_rc_.Height() / text_height_);
}
else
{
scroll_bar_.SetPageSize(text_rc_.Height());
}
bSBInit = true;
}
rc.right() = text_rc_.right();
for (int i = static_cast<int>(scroll_bar_.GetTrackPos()); i < static_cast<int>(items_.size()); ++ i)
{
if (rc.bottom() > text_rc_.bottom())
{
break;
}
std::shared_ptr<UIListBoxItem> const & pItem = items_[i];
// Determine if we need to render this item with the
// selected element.
bool bSelectedStyle = false;
if (!(MULTI_SELECTION == style_) && (i == selected_))
{
bSelectedStyle = true;
}
else
{
if (MULTI_SELECTION == style_)
{
if (drag_
&& (((i >= selected_) && (i < sel_start_))
|| ((i <= selected_) && (i > sel_start_))))
{
bSelectedStyle = items_[sel_start_]->bSelected;
}
else
{
if (pItem->bSelected)
{
bSelectedStyle = true;
}
}
}
}
if (bSelectedStyle)
{
rcSel.top() = rc.top();
rcSel.bottom() = rc.bottom();
this->GetDialog()->DrawSprite(*pSelElement, rcSel);
this->GetDialog()->DrawString(pItem->strText, *pSelElement, rc);
}
else
{
this->GetDialog()->DrawString(pItem->strText, *pElement, rc);
}
rc += int2(0, text_height_);
}
//.........这里部分代码省略.........