Esempio n. 1
0
        public void GenChart(GEDCOMIndividualRecord iRec, TreeChartKind kind, bool rootCenter)
        {
            if (iRec == null)
            {
                return;
            }

            try
            {
                fSelected = null;

                fModel.GenChart(iRec, kind, rootCenter);

                RecalcChart();

                if (rootCenter)
                {
                    CenterPerson(fModel.Root, false);
                }

                NavAdd(iRec);
                DoRootChanged(fModel.Root);
            }
            catch (Exception ex)
            {
                Logger.LogWrite("TreeChartBox.GenChart(): " + ex.Message);
            }
        }
Esempio n. 2
0
        private void CheckQueue(GDMIndividualRecord iRec, TreeChartKind treeKind)
        {
            if (fProcessed.IndexOf(iRec.XRef) >= 0)
            {
                return;
            }

            fIndiQueue.Add(new IndiObj(iRec, treeKind));
        }
Esempio n. 3
0
        private void miModeItem_Click(object sender, EventArgs e)
        {
            TreeChartKind newMode = (TreeChartKind)((RadioMenuItem)sender).Tag;

            if (fTreeBox.Model.Kind == newMode)
            {
                return;
            }

            GenChart(newMode);
        }
Esempio n. 4
0
        private void miModeItem_Click(object sender, EventArgs e)
        {
            TreeChartKind newMode = (TreeChartKind)((ToolStripMenuItem)sender).Tag;

            if (fChartKind == newMode)
            {
                return;
            }

            ChartKind = newMode;
            GenChart();
        }
Esempio n. 5
0
 public void GenChart(TreeChartKind chartKind)
 {
     try {
         if (fPerson == null)
         {
             AppHost.StdDialogs.ShowError(LangMan.LS(LSID.LSID_NotSelectedPerson));
         }
         else
         {
             fTreeBox.GenChart(fPerson, chartKind, true);
             UpdateControls();
         }
     } catch (Exception ex) {
         Logger.LogWrite("TreeChartWin.GenChart(): " + ex.Message);
     }
 }
Esempio n. 6
0
        public void ShowTreeChart(TreeChartKind chartKind)
        {
            var selPerson = GetSelectedPerson();

            if (selPerson == null)
            {
                return;
            }

            if (BaseController.DetectCycle(selPerson))
            {
                return;
            }

            if (TreeChartModel.CheckTreeChartSize(fContext.Tree, selPerson, chartKind))
            {
                var fmChart = AppHost.Container.Resolve <ITreeChartWin>(fView, selPerson);
                fmChart.GenChart(chartKind);
                AppHost.Instance.ShowWindow(fmChart);
            }
        }
Esempio n. 7
0
 public IndiObj(GDMIndividualRecord iRec, TreeChartKind treeKind)
 {
     IRec     = iRec;
     TreeKind = treeKind;
 }
Esempio n. 8
0
 public TCGenerationsControl(ITreeChart chart, TreeChartKind controlMode) : base(chart)
 {
     fControlMode = controlMode;
     fBlankColor  = AppHost.GfxProvider.CreateColor(191, 191, 191);
     fSelectColor = AppHost.GfxProvider.CreateColor(128, 128, 128);
 }
Esempio n. 9
0
        public static void TreeChartWin_Tests(CustomWindowTest formTest, Form mainWin, Form frm, TreeChartKind kind, string stage, string checkXRef)
        {
            Assert.IsInstanceOf(typeof(TreeChartWin), frm, stage);

            TreeChartWin tcWin = frm as TreeChartWin;

            IBaseWindow curBase = tcWin.Base;

            Assert.IsNotNull(curBase);

            Assert.AreEqual(kind, ((ITreeChartWin)tcWin).TreeBox.Model.Kind);
            tcWin.UpdateSettings();

            Assert.IsTrue(tcWin.AllowFilter());
            Assert.IsTrue(tcWin.AllowQuickSearch());
            Assert.IsTrue(tcWin.AllowPrint());

            // forced update
            tcWin.Refresh();

            Assert.Throws(typeof(ArgumentNullException), () => { tcWin.SelectByRec(null); });

            GDMIndividualRecord iRec = curBase.GetSelectedPerson();

            Assert.AreEqual(checkXRef, iRec.XRef);
            tcWin.SelectByRec(iRec);

            KeyDownForm(tcWin.Name, Keys.F5);
            KeyDownForm(tcWin.Name, Keys.F6);
            KeyDownForm(tcWin.Name, Keys.F7);

            //KeyDownForm(tcWin.Name, Keys.F | Keys.Control);

            tcWin.NavPrev();
            tcWin.NavNext();

            formTest.ModalFormHandler = TreeFilterDlgTests.TreeFilterDlg_btnAccept_Handler;
            tcWin.SetFilter();

            IList <ISearchResult> search = tcWin.FindAll("Maria");

            Assert.AreEqual(1, search.Count);

            ClickToolStripMenuItem("miGens9", tcWin);
            ClickToolStripMenuItem("miGens8", tcWin);
            ClickToolStripMenuItem("miGens7", tcWin);
            ClickToolStripMenuItem("miGens6", tcWin);
            ClickToolStripMenuItem("miGens5", tcWin);
            ClickToolStripMenuItem("miGens4", tcWin);
            ClickToolStripMenuItem("miGens3", tcWin);
            ClickToolStripMenuItem("miGens2", tcWin);
            ClickToolStripMenuItem("miGens1", tcWin);
            ClickToolStripMenuItem("miGensInf", tcWin);

            ClickToolStripMenuItem("miModeBoth", tcWin);
            ClickToolStripMenuItem("miModeAncestors", tcWin);
            ClickToolStripMenuItem("miModeDescendants", tcWin);

            ClickToolStripMenuItem("miCertaintyIndex", tcWin);
            ClickToolStripMenuItem("miTraceKinships", tcWin);
            ClickToolStripMenuItem("miTraceSelected", tcWin);

            var ctl = new ControlTester("fTreeBox", frm);

            ctl.FireEvent("KeyDown", new KeyEventArgs(Keys.Add));
            ctl.FireEvent("KeyDown", new KeyEventArgs(Keys.Subtract));
            ctl.FireEvent("KeyDown", new KeyEventArgs(Keys.Back));
            ctl.FireEvent("DoubleClick", new EventArgs());

            formTest.Mouse.UseOn(ctl);

            int sx = 10 + 20;
            int sy = ctl.Properties.Height / 2;

            formTest.Mouse.Hover(sx, sy);
            formTest.Mouse.Press(MouseButtons.Left);
            formTest.Mouse.Hover(sx, sy + 20); // generations control
            formTest.Mouse.Release(MouseButtons.Left);

            sx = ctl.Properties.Width - 10 - 30;
            formTest.Mouse.Hover(sx, sy);
            formTest.Mouse.Press(MouseButtons.Left);
            formTest.Mouse.Hover(sx, sy + 20); // scale control
            formTest.Mouse.Release(MouseButtons.Left);

            //

            var tbox = ctl.Properties as TreeChartBox;

            Assert.IsNotNull(tbox);

            // handlers tests
            //ClickToolStripMenuItem("miEdit", tcWin);
            //ClickToolStripMenuItem("miFatherAdd", tcWin);
            //ClickToolStripMenuItem("miMotherAdd", tcWin);
            //ClickToolStripMenuItem("miSpouseAdd", tcWin);
            //ClickToolStripMenuItem("miSonAdd", tcWin);
            //ClickToolStripMenuItem("miDaughterAdd", tcWin);
            //ClickToolStripMenuItem("miFamilyAdd", tcWin);
            //ClickToolStripMenuItem("miDelete", tcWin);
            //ClickToolStripMenuItem("miRebuildKinships", tcWin);
            //ClickToolStripMenuItem("miFillColor", tcWin);
            //ClickToolStripMenuItem("miFillImage", tcWin);
            //ClickToolStripMenuItem("miRebuildTree", tcWin);

            formTest.ModalFormHandler = SaveFileJPG_Handler;
            ClickToolStripButton("tbImageSave", tcWin);

            // FIXME exception!
            //ModalFormHandler = SaveSnapshotEMF_Handler;
            //ClickToolStripButton("tbImageSave", tcWin);

            formTest.ModalFormHandler = SaveFileSVG_Handler;
            ClickToolStripButton("tbImageSave", tcWin);

            //ModalFormHandler = PrintPreviewDialog_Handler;
            //ClickToolStripButton("tbDocPrint", fMainWin);

            try {
                formTest.ModalFormHandler = PrintDialog_Handler;
                ClickToolStripButton("tbDocPreview", mainWin);
            } catch (Exception) {
                // AppVeyor tests crashed, because "No printers are installed"
                // No Fail, or Ignore, or etc - not yet divide this test into smaller correct parts
            }

            KeyDownForm(frm.Name, Keys.Escape);
            frm.Dispose();
        }