CVec2PropertyDescription::CVec2PropertyDescription(CSerializer* pSerializer) : super(NULL) { SetType(eRPT_Vec2F); SetMaxCount(VEC_COUNT); SetFixed(true); CPropertyDescriptionBase* pFloatProperty = CComponentProxyManager::GetInstance()->CreateProperty(eRPT_Float, NULL); SetTemplateProperty(pFloatProperty); TString InitValue = _T("0,0"); if (pSerializer != NULL) { InitValue.clear(); for (size_t i = 0; i < VEC_COUNT; ++i) { float fValue = 0; (*pSerializer) >> fValue; InitValue.append(wxString::Format(_T("%f"),fValue)); if (i != VEC_COUNT - 1) { InitValue.append(_T(",")); } CPropertyDescriptionBase* pChild = AddChild(NULL); pChild->InitializeValue(fValue); } ResetChildName(); }
CVec4PropertyDescription::CVec4PropertyDescription(CSerializer* pSerializer) : super(NULL) { SetType(eRPT_Vec4F); SetMaxCount(VEC_COUNT); CFloatPropertyDescription* pFloatProperty = down_cast<CFloatPropertyDescription*>(CComponentProxyManager::GetInstance()->CreateProperty(eRPT_Float, NULL)); pFloatProperty->SetSpinStep(0.1f); SetTemplateProperty(pFloatProperty); TString InitValue = _T("0,0,0,0"); if (pSerializer != NULL) { InitValue.clear(); for (uint32_t i = 0; i < VEC_COUNT; ++i) { float fValue = 0; (*pSerializer) >> fValue; InitValue.append(wxString::Format(_T("%f"),fValue)); if (i != VEC_COUNT - 1) { InitValue.append(_T(",")); } CPropertyDescriptionBase* pChild = InsertChild(NULL); pChild->InitializeValue(fValue); } ResetChildName(); }