本文整理汇总了C++中CGUIMoverControl::SetLimits方法的典型用法代码示例。如果您正苦于以下问题:C++ CGUIMoverControl::SetLimits方法的具体用法?C++ CGUIMoverControl::SetLimits怎么用?C++ CGUIMoverControl::SetLimits使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CGUIMoverControl
的用法示例。
在下文中一共展示了CGUIMoverControl::SetLimits方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ResetControls
void CGUIWindowSettingsScreenCalibration::ResetControls()
{
// disable the video control, so that our other controls take mouse clicks etc.
CONTROL_DISABLE(CONTROL_VIDEO);
// disable the UI calibration for our controls
// and set their limits
// also, set them to invisible if they don't have focus
CGUIMoverControl *pControl = dynamic_cast<CGUIMoverControl*>(GetControl(CONTROL_TOP_LEFT));
RESOLUTION_INFO info = g_graphicsContext.GetResInfo(m_Res[m_iCurRes]);
if (pControl)
{
pControl->SetLimits( -info.iWidth / 4,
-info.iHeight / 4,
info.iWidth / 4,
info.iHeight / 4);
pControl->SetPosition((float)info.Overscan.left,
(float)info.Overscan.top);
pControl->SetLocation(info.Overscan.left,
info.Overscan.top, false);
}
pControl = dynamic_cast<CGUIMoverControl*>(GetControl(CONTROL_BOTTOM_RIGHT));
if (pControl)
{
pControl->SetLimits(info.iWidth*3 / 4,
info.iHeight*3 / 4,
info.iWidth*5 / 4,
info.iHeight*5 / 4);
pControl->SetPosition((float)info.Overscan.right - (int)pControl->GetWidth(),
(float)info.Overscan.bottom - (int)pControl->GetHeight());
pControl->SetLocation(info.Overscan.right,
info.Overscan.bottom, false);
}
// Subtitles and OSD controls can only move up and down
pControl = dynamic_cast<CGUIMoverControl*>(GetControl(CONTROL_SUBTITLES));
if (pControl)
{
pControl->SetLimits(0, info.iHeight*3 / 4,
0, info.iHeight*5 / 4);
pControl->SetPosition((info.iWidth - pControl->GetWidth()) * 0.5f,
info.iSubtitles - pControl->GetHeight());
pControl->SetLocation(0, info.iSubtitles, false);
}
// lastly the pixel ratio control...
CGUIResizeControl *pResize = dynamic_cast<CGUIResizeControl*>(GetControl(CONTROL_PIXEL_RATIO));
if (pResize)
{
pResize->SetLimits(info.iWidth*0.25f, info.iHeight*0.5f,
info.iWidth*0.75f, info.iHeight*0.5f);
pResize->SetHeight(info.iHeight * 0.5f);
pResize->SetWidth(pResize->GetHeight() / info.fPixelRatio);
pResize->SetPosition((info.iWidth - pResize->GetWidth()) / 2,
(info.iHeight - pResize->GetHeight()) / 2);
}
// Enable the default control
EnableControl(m_iControl);
}