private void MnuViewFacts_Click(object sender, EventArgs e) { if (dgBMDReportSheet.CurrentRow != null) { IDisplayColourBMD ds = (IDisplayColourBMD)dgBMDReportSheet.CurrentRow.DataBoundItem; Individual ind = FamilyTree.Instance.GetIndividual(ds.IndividualID); Facts factForm = new Facts(ind); MainForm.DisposeDuplicateForms(factForm); factForm.Show(); } }
void DgReportSheet_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { if (e.RowIndex >= 0) { FamilyTree ft = FamilyTree.Instance; if (e.ColumnIndex >= birthColumnIndex && e.ColumnIndex <= burialColumnIndex) { DataGridViewCell cell = dgBMDReportSheet.Rows[e.RowIndex].Cells[e.ColumnIndex]; BMDColours value = (BMDColours)cell.Value; if (value != BMDColours.EXACT_DATE) { IDisplayColourBMD person = (IDisplayColourBMD)dgBMDReportSheet.Rows[e.RowIndex].DataBoundItem; Individual ind = ft.GetIndividual(person.IndividualID); if (e.ColumnIndex == birthColumnIndex || e.ColumnIndex == birthColumnIndex + 1) { ft.SearchBMD(FamilyTree.SearchType.BIRTH, ind, ind.BirthDate, cbBMDSearchProvider.SelectedIndex, cbRegion.Text, null); } else if (e.ColumnIndex >= birthColumnIndex + 2 && e.ColumnIndex <= birthColumnIndex + 4) { FactDate marriageDate = FactDate.UNKNOWN_DATE; Individual spouse = null; if (e.ColumnIndex == birthColumnIndex + 2) { marriageDate = ind.FirstMarriageDate; spouse = ind.FirstSpouse; } if (e.ColumnIndex == birthColumnIndex + 3) { marriageDate = ind.SecondMarriageDate; spouse = ind.SecondSpouse; } if (e.ColumnIndex == birthColumnIndex + 4) { marriageDate = ind.ThirdMarriageDate; spouse = ind.ThirdSpouse; } ft.SearchBMD(FamilyTree.SearchType.MARRIAGE, ind, marriageDate, cbBMDSearchProvider.SelectedIndex, cbRegion.Text, spouse); } else if (e.ColumnIndex == burialColumnIndex || e.ColumnIndex == burialColumnIndex - 1) { ft.SearchBMD(FamilyTree.SearchType.DEATH, ind, ind.DeathDate, cbBMDSearchProvider.SelectedIndex, cbRegion.Text, null); } } } else if (e.ColumnIndex >= 0) { string indID = (string)dgBMDReportSheet.CurrentRow.Cells["IndividualID"].Value; Individual ind = ft.GetIndividual(indID); Facts factForm = new Facts(ind); factForm.Show(); } } }