void SeparatorTextureControl::updateVisible() { mHorizontalSelectorControl->setVisible(false); mVerticalSelectorControl->setVisible(false); if (getCurrentSeparator() != nullptr) { MyGUI::Align corner = getCurrentSeparator()->getCorner(); if (getCurrentSeparator()->getPropertySet()->getPropertyValue("Visible") == "True") { if (corner.isTop() || corner.isBottom()) mHorizontalSelectorControl->setVisible(true); else mVerticalSelectorControl->setVisible(true); } } }
void SeparatorTextureControl::updatePosition() { if (getCurrentSeparator() != nullptr) { MyGUI::UString value = getCurrentSeparator()->getPropertySet()->getPropertyValue("Offset"); MyGUI::Align corner = getCurrentSeparator()->getCorner(); int offset = 0; if (MyGUI::utility::parseComplex(value, offset)) { if (corner.isTop()) mHorizontalSelectorControl->setCoord(MyGUI::IntCoord(0, offset, mTextureRegion.width, 1)); else if (corner.isLeft()) mVerticalSelectorControl->setCoord(MyGUI::IntCoord(offset, 0, 1, mTextureRegion.height)); else if (corner.isBottom()) mHorizontalSelectorControl->setCoord(MyGUI::IntCoord(0, mTextureRegion.height - offset, mTextureRegion.width, 1)); else if (corner.isRight()) mVerticalSelectorControl->setCoord(MyGUI::IntCoord(mTextureRegion.width - offset, 0, 1, mTextureRegion.height)); } } }
void SeparatorTextureControl::notifyChangePosition() { if (getCurrentSeparator() != nullptr) { MyGUI::Align corner = getCurrentSeparator()->getCorner(); if (corner.isTop()) getCurrentSeparator()->getPropertySet()->setPropertyValue("Offset", MyGUI::utility::toString(mHorizontalSelectorControl->getPosition().top), mTypeName); else if (corner.isLeft()) getCurrentSeparator()->getPropertySet()->setPropertyValue("Offset", MyGUI::utility::toString(mVerticalSelectorControl->getPosition().left), mTypeName); else if (corner.isBottom()) getCurrentSeparator()->getPropertySet()->setPropertyValue("Offset", MyGUI::utility::toString(mTextureRegion.height - mHorizontalSelectorControl->getPosition().top), mTypeName); else if (corner.isRight()) getCurrentSeparator()->getPropertySet()->setPropertyValue("Offset", MyGUI::utility::toString(mTextureRegion.width - mVerticalSelectorControl->getPosition().left), mTypeName); } }
void SeparatorPropertyControl::updateSeparatorProperties() { SeparatorItem* separator = getCurrentSeparator(); mPropertyVisibleControl->setProperty(separator != nullptr ? separator->getPropertySet()->getChild("Visible") : nullptr); mPropertyPositionControl->setProperty(separator != nullptr ? separator->getPropertySet()->getChild("Offset") : nullptr); }