} //Pendiente void addImagenBot_Click(object sender, RoutedEventArgs e) { Microsoft.Win32.OpenFileDialog opener = new Microsoft.Win32.OpenFileDialog(); opener.Filter = "Imagenes JPG, PNG, BMP|*.jpg;*.png;*.bmp"; opener.Multiselect = false; Nullable <bool> result = opener.ShowDialog(); if ((bool)result) { Imagen img = new Imagen(opener.FileName, opener.FileName.Substring(opener.FileName.Length - 3)); if (img.Exito) { if (introImg) { MessageBox.Show("Para añadir la imagen, haz click en el punto " + '\n' + "en que quieras agregarla", "Información", MessageBoxButton.OK, MessageBoxImage.Information); introImg = false; } cursorActual = modoCursor.imagen; imagenActiva = img; cursorActivo = true; } else { img = null; cursorActual = modoCursor.normal; MessageBox.Show("Error : La imagen no pudo abrirse." + '\n' + "Suele pasar con imagenes jpg", "Error", MessageBoxButton.OK); } } }
void areaDibujo_MouseDown(object sender, MouseButtonEventArgs e) { Point puntoInit = e.GetPosition(areaDibujo); if (inpos(puntoInit, areaDibujo)) { if (cursorActual == modoCursor.poligono) { Canvas rect = new Canvas(); rect.Background = new SolidColorBrush(pincel.color); Canvas.SetLeft(rect, puntoInit.X); Canvas.SetTop(rect, puntoInit.Y); Capas[capaActual].Children.Add(rect); rect.Tag = puntoInit; cursorActivo = true; elementoActivo = rect; //Activar eventos para enviar data } if (cursorActual == modoCursor.pincel) { Line l = new Line(); l.Stroke = new SolidColorBrush(pincel.color); l.StrokeThickness = pincel.grosor; l.X1 = puntoInit.X; l.Y1 = puntoInit.Y; l.X2 = puntoInit.X; l.Y2 = puntoInit.Y; Capas[capaActual].Children.Add(l); elementoActivo = l; cursorActivo = true; } if (cursorActual == modoCursor.imagen) { Imagen img = imagenActiva as Imagen; Point pt = e.GetPosition(areaDibujo); if ((pt.X + largoImg) < largo && (pt.Y + altoImg) < alto) { img.inicializar(largoImg, altoImg, pt); Capas[capaActual].Children.Add(img); areaDibujo_MouseUp(null, null); elementoActivo = null; cursorActivo = false; cursorActual = modoCursor.normal; //enviando paquete PaqueteEdit pq = new PaqueteEdit(tipoMensaje.Imagen); pq.obj1 = largoImg; pq.obj2 = altoImg; pq.obj3 = pt.X; pq.obj4 = pt.Y; pq.obj5 = img.extension; pq.obj6 = capaActual; pq.obj = img.mem; clienteAsociado.enviarMensaje(pq); } } if (cursorActual == modoCursor.linea) { Line l = new Line(); l.Stroke = new SolidColorBrush(pincel.color); l.StrokeThickness = pincel.grosor; l.X1 = puntoInit.X; l.Y1 = puntoInit.Y; Capas[capaActual].Children.Add(l); elementoActivo = l; cursorActivo = true; } } }
void CrearPincel_Click(object sender, RoutedEventArgs e) { cursorActual = modoCursor.pincel; }
void crearLinea_Click(object sender, RoutedEventArgs e) { cursorActual = modoCursor.linea; }
void crearPoligono_Click(object sender, RoutedEventArgs e) { cursorActual = modoCursor.poligono; }
void norm_Click(object sender, RoutedEventArgs e) { elementoActivo = null; cursorActivo = false; cursorActual = modoCursor.normal; }