Example #1
0
        public override void OnLogout()
        {
            lifelines.Clear();
            GoDocument doc = goView1.Document;

            doc.AllowLink   = false;
            doc.AllowEdit   = false;
            doc.AllowResize = false;
            doc.Clear();
        }
Example #2
0
        void DisplaySequence()
        {
            lifelines.Clear();
            GoDocument doc = goView1.Document;

            doc.AllowLink   = false;
            doc.AllowEdit   = false;
            doc.AllowResize = false;
            doc.Clear();
            goView1.Invoke(new Action(() =>
            {
                int i = 0;
                foreach (var transaction in source)
                {
                    var s = CreateOrGetLifeLine(doc, transaction.Source);
                    var t = CreateOrGetLifeLine(doc, transaction.Target);

                    var m = new Message(++i, s, t, "Buy (" + transaction.State.ToString().Remove(0, transaction.State.ToString().LastIndexOf('.') + 1) + ")", 2, transaction);
                    m.OnMessageClicked += message =>
                    {
                        foreach (var transactionControl in Registry.GetControls <ITransactionControl>())
                        {
                            transactionControl.Changed(message);
                        }
                    };
                    doc.Add(m);
                }

                var margin = 300;
                foreach (var lifeline in lifelines)
                {
                    lifeline.Value.Left = margin;
                    margin *= 2;
                }
                doc.Bounds          = doc.ComputeBounds();
                goView1.DocPosition = doc.TopLeft;

                goView1.GridUnboundedSpots = GoObject.BottomLeft | GoObject.BottomRight;
                goView1.Grid.Top           = Lifeline.LineStart;
                goView1.GridOriginY        = Lifeline.LineStart;
                goView1.GridCellSizeHeight = Lifeline.MessageSpacing;

                // support undo/redo
                doc.UndoManager = new GoUndoManager();
            }));
        }
        public void CreateDiagramFor(TestInformationGeneratedMessage message)
        {
            seq = 0;
            _lifelines.Clear();
            _doc = _view.Document;
            _doc.Clear();
            _doc.AllowLink = false;
            _doc.AllowEdit = false;
            _doc.AllowResize = false;

            RecurseElements(message.Test, null, false, false, false);
            _label1.Text = "Sequence diagram for " + message.Item;

            _doc.Bounds = _doc.ComputeBounds();
            _view.DocPosition = _doc.TopLeft;

            _view.GridUnboundedSpots = GoObject.BottomLeft | GoObject.BottomRight;
            _view.Grid.Top = Lifeline.LineStart;
            _view.GridOriginY = Lifeline.LineStart;
            _view.GridCellSizeHeight = Lifeline.MessageSpacing;

            // support undo/redo
            _doc.UndoManager = new GoUndoManager();
        }
        public void CreateDiagramFor(TestInformationGeneratedMessage message)
        {
            seq = 0;
            _lifelines.Clear();
            _doc = _view.Document;
            _doc.Clear();
            _doc.AllowLink   = false;
            _doc.AllowEdit   = false;
            _doc.AllowResize = false;

            RecurseElements(message.Test, null, false, false, false);
            _label1.Text = "Sequence diagram for " + message.Item;

            _doc.Bounds       = _doc.ComputeBounds();
            _view.DocPosition = _doc.TopLeft;

            _view.GridUnboundedSpots = GoObject.BottomLeft | GoObject.BottomRight;
            _view.Grid.Top           = Lifeline.LineStart;
            _view.GridOriginY        = Lifeline.LineStart;
            _view.GridCellSizeHeight = Lifeline.MessageSpacing;

            // support undo/redo
            _doc.UndoManager = new GoUndoManager();
        }
Example #5
0
        private void buttonX1_Click(object sender, EventArgs ea)
        {
            if (Events != null && Events.Count > 0)
            {
                if (start.Value >= end.Value)
                {
                    MessageBoxEx.Show("Start event id should always be les than end event id", "Events",
                                      MessageBoxButtons.OK, MessageBoxIcon.Error);

                    return;
                }
                lifelines.Clear();
                GoDocument doc = goView1.Document;
                doc.AllowLink   = false;
                doc.AllowEdit   = false;
                doc.AllowResize = false;
                doc.Clear();

                for (int i = start.Value; i <= end.Value; i++)
                {
                    var      e = Events[i];
                    Lifeline lf = null;
                    Lifeline s = null, t = null;
                    if (e.Unknow && !lifelines.ContainsKey("Unknown"))
                    {
                        lf = new Lifeline("Unknown");
                        doc.Add(lf);
                        lifelines.Add(lf.Text, lf);
                    }
                    if (e.Source != null && !lifelines.ContainsKey(e.Source.Name))
                    {
                        lf = new Lifeline(e.Source.Name);
                        doc.Add(lf);
                        lifelines.Add(lf.Text, lf);
                    }
                    if (e.Target != null && !lifelines.ContainsKey(e.Target.Name))
                    {
                        lf = new Lifeline(e.Target.Name);
                        doc.Add(lf);
                        lifelines.Add(lf.Text, lf);
                    }

                    if (e.Unknow)
                    {
                        if (e.Source == null)
                        {
                            s = lifelines["Unknown"];
                            t = lifelines[e.Target.Name];
                        }
                        else if (e.Target == null)
                        {
                            t = lifelines["Unknown"];
                            s = lifelines[e.Source.Name];
                        }
                        else
                        {
                            continue;
                        }
                    }
                    else
                    {
                        t = lifelines[e.Target.Name];
                        s = lifelines[e.Source.Name];
                    }
                    var m = new Message(i - start.Value, s, t, e.Message.GetType().Name, 2, e.Message);
                    m.OnMessageClicked += message => Program.MainInstance.DisplayMessageInfo(message);
                    doc.Add(m);
                }
                int margin = integerInput1.Value;
                foreach (var lifeline in lifelines)
                {
                    lifeline.Value.Left = margin;
                    margin *= 2;
                }
                doc.Bounds          = doc.ComputeBounds();
                goView1.DocPosition = doc.TopLeft;

                goView1.GridUnboundedSpots = GoObject.BottomLeft | GoObject.BottomRight;
                goView1.Grid.Top           = Lifeline.LineStart;
                goView1.GridOriginY        = Lifeline.LineStart;
                goView1.GridCellSizeHeight = Lifeline.MessageSpacing;

                // support undo/redo
                doc.UndoManager = new GoUndoManager();
            }
        }