//------------------------------------------------------------------- public void AddSiblingBelow(TaxonTreeNode _taxon) { if (_taxon == null) { return; } string firstName = null; if (_taxon.Desc.ClassicRank == ClassicRankEnum.Espece) { string[] parts = _taxon.Desc.RefMainName.Split(' '); if (parts.Length >= 2) { firstName = parts[0]; } } TaxonDialog.NewTaxon dlg = new TaxonDialog.NewTaxon(firstName) { TopMost = true, CheckNameUsage = true }; dlg.ShowDialog(); if (dlg.DialogResult != DialogResult.OK) { return; } TaxonDesc newTaxon = new TaxonDesc(dlg.TaxonName) { ClassicRank = _taxon.Desc.ClassicRank }; TaxonTreeNode newNode = new TaxonTreeNode(newTaxon); _taxon.AddSiblingAfter(newNode); _taxon.Father.Expand(); RefreshGraph(); }