コード例 #1
0
        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();
        }
コード例 #2
0
        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();
            }
        }