本文整理汇总了C++中CGUIListItemLayout::SelectItemFromPoint方法的典型用法代码示例。如果您正苦于以下问题:C++ CGUIListItemLayout::SelectItemFromPoint方法的具体用法?C++ CGUIListItemLayout::SelectItemFromPoint怎么用?C++ CGUIListItemLayout::SelectItemFromPoint使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CGUIListItemLayout
的用法示例。
在下文中一共展示了CGUIListItemLayout::SelectItemFromPoint方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: SelectItemFromPoint
bool CGUIBaseContainer::SelectItemFromPoint(const CPoint &point)
{
if (!m_focusedLayout || !m_layout)
return false;
int row = 0;
float pos = (m_orientation == VERTICAL) ? point.y : point.x;
while (row < m_itemsPerPage)
{
const CGUIListItemLayout *layout = (row == m_cursor) ? m_focusedLayout : m_layout;
if (pos < layout->Size(m_orientation) && row + m_offset < (int)m_items.size())
{ // found correct "row" -> check horizontal
if (!InsideLayout(layout, point))
return false;
MoveToItem(row);
CGUIListItemLayout *focusedLayout = GetFocusedLayout();
if (focusedLayout)
{
CPoint pt(point);
if (m_orientation == VERTICAL)
pt.y = pos;
else
pt.x = pos;
focusedLayout->SelectItemFromPoint(pt);
}
return true;
}
row++;
pos -= layout->Size(m_orientation);
}
return false;
}
示例2: SelectItemFromPoint
bool CGUIListContainer::SelectItemFromPoint(const CPoint &point)
{
CPoint itemPoint;
int row = GetCursorFromPoint(point, &itemPoint);
if (row < 0)
return false;
SetCursor(row);
CGUIListItemLayout *focusedLayout = GetFocusedLayout();
if (focusedLayout)
focusedLayout->SelectItemFromPoint(itemPoint);
return true;
}