private void AllArgPoints() { var s = _document.AddSection(); PdfTools2.SectionHeader(s.AddParagraph("Argument points")); foreach (var pers in _session.Person) { if (pers == null) { MessageDlg.Show("skipping a null person in session"); continue; } bool personValid = true; ArgPoint invalidAp = null; foreach (var ap in pers.ArgPoint) { if (ap.Topic == null) { personValid = false; invalidAp = ap; } } if (!personValid) { MessageDlg.Show( string.Format( "{0}'s arg.point \"{1}\" has null (undefined) topic. Skipping the arg.point in report", pers.Name, invalidAp.Point)); continue; } var para = s.AddParagraph().AddBold("Argument points of " + pers.Name); var argPointsOf = DaoUtils.ArgPointsOf(pers, _discussion, _topic); if (argPointsOf.Count() > 0) { foreach (var ap in argPointsOf) { if (!ap.SharedToPublic) { continue; } ArgPointNode(s, ap); s.AddParagraph("\n\n"); } } else { s.AddParagraph("<No arguments>\n\n"); } } }