//Toma el nombre de la campaña, y la dirección de la imagen, comprueba si es absoluta o relativa para cargarla de una forma u otra //Tras eso mueve la imagen a un apartado especifico para las campañas, que sera images\USER\nombreusuario\nombrecampaña\icon\imagen //Tras todo eso manda la dirección al image private void ComprobarImagen() { //Variables iniciales, como nombre de campaña por si es definida por usuario, y la variable donde se incluira la dirección completa var nombrecampana = Campanas[campaignComboBox.SelectedIndex].Nombre; string direccioncompletaimagen; //Comprueba si la dirección es relativa u absoluta si contiene :\\, en función de eso le añade lo que falta para que sea absoluta si es relativa. if (Campanas[this.campaignComboBox.SelectedIndex].DireccionImagen.Contains(":\\")) { direccioncompletaimagen = Campanas[this.campaignComboBox.SelectedIndex].DireccionImagen; } else { direccioncompletaimagen = RecursosAplicacion.DireccionBase + Campanas[this.campaignComboBox.SelectedIndex].DireccionImagen; } //una vez definida la dirección, indica la carpeta donde se guardara si no se encuentra, el nombre del fichero y genera el path string carpeta = RecursosAplicacion.Directorios["imagenes_usuario"] + $"\\{RecursosAplicacion.SesionUsuario.NombreUsuario}\\{nombrecampana}\\icon\\"; string fichero = Path.GetFileName(direccioncompletaimagen); string direccionueva = carpeta + fichero; //Comprobamos si existe la imagen, si existe cambiamos el image y ya esta if (File.Exists(direccioncompletaimagen)) { this.iconoCampaign.Source = new BitmapImage(new Uri(direccioncompletaimagen, UriKind.Absolute)); } //si la imagen no existe, lo advertimos, indicamos que seleccione una nueva imagen, y copiamos el archivo a la dirección especifica //para imagenes definidas por el usuario. //si el usuario no define ninguna imagen es decir es null ese campo pone la imagen por defecto de escudo-pregunta else { MessageBox.Show($"No se encuentra el fichero {fichero} en la ruta {direccioncompletaimagen} por favor seleccione la nueva ruta del fichero"); SelectorArchivos nuevoarchivo = new SelectorArchivos(); string direccionarchivo = nuevoarchivo.SeleccionImagen(); if (!(direccionarchivo is null)) { //Mueve el archivo y escribe en los datos de usuario la nueva dirección direccionueva = nuevoarchivo.MoverImagen(nombrecampana, direccionarchivo); this.iconoCampaign.Source = new BitmapImage(new Uri(direccionueva, UriKind.Absolute)); RecursosAplicacion.SesionUsuario.ListCampaigns[campaignComboBox.SelectedIndex].DireccionImagen = direccionueva; GestionArchivos.EscribirUsuarioLocal(); }
private void AddEscenario_Click(object sender, RoutedEventArgs e) { EscenarioCampana escenario1 = new EscenarioCampana(); escenario1.Nombre = this.TextBoxNombreEscenario.Text; escenario1.Descripcion = this.TextBoxDescripcionEscenario.Text; var iguales = Campana.ListaEscenarios.Where(c => c.Nombre.Equals(escenario1.Nombre) && c.Descripcion.Equals(escenario1.Descripcion)); if (!(iguales.Count() > 0)) { observable.Add(escenario1); RecursosAplicacion.SesionUsuario.ListCampaigns.First(c => c.Nombre.Equals(Campana.Nombre) && c.Descripcion.Equals(Campana.Descripcion)).ListaEscenarios.Add(escenario1); GestionArchivos.EscribirUsuarioLocal(); this.Close(); } else { MessageBox.Show(this.FindResource("ErrorAlreadyExists").ToString()); } }
private void AddAventura_Click(object sender, RoutedEventArgs e) { Aventura aventura1 = new Aventura(); aventura1.Nombre = this.TextBoxNombreAventura.Text; aventura1.Descripcion = this.TextBoxDescripcionAventura.Text; var iguales = Escenario.ListaAventuras.Where(c => c.Nombre.Equals(aventura1.Nombre) && c.Descripcion.Equals(aventura1.Descripcion)); if (!(iguales.Count() > 0)) { observable.Add(aventura1); var lista_escenarios = RecursosAplicacion.SesionUsuario.ListCampaigns.First(c => c.Nombre.Equals(Campana.Nombre) && c.Descripcion.Equals(Campana.Descripcion)).ListaEscenarios; lista_escenarios.First(c => c.Nombre.Equals(Escenario.Nombre) && c.Descripcion.Equals(Escenario.Descripcion)).ListaAventuras.Add(aventura1); GestionArchivos.EscribirUsuarioLocal(); this.Close(); } else { MessageBox.Show(this.FindResource("ErrorAlreadyExists").ToString()); } }
private void Modificar_Click(object sender, RoutedEventArgs e) { var resultado = Campana.ExisteCampanaObservable(campana, observable); if (resultado != null) { resultado.Nombre = this.NombreTextBox.Text; resultado.Descripcion = this.DescripcionTextBox.Text; if (!(this.direccionimagen is null)) { string direccion = this.archivo.MoverImagen(resultado.Nombre, this.direccionimagen); resultado.DireccionImagen = direccion; } RecursosAplicacion.SesionUsuario.ListCampaigns = this.observable.ToList <Campana>(); GestionArchivos.EscribirUsuarioLocal(); this.Close(); } else { MessageBox.Show(this.FindResource("ErrorDoesntExists").ToString()); } }
private void BotonModificarAventura_Click(object sender, RoutedEventArgs e) { Aventura aventura1 = new Aventura(); aventura1.Nombre = this.TextBoxNombreAventura.Text; aventura1.Descripcion = this.TextBoxDescripcionAventura.Text; var iguales = Observable.Where(c => c.Nombre.Equals(Aventura.Nombre) && c.Descripcion.Equals(Aventura.Descripcion)); if (iguales.Count() > 0) { iguales.First().Nombre = aventura1.Nombre; iguales.First().Descripcion = aventura1.Descripcion; var lista_escenarios = RecursosAplicacion.SesionUsuario.ListCampaigns.First(c => c.Nombre.Equals(Campana.Nombre) && c.Descripcion.Equals(Campana.Descripcion)).ListaEscenarios; lista_escenarios.First(c => c.Nombre.Equals(Escenario.Nombre) && c.Descripcion.Equals(Escenario.Descripcion)).ListaAventuras = observable.ToList <Aventura>(); GestionArchivos.EscribirUsuarioLocal(); this.Close(); } else { MessageBox.Show(this.FindResource("ErrorDoesntExists").ToString()); } }
public void ReemplazarCampana() { this.listacampaign[DatosAplicacion.IndiceCampana] = DatosAplicacion.CampanaSeleccionada; GestionArchivos.EscribirUsuarioLocal(); }