public EditorType(AccesorValor accesor) : base(accesor) { InitializeComponent(); actualizando = true; try { comboBox1.Enabled = (accesor.ReadOnly == false); object val = accesor.GetValor(); if (val != null) { comboBox1.Items.Add(val); comboBox1.SelectedItem = val; } else { comboBox1.Items.Add(nullItem); comboBox1.SelectedItem = nullItem; } } finally { actualizando = false; } }
public EditorBoolean(AccesorValor accesor) : base(accesor) { InitializeComponent(); ActualizarValor(); }
public EditorEnum(AccesorValor accesor, EnumConverter enumConverter) : base(accesor) { InitializeComponent(); foreach (Object item in enumConverter.GetStandardValues()) { comboBox1.Items.Add(item); } ActualizarValor(); }
public EditorQuaternion(AccesorValor accesor) : base(accesor) { InitializeComponent(); ActualizarValor(); labelX.MouseDown += new MouseEventHandler(label_MouseDown); labelX.MouseUp += new MouseEventHandler(label_MouseUp); labelX.MouseMove += new MouseEventHandler(label_MouseMove); labelY.MouseDown += new MouseEventHandler(label_MouseDown); labelY.MouseUp += new MouseEventHandler(label_MouseUp); labelY.MouseMove += new MouseEventHandler(label_MouseMove); labelZ.MouseDown += new MouseEventHandler(label_MouseDown); labelZ.MouseUp += new MouseEventHandler(label_MouseUp); labelZ.MouseMove += new MouseEventHandler(label_MouseMove); }
public EditorColor4(AccesorValor accesor) : base(accesor) { InitializeComponent(); ActualizarValor(); labelR.MouseDown += new MouseEventHandler(label_MouseDown); labelR.MouseUp += new MouseEventHandler(label_MouseUp); labelR.MouseMove += new MouseEventHandler(label_MouseMove); labelG.MouseDown += new MouseEventHandler(label_MouseDown); labelG.MouseUp += new MouseEventHandler(label_MouseUp); labelG.MouseMove += new MouseEventHandler(label_MouseMove); labelB.MouseDown += new MouseEventHandler(label_MouseDown); labelB.MouseUp += new MouseEventHandler(label_MouseUp); labelB.MouseMove += new MouseEventHandler(label_MouseMove); }
public EditorNumber(AccesorValor accesor) : base(accesor) { InitializeComponent(); if (accesor.ValueType == typeof(float)) { internalType = InternalType.FLOAT; } else if (accesor.ValueType == typeof(int)) { internalType = InternalType.INT; } else { throw new NotSupportedException("Tipo de dato no soportado por el editor numerico: " + accesor.ValueType.Name); } ActualizarValor(); labelText.MouseDown += new MouseEventHandler(label_MouseDown); labelText.MouseUp += new MouseEventHandler(label_MouseUp); labelText.MouseMove += new MouseEventHandler(label_MouseMove); }
private void AgregarEditor(AccesorValor accesor) { if (accesor.ShowInEditor) { EditorBase controlEditor = null; if (controles.TryGetValue(accesor.ValueName, out controlEditor) == false) { Type tipo = accesor.ValueType; if (tipo == typeof(Vector3)) { controlEditor = new EditoresValores.EditorVector3(accesor); } if (tipo == typeof(OpenTK.Graphics.Color4)) { controlEditor = new EditoresValores.EditorColor4(accesor); } else if (tipo == typeof(Quaternion)) { controlEditor = new EditoresValores.EditorQuaternion(accesor); } else if (tipo == typeof(Boolean)) { controlEditor = new EditoresValores.EditorBoolean(accesor); } else if (tipo == typeof(String)) { controlEditor = new EditoresValores.EditorString(accesor); } else if (tipo == typeof(int) || tipo == typeof(float)) { controlEditor = new EditoresValores.EditorNumber(accesor); } else if (tipo.IsEnum) { controlEditor = new EditoresValores.EditorEnum(accesor, new EnumConverter(tipo)); } else if (tipo == typeof(Bitmap)) { controlEditor = new EditoresValores.EditorBimap(accesor); } else if (typeof(Component).IsAssignableFrom(tipo) || typeof(Resource).IsAssignableFrom(tipo)) { controlEditor = new EditoresValores.EditorType(accesor); } if (controlEditor != null) { controles.Add(accesor.ValueName, controlEditor); Label labelNombre = new Label(); labelNombre.AutoSize = true; labelNombre.Text = ProcesarNombreCampo(accesor.ValueName); labelNombre.Anchor = AnchorStyles.Left; controlEditor.Anchor = AnchorStyles.Left; tableLayoutPanel1.RowCount++; tableLayoutPanel1.Controls.Add(labelNombre, 0, tableLayoutPanel1.RowCount - 1); tableLayoutPanel1.Controls.Add(controlEditor, 1, tableLayoutPanel1.RowCount - 1); } } else { controlEditor.accesor = accesor; controlEditor.Update(); } } }
public EditorBase(AccesorValor accesor) { this.accesor = accesor; }
private bool LoadValueComponent(ComponentXML xmlComponent, AccesorValor accesor, out object val) { FieldValueXML fv = xmlComponent.FindAttribute(accesor.ValueName); Type tipo = accesor.ValueType; if (fv != null && fv.value != null) { if (typeof(Component).IsAssignableFrom(tipo)) { uint id = (uint)fv.ValueAs(typeof(uint)); Component otComp; if (id != uint.MaxValue) { if (handledComponents.TryGetValue(id, out otComp) == false) { otComp = null; } } else { otComp = Entity.Root; } if (otComp != null && tipo.IsAssignableFrom(otComp.GetType())) { val = otComp; return(true); } } else if (typeof(Resource).IsAssignableFrom(tipo)) { String resName = (String)fv.ValueAs(typeof(string)); Resource res = Resource.FindResource(tipo, resName); if (res != null) { val = res; return(true); } else { val = null; return(false); } } else if (tipo.IsEnum) { try { val = Enum.Parse(tipo, (String)fv.ValueAs(typeof(String)), true); return(true); } catch (ArgumentException) { } } else { val = fv.ValueAs(tipo); return(true); } } val = null; return(false); }