예제 #1
0
        public void UpdatePreview(IWizardImporterSettings settings)
        {
            var txtSettings = (TxtImportSettings)settings;
            var table       = ReadData(txtSettings, 10);

            txtSettings.Preview = table;
        }
예제 #2
0
        public void UpdateData(IWizardImporterSettings settings)
        {
            var txtSettings = (TxtImportSettings)settings;
            var table       = ReadData(txtSettings, -1);

            txtSettings.Data = table;
        }
        public static void CreateLayer(IList <Series> series, IProgressHandler ph, IWizardImporterSettings settings)
        {
            if (series.Count == 0)
            {
                ph.ReportProgress(100, "Finished.");
                return;
            }

            var progress = settings.MaxProgressPercentWhenImport + 1;

            var layerName = settings.LayerName;
            var layer     = settings.Map.GetAllLayers()
                            .OfType <IMapPointLayer>()
                            .FirstOrDefault(l => l.LegendText == layerName);

            if (layer != null)
            {
                ph.ReportProgress(progress++, "Adding series to existing layer...");
                foreach (var s in series)
                {
                    AddSeriesToFeatureSet(s, layer.DataSet);
                }
            }
            else
            {
                ph.ReportProgress(progress++, "Creating map layer...");
                var featureSet = InitializeFeatureSet();
                featureSet.Projection = KnownCoordinateSystems.Geographic.World.WGS1984;
                foreach (var s in series)
                {
                    AddSeriesToFeatureSet(s, featureSet);
                }
                featureSet.Reproject(settings.Map.Projection);

                var fileName = Path.Combine(Settings.Instance.CurrentProjectDirectory,
                                            string.Format("{0}.shp", layerName));
                featureSet.Filename = fileName;
                featureSet.Save();
                featureSet = FeatureSet.Open(fileName); //re-open the featureSet from the file

                var myLayer = new MapPointLayer(featureSet)
                {
                    LegendText = layerName
                };
                var dataSitesGroup = settings.Map.GetDataSitesLayer(true);
                dataSitesGroup.Add(myLayer);
            }

            ph.ReportProgress(progress, "Refreshing series selector...");
            settings.SeriesSelector.RefreshSelection();

            ph.ReportProgress(100, "Finished.");
        }
        /// <summary>
        /// Create new instance of <see cref="FieldPropertiesPage"/>
        /// </summary>
        /// <param name="context">Context</param>
        public FieldPropertiesPage(WizardContext context)
        {
            _settings = context.Settings;
            InitializeComponent();

            dgvPreview.MouseDown    += DgvPreviewOnMouseDown;
            dgvPreview.CellPainting += DgvPreviewOnCellPainting;

            columnsToImportControl1.RemoveClick += ColumnsToImportControlOnRemoveClick;
            columnsToImportControl1.EditClick   += ColumnsToImportControlOnEditClick;
            columnsToImportControl1.AddClick    += ColumnsToImportControlOnAddClick;
        }
예제 #5
0
        private DataSet AsDataSet(IWizardImporterSettings settings)
        {
            var fileName = settings.PathToFile;

            if (!File.Exists(fileName))
            {
                return(new DataSet());
            }

            var extension           = Path.GetExtension(fileName);
            IExcelDataReader reader = null;
            var stream = File.Open(fileName, FileMode.Open);

            try
            {
                switch (extension)
                {
                case ".xls":
                    reader = ExcelReaderFactory.CreateBinaryReader(stream);
                    break;

                case ".xlsx":
                    reader = ExcelReaderFactory.CreateOpenXmlReader(stream);
                    break;

                default:
                    goto case ".xls";
                }

                reader.IsFirstRowAsColumnNames = true;
                var ds = reader.AsDataSet();
                return(ds);
            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                }
                stream.Close();
            }
        }
        public static void CreateLayer(IList <Series> series, IProgressHandler ph, IWizardImporterSettings settings)
        {
            if (series.Count == 0)
            {
                ph.ReportProgress(100, "Finished.");
                return;
            }

            var progress = settings.MaxProgressPercentWhenImport + 1;

            ph.ReportProgress(progress++, "Creating map layer...");

            var featureSet = InitializeFeatureSet();

            featureSet.Projection = KnownCoordinateSystems.Geographic.World.WGS1984;
            foreach (var s in series)
            {
                AddSeriesToFeatureSet(s, featureSet);
            }
            featureSet.Reproject(settings.Map.Projection);

            var legendText = string.Format("Imported Data ({0})", Path.GetFileNameWithoutExtension(settings.PathToFile));
            var fileName   = Path.Combine(Settings.Instance.CurrentProjectDirectory,
                                          string.Format("{0}.shp", legendText));

            featureSet.Filename = fileName;
            featureSet.Save();
            featureSet = FeatureSet.Open(fileName); //re-open the featureSet from the file

            var myLayer = new MapPointLayer(featureSet)
            {
                LegendText = legendText
            };
            var dataSitesGroup = settings.Map.GetDataSitesLayer(true);

            dataSitesGroup.Add(myLayer);

            ph.ReportProgress(progress, "Refreshing series selector...");
            settings.SeriesSelector.RefreshSelection();

            ph.ReportProgress(100, "Finished.");
        }
예제 #7
0
        public void UpdatePreview(IWizardImporterSettings settings)
        {
            var excelSettings = (ExcelImportSettings)settings;

            if (excelSettings.DataSet == null)
            {
                var ds = AsDataSet(settings);
                excelSettings.DataSet = ds;
                if (ds.Tables.Count > 0)
                {
                    excelSettings.SheetName = ds.Tables[0].TableName;
                }
            }

            var result = excelSettings.DataSet.Tables.Contains(excelSettings.SheetName)
                             ? excelSettings.DataSet.Tables[excelSettings.SheetName]
                             : new DataTable();

            settings.Preview = result;
        }
예제 #8
0
 public void UpdateData(IWizardImporterSettings settings)
 {
     settings.Data = settings.Preview;
 }
예제 #9
0
 public void UpdateData(IWizardImporterSettings settings)
 {
     // do nothing for WaterML
 }
예제 #10
0
        public void UpdateData(IWizardImporterSettings settings)
        {
            var data = CsvFileParser.ParseFileToDataTable(settings.PathToFile, true);

            settings.Data = data;
        }
예제 #11
0
        public void UpdatePreview(IWizardImporterSettings settings)
        {
            var preview = CsvFileParser.ParseFileToDataTable(settings.PathToFile, true, null, null, 10);

            settings.Preview = preview;
        }