本文整理汇总了C++中mygui::Widget::getClientWidget方法的典型用法代码示例。如果您正苦于以下问题:C++ Widget::getClientWidget方法的具体用法?C++ Widget::getClientWidget怎么用?C++ Widget::getClientWidget使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类mygui::Widget
的用法示例。
在下文中一共展示了Widget::getClientWidget方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: moveNewWidget
void WidgetCreatorManager::moveNewWidget(const MyGUI::IntPoint& _point)
{
if (mNewWidget == nullptr)
{
// тип виджета может отсутсвовать
if (!MyGUI::WidgetManager::getInstance().isFactoryExist(mWidgetType))
return;
// выделяем верний виджет
if (!mPopupMode)
WidgetSelectorManager::getInstance().selectWidget(mStartPoint);
MyGUI::Widget* parent = WidgetSelectorManager::getInstance().getSelectedWidget();
// пока не найдем ближайшего над нами способного быть родителем
while (parent != nullptr && !WidgetTypes::getInstance().findWidgetStyle(parent->getTypeName())->parent)
parent = parent->getParent();
if (!WidgetTypes::getInstance().findWidgetStyle(mWidgetType)->child)
parent = nullptr;
if (parent != nullptr)
mNewWidget = parent->createWidgetT(
mPopupMode ? MyGUI::WidgetStyle::Popup : MyGUI::WidgetStyle::Child,
mWidgetType,
EditorWidgets::getInstance().getSkinReplace(mWidgetSkin),
MyGUI::IntCoord(),
MyGUI::Align::Default,
DEFAULT_EDITOR_LAYER);
else
mNewWidget = MyGUI::Gui::getInstance().createWidgetT(
mWidgetType,
EditorWidgets::getInstance().getSkinReplace(mWidgetSkin),
MyGUI::IntCoord(),
MyGUI::Align::Default,
DEFAULT_EDITOR_LAYER);
// переводим старт поинт в координаты отца
if (parent != nullptr && !mNewWidget->isRootWidget())
{
if (parent->getClientWidget())
mStartPoint -= parent->getClientWidget()->getAbsolutePosition();
else
mStartPoint -= parent->getAbsolutePosition();
}
if (!MyGUI::InputManager::getInstance().isShiftPressed())
{
mStartPoint.left = Grid::getInstance().toGrid(mStartPoint.left);
mStartPoint.top = Grid::getInstance().toGrid(mStartPoint.top);
}
}
MyGUI::IntCoord coord = getCoordNewWidget(_point);
mNewWidget->setCoord(coord);
eventChangeSelector(true, mNewWidget->getAbsoluteCoord());
}