diff Postarc/Postarc/GUI/FormExportToPostGIS.cs @ 0:1aca3d413885 tip

Initial import of Postarc
author Christian Lins <christian.lins@intevation.de>
date Fri, 05 Oct 2012 23:55:06 +0200
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Postarc/Postarc/GUI/FormExportToPostGIS.cs	Fri Oct 05 23:55:06 2012 +0200
@@ -0,0 +1,77 @@
+/*
+ * Postarc
+ *
+ * Author:
+ * Christian Lins <christian.lins@intevation.de>
+ *
+ * Copyright:
+ * Copyright (C) 2012 Intevation GmbH <http://www.intevation.de/>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+*/
+
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+using ESRI.ArcGIS.Carto;
+using Postarc.Catalog;
+
+namespace Postarc.GUI
+{
+    public partial class FormExportToPostGIS : Form
+    {
+        protected IFeatureLayer layer;
+
+        public FormExportToPostGIS(IFeatureLayer layer)
+        {
+            this.layer = layer;
+            InitializeComponent();
+            
+            // Fill the database connections to the combo box and preselect one
+            int selIndex = this.cmbDatabaseConnections.SelectedIndex;
+            this.cmbDatabaseConnections.Items.Clear();
+            this.cmbDatabaseConnections.Items.AddRange(Settings.LoadSavedProfiles().ToArray());
+            this.cmbDatabaseConnections.Items.Add(new PostGISConnection());
+            this.cmbDatabaseConnections.SelectedIndex = 0;
+            if (selIndex >= 0)
+            {
+                this.cmbDatabaseConnections.SelectedIndex = selIndex;
+            }
+
+            this.lblDocumentLayer.Text = "Layer to export: " + layer.Name;
+        }
+
+        private void FormExportToPostGIS_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            e.Cancel = true;
+            Visible = false;
+        }
+
+        private void btnExport_Click(object sender, EventArgs e)
+        {
+            PostGISConnection conn = this.cmbDatabaseConnections.SelectedItem as PostGISConnection;
+
+            FeatureClassExporter exp = new FeatureClassExporter(layer.FeatureClass);
+            int numExported = exp.ExportFeatureClass(null, conn, cmbGeometryTable.Text);
+
+            MessageBox.Show(numExported + " features exported!", "Export successful", MessageBoxButtons.OK, MessageBoxIcon.Information);
+            Visible = false;
+        }
+    }
+}
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)