void PanelControllers::notifySelectItem(MyGUI::ListBox* _sender, size_t _index) { destroyPropertyFields(); mIndexSelected = mList->getIndexSelected(); if (MyGUI::ITEM_NONE == mIndexSelected) return; std::string key = mList->getItemNameAt(mIndexSelected); mControllerName->setOnlyText(key); if (mControllersProperties.find(key) != mControllersProperties.end()) { ControllerInfo* controllerInfo = *mList->getItemDataAt<ControllerInfo*>(mIndexSelected); for (MyGUI::MapString::iterator iter = mControllersProperties[key].begin(); iter != mControllersProperties[key].end(); ++iter) { std::string value = ""; if (controllerInfo->mProperty.find(iter->first) != controllerInfo->mProperty.end()) value = controllerInfo->mProperty[iter->first]; IPropertyField* field = PropertyFieldManager::getInstance().createPropertyField(mWidgetClient, iter->second); field->setTarget(mCurrentWidget); field->setName(iter->first); field->setValue(value); field->eventAction = MyGUI::newDelegate(this, &PanelControllers::notifyAction); mFields.push_back(field); } } updateSize(); }
void PanelControllers::update(MyGUI::Widget* _currentWidget) { destroyPropertyFields(); mCurrentWidget = _currentWidget; if (mCurrentWidget == nullptr) return; WidgetContainer* widgetContainer = EditorWidgets::getInstance().find(_currentWidget); mList->removeAllItems(); for (std::vector<ControllerInfo*>::iterator iter = widgetContainer->mController.begin(); iter != widgetContainer->mController.end(); ++iter) { mList->addItem((*iter)->mType, *iter); } mPanelCell->setClientHeight(mButtonDelete->getCoord().bottom()); }
void PanelExtensionProperties::update(MyGUI::Widget* _currentWidget) { destroyPropertyFields(); mCurrentWidget = _currentWidget; if (mCurrentWidget == nullptr) return; WidgetContainer* widgetContainer = EditorWidgets::getInstance().find(_currentWidget); WidgetStyle* widgetType = WidgetTypes::getInstance().findWidgetStyle(widgetContainer->type); AddParametrs(widgetType, widgetContainer, mCurrentWidget); bool visible = mFields.size() > 0; setVisible(visible); updateSize(); }
void PanelTemplateProperties::update(MyGUI::Widget* _currentWidget, WidgetStyle* _widgetType) { destroyPropertyFields(); mCurrentWidget = _currentWidget; if (mCurrentWidget == nullptr) return; WidgetContainer* widgetContainer = EditorWidgets::getInstance().find(_currentWidget); //mPanelCell->setCaption(replaceTags("PanelTemplatePropertiesName")); AddParametrs(_widgetType, widgetContainer, mCurrentWidget); bool visible = !mFields.empty(); setVisible(visible); updateSize(); }
void PanelTemplateProperties::shutdown() { destroyPropertyFields(); }
void PanelMainProperties::shutdown() { destroyPropertyFields(); }
void PanelControllers::shutdown() { destroyPropertyFields(); }
void PanelExtensionProperties::shutdown() { destroyPropertyFields(); }