public visualizarAlbum(ref DiscoCompacto cd) { InitializeComponent(); CDaVisualizar = cd; buttonPATH.Hide(); albumAVisualizar = cd.Album; numDisco = 1; infoAlbum.Text = Programa.textosLocal.GetString("artista") + ": " + cd.Album.artista + Environment.NewLine + Programa.textosLocal.GetString("titulo") + ": " + cd.Album.nombre + Environment.NewLine + Programa.textosLocal.GetString("año") + ": " + cd.Album.year + Environment.NewLine + Programa.textosLocal.GetString("duracion") + ": " + cd.Album.duracion.ToString() + Environment.NewLine + Programa.textosLocal.GetString("genero") + ": " + cd.Album.genero.traducido + Environment.NewLine + Programa.textosLocal.GetString("formato") + ": " + Programa.textosLocal.GetString(cd.FormatoCD.ToString()) + Environment.NewLine + Programa.textosLocal.GetString("añoPublicacion") + ": " + cd.YearRelease + Environment.NewLine + Programa.textosLocal.GetString("paisPublicacion") + ":" + cd.PaisPublicacion + Environment.NewLine + Programa.textosLocal.GetString("estado_exterior") + ": " + Programa.textosLocal.GetString(cd.EstadoExterior.ToString()) + Environment.NewLine; labelEstadoDisco.Text = Programa.textosLocal.GetString("estado_medio") + " " + numDisco + ": " + Programa.textosLocal.GetString(cd.Discos[0].EstadoDisco.ToString()) + Environment.NewLine; if (cd.Album.caratula != "") { Image caratula = Image.FromFile(cd.Album.caratula); vistaCaratula.Image = caratula; vistaCaratula.SizeMode = PictureBoxSizeMode.StretchImage; } lvwColumnSorter = new ListViewItemComparer(); vistaCanciones.ListViewItemSorter = lvwColumnSorter; vistaCanciones.View = View.Details; vistaCanciones.MultiSelect = true; duracionSeleccionada.AutoSize = true; barraAbajo.Font = new Font("Segoe UI", 9); Controls.Add(barraAbajo); ponerTextos(); cargarVista(); }
public Anotaciones(ref DiscoCompacto cd) { InitializeComponent(); this.cd = cd; textBox1.Lines = cd.Anotaciones; buttonOk.Text = Programa.textosLocal.GetString("hecho"); }
/// <summary> /// Constructor para crear un segundo, tercer CD /// </summary> /// <param name="cdd">CD original</param> /// <param name="n">número del disco, en el caso de editar es disco 1, 2...</param> /// <param name="edit">configura el formulario para la edición</param> public CrearCD(ref DiscoCompacto cdd, short n, bool edit = false) { InitializeComponent(); NDisco = n; album = cdd.Album; cd = cdd; if (n > 1 && !edit) { labelFormato.Hide(); comboBoxFormatoCD.Hide(); labelAñoPublicacion.Hide(); comboBoxEstadoExterior.Hide(); labelEstadoExterior.Hide(); labelAñoPublicacion.Hide(); labelPaisPublicacion.Hide(); textBoxPais.Hide(); textBoxAño.Hide(); numericUpDownNumCanciones.Maximum = album.numCanciones - cdd.Discos[0].NumCanciones; numericUpDownNumCanciones.Value = numericUpDownNumCanciones.Maximum; Log.Instance.ImprimirMensaje("Creando otro CD con un máximo de " + numericUpDownNumCanciones.Maximum, TipoMensaje.Info); } else if (edit) { Log.Instance.ImprimirMensaje("Editando CD", TipoMensaje.Info); this.edit = true; comboBoxFormatoCD.SelectedItem = cdd.FormatoCD; comboBoxEstadoMedio.SelectedItem = cdd.Discos[n - 1].EstadoDisco; comboBoxEstadoExterior.SelectedItem = cdd.EstadoExterior; numericUpDownNumCanciones.Value = cdd.Discos[n - 1].NumCanciones; textBoxAño.Text = cd.YearRelease.ToString(); textBoxPais.Text = cd.PaisPublicacion; } PonerTextos(); }
public void devolverAlbum(string s, out DiscoCompacto cd) { cd = null; String[] busqueda = s.Split('_'); foreach (DiscoCompacto cdd in cds) { if (cdd.Album.artista == busqueda[0] && cdd.Album.nombre == busqueda[1]) { cd = cdd; } } }
/// <summary> /// devuelve un cd por id, tal vez habria que cambiar la EEDD /// </summary> /// <param name="i"></param> /// <returns></returns> public DiscoCompacto getCDById(string i) { DiscoCompacto busqueda = null; for (int j = 0; j < cds.Count; j++) { if (i == cds[j].Id) { busqueda = cds[j]; } } return(busqueda); }
private void buttonOK_Click(object sender, EventArgs e) { album.ProtegerBorrado(); EstadoMedio exterior = (EstadoMedio)Enum.Parse(typeof(EstadoMedio), comboBoxEstadoExterior.SelectedIndex.ToString()); EstadoMedio medio = (EstadoMedio)Enum.Parse(typeof(EstadoMedio), comboBoxEstadoMedio.SelectedIndex.ToString()); FormatoCD formato = (FormatoCD)Enum.Parse(typeof(FormatoCD), comboBoxFormatoCD.SelectedIndex.ToString()); string s = album.artista + "_" + album.nombre; if (edit) { cd.FormatoCD = formato; cd.Discos[NDisco - 1].EstadoDisco = medio; cd.EstadoExterior = exterior; cd.Discos[NDisco - 1].NumCanciones = (short)numericUpDownNumCanciones.Value; cd.YearRelease = Convert.ToInt16(textBoxAño.Text); cd.PaisPublicacion = textBoxPais.Text; visualizarAlbum nuevo = new visualizarAlbum(ref cd); Programa.refrescarVista(); nuevo.Show(); } else if (NC != album.numCanciones) { if (NDisco > 1) { Disco nuevo = new Disco(Convert.ToInt16(numericUpDownNumCanciones.Value), medio); cd.Discos[NDisco - 1] = nuevo; } else { DiscoCompacto cd = new DiscoCompacto(s, Convert.ToInt16(numericUpDownNumCanciones.Value), medio, exterior, formato, numDiscos); Programa.miColeccion.AgregarCD(ref cd); } } else { DiscoCompacto cd = null; try { cd = new DiscoCompacto(s, album.numCanciones, medio, exterior, formato, Convert.ToInt16(textBoxAño.Text), textBoxPais.Text); } catch (Exception) { cd = new DiscoCompacto(s, album.numCanciones, medio, exterior, formato, 0, textBoxPais.Text); } Programa.miColeccion.AgregarCD(ref cd); visualizarAlbum v = new visualizarAlbum(ref cd); v.Show(); } Dispose(); }
public visualizarAlbum(ref Album a) { InitializeComponent(); numDisco = 0; albumAVisualizar = a; CDaVisualizar = null; infoAlbum.Text = Programa.textosLocal.GetString("artista") + ": " + a.artista + Environment.NewLine + Programa.textosLocal.GetString("titulo") + ": " + a.nombre + Environment.NewLine + Programa.textosLocal.GetString("año") + ": " + a.year + Environment.NewLine + Programa.textosLocal.GetString("duracion") + ": " + a.duracion.ToString() + Environment.NewLine + Programa.textosLocal.GetString("genero") + ": " + a.genero.traducido + Environment.NewLine + "Localización: " + a.DirectorioSonido + Environment.NewLine; try { if (a.caratula != "") { Image caratula = Image.FromFile(a.caratula); vistaCaratula.Image = caratula; vistaCaratula.SizeMode = PictureBoxSizeMode.StretchImage; } } catch (FileNotFoundException) { Log.Instance.ImprimirMensaje("No se encuentra la carátula", TipoMensaje.Advertencia); vistaCaratula.Image = Properties.Resources.albumdesconocido; } lvwColumnSorter = new ListViewItemComparer(); vistaCanciones.ListViewItemSorter = lvwColumnSorter; vistaCanciones.View = View.Details; vistaCanciones.MultiSelect = true; duracionSeleccionada.AutoSize = true; barraAbajo.Font = new Font("Segoe UI", 10); Controls.Add(barraAbajo); labelEstadoDisco.Hide(); if (albumAVisualizar != null && (albumAVisualizar.DirectorioSonido == "" || albumAVisualizar.DirectorioSonido == null)) { buttonAnotaciones.Enabled = false; } if (string.IsNullOrEmpty(albumAVisualizar.DirectorioSonido)) { buttonPATH.Enabled = false; } if (!Programa.SpotifyActivado) { reproducirspotifyToolStripMenuItem.Enabled = false; } ponerTextos(); cargarVista(); }
public static void cargarCDS(string fichero = "cd.json") { if (!File.Exists(fichero)) { return; } using (StreamReader lector = new StreamReader(fichero)) { string linea; while (!lector.EndOfStream) { linea = lector.ReadLine(); DiscoCompacto cd = JsonConvert.DeserializeObject <DiscoCompacto>(linea); cd.InstallAlbum(); miColeccion.AgregarCD(ref cd); cd.Album.ProtegerBorrado(); } } }
private void generarAlbumToolStripMenuItem_Click(object sender, EventArgs e) { Log.ImprimirMensaje("Generando álbum al azar", TipoMensaje.Info); Stopwatch crono = Stopwatch.StartNew(); if (vistaAlbumes.Items.Count == 0) { crono.Stop(); Log.ImprimirMensaje("Cancelado por no haber álbumes", TipoMensaje.Advertencia); MessageBox.Show(Programa.textosLocal.GetString("error_noAlbumes"), "", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } Random generador = new Random(); switch (TipoVista) { case TipoVista.Digital: int ganador = generador.Next(0, Programa.miColeccion.albumes.Count); Album a = Programa.miColeccion.albumes[ganador]; visualizarAlbum vistazo = new visualizarAlbum(ref a); vistazo.Show(); break; case TipoVista.CD: int ganadorCD = generador.Next(0, Programa.miColeccion.cds.Count); DiscoCompacto cd = Programa.miColeccion.cds[ganadorCD]; visualizarAlbum vistazocd = new visualizarAlbum(ref cd); vistazocd.Show(); break; case TipoVista.Vinilo: break; default: break; } crono.Stop(); Log.ImprimirMensaje("Generado", TipoMensaje.Correcto, crono); }
private void crearCDToolStripMenuItem_Click(object sender, EventArgs e) { string seleccion = vistaAlbumes.SelectedItems[0].SubItems[0].Text + "_" + vistaAlbumes.SelectedItems[0].SubItems[1].Text; Album a = Programa.miColeccion.devolverAlbum(seleccion); if (a.duracion.TotalMinutes < 80) { CrearCD formCD = new CrearCD(ref a); formCD.Show(); } else { short numDiscos = (short)Math.Ceiling((a.duracion.TotalMinutes / 80)); CrearCD fCD = new CrearCD(ref a, numDiscos); fCD.ShowDialog(); for (short i = 2; i <= numDiscos; i++) { DiscoCompacto temp = Programa.miColeccion.cds.Last(); CrearCD formCD = new CrearCD(ref temp, i); formCD.ShowDialog(); } } }
public void BorrarCD(ref DiscoCompacto cual) { cds.Remove(cual); }
public void AgregarCD(ref DiscoCompacto cd) { cds.Add(cd); }
private void borrarAlbumesSeleccionados(TipoVista tipoVista) { Stopwatch crono = Stopwatch.StartNew(); borrando = true; int cuantos = vistaAlbumes.SelectedItems.Count; ListViewItem[] itemsABorrar = new ListViewItem[cuantos]; switch (tipoVista) { case TipoVista.Digital: Log.ImprimirMensaje("Borrando " + cuantos + " álbumes", TipoMensaje.Info); for (int i = 0; i < cuantos; i++) { itemsABorrar[i] = vistaAlbumes.SelectedItems[i]; } for (int i = 0; i < cuantos; i++) { try { string q = vistaAlbumes.SelectedItems[i].SubItems[0].Text + "_" + vistaAlbumes.SelectedItems[i].SubItems[1].Text; //artista_titulo Album a = Programa.miColeccion.devolverAlbum(q); Programa.miColeccion.quitarAlbum(ref a); } catch (InvalidOperationException) { Log.ImprimirMensaje("Hubo un error borrando.", TipoMensaje.Error, "principal.borrarAlbumesSeleccionados(TipoVista)"); MessageBox.Show(Programa.textosLocal.GetString("errorBorrado")); continue; } } for (int j = 0; j < cuantos; j++) { vistaAlbumes.Items.Remove(itemsABorrar[j]); } break; case TipoVista.CD: Log.ImprimirMensaje("Borrando " + vistaAlbumes.SelectedItems.Count + " CD", TipoMensaje.Info); for (int i = 0; i < cuantos; i++) { itemsABorrar[i] = vistaAlbumes.SelectedItems[i]; } for (int i = 0; i < cuantos; i++) { DiscoCompacto cdaborrar = Programa.miColeccion.getCDById(vistaAlbumes.SelectedItems[i].SubItems[5].Text); DiscoCompacto cdd = cdaborrar; Programa.miColeccion.BorrarCD(ref cdaborrar); cdd.Album.LevantarBorrado(); foreach (DiscoCompacto cd in Programa.miColeccion.cds) { if (cd.Album == cdd.Album) { cd.Album.ProtegerBorrado(); } } } for (int i = 0; i < cuantos; i++) { vistaAlbumes.Items.Remove(itemsABorrar[i]); } break; case TipoVista.Vinilo: break; default: break; } borrando = false; duracionSeleccionada.Text = Programa.textosLocal.GetString("dur_total") + ": 00:00:00"; vistaAlbumes.Refresh(); crono.Stop(); Log.ImprimirMensaje("Borrado completado en " + crono.ElapsedMilliseconds + "ms", TipoMensaje.Correcto); }