예제 #1
0
        private void OnDropDownMenuItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            e.ClickedItem.Owner.Hide();
            switch (e.ClickedItem.Name)
            {
            case "menuViewSamplings":
                var catchName = $"{lvNames.SelectedItems[0].SubItems[1].Text} {lvNames.SelectedItems[0].SubItems[2].Text}";
                var gssf      = GearSpeciesSamplingsForm.GetInstance(lvNames.SelectedItems[0].Name, catchName, this, OccurenceDataType.Species);
                if (!gssf.Visible)
                {
                    gssf.Show(this);
                }
                else
                {
                    gssf.BringToFront();
                    gssf.setItemGuid_Name_Parent(lvNames.SelectedItems[0].Name, catchName, this);
                }

                break;

            case "menuMapOccurence":
                var spName           = lvNames.SelectedItems[0].SubItems[1].Text + " " + lvNames.SelectedItems[0].SubItems[2].Text;
                OccurenceMapping mso = new OccurenceMapping(OccurenceDataType.Species, spName, global.MappingForm.MapControl)
                {
                    MapLayersHandler      = global.MappingForm.MapLayersHandler,
                    MapInteractionHandler = global.MappingForm.MapInterActionHandler
                };
                mso.RequestOccurenceInfo += OnRequestOccurenceInfo;
                mso.MapOccurence();
                break;

            case "menuAddNewName":
                SpeciesNameForm snf = new SpeciesNameForm(this);
                snf.ShowDialog(this);
                break;

            case "menuEditName":
                ShowNameDetail();
                break;

            case "menuLocalNames":
                ShowLocalNames(lvNames.SelectedItems[0].Name);
                break;
            }
        }
예제 #2
0
        private void ShowNameDetail()
        {
            if (lvNames.SelectedItems.Count > 0)
            {
                lvNames.SelectedItems[0].With(o =>
                {
                    var genus    = o.SubItems[1].Text;
                    var species  = o.SubItems[2].Text;
                    var taxaName = o.SubItems[3].Text;
                    var nameGuid = o.Name;

                    using (SpeciesNameForm snf = new SpeciesNameForm(genus, species, nameGuid, taxaName, this))
                    {
                        snf.ShowDialog(this);
                        if (snf.DialogResult == DialogResult.OK)
                        {
                            if (snf.DeleteSuccess)
                            {
                                lvNames.Items.Remove(lvNames.SelectedItems[0]);
                            }
                            else
                            {
                                var lvi = lvNames.SelectedItems[0];
                                lvi.SubItems[1].Text = snf.Genus;
                                lvi.SubItems[2].Text = snf.Species;
                                lvi.SubItems[3].Text = snf.TaxaName;
                                if (snf.InFishBase)
                                {
                                    lvi.SubItems[4].Text = "x";
                                }
                                else
                                {
                                    lvi.SubItems[4].Text = "";
                                }
                                lvi.SubItems[6].Text = snf.Notes;
                            }
                        }
                    }
                });
            }
        }
예제 #3
0
        private async void OnToolBarItemClick(object sender, ToolStripItemClickedEventArgs e)
        {
            switch (e.ClickedItem.Name)
            {
            case "tbClose":
                Close();
                break;

            case "tbAdd":
                SpeciesNameForm snf = new SpeciesNameForm(this);
                snf.ShowDialog(this);
                break;

            case "tbRemove":
                break;

            case "tbEdit":
                ShowNameDetail();
                break;

            case "tbExport":
                var count   = 0;
                var taxaCSV = "";
                if (lvTaxa.CheckedItems.Count > 0)
                {
                    foreach (ListViewItem checkedItem in lvTaxa.CheckedItems)
                    {
                        taxaCSV += ((Taxa)int.Parse(checkedItem.Name)).ToString() + ",";
                    }
                    taxaCSV.Trim(',');
                }
                using (ExportImportDialogForm edf = new ExportImportDialogForm(ExportImportDataType.SpeciesNames, ExportImportDeleteAction.ActionExport))
                {
                    edf.TaxaCSV = taxaCSV;
                    edf.ShowDialog(this);
                    if (edf.DialogResult == DialogResult.OK)
                    {
                        ExportImportDataType result = edf.Selection;
                        if (result == ExportImportDataType.SpeciesNames)
                        {
                            FileDialogHelper.Title        = "Provide filename for exported species name";
                            FileDialogHelper.DialogType   = FileDialogType.FileSave;
                            FileDialogHelper.DataFileType = DataFileType.Text | DataFileType.XML | DataFileType.CSV;
                            FileDialogHelper.ShowDialog();
                            var fileName = FileDialogHelper.FileName;
                            if (fileName.Length > 0)
                            {
                                switch (Path.GetExtension(fileName))
                                {
                                case ".xml":
                                case ".XML":
                                    ProgessIndicatorForm pif = new ProgessIndicatorForm(url: "", fileName);
                                    pif.ExportImportDataType     = ExportImportDataType.SpeciesNames;
                                    pif.ExportImportDeleteAction = ExportImportDeleteAction.ActionExport;
                                    pif.Show(this);
                                    int r = await Names.ExportSpeciesNamesAsync(fileName);

                                    break;

                                case ".txt":
                                    break;

                                case ".csv":
                                    break;
                                }
                            }
                        }
                    }
                }
                break;

            case "tbImport":
                using (ExportImportDialogForm edf = new ExportImportDialogForm(ExportImportDataType.SpeciesNames, ExportImportDeleteAction.ActionImport))
                {
                    edf.ShowDialog(this);
                    if (edf.DialogResult == DialogResult.OK)
                    {
                        ExportImportDataType result = edf.Selection;
                        if (result == ExportImportDataType.SpeciesNames)
                        {
                            FileDialogHelper.Title        = "Provide filename for imported species name";
                            FileDialogHelper.DialogType   = FileDialogType.FileOpen;
                            FileDialogHelper.DataFileType = DataFileType.Text | DataFileType.XML | DataFileType.CSV | DataFileType.HTML;
                            FileDialogHelper.ShowDialog();
                            var fileName = FileDialogHelper.FileName;
                            if (fileName.Length > 0)
                            {
                                ProgessIndicatorForm pif;    // = new ProgessIndicatorForm();
                                switch (Path.GetExtension(fileName))
                                {
                                case ".htm":
                                case ".html":
                                    using (HTMLTableSelectColumnsForm htmlColForm = new HTMLTableSelectColumnsForm(fileName, CatchNameDataType.CatchSpeciesName))
                                    {
                                        DialogResult dr = htmlColForm.ShowDialog(this);

                                        if (dr == DialogResult.OK)
                                        {
                                            pif = new ProgessIndicatorForm(url: "", fileName);
                                            pif.ExportImportDataType     = ExportImportDataType.SpeciesNames;
                                            pif.ExportImportDeleteAction = ExportImportDeleteAction.ActionImport;
                                            pif.Show(this);
                                            int r1 = await Names.ImportSpeciesNamesAsync(fileName, htmlColForm.SpeciesNameColumn);

                                            lvNames.Visible = false;
                                            lvNames.Items.Clear();
                                            FillListNames();
                                            SizeColumns(lvNames, false);
                                            lvNames.Visible       = true;
                                            lblListViewLabel.Text = "List of species names";
                                            //GetImportedRows(fileName, htmlColForm.SpeciesNameColumn);
                                        }
                                    }
                                    break;

                                case ".xml":
                                    pif = new ProgessIndicatorForm(url: "", fileName);
                                    pif.ExportImportDataType     = ExportImportDataType.SpeciesNames;
                                    pif.ExportImportDeleteAction = ExportImportDeleteAction.ActionImport;
                                    pif.Show(this);
                                    int r = await Names.ImportSpeciesNamesAsync(fileName, null);

                                    lvNames.Visible = false;
                                    lvNames.Items.Clear();
                                    FillListNames();
                                    SizeColumns(lvNames, false);
                                    lvNames.Visible       = true;
                                    lblListViewLabel.Text = "List of species names";
                                    break;
                                }
                            }
                        }
                    }
                }
                break;
            }
        }