Beispiel #1
0
        public Creator(Area donde, bool finca)
        {
            MdiParent = MainForm.mainForm;
            InitializeComponent();

            esFinca = finca;

            this.MinimumSize = this.Size;

            // Crear el motor
            xpLugares = new PlaceExplorerEngine(
                null,
                MainForm.mainForm.Db,
                treeView1,
                null,
                PlaceExplorerEngine.Selector
                );

            // Seleccionar el que ya está seleccionado
            treeView1.SelectedNode = MainForm.LocateInTreeView(treeView1, donde);
            treeView1.SelectedNode.EnsureVisible();

            // Habilitar la info correspondiente
            textBox4.Text = 0.ToString(textBox4.Mask);
            if (esFinca)
            {
                tabPage2.Enabled = true;
                tabPage3.Enabled = false;
            }
            else
            {
                tabPage2.Enabled = false;
                tabPage3.Enabled = true;
            }
        }
        private void MainFormLoad(object sender, EventArgs e)
        {
            try {
                this.Visible = false;
                init.Show();

                // Crear la base de datos y el explorador de fincas
                Db = new Database("",
                                  this.StartProcess,
                                  this.MakeStepProcess,
                                  this.EndProcess);

                xpl = new PlaceExplorerEngine(
                    null,
                    Db,
                    EstatesTree,
                    null,
                    PlaceExplorerEngine.Launcher
                    );

                MinimumSize    = new System.Drawing.Size(400, 200);
                lblStatus.Text = "Preparado ...";

                // Preparar la ventana principal
                MainFormResize(this, null);

                // Preparar la imagen inicial
                EstatesTree.SelectedNode = EstatesTree.Nodes[0];
            }
            catch (UserException exc) {
                ChangeToErrorStatus();
                MessageBox.Show(
                    exc.Message,
                    "Gestor de Fincas",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                    );
            }
            catch (Exception exc) {
                ChangeToErrorStatus();
                MessageBox.Show(
                    exc.Message,
                    "Gestor de Fincas",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                    );
            }
            finally {
                init.Close();
                this.Show();
            }
        }
Beispiel #3
0
        public Eliminator(Area donde)
        {
            Area[] allAreas = MainForm.mainForm.Db.AllAreas;
            MdiParent = MainForm.mainForm;
            InitializeComponent();

            MaximumSize  = MinimumSize = Size;
            areaToRemove = null;
            SetTitle();

            // Crear el motor del explorador
            xpLugares = new PlaceExplorerEngine(
                null,
                MainForm.mainForm.Db,
                treeView,
                null,
                PlaceExplorerEngine.Selector
                );

            // Preparar el indicativo del área a eliminar
            treeView.SelectedNode = MainForm.LocateInTreeView(treeView, donde);
            treeView.SelectedNode.EnsureVisible();
            areaToRemove = donde;

            // Rellenar los combos
            MainForm.mainForm.StartProcess(
                "Leyendo BD...",
                0,
                allAreas.Length
                );

            for (int i = 0; i < allAreas.Length; ++i)
            {
                Area a = allAreas[i];

                // Añadir cada una de las áreas
                cbId.Items.Add(a.Id);
                cbName.Items.Add(a.Name);
            }

            MainForm.mainForm.EndProcess();

            // Prepararlos para empezar
            cbId.Text   = areaToRemove.Id;;
            cbName.Text = areaToRemove.Name;
        }
 private void OnLinkLabel2Clicked(object sender, LinkLabelLinkClickedEventArgs e)
 {
     PlaceExplorerEngine.LaunchExplorerFor(this.Lugar.Parent);
 }
Beispiel #5
0
 private void OnLinkShowInfoClicked(object sender, LinkLabelLinkClickedEventArgs e)
 {
     PlaceExplorerEngine.LaunchExplorerFor(this.Area);
 }
 private void ExploreToolStripMenuItem_Click(object sender, EventArgs e)
 {
     PlaceExplorerEngine.LaunchExplorerFor(xpl.SelectedArea);
 }
Beispiel #7
0
        private void OnButton1Click(object sender, EventArgs e)
        /// El botón "crear" es pulsado
        {
            Area     area = null;
            Area     otra;
            Database bd = MainForm.mainForm.Db;

            // id y nombre requeridos
            if (textBox1.Text.Length == 0 ||
                textBox2.Text.Length == 0)
            {
                MessageBox.Show(
                    "El nombre y el ID son obligatorios",
                    "Error",
                    MessageBoxButtons.OK
                    );

                goto fin;
            }

            // nombre e id deben ser únicos
            textBox2.Text = Area.NormalizeName(textBox2.Text);
            textBox1.Text = Area.NormalizeName(textBox1.Text);

            Application.DoEvents();

            if ((otra = bd.GetAreaById(textBox2.Text)) != null ||
                (otra = bd.GetAreaByName(textBox1.Text)) != null)
            {
                MessageBox.Show(
                    "Otra área ("
                    + otra
                    + ") ya existe con ese id y/o nombre",
                    "Error"
                    );

                goto fin;
            }

            // Prepare the place -- maybe is a real estate
            Area elLugar = xpLugares.SelectedArea;

            if (elLugar == null)
            {
                MessageBox.Show(
                    "Debe seleccionar un área.",
                    "Error",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                    );
            }

            if (elLugar is Estate)
            {
                elLugar = ((Estate)elLugar).Parent;
            }

            // No crear fincas en toplevel
            if (esFinca &&
                elLugar == bd.Root)
            {
                MessageBox.Show(
                    "No es posible crear fincas en el tope de la jerarquía",
                    "Atención"
                    );

                goto fin;
            }

            try {
                // Crear el área adecuada
                if (!esFinca)
                {
                    area = new Place((Place)elLugar, textBox2.Text, textBox1.Text);

                    // Copiar archivos a imágenes
                    if (textBox9.Text.Length > 0)
                    {
                        SaveImage(textBox9.Text,
                                  (( Place )area).GetImageName()
                                  );
                    }
                }
                else
                {
                    double superficie;

                    // Preparar la superficie
                    try {
                        superficie = textBox4.Text.DoubleFromString();
                    }
                    catch (Exception) {
                        superficie = 0;
                    }

                    // Crear la nueva área
                    Estate f = new Estate(
                        textBox2.Text,
                        textBox1.Text,
                        ( Place )elLugar,
                        superficie
                        );

                    area = f;

                    // ¿Es urbana?
                    f.IsUrban = checkBox1.Checked;

                    // Copiar archivos a imágenes
                    if (textBox5.Text.Length > 0)
                    {
                        SaveImage(textBox5.Text, f.GetImageName());
                    }

                    if (textBox6.Text.Length > 0)
                    {
                        SaveImage(textBox6.Text, f.getNombreImagenZona());
                    }
                }
            }
            catch (System.IO.IOException err) {
                MessageBox.Show("Se produjo un error al copiar archivos: "
                                + err.ToString()
                                );
            }
            catch (Exception err) {
                MessageBox.Show("Error creando área: "
                                + err.ToString()
                                );
            }

            area.Remarks = textBox3.Text;

            // Cerrar esta ventana
            Close();

            // Insertarla en la base de datos
            bd.InsertArea((Place)elLugar, area);
            bd.Sync();

            // Crear un visor para la nueva área
            PlaceExplorerEngine.LaunchExplorerFor(area);

fin:
            return;
        }