Exemplo n.º 1
0
        private void insertarImagen_Click(object sender, EventArgs e)
        {
            PictureBox imagen = new PictureBox();

            OpenFileDialog dialogoBuscarArchivo = new OpenFileDialog();

            //Se crean las opciones de busqueda
            dialogoBuscarArchivo.InitialDirectory = "c:\\";
            dialogoBuscarArchivo.Filter           = "Image Files(*.jpg; *.jpeg; *.gif; *.png; *.bmp)|*.jpg; *.jpeg; *.gif; *.png; *.bmp";

            //el ShowDialog() muestra el explorador de archivos para que elijas tu archivo. Si se hace click en Aceptar , se abre el archivo
            if (dialogoBuscarArchivo.ShowDialog() == DialogResult.OK)
            {
                Bitmap img = new Bitmap(dialogoBuscarArchivo.FileName);

                var imageHeight = img.Height;
                var imageWidth  = img.Width;

                //propiedades de la imagen
                imagen.Size = new Size(imageWidth, imageHeight);

                //Guardar imagen en la carpeta ImagenesBD
                if (!File.Exists(@"..\..\ImagenesBD\\" + dialogoBuscarArchivo.SafeFileName))
                {
                    imagen.Image.Save(@"..\..\ImagenesBD\\" + dialogoBuscarArchivo.SafeFileName);
                }

                //Añadir elemento a la base de datos
                ClaseElemento oelemento = new ClaseElemento("img", dialogoBuscarArchivo.SafeFileName, Convert.ToInt16(columna_id.Text), imagen.Width, 0, 0, imagen.Height);

                BDElementos.insertarElemento(oelemento);
            }
        }
Exemplo n.º 2
0
        //funcion para cuando se deja de clickar en la esquina inferior para modificar el tamaño del elemento
        private void pictureBox1_MouseUp(object sender, MouseEventArgs e, Control elemento)
        {
            allowResize = false;

            //actualizar el tamaño del elemento en base de datos
            BDElementos.actualizarTamaño(elemento.Width, elemento.Height, Convert.ToInt16(elemento.Name));
        }
Exemplo n.º 3
0
        private void insertarVideo_Click(object sender, EventArgs e)
        {
            string url = Interaction.InputBox("Introduce la url del video que quieres insertar", "Video", "");

            if (String.IsNullOrEmpty(url) || String.IsNullOrWhiteSpace(url))
            {
                MessageBox.Show("Introduce una url valida");
            }
            else
            {
                //Añadir elemento a la base de datos
                ClaseElemento oelemento = new ClaseElemento("video", url, Convert.ToInt16(columna_id.Text), 240, 0, 0, 120);

                BDElementos.insertarElemento(oelemento);
            }
        }
Exemplo n.º 4
0
        private void insertarParrafo_Click(object sender, EventArgs e)
        {
            string textoParrafo = Interaction.InputBox("Introduce el parrafo que quieres insertar", "Parrafo", "");

            if (String.IsNullOrEmpty(textoParrafo) || String.IsNullOrWhiteSpace(textoParrafo))
            {
                MessageBox.Show("Introduce un nombre valido");
            }
            else
            {
                Label parrafo = new Label();

                //Añadir elemento a la base de datos
                ClaseElemento oelemento = new ClaseElemento("p", textoParrafo, Convert.ToInt16(columna_id.Text), 300, 0, 0, 300);

                BDElementos.insertarElemento(oelemento);
            }
        }
Exemplo n.º 5
0
        //tercera parte de la funcion para que un elemento se pueda mover
        public void controlMovible(Control control, Control container, Direction direction)
        {
            bool  Dragging  = false;
            Point DragStart = Point.Empty;

            //funcion para cuando clickas sobre el elemento para modificar la posicion del elemento
            control.MouseDown += delegate(object sender, MouseEventArgs e)
            {
                Dragging        = true;
                DragStart       = new Point(e.X, e.Y);
                control.Capture = true;
            };

            //funcion para cuando se deja de clickar sobre el elemento para modificar la posicion del elemento
            control.MouseUp += delegate(object sender, MouseEventArgs e)
            {
                Dragging        = false;
                control.Capture = false;

                BDElementos.actualizarPosicion(container.Left, container.Top, Convert.ToInt16(container.Name));
            };

            //funcion que al estar clickando permite modificar la posicion del elemento
            control.MouseMove += delegate(object sender, MouseEventArgs e)
            {
                //metodo para que el elemento no pueda sobrepasar el ancho del contenedor de la columna
                container = (Control)sender;
                Rectangle panelcontenedor = container.Parent.ClientRectangle;

                if (Dragging)
                {
                    if (direction != Direction.Vertical)
                    {
                        container.Left = Math.Min(Math.Max(10, e.X + container.Left - DragStart.X), panelcontenedor.Right - container.Width) - 10;
                    }

                    if (direction != Direction.Horizontal)
                    {
                        container.Top = Math.Min(Math.Max(10, e.Y + container.Top - DragStart.Y), panelcontenedor.Bottom - container.Height) - 10;
                    }
                }
            };
        }
Exemplo n.º 6
0
        private void insertarTitulo_Click(object sender, EventArgs e)
        {
            string textoTitulo = Interaction.InputBox("Introduce el titulo que quieres insertar", "Titulo", "");

            if (String.IsNullOrEmpty(textoTitulo) || String.IsNullOrWhiteSpace(textoTitulo))
            {
                MessageBox.Show("Introduce un nombre valido");
            }
            else
            {
                //propiedades del titulo
                Label titulo = new Label();
                titulo.Text     = textoTitulo;
                titulo.AutoSize = true;

                //Añadir elemento a la base de datos
                ClaseElemento oelemento = new ClaseElemento("title", textoTitulo, Convert.ToInt16(columna_id.Text), titulo.Width, 0, 0, 26);

                BDElementos.insertarElemento(oelemento);
            }
        }
Exemplo n.º 7
0
        private void borrarElemento(int id, object sender, EventArgs e)
        {
            this.Cursor   = Cursors.Default;
            posibleBorrar = true;

            //una vez haber elegido que elemento se va a borrar se elimina el evento click llamando al metodo borrarEventoClick
            for (int x = 0; x < contenedorColumna.Controls.Count; x++)
            {
                borrarEventoClick(contenedorColumna.Controls[x]);
            }

            //ventana para confirmar que se quiere borrar el elemento
            DialogResult confirmar = MessageBox.Show("El elemento se borrara para siempre, estas seguro de que quieres eliminar este elemento", "Borrar", MessageBoxButtons.YesNo, MessageBoxIcon.Information);

            //si la respuesta a confirmar es que si se llamara al metodo para eliminar el elemento de base de datos
            if (confirmar == DialogResult.Yes)
            {
                BDElementos.borrarElemento(id);
                contenedorColumna.Controls.Clear();
                Columna_Activated(sender, e);
            }
        }
Exemplo n.º 8
0
        public void pintarBloques()
        {
            //limpiar la lista de columnas y las columnas que contiene el bloque para evitar repetidos
            listaColumnas.Clear();
            contenedor.Controls.Clear();

            //se rellena la lista de columnas desde base de datos para posteriormente recorrerla
            listaColumnas = BDColumnas.buscarColumnas(bloque_id.Text);

            if (listaColumnas != null)
            {
                foreach (ClaseColumna ocolumna in listaColumnas)
                {
                    //se crea la columna, aparte de funciones necesarias para el correcto funcionamiento
                    Panel panel1 = new Panel();

                    //Propiedades que tendra la columna al ser creada
                    panel1.BorderStyle = BorderStyle.FixedSingle;
                    panel1.Name        = "columna" + contador;
                    panel1.Size        = new Size(ocolumna.ancho, ocolumna.alto);

                    if (ocolumna.ancho + ocolumna.espacio_izquierda > 1260)
                    {
                        int espacioNuevo = 1260 - ocolumna.ancho;
                        panel1.Left = espacioNuevo;
                        BDColumnas.actualizarPosicion(espacioNuevo, ocolumna.espacio_arriba, ocolumna.titulo);
                    }
                    else
                    {
                        panel1.Left = ocolumna.espacio_izquierda;
                    }

                    panel1.Top         = ocolumna.espacio_arriba;
                    panel1.MaximumSize = new Size(1260, 570);
                    panel1.MinimumSize = new Size(200, 100);
                    panel1.BackColor   = Color.Transparent;

                    //caja de texto donde se guarda el nombre de la columna
                    Label nombre = new Label();
                    nombre.Text     = ocolumna.titulo;
                    nombre.AutoSize = true;
                    nombre.Font     = new Font("Arial", 22, FontStyle.Bold);
                    nombre.Location = new Point(30, 30);
                    nombre.Visible  = false;

                    panel1.Controls.Add(nombre);

                    this.Controls.Add(panel1);

                    contenedor.Controls.Add(panel1);

                    contador++;

                    //rellena la lista de elementos desde base de datos para posteriormente recorrela
                    Columna.listaElementos = BDElementos.buscarElementos(ocolumna.id.ToString());
                    if (Columna.listaElementos != null)
                    {
                        foreach (ClaseElemento oelemento in Columna.listaElementos)
                        {
                            string tipo = oelemento.tipo;

                            switch (tipo)
                            {
                            case "img":

                                PictureBox imagen = new PictureBox();
                                imagen.Image = Image.FromFile(@"..\..\ImagenesBD\\" + oelemento.contenido);

                                Bitmap img = new Bitmap(Image.FromFile(@"..\..\ImagenesBD\\" + oelemento.contenido));

                                var imageHeight = img.Height;
                                var imageWidth  = img.Width;

                                //propiedades de la imagen
                                imagen.Top      = oelemento.espacio_arriba;
                                imagen.Left     = oelemento.espacio_izquierda;
                                imagen.Name     = oelemento.id.ToString();
                                imagen.Size     = new Size(imageWidth, imageHeight);
                                imagen.SizeMode = PictureBoxSizeMode.StretchImage;
                                imagen.Width    = oelemento.ancho;
                                imagen.Height   = oelemento.alto;
                                imagen.Enabled  = false;

                                panel1.Controls.Add(imagen);
                                break;

                            case "video":
                                PictureBox video = new PictureBox();
                                video.Image = Image.FromFile(@"..\..\Imagenes\play.png");

                                //propiedades del video
                                video.Top         = oelemento.espacio_arriba;
                                video.Left        = oelemento.espacio_izquierda;
                                video.Name        = oelemento.id.ToString();
                                video.BorderStyle = BorderStyle.FixedSingle;
                                video.SizeMode    = PictureBoxSizeMode.CenterImage;
                                video.Width       = oelemento.ancho;
                                video.Height      = oelemento.alto;
                                video.Enabled     = false;

                                panel1.Controls.Add(video);
                                break;

                            case "p":
                                Label parrafo = new Label();
                                parrafo.Text = oelemento.contenido;

                                //propiedades del parrafo
                                parrafo.Top     = oelemento.espacio_arriba;
                                parrafo.Left    = oelemento.espacio_izquierda;
                                parrafo.Name    = oelemento.id.ToString();
                                parrafo.Font    = new Font("Arial", 9);
                                parrafo.Width   = oelemento.ancho;
                                parrafo.Height  = oelemento.alto;
                                parrafo.Enabled = false;

                                panel1.Controls.Add(parrafo);
                                break;

                            case "title":
                                Label titulo = new Label();
                                titulo.Text = oelemento.contenido;

                                //propiedades del titulo
                                titulo.Top     = oelemento.espacio_arriba;
                                titulo.Left    = oelemento.espacio_izquierda;
                                titulo.Name    = oelemento.id.ToString();
                                titulo.Font    = new Font("Arial", 16);
                                titulo.Width   = oelemento.ancho;
                                titulo.Height  = oelemento.alto;
                                titulo.Enabled = false;

                                panel1.Controls.Add(titulo);
                                break;
                            }
                        }
                        Columna.listaElementos.Clear();
                    }
                    else
                    {
                        Columna.listaElementos = new ArrayList();
                    }
                    panel1.MinimumSize = new Size(200, panel1.Height);
                    panel1.BringToFront();

                    //añade un evento cuando se hace click sobre una columna
                    panel1.DoubleClick += delegate(object send, EventArgs ea) { Controlador.mostrarColumna(send, ea, ocolumna.titulo, panel1.Width, panel1.Height); Hide(); };
                    panel1.MouseEnter  += delegate(object send, EventArgs ea) { panel1.Cursor = Cursors.SizeAll; };
                    panel1.MouseLeave  += delegate(object send, EventArgs ea) { panel1.Cursor = Cursors.Default; };
                    controlMovible(panel1);
                }
                listaColumnas.Clear();
            }
            else
            {
                listaColumnas = new ArrayList();
            }
        }
Exemplo n.º 9
0
        private void Columna_Activated(object sender, EventArgs e)
        {
            contenedorColumna.Controls.Clear();
            crearBarrasDeRedimension();

            //rellena la lista de elementos desde base de datos para posteriormente recorrela
            listaElementos = BDElementos.buscarElementos(columna_id.Text);
            if (listaElementos != null)
            {
                foreach (ClaseElemento oelemento in listaElementos)
                {
                    string tipo = oelemento.tipo;

                    switch (tipo)
                    {
                    case "img":
                        PictureBox imagen = new PictureBox();
                        imagen.Image = Image.FromFile(@"..\..\ImagenesBD\\" + oelemento.contenido);

                        //propiedades de la imagen
                        imagen.Top         = oelemento.espacio_arriba;
                        imagen.Left        = oelemento.espacio_izquierda;
                        imagen.Name        = oelemento.id.ToString();
                        imagen.BorderStyle = BorderStyle.FixedSingle;
                        imagen.MaximumSize = new Size(1260, 570);
                        imagen.MinimumSize = new Size(10, 10);
                        imagen.SizeMode    = PictureBoxSizeMode.StretchImage;
                        imagen.Width       = oelemento.ancho;
                        imagen.Height      = oelemento.alto;

                        //elemento para poder cambiar el tamaño de la imagen
                        PictureBox pictureBox1 = new PictureBox();
                        pictureBox1.BackColor  = Color.FromArgb(185, 209, 234);
                        pictureBox1.Anchor     = ((AnchorStyles)((AnchorStyles.Right | AnchorStyles.Bottom)));
                        pictureBox1.Cursor     = Cursors.SizeNWSE;
                        pictureBox1.Left       = imagen.Width - 10;
                        pictureBox1.Top        = imagen.Height - 10;
                        pictureBox1.MouseDown += delegate(object send, MouseEventArgs ea) { this.pictureBox1_MouseDown(send, ea, imagen, pictureBox1); };
                        pictureBox1.MouseMove += delegate(object send, MouseEventArgs ea) { this.pictureBox1_MouseMove(send, ea, imagen, pictureBox1); };
                        pictureBox1.MouseUp   += delegate(object send, MouseEventArgs ea) { this.pictureBox1_MouseUp(send, ea, imagen); };

                        imagen.Controls.Add(pictureBox1);

                        //Añadir la imagen al panel
                        contenedorColumna.Controls.Add(imagen);

                        controlMovible(imagen);
                        break;

                    case "video":
                        PictureBox video = new PictureBox();
                        video.Image = Image.FromFile(@"..\..\Imagenes\play.png");

                        //propiedades del video
                        video.Top         = oelemento.espacio_arriba;
                        video.Left        = oelemento.espacio_izquierda;
                        video.Name        = oelemento.id.ToString();
                        video.BorderStyle = BorderStyle.FixedSingle;
                        video.SizeMode    = PictureBoxSizeMode.CenterImage;
                        //video.MinimumSize = new Size(240, 135);
                        video.MinimumSize = new Size(10, 10);
                        video.Width       = oelemento.ancho;
                        video.Height      = oelemento.alto;

                        //elemento para poder cambiar el tamaño de la imagen
                        PictureBox pictureBox2 = new PictureBox();
                        pictureBox2.BackColor  = Color.FromArgb(185, 209, 234);
                        pictureBox2.Height     = video.Height;
                        pictureBox2.Anchor     = ((AnchorStyles)((AnchorStyles.Right | AnchorStyles.Bottom)));
                        pictureBox2.Cursor     = Cursors.SizeNWSE;
                        pictureBox2.Left       = video.Width - 10;
                        pictureBox2.Top        = video.Height - 10;
                        pictureBox2.MouseDown += delegate(object send, MouseEventArgs ea) { this.pictureBox1_MouseDown(send, ea, video, pictureBox2); };
                        pictureBox2.MouseMove += delegate(object send, MouseEventArgs ea) { this.pictureBox1_MouseMove(send, ea, video, pictureBox2); };
                        pictureBox2.MouseUp   += delegate(object send, MouseEventArgs ea) { this.pictureBox1_MouseUp(send, ea, video); };

                        video.Controls.Add(pictureBox2);

                        //Añadir la imagen al panel
                        contenedorColumna.Controls.Add(video);

                        controlMovible(video);
                        break;

                    case "p":
                        Label parrafo = new Label();
                        parrafo.Text = oelemento.contenido;

                        //propiedades del parrafo
                        parrafo.Top         = oelemento.espacio_arriba;
                        parrafo.Left        = oelemento.espacio_izquierda;
                        parrafo.Name        = oelemento.id.ToString();
                        parrafo.Font        = new Font("Arial", 9);
                        parrafo.BorderStyle = BorderStyle.FixedSingle;
                        parrafo.MaximumSize = new Size(1260, 570);
                        parrafo.MinimumSize = new Size(10, 10);
                        parrafo.Width       = oelemento.ancho;
                        parrafo.Height      = oelemento.alto;

                        //elemento para poder cambiar el tamaño de la imagen
                        PictureBox pictureBox3 = new PictureBox();
                        pictureBox3.BackColor  = Color.FromArgb(185, 209, 234);
                        pictureBox3.Height     = parrafo.Height;
                        pictureBox3.Anchor     = ((AnchorStyles)((AnchorStyles.Right | AnchorStyles.Bottom)));
                        pictureBox3.Cursor     = Cursors.SizeNWSE;
                        pictureBox3.Left       = parrafo.Width - 10;
                        pictureBox3.Top        = parrafo.Height - 10;
                        pictureBox3.MouseDown += delegate(object send, MouseEventArgs ea) { this.pictureBox1_MouseDown(send, ea, parrafo, pictureBox3); };
                        pictureBox3.MouseMove += delegate(object send, MouseEventArgs ea) { this.pictureBox1_MouseMove(send, ea, parrafo, pictureBox3); };
                        pictureBox3.MouseUp   += delegate(object send, MouseEventArgs ea) { this.pictureBox1_MouseUp(send, ea, parrafo); };

                        parrafo.Controls.Add(pictureBox3);

                        //Añadir la imagen al panel
                        contenedorColumna.Controls.Add(parrafo);

                        controlMovible(parrafo);
                        break;

                    case "title":
                        Label titulo = new Label();
                        titulo.Text = oelemento.contenido;

                        //propiedades del titulo
                        titulo.Top         = oelemento.espacio_arriba;
                        titulo.Left        = oelemento.espacio_izquierda;
                        titulo.Name        = oelemento.id.ToString();
                        titulo.BorderStyle = BorderStyle.FixedSingle;
                        titulo.Font        = new Font("Arial", 16);
                        titulo.MaximumSize = new Size(1260, 26);
                        titulo.MinimumSize = new Size(10, 26);
                        titulo.Width       = oelemento.ancho;
                        titulo.Height      = oelemento.alto;

                        //elemento para poder cambiar el tamaño de la imagen
                        PictureBox pictureBox4 = new PictureBox();
                        pictureBox4.BackColor  = Color.FromArgb(185, 209, 234);
                        pictureBox4.Height     = titulo.Height;
                        pictureBox4.Anchor     = ((AnchorStyles)((AnchorStyles.Right | AnchorStyles.Bottom)));
                        pictureBox4.Cursor     = Cursors.SizeNWSE;
                        pictureBox4.Left       = titulo.Width - 10;
                        pictureBox4.Top        = titulo.Height - 10;
                        pictureBox4.MouseDown += delegate(object send, MouseEventArgs ea) { this.pictureBox1_MouseDown(send, ea, titulo, pictureBox4); };
                        pictureBox4.MouseMove += delegate(object send, MouseEventArgs ea) { this.pictureBox1_MouseMove(send, ea, titulo, pictureBox4); };
                        pictureBox4.MouseUp   += delegate(object send, MouseEventArgs ea) { this.pictureBox1_MouseUp(send, ea, titulo); };

                        titulo.Controls.Add(pictureBox4);

                        //Añadir la imagen al panel
                        contenedorColumna.Controls.Add(titulo);

                        controlMovible(titulo);
                        break;
                    }
                }
                listaElementos.Clear();
            }
            else
            {
                listaElementos = new ArrayList();
            }
        }