public EditParamForm(SetObjectParam param, SetObjectTypeParam paramType) : this() { Param = param; Type = param.DataType; ParamType = paramType; titleLbl.Text += param.DataType.Name; if (paramType != null && paramType.Enums.Count > 0) { CheckBox_UseEnum.Enabled = true; foreach (var tempEnum in paramType.Enums) { ComboBox_Enum.Items.Add(tempEnum); } ComboBox_Enum.SelectedItem = ComboBox_Enum.Items[0]; } UpdateTypes(); Read(); }
private void Duplicate_SOBJ_ToolStripMenuItem_Click(object sender, EventArgs e) { if (SelectedSetObject != null) { var sobj = new SetObject(); sobj.ObjectID = NewObjectForm.GenerateID(SetData); sobj.ObjectType = SelectedSetObject.ObjectType; sobj.Transform = new SetObjectTransform(); sobj.Transform.Position = SelectedSetObject.Transform.Position; sobj.Transform.Rotation = SelectedSetObject.Transform.Rotation; sobj.Transform.Scale = SelectedSetObject.Transform.Scale; // Copy Params foreach (var param in SelectedSetObject.Parameters) { var newParam = new SetObjectParam(); newParam.Data = param.Data; newParam.DataType = param.DataType; sobj.Parameters.Add(newParam); } // Copy Transforms var transforms = new List <SetObjectTransform>(); foreach (var transform in SelectedSetObject.Children) { var newTransform = new SetObjectTransform(); newTransform.Position = transform.Position; newTransform.Rotation = transform.Rotation; newTransform.Scale = transform.Scale; transforms.Add(newTransform); } sobj.Children = transforms.ToArray(); SetData.Objects.Add(sobj); SelectSetObject(sobj); UpdateObjects(); } }