示例#1
1
文件: Form1.cs 项目: coyot7/Graph
        //public int[] visited; //dfs
        //public int[] NR; //numer post order w DFS
        //public int nr = 1; //do numeracji
        //public int[] visitedSSS; // do Silnie spójnej składowej
        //public List<int>[] silnaWierzcholki; //wierzchołki należące do silnie spójnej składowej
        //public int licznikSilnych = 0; //ilosc silnych
        public Form1()
        {
            InitializeComponent();

            viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            viewer.ToolBarIsVisible = false;
            viewer.Dock = System.Windows.Forms.DockStyle.Fill;
            this.panel1.Controls.Add(viewer);
            //######################################################
            gS = new List<int>[max_n];
            for (int i = 0; i < max_n; i++)
            {
                {
                    gS[i] = new List<int>();
                }
            }

            tablicaKolorow[0] = Microsoft.Msagl.Drawing.Color.Red;
            tablicaKolorow[1] = Microsoft.Msagl.Drawing.Color.Green;
            tablicaKolorow[2] = Microsoft.Msagl.Drawing.Color.Blue;

            //visited = new int[10000];
            //NR = new int[10000];
            //silnaWierzcholki = new List<int>[10000];
            //for (int i = 0; i < 10000; i++)
            //{
            //    {
            //        silnaWierzcholki[i] = new List<int>();
            //    }
            //}
            //visitedSSS = new int[10000];

            //graph = new Microsoft.Msagl.Drawing.Graph("graph");
            //create a graph object
            //  Data macierz;
        }
示例#2
0
 public static void view(List <List <string> > graphdetails)
 {
     //create a form
     System.Windows.Forms.Form form = new System.Windows.Forms.Form();
     //create a viewer object
     Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
     //create a graph object
     Microsoft.Msagl.Drawing.Graph graph = new Microsoft.Msagl.Drawing.Graph("graph");
     //create the graph content
     foreach (List <string> L in graphdetails)
     {
         graph.AddNode(L[0]);
         for (int i = 1; i < L.Count; i++)
         {
             graph.AddEdge(L[i], L[0]);
         }
     }
     //bind the graph to the viewer
     viewer.Graph = graph;
     //associate the viewer with the form
     form.Width  = 300;
     form.Height = 300;
     form.Text   = "Graph";
     form.SuspendLayout();
     viewer.Dock = System.Windows.Forms.DockStyle.Fill;
     form.Controls.Add(viewer);
     form.ResumeLayout();
     //show the form
     form.Show();
 }
示例#3
0
        public static void Visualisasi()
        {
            //create a form
            System.Windows.Forms.Form form = new System.Windows.Forms.Form();
            //create a viewer object
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            //create a graph object
            Microsoft.Msagl.Drawing.Graph graph = new Microsoft.Msagl.Drawing.Graph("graph");
            //create the graph content

            //for (int i = 0; i < ReadFromFile.nEdge; i++) {
            //    graph.AddEdge(Char.ToString(ReadFromFile.EdgeData[i].Item1), Char.ToString(ReadFromFile.EdgeData[i].Item2));
            //}

            //for (int i = 0; i < ReadFromFile.nNode; i++) {
            //    if (BFS.Map.vertices[vertices.Keys.ElementAt(i)].neighbors.Keys.ElementAt(i)) {
            //        graph.FindNode(BFS.Map.vertices.Keys.ElementAt(i)).Attr.FillColor = Microsoft.Msagl.Drawing.Color.Red;
            //    }
            //}

            //bind the graph to the viewer
            viewer.Graph = graph;
            //associate the viewer with the form
            form.SuspendLayout();
            viewer.Dock = System.Windows.Forms.DockStyle.Fill;
            form.Controls.Add(viewer);
            form.ResumeLayout();
            //show the form
            form.ShowDialog();
        }
示例#4
0
        public Form1()
        {
            gViewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            graf    = new Microsoft.Msagl.Drawing.Graph("Graph");

            InitializeComponent();
        }
示例#5
0
        private void generateGraph()
        {
            if (this.selectedFilePath == "")
            {
                MessageBox.Show("You need to select a file", "Error");
                return;
            }

            try
            {
                string text = System.IO.File.ReadAllText(@selectedFilePath);
                this.graph = Utilities.StringToGraph(text);

                dropdownAccount.Items.Clear();
                dropdownFriends.Items.Clear();
                addNodesToDropdown();
                dropdownAccount.Enabled = true;
                dropdownFriends.Enabled = true;

                this.graph.displayInfo();

                Microsoft.Msagl.GraphViewerGdi.GViewer viewer = this.graph.generateMSAGL();

                this.panelGraph.Controls.Clear();
                this.panelGraph.SuspendLayout();
                this.panelGraph.Controls.Add(viewer);
                this.panelGraph.ResumeLayout();
            }
            catch (Exception err)
            {
                MessageBox.Show("Wrong format", "Error");
                this.selectedFilePath = "";
                labelFilename.Text    = "";
            }
        }
示例#6
0
        static void Main(string[] args)
        {
            #if DEBUG
            Microsoft.Msagl.GraphViewerGdi.DisplayGeometryGraph.SetShowFunctions();
            #endif
            //create a form
            System.Windows.Forms.Form form = new System.Windows.Forms.Form();
            //create a viewer object
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();

            //associate the viewer with the form
            form.SuspendLayout();
            viewer.Dock = System.Windows.Forms.DockStyle.Fill;
            form.Controls.Add(viewer);
            form.ResumeLayout();
                    //create a graph object
            #if GraphModel

            Graph graph = DgmlParser.DgmlParser.Parse("fullstring.dgml");

            SugiyamaLayoutSettings ss = graph.LayoutAlgorithmSettings as SugiyamaLayoutSettings;

            // uncomment this line to see the wide graph
            // ss.MaxAspectRatioEccentricity = 100;

            // uncommment this line to us Mds
            // ss.FallbackLayoutSettings = new MdsLayoutSettings {AdjustScale = true};

            // or uncomment the following line to use the default layering layout with vertical layer
            // graph.Attr.LayerDirection = LayerDirection.LR;

            viewer.Graph = graph;
            form.ShowDialog();
            #endif
        }
示例#7
0
        public static void ShowDependencies()
        {
            //create a form
            System.Windows.Forms.Form form = new System.Windows.Forms.Form();
            form.Size = new System.Drawing.Size(1200, 800);
            //create a viewer object
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            //create a graph object
            Microsoft.Msagl.Drawing.Graph graph = new Microsoft.Msagl.Drawing.Graph("graph");
            //create the graph content

            foreach (var depender in _dependencies.Keys)
            {
                foreach (var dependentOn in _dependencies[depender])
                {
                    var edge = graph.AddEdge(depender, dependentOn.Key);
                    edge.LabelText = dependentOn.Value;
                    var md5  = System.Security.Cryptography.MD5.Create();
                    var hash = md5.ComputeHash(Encoding.UTF8.GetBytes(dependentOn.Value.ToString()));
                    edge.Attr.Color      = new Microsoft.Msagl.Drawing.Color(hash[0], hash[1], hash[2]);
                    edge.Label.FontColor = new Microsoft.Msagl.Drawing.Color(hash[0], hash[1], hash[2]);
                }
            }

            //bind the graph to the viewer
            viewer.Graph = graph;
            //associate the viewer with the form
            form.SuspendLayout();
            viewer.Dock = System.Windows.Forms.DockStyle.Fill;
            form.Controls.Add(viewer);
            form.ResumeLayout();
            //show the form
            form.ShowDialog();
        }
示例#8
0
        /// <summary>
        /// Initializes a new instance of the <see cref="GraphViewerControl"/> class.
        /// </summary>
        public GraphViewerControl()
        {
            this.InitializeComponent();

            GraphViewerControl.nodeColors = new List <Tuple <string, Microsoft.Msagl.Drawing.Color> >();

            GraphViewerControl.flowIdPalette = new List <Tuple <int, string[], int> >();

            this.displayGraphTitles     = true;
            this.displayGraphConditions = true;

            // create a viewer object
            this.viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();

            // create a graph object
            this.graph = new Microsoft.Msagl.Drawing.Graph("graph");

            // bind the graph to the viewer
            this.viewer.Graph            = this.graph;
            this.viewer.Dock             = System.Windows.Forms.DockStyle.Fill;
            this.viewer.OutsideAreaBrush = System.Drawing.Brushes.White;
            this.viewer.ToolBarIsVisible = false;

            // display the windows form control in the wpf view
            this.GraphView.Child = this.viewer;

            // on graph view update
            this.viewer.Paint += this.Viewer_Invalidated;
        }
示例#9
0
        public static void Draw(Graph graph)
        {
            //create a form
            System.Windows.Forms.Form form = new System.Windows.Forms.Form();
            //create a viewer object
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            //create a graph object
            Microsoft.Msagl.Drawing.Graph g = new Microsoft.Msagl.Drawing.Graph("graph");
            //create the graph content
            var edges = graph.Vertices.Values.SelectMany(v => v.Successors.Select(s => (v.Name, s.Name)));

            foreach (var edge in edges)
            {
                g.AddEdge(edge.Item1, edge.Item2);
            }
            //bind the graph to the viewer
            viewer.Graph = g;
            //associate the viewer with the form
            form.SuspendLayout();
            viewer.Dock = System.Windows.Forms.DockStyle.Fill;
            form.Controls.Add(viewer);
            form.ResumeLayout();
            form.Width  = 750;
            form.Height = 750;
            //show the form
            form.ShowDialog();
        }
示例#10
0
 static public void dfagraph(List <DFAState> list)
 {
     System.Windows.Forms.Form form = new System.Windows.Forms.Form();
     Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
     Microsoft.Msagl.Drawing.Graph          graph  = new Microsoft.Msagl.Drawing.Graph("graph");
     for (int i = 0; i < list.Count; i++)
     {
         for (int j = 0; j < list[i].transitions.Count; j += 2)
         {
             if (list[i].transitions[j].input != "")
             {
                 graph.AddEdge(list[i].name, list[i].transitions[j].input, list[i].transitions[j].nextState.name);
             }
             if (list[i].isFinalState == true)
             {
                 Microsoft.Msagl.Drawing.Node c = graph.FindNode(list[i].name);
                 c.Attr.FillColor = Microsoft.Msagl.Drawing.Color.Red;
             }
         }
     }
     viewer.Graph = graph;
     form.SuspendLayout();
     viewer.Dock = System.Windows.Forms.DockStyle.Fill;
     form.Controls.Add(viewer);
     form.ResumeLayout();
     form.ShowDialog();
 }
        private void stage_1_Entities_Identification_Click(object sender, EventArgs e)
        {
            Form form = new System.Windows.Forms.Form();

            form.Text = "Stage-1 Reverse Engineer : Entities";
            //create a viewer object
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            //create a graph object
            Microsoft.Msagl.Drawing.Graph graph = new Microsoft.Msagl.Drawing.Graph("graph");
            //create the graph content


            foreach (Relation rel  in _masterListRelations)
            {
                Microsoft.Msagl.Drawing.Node newNode = new Microsoft.Msagl.Drawing.Node(rel.relationName);
                newNode.Attr.Shape = Microsoft.Msagl.Drawing.Shape.Box;

                graph.AddNode(newNode);
            }



            //bind the graph to the viewer
            viewer.Graph = graph;
            //associate the viewer with the form
            form.SuspendLayout();
            viewer.Dock = System.Windows.Forms.DockStyle.Fill;
            form.Controls.Add(viewer);
            form.Size = new Size(500, 500);
            form.ResumeLayout();
            //show the form
            form.Show();
        }
        /// <summary>
        /// Визуализация графа
        /// </summary>
        private void CreateGraph()
        {
            if (vertex > 0)
            {
                System.Windows.Forms.Form form = new System.Windows.Forms.Form();
                Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
                Microsoft.Msagl.Drawing.Graph          graph  = new Microsoft.Msagl.Drawing.Graph("graph");


                for (int i = 0; i < vertex; i++)                                                                        //циклы для прохода по массиву
                {
                    for (int j = 0; j < vertex; j++)
                    {
                        if (matrix[i, j] > 0)
                        {
                            graph.AddEdge(Convert.ToString(i), Convert.ToString(j)).Attr.Color =                        //добавление ребра и смена цвета
                                                                                                 Microsoft.Msagl.Drawing.Color.ForestGreen;
                            graph.FindNode(Convert.ToString(i)).Attr.FillColor = Microsoft.Msagl.Drawing.Color.Teal;    //смена цвета вершины
                        }
                    }
                }
                viewer.Graph = graph;                                   //отображение выбранного графа
                form.SuspendLayout();                                   //приостанавливаем логику макета для добавления панели управления
                viewer.Dock = System.Windows.Forms.DockStyle.Fill;      //возвращает границы элемента управления
                form.Controls.Add(viewer);                              //добавляем панель управления
                form.ResumeLayout();                                    //возобновляем логику макета
                form.ShowDialog();                                      //показать форму
            }
            else
            {
                MessageBox.Show("Задайте количество вершин");
            }
        }
示例#13
0
 public GraphVis()
 {
     InitializeComponent();
     viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
     panel1.Controls.Add(viewer);
     viewer.Dock = DockStyle.Fill;
 }
示例#14
0
        private bool processFile(string fileloc)
        {
            try
            {
                this.graf = new Graf();
                Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
                Microsoft.Msagl.Drawing.Graph          graph  = new Microsoft.Msagl.Drawing.Graph("graph");
                string[] isitxt = File.ReadAllLines(fileloc);

                for (int i = 1; i < isitxt.Length; i++)
                {
                    string[] temp = isitxt[i].Split(' ');
                    graf.addNode(temp[0], temp[1]);
                    var Edge = graph.AddEdge(temp[0], temp[1]);
                    Edge.Attr.ArrowheadAtTarget = Microsoft.Msagl.Drawing.ArrowStyle.None;
                    Edge.Attr.ArrowheadAtSource = Microsoft.Msagl.Drawing.ArrowStyle.None;
                }

                viewer.Graph = graph;
                visualisasiGraf.SuspendLayout();
                viewer.Dock = DockStyle.Fill;
                visualisasiGraf.Controls.Add(viewer);
                visualisasiGraf.ResumeLayout();
                visualisasiGraf.Show();

                return(true);
            }
            catch (Exception ee)
            {
                MessageBox.Show("there was an error: " + ee);
                return(false);
            }
        }
示例#15
0
        internal static void VisualizeGraph(Graph gr)
        {
            System.Windows.Forms.Form form = new System.Windows.Forms.Form();
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            Microsoft.Msagl.Drawing.Graph          graph  = new Microsoft.Msagl.Drawing.Graph("graph");

            foreach (Vertex v in gr.Vertices())
            {
                foreach (Edge e in v.edges)
                {
                    Microsoft.Msagl.Drawing.Edge msagle_edge = graph.AddEdge(
                        string.Format("{0} - {1} ", v.key, v.UserDefinedObjects[0])
                        , string.Format("{0} - {1} ", e.dest.key, e.dest.UserDefinedObjects[0])

                        );
                    if (e.cost > 0)
                    {
                        msagle_edge.LabelText = e.cost.ToString();
                    }
                }
            }

            viewer.Graph = graph;
            form.SuspendLayout();
            viewer.Dock = System.Windows.Forms.DockStyle.Fill;
            form.Controls.Add(viewer);
            form.ResumeLayout();
            form.ShowDialog();
        }
示例#16
0
        private void button1_Click(object sender, EventArgs e)
        {
            hu = 1;
            string text;

            text = textBox1.Text;
            int checkHari = int.Parse(text);

            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            GraphCity Graf = new GraphCity();

            Graf.inputFromFile();
            Graf.algortimaBFS(checkHari);
            viewer.Graph = Graf.guiGraph;
            panel1.SuspendLayout();
            viewer.Dock = System.Windows.Forms.DockStyle.Fill;
            panel1.Controls.Clear();
            panel1.Controls.Add(viewer);
            panel1.ResumeLayout();
            int count = 0;

            panel2.Controls.Clear();
            foreach (KeyValuePair <string, string> cek in Graf.jalurInfek.Values)
            {
                string val = cek.Value;
                string kal = cek.Key + "=>" + val;
                set_label(kal, count);
                count += 20;
            }
        }
 private void Form1_Load(object sender, EventArgs e)
 {
     viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
     viewer.CurrentLayoutMethod = Microsoft.Msagl.GraphViewerGdi.LayoutMethod.UseSettingsOfTheGraph;
     Microsoft.Msagl.Drawing.Graph graph = new Microsoft.Msagl.Drawing.Graph("graph");
     graph.LayoutAlgorithmSettings = new Microsoft.Msagl.Layout.MDS.MdsLayoutSettings();
     foreach (Edge E in G.allEdge)
     {
         graph.AddEdge((E.getFrom() + 1).ToString(), (E.getTo() + 1).ToString());
     }
     viewer.Graph = graph;
     foreach (var E in viewer.Graph.Edges)
     {
         Tuple <int, int> key = new Tuple <int, int>(Int32.Parse(E.Source) - 1, Int32.Parse(E.Target) - 1);
         dictEdge.Add(key, E);
         E.Attr.ArrowheadAtTarget = Microsoft.Msagl.Drawing.ArrowStyle.None;
     }
     viewer.ToolBarIsVisible = false;
     viewer.PanButtonPressed = true;
     Microsoft.Msagl.Drawing.Node nodeRaja = viewer.Graph.FindNode("1");
     if (nodeRaja != null)
     {
         nodeRaja.Attr.Shape     = Microsoft.Msagl.Drawing.Shape.Circle;
         nodeRaja.Attr.FillColor = Microsoft.Msagl.Drawing.Color.Fuchsia;
     }
     viewer.Size     = new Size(780, 500);
     viewer.Location = new Point(0, 0);
     this.Controls.Add(viewer);
     foreach (Command C in LC)
     {
         this.query_file_list.Items.Add(C.getApproach().ToString() + " " + C.getX().ToString() + " " + C.getY().ToString());
     }
 }
        public static void Main()
        {
            //create a form
            System.Windows.Forms.Form form = new System.Windows.Forms.Form();
            //create a viewer object
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            //create a graph object
            Microsoft.Msagl.Drawing.Graph graph = new Microsoft.Msagl.Drawing.Graph("graph");
            //create the graph content
            graph.AddEdge("A", "B");
            graph.AddEdge("B", "C");
            graph.AddEdge("A", "C").Attr.Color = Microsoft.Msagl.Drawing.Color.Green;
            graph.FindNode("A").Attr.FillColor = Microsoft.Msagl.Drawing.Color.Magenta;
            graph.FindNode("B").Attr.FillColor = Microsoft.Msagl.Drawing.Color.MistyRose;
            Microsoft.Msagl.Drawing.Node c = graph.FindNode("C");
            c.Attr.FillColor = Microsoft.Msagl.Drawing.Color.PaleGreen;
            c.Attr.Shape     = Microsoft.Msagl.Drawing.Shape.Diamond;
            //bind the graph to the viewer
            viewer.Graph = graph;
            //associate the viewer with the form
            form.SuspendLayout();
            viewer.Dock = System.Windows.Forms.DockStyle.Fill;
            form.Controls.Add(viewer);
            form.ResumeLayout();

            viewer.MouseUp += Viewer_MouseUp;

            //show the form
            form.ShowDialog();
        }
示例#19
0
        private Microsoft.Msagl.Drawing.Graph BFSHandler()
        {
            string[]      testspek  = File.ReadAllLines(textBox1.Text);
            List <string> filenodes = BacaFile.getNodes(testspek);

            bool[,] adjMatrix = BacaFile.getAdjMatrix(testspek, filenodes);
            List <string> BFSpath = BFS.FindPathBFS(filenodes, adjMatrix, comboBox1.Text, comboBox2.Text);

            Microsoft.Msagl.Drawing.Graph graph = new Microsoft.Msagl.Drawing.Graph("graph");
            graph = getPlainGraph(BFSpath);
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            for (int i = 0; i < BFSpath.Count - 1; i++)
            {
                Microsoft.Msagl.Drawing.Node source = graph.FindNode(BFSpath[i]);
                Microsoft.Msagl.Drawing.Node target = graph.FindNode(BFSpath[i + 1]);
                source.Attr.FillColor = Microsoft.Msagl.Drawing.Color.GreenYellow;
                var edge = graph.AddEdge(BFSpath[i], BFSpath[i + 1]);
                edge.Attr.Color             = Microsoft.Msagl.Drawing.Color.GreenYellow;
                edge.Attr.ArrowheadAtTarget = Microsoft.Msagl.Drawing.ArrowStyle.None;

                if (i == BFSpath.Count - 2)
                {
                    target.Attr.FillColor = Microsoft.Msagl.Drawing.Color.GreenYellow;
                }
            }
            return(graph);
        }
 private void Form1_Load(object sender, EventArgs e)
 {
     //create a viewer object
     Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
     //create a graph object
     Microsoft.Msagl.Drawing.Graph graph = new Microsoft.Msagl.Drawing.Graph("graph");
     //create the graph content
     //var allServices = ServiceController.GetServices().Where(ser => Services.Contains(ser.ServiceName));
     foreach (ServiceController serviceController in ServiceController.GetServices())
     {
         var service = $"{serviceController.DisplayName} ({serviceController.ServiceName})";
         graph.AddNode(service);
         foreach (var dependentService in serviceController.DependentServices)
         {
             string dependent = $"{dependentService.DisplayName} ({dependentService.ServiceName})";
             graph.AddNode(dependent);
             graph.AddEdge(dependent, service);
         }
     }
     //bind the graph to the viewer
     graph.Attr.LayerDirection         = LayerDirection.None;
     graph.Attr.OptimizeLabelPositions = true;
     graph.CreateLayoutSettings();
     graph.LayoutAlgorithmSettings = new MdsLayoutSettings();
     viewer.Graph = graph;
     SuspendLayout();
     viewer.Dock = System.Windows.Forms.DockStyle.Fill;
     Controls.Add(viewer);
     ResumeLayout();
 }
        private void BFS_Click(object sender, RoutedEventArgs e)
        {
            Graph graph = convertFile(filename.Text);

            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            for (int i = 0; i < graph.getLenNodes(); i++)
            {
                for (int j = 0; j < graph.getNodes()[i].getLenReq(); j++)
                {
                    string a1 = graph.getNodes()[i].getCourse();
                    string a2 = graph.getNodes()[i].getReqN(j);
                    g.AddEdge(a1, a2).Attr.Color = Microsoft.Msagl.Drawing.Color.Pink;
                }
            }
            viewer.Graph = g;
            //associate the viewer with the form
            form.SuspendLayout();
            viewer.Dock      = System.Windows.Forms.DockStyle.Fill;
            form.WindowState = System.Windows.Forms.FormWindowState.Maximized;
            form.Controls.Add(viewer);
            form.ResumeLayout();
            //show the form
            form.Show();

            Graph BFSgraph = new Graph();

            graph.BFS(BFSgraph);
            result            = BFSgraph.seperateTerm();
            FinalAnswers.Text = printFinal(result);
            form.Refresh();
        }
示例#22
0
        public void Draw(Graph G, List <string> mkTanpaPrereq)
        {
            Form form = new Form();

            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            Microsoft.Msagl.Drawing.Graph          graph  = new Microsoft.Msagl.Drawing.Graph("graph");

            for (int i = 0; i < mkTanpaPrereq.Count(); ++i)
            {
                graph.AddNode(mkTanpaPrereq[i]);
                graph.FindNode(mkTanpaPrereq[i]).Attr.FillColor = Microsoft.Msagl.Drawing.Color.Gray;
            }
            for (int i = 0; i < G.GetNodesCount(); ++i)
            {
                for (int j = 0; j < G.GetNodes(i).GetPrereqCount(); ++j)
                {
                    graph.AddEdge(G.GetNodes(i).GetPrereq(j), G.GetNodes(i).GetVal());
                }
            }
            viewer.Graph = graph;
            form.SuspendLayout();
            viewer.Dock      = DockStyle.Fill;
            form.WindowState = FormWindowState.Maximized;
            form.Controls.Add(viewer);
            form.ResumeLayout();
            form.ShowDialog();
        }
示例#23
0
        public void Execute(Repl repl, ReplParser.AglContext tree, bool piped)
        {
            string lines            = repl.input_output_stack.Pop();
            var    doc              = repl.stack.Peek();
            var    pr               = ParsingResultsFactory.Create(doc);
            var    lexer            = pr.Lexer;
            var    parser           = pr.Parser;
            var    serializeOptions = new JsonSerializerOptions();

            serializeOptions.Converters.Add(new AntlrJson.ParseTreeConverter());
            serializeOptions.WriteIndented = false;
            var parse_info = JsonSerializer.Deserialize <AntlrJson.ParsingResultSet>(lines, serializeOptions);
            var nodes      = parse_info.Nodes;

            System.Windows.Forms.Form form = new System.Windows.Forms.Form();
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            Microsoft.Msagl.Drawing.Graph          graph  = CreateGraph(nodes, parser.RuleNames.ToList());
            graph.LayoutAlgorithmSettings = new Microsoft.Msagl.Layout.Layered.SugiyamaLayoutSettings();
            viewer.Graph = graph;
            form.SuspendLayout();
            viewer.Dock = System.Windows.Forms.DockStyle.Fill;
            form.Controls.Add(viewer);
            form.ResumeLayout();
            form.ShowDialog();
        }
示例#24
0
        public void DrawResult(Graph _graph)
        {
            timestamps.Reverse();
            List <string> distinct = timestamps.Distinct().ToList();

            System.Windows.Forms.Form form = new System.Windows.Forms.Form();
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            Microsoft.Msagl.Drawing.Graph          graph  = new Microsoft.Msagl.Drawing.Graph("graph");
            for (int i = 0; i < distinct.Count; i++)
            {
                Console.WriteLine("\nSemester {0} :\n{1}", i + 1, distinct[i]);
            }
            for (int idx = 0; idx < distinct.Count - 1; idx++)
            {
                graph.AddEdge(distinct[idx], distinct[idx + 1]).Attr.Color = Microsoft.Msagl.Drawing.Color.Green;;
                int index = _graph.GetNodesIdx(distinct[idx]);
                for (int j = 0; j < _graph.GetNodes(index).GetPostreqCount(); j++)
                {
                    if (!(distinct[idx + 1].Equals(_graph.GetNodes(index).GetPostreq(j), StringComparison.Ordinal)))
                    {
                        graph.AddEdge(_graph.GetNodes(index).GetVal(), _graph.GetNodes(index).GetPostreq(j));
                    }
                }
            }

            viewer.Graph = graph;
            form.SuspendLayout();
            viewer.Dock      = System.Windows.Forms.DockStyle.Fill;
            form.WindowState = FormWindowState.Maximized;
            form.Controls.Add(viewer);
            form.ResumeLayout();
            form.ShowDialog();
        }
示例#25
0
        static public void CreateGraph(ref CourseNode[] nodes)
        {
            System.Windows.Forms.Form form = new System.Windows.Forms.Form();
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            Microsoft.Msagl.Drawing.Graph          graph  = new Microsoft.Msagl.Drawing.Graph("graph");
            List <string> node_name = new List <string>();

            foreach (CourseNode Course in nodes)
            {
                node_name.Add(Course.name);
            }
            foreach (string course in node_name)
            {
                graph.AddNode(course).Attr.Color = Microsoft.Msagl.Drawing.Color.Aqua;
            }
            foreach (CourseNode Course in nodes)
            {
                foreach (string child in Course.children)
                {
                    graph.AddEdge(Course.name, child);
                }
            }
            viewer.Graph = graph;
            form.SuspendLayout();
            viewer.Dock = System.Windows.Forms.DockStyle.Fill;
            form.Controls.Add(viewer);
            form.ResumeLayout();
            form.ShowDialog();
        }
示例#26
0
        private void addColorFromMatrix(int[,] colorMatrix)
        {
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer     = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            Microsoft.Msagl.Drawing.Graph          graph_pic2 = new Microsoft.Msagl.Drawing.Graph("graph");
            int n = node.Count;

            for (int i = 0; i < n; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    if (i != j && i < j && graph[i, j] == 1)
                    {
                        var edge = graph_pic2.AddEdge(node[i], node[j]);
                        edge.Attr.ArrowheadAtSource = Microsoft.Msagl.Drawing.ArrowStyle.None;
                        edge.Attr.ArrowheadAtTarget = Microsoft.Msagl.Drawing.ArrowStyle.None;
                        if (colorMatrix[i, j] == 1)
                        {
                            edge.Attr.Color = Microsoft.Msagl.Drawing.Color.Red;
                            graph_pic2.FindNode(node[i]).Attr.FillColor = Microsoft.Msagl.Drawing.Color.Magenta;
                            graph_pic2.FindNode(node[j]).Attr.FillColor = Microsoft.Msagl.Drawing.Color.Magenta;
                        }
                    }
                }
            }

            viewer.Graph = graph_pic2;
            viewer.Name  = "graphViewer";
            viewer.Dock  = System.Windows.Forms.DockStyle.Fill;

            this.SuspendLayout();
            this.panelViewer.Controls.Clear();
            this.panelViewer.Controls.Add(viewer);
            this.ResumeLayout();
        }
        //
        // Function to display graph that parsed from the file chosen
        //
        private void DisplayGraph(string fileCourse)
        {
            List <string>  wholeCourses  = File.ReadAllLines(fileCourse).ToList();
            List <Courses> listOfCourses = new List <Courses>();

            foreach (string course in wholeCourses)
            {
                Courses       thisCourse       = new Courses();
                List <string> prerequisiteName = course.Split(new char[] { ',', ' ', '.' }, StringSplitOptions.RemoveEmptyEntries).ToList();
                thisCourse.nameOfCourses = prerequisiteName[0];
                prerequisiteName.RemoveAt(0);
                thisCourse.prerequisiteName = prerequisiteName;
                thisCourse.semester         = 0;
                thisCourse.startTime        = 0;
                thisCourse.endTime          = 0;
                thisCourse.semester         = 0;
                thisCourse.courseChecked    = false;
                listOfCourses.Add(thisCourse);
            }
            Form form = new Form();

            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            Microsoft.Msagl.Drawing.Graph          graph  = new Microsoft.Msagl.Drawing.Graph("graph");

            Random r = new Random();

            foreach (Courses course in listOfCourses)
            {
                foreach (Courses anCourse in listOfCourses)
                {
                    if (course != anCourse)
                    {
                        foreach (string prereq in anCourse.prerequisiteName)
                        {
                            if (prereq == course.nameOfCourses)
                            {
                                graph.AddEdge(course.nameOfCourses, anCourse.nameOfCourses).Attr.Color =
                                    Microsoft.Msagl.Drawing.Color.BlueViolet;
                                break;
                            }
                        }
                    }
                }
            }

            foreach (Courses course in listOfCourses)
            {
                graph.FindNode(course.nameOfCourses).Attr.FillColor =
                    Microsoft.Msagl.Drawing.Color.Aqua;
                graph.FindNode(course.nameOfCourses).Attr.Shape = Microsoft.Msagl.Drawing.Shape.Ellipse;
            }

            viewer.Graph = graph;
            form.SuspendLayout();
            viewer.Dock = DockStyle.Fill;
            form.Controls.Add(viewer);
            form.ResumeLayout();
            form.ShowDialog();
        }
 private void deterministicMenuItem_Click(object sender, RoutedEventArgs e)
 {
     ReadFile(".da");
     form   = new System.Windows.Forms.Form();
     viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
     graph  = new Microsoft.Msagl.Drawing.Graph("graph");
     DrawGraph();
 }
示例#29
0
        public void visualize(bool isLabeled = true, System.Windows.Forms.Panel panel = null)
        {
            Microsoft.Msagl.Drawing.Graph g = new Microsoft.Msagl.Drawing.Graph("PlanningProblem Transition Graph of variable " + variable);
            foreach (var item in vertices)
            {
                var node = g.AddNode(item.ToString());
                if (item == goalValue)
                {
                    node.Attr.FillColor = Microsoft.Msagl.Drawing.Color.Yellow;
                }
            }
            if (isLabeled)
            {
                foreach (var item in edges)
                {
                    var e = g.AddEdge(item.from.ToString(), "Cond:" + item.outsideCondition.GetConditions().ToString() + "Eff:" + item.outsideEffect.GetConditions().ToString(), item.to.ToString());
                    if (!isEdgeRSE_Invertible(item))
                    {
                        e.Attr.Color = Microsoft.Msagl.Drawing.Color.Red;
                    }
                }
            }
            else
            {
                bool[,] isEdge = new bool[vertices.Count, vertices.Count];
                foreach (var item in edges)
                {
                    if (isEdge[item.from, item.to])
                    {
                        continue;
                    }
                    var e = g.AddEdge(item.from.ToString(), item.to.ToString());
                    if (!isEdgeRSE_Invertible(item))
                    {
                        e.Attr.Color = Microsoft.Msagl.Drawing.Color.Red;
                    }
                    isEdge[item.from, item.to] = true;
                }
            }

            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            viewer.Graph = g;
            if (panel == null)
            {
                KnowledgeVisualizerForm form = new KnowledgeVisualizerForm();
                form.SuspendLayout();
                viewer.Dock = System.Windows.Forms.DockStyle.Fill;
                form.Controls.Add(viewer);
                form.ResumeLayout();
                System.Windows.Forms.Application.Run(form);
            }
            else
            {
                viewer.Dock = System.Windows.Forms.DockStyle.Fill;
                panel.Controls.Clear();
                panel.Controls.Add(viewer);
            }
        }
示例#30
0
 public static void Setup()
 {
     _form          = new System.Windows.Forms.Form();
     _viewer        = new Microsoft.Msagl.GraphViewerGdi.GViewer();
     _graph         = new Microsoft.Msagl.Drawing.Graph("graph");
     _colorAdapter  = new ColorAdapter();
     _arrowAdapter  = new LineArrowAdapter();
     _figureAdapter = new FigureAdapter();
 }
示例#31
0
        private void DrawBestChromosomeDiagram(Microsoft.Msagl.GraphViewerGdi.GViewer gViewer, Population population)
        {
            Microsoft.Msagl.Drawing.Graph graph = new Microsoft.Msagl.Drawing.Graph("graph");

            Chromosome       chromosome = population.GetBestСhromosome();
            List <Adjacency> res        = chromosome.Tree.GetEdges();

            DrawDiagram(gViewer, res);
        }
        private void DFS_Click(object sender, RoutedEventArgs e)
        {
            Graph graph = convertFile(filename.Text);

            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            //create a graph object
            //create the graph content
            for (int i = 0; i < graph.getLenNodes(); i++)
            {
                for (int j = 0; j < graph.getNodes()[i].getLenReq(); j++)
                {
                    string a1 = graph.getNodes()[i].getCourse();
                    string a2 = graph.getNodes()[i].getReqN(j);
                    g.AddEdge(a1, a2).Attr.Color = Microsoft.Msagl.Drawing.Color.DeepSkyBlue;
                }
            }
            viewer.Graph = g;
            //associate the viewer with the form
            form.SuspendLayout();
            viewer.Dock = System.Windows.Forms.DockStyle.Fill;
            form.Controls.Add(viewer);
            form.ResumeLayout();
            //show the form
            form.Show();

            Graph DFSgraph   = new Graph();
            Graph startNodes = graph.noPreReq();

            foreach (Node n in startNodes.getNodes())
            {
                graph.DFS(n, DFSgraph);
            }
            for (int i = 0; i < DFSgraph.getLenNodes(); i++)
            {
                Node current = DFSgraph.getNodes()[i];
                int  max     = current.getTerm();
                for (int j = 0; j < i; j++)
                {
                    Node check = DFSgraph.getNodes()[j];
                    foreach (string v in check.getReq())
                    {
                        if (current.getCourse() == v)
                        {
                            if (max < check.getTerm())
                            {
                                max = check.getTerm();
                            }
                        }
                    }
                }
                DFSgraph.setTermGraph(max + 1, i);
            }
            Console.WriteLine();
            result            = DFSgraph.seperateTerm();
            FinalAnswers.Text = printFinal(result);
            form.Refresh();
        }
        private void DrawRelations()
        {
            Form form = new Form();

            form.Text = "Stage-4 Reverse Engineer : Relations";
            //create a viewer object 
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            //create a graph object 
            Microsoft.Msagl.Drawing.Graph graph = new Microsoft.Msagl.Drawing.Graph("graph");
            //create the graph content 


            // Draw all the entitites
            foreach (Relation rel in _masterListRelations)
            {
                Microsoft.Msagl.Drawing.Node newNode = new Microsoft.Msagl.Drawing.Node(rel.relationName);
                newNode.Attr.Shape = Microsoft.Msagl.Drawing.Shape.Box;

                //Add it to the graph
                graph.AddNode(newNode);
            }

            //Draw all the weak Entities
            foreach (Tuple<string, string> weakEnt in weakEntities)
            {
                graph.AddNode(weakEnt.Item1).Attr.Shape = Microsoft.Msagl.Drawing.Shape.Ellipse;
                graph.AddEdge(weakEnt.Item1, weakEnt.Item2);
            }

            int relIndex = 1;
            //Draw all the other relations
            foreach (Tuple<string, string> rel in foreignKeyRelations)
            {

                Tuple<string, string> find = weakEntities.Find(obj => (obj.Item1 == rel.Item1 && obj.Item2 == rel.Item2) || (obj.Item2 == rel.Item1 && obj.Item1 == rel.Item2));
                if (find == null)
                {
                    string intermediateRel = "R" + relIndex;
                    graph.AddNode(intermediateRel);
                    graph.AddNode(intermediateRel).Attr.Shape = Microsoft.Msagl.Drawing.Shape.Diamond;
                    graph.AddEdge(rel.Item1, intermediateRel);
                    graph.AddEdge(intermediateRel, rel.Item2);
                    relIndex++;
                }
            }

            //Draw the relations as Diamonds
            foreach(Tuple<string, List<string>> tup in relations)
            {
                graph.AddNode(tup.Item1).Attr.Shape = Microsoft.Msagl.Drawing.Shape.Diamond;
            }

            foreach(string s in multiValuedAttr)
            {
                graph.AddNode(s).Attr.Shape = Microsoft.Msagl.Drawing.Shape.DoubleCircle;
            }

            //bind the graph to the viewer 
            viewer.Graph = graph;
            //associate the viewer with the form 
            form.SuspendLayout();
            viewer.Dock = DockStyle.Fill;
            form.Controls.Add(viewer);
            form.ResumeLayout();
            //show the form 
            form.Show();
        }
示例#34
0
 /// <summary>
 /// Required method for Designer support - do not modify
 /// the contents of this method with the code editor.
 /// </summary>
 private void InitializeComponent()
 {
     this.components = new System.ComponentModel.Container();
     System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SimulationForm));
     this.toolStripContainer1 = new System.Windows.Forms.ToolStripContainer();
     this.Panel_Hiding = new System.Windows.Forms.Panel();
     this.Button_Export = new System.Windows.Forms.Button();
     this.Button_Direction = new System.Windows.Forms.Button();
     this.SplitContainer = new System.Windows.Forms.SplitContainer();
     this.Button_SimulateTrace = new System.Windows.Forms.ToolStripButton();
     this.GroupBox_EnabledEvents = new System.Windows.Forms.GroupBox();
     this.ListView_EnabledEvents = new System.Windows.Forms.ListView();
     this.columnHeader4 = new System.Windows.Forms.ColumnHeader();
     this.columnHeader5 = new System.Windows.Forms.ColumnHeader();
     this.GroupBox_EventTrace = new System.Windows.Forms.GroupBox();
     this.ListView_Trace = new System.Windows.Forms.ListView();
     this.columnHeader10 = new System.Windows.Forms.ColumnHeader();
     this.columnHeader7 = new System.Windows.Forms.ColumnHeader();
     this.columnHeader8 = new System.Windows.Forms.ColumnHeader();
     this.SimulatorViewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
     this.toolStrip1 = new System.Windows.Forms.ToolStrip();
     this.Label_Processes = new System.Windows.Forms.ToolStripLabel();
     this.ComboBox_Process = new System.Windows.Forms.ToolStripComboBox();
     this.Button_Simulate = new System.Windows.Forms.ToolStripButton();
     this.Button_PlayTrace = new System.Windows.Forms.ToolStripButton();
     this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
     this.Button_GenerateGraph = new System.Windows.Forms.ToolStripButton();
     this.toolStripSeparator4 = new System.Windows.Forms.ToolStripSeparator();
     this.Button_Reset = new System.Windows.Forms.ToolStripButton();
     this.toolStripSeparator7 = new System.Windows.Forms.ToolStripSeparator();
     this.Button_Settings = new System.Windows.Forms.ToolStripDropDownButton();
     this.Button_CounterExample = new System.Windows.Forms.ToolStripMenuItem();
     this.Button_DisplayCounterexample = new System.Windows.Forms.ToolStripMenuItem();
     this.Button_DisplaySCC = new System.Windows.Forms.ToolStripMenuItem();
     this.Button_AnimationSpeed = new System.Windows.Forms.ToolStripMenuItem();
     this.Button_SpeedVerySlow = new System.Windows.Forms.ToolStripMenuItem();
     this.Button_SpeedSlow = new System.Windows.Forms.ToolStripMenuItem();
     this.Button_SpeedNormal = new System.Windows.Forms.ToolStripMenuItem();
     this.Button_SpeedFast = new System.Windows.Forms.ToolStripMenuItem();
     this.Button_SpeedVeryFast = new System.Windows.Forms.ToolStripMenuItem();
     this.Button_PopupDelay = new System.Windows.Forms.ToolStripMenuItem();
     this.Button_5seconds = new System.Windows.Forms.ToolStripMenuItem();
     this.Button_10seconds = new System.Windows.Forms.ToolStripMenuItem();
     this.Button_20seconds = new System.Windows.Forms.ToolStripMenuItem();
     this.Button_40seconds = new System.Windows.Forms.ToolStripMenuItem();
     this.Button_60seconds = new System.Windows.Forms.ToolStripMenuItem();
     this.hideTauTransitionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.displayAllEnabledStatesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.toolStripSeparator5 = new System.Windows.Forms.ToolStripSeparator();
     this.Button_InteractionPane = new System.Windows.Forms.ToolStripButton();
     this.Button_StatePane = new System.Windows.Forms.ToolStripButton();
     this.MenuStrip_Trace = new System.Windows.Forms.ContextMenuStrip(this.components);
     this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
     this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
     this.cpToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.copyEventToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.toolStripSeparator6 = new System.Windows.Forms.ToolStripSeparator();
     this.saveToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.ToolTip_Graph = new System.Windows.Forms.ToolTip(this.components);
     this.Timer_Replay = new System.Windows.Forms.Timer(this.components);
     this.Timer_SimulateTrace = new System.Windows.Forms.Timer(this.components);
     this.Timer_Run = new System.Windows.Forms.Timer(this.components);
     this.statusStrip1 = new System.Windows.Forms.StatusStrip();
     this.StatusLabel = new System.Windows.Forms.ToolStripStatusLabel();
     this.From = new System.Windows.Forms.ColumnHeader();
     this.FromState = new System.Windows.Forms.ColumnHeader();
     this.columnHeader1 = new System.Windows.Forms.ColumnHeader();
     this.columnHeader2 = new System.Windows.Forms.ColumnHeader();
     this.Event = new System.Windows.Forms.ColumnHeader();
     this.State = new System.Windows.Forms.ColumnHeader();
     this.Process = new System.Windows.Forms.ColumnHeader();
     this.Panel_ToolbarCover = new System.Windows.Forms.Panel();
     this.ImageList = new System.Windows.Forms.ImageList(this.components);
     this.TableLayoutPanel = new System.Windows.Forms.Panel();
     this.toolStripContainer1.ContentPanel.SuspendLayout();
     this.toolStripContainer1.TopToolStripPanel.SuspendLayout();
     this.toolStripContainer1.SuspendLayout();
     this.SplitContainer.Panel1.SuspendLayout();
     this.SplitContainer.Panel2.SuspendLayout();
     this.SplitContainer.SuspendLayout();
     this.GroupBox_EnabledEvents.SuspendLayout();
     this.GroupBox_EventTrace.SuspendLayout();
     this.toolStrip1.SuspendLayout();
     this.MenuStrip_Trace.SuspendLayout();
     this.statusStrip1.SuspendLayout();
     this.TableLayoutPanel.SuspendLayout();
     this.SuspendLayout();
     //
     // toolStripContainer1
     //
     //
     // toolStripContainer1.ContentPanel
     //
     this.toolStripContainer1.ContentPanel.Controls.Add(this.Panel_Hiding);
     this.toolStripContainer1.ContentPanel.Controls.Add(this.Button_Export);
     this.toolStripContainer1.ContentPanel.Controls.Add(this.TableLayoutPanel);
     this.toolStripContainer1.ContentPanel.Controls.Add(this.Button_Direction);
     resources.ApplyResources(this.toolStripContainer1.ContentPanel, "toolStripContainer1.ContentPanel");
     resources.ApplyResources(this.toolStripContainer1, "toolStripContainer1");
     this.toolStripContainer1.Name = "toolStripContainer1";
     //
     // toolStripContainer1.TopToolStripPanel
     //
     this.toolStripContainer1.TopToolStripPanel.Controls.Add(this.toolStrip1);
     //
     // Panel_Hiding
     //
     resources.ApplyResources(this.Panel_Hiding, "Panel_Hiding");
     this.Panel_Hiding.Name = "Panel_Hiding";
     //
     // Button_Export
     //
     this.Button_Export.FlatAppearance.BorderSize = 0;
     resources.ApplyResources(this.Button_Export, "Button_Export");
     this.Button_Export.Name = "Button_Export";
     this.Button_Export.UseVisualStyleBackColor = true;
     this.Button_Export.Click += new System.EventHandler(this.Button_Export_Click);
     //
     // Button_Direction
     //
     this.Button_Direction.FlatAppearance.BorderSize = 0;
     resources.ApplyResources(this.Button_Direction, "Button_Direction");
     this.Button_Direction.Name = "Button_Direction";
     this.ToolTip_Graph.SetToolTip(this.Button_Direction, resources.GetString("Button_Direction.ToolTip"));
     this.Button_Direction.UseVisualStyleBackColor = true;
     this.Button_Direction.Click += new System.EventHandler(this.Button_Direction_Click);
     //
     // SplitContainer
     //
     resources.ApplyResources(this.SplitContainer, "SplitContainer");
     this.SplitContainer.Name = "SplitContainer";
     //
     // SplitContainer.Panel1
     //
     this.SplitContainer.Panel1.Controls.Add(this.GroupBox_EnabledEvents);
     //
     // SplitContainer.Panel2
     //
     this.SplitContainer.Panel2.Controls.Add(this.GroupBox_EventTrace);
     //
     // GroupBox_EnabledEvents
     //
     this.GroupBox_EnabledEvents.Controls.Add(this.ListView_EnabledEvents);
     resources.ApplyResources(this.GroupBox_EnabledEvents, "GroupBox_EnabledEvents");
     this.GroupBox_EnabledEvents.Name = "GroupBox_EnabledEvents";
     this.GroupBox_EnabledEvents.TabStop = false;
     //
     // ListView_EnabledEvents
     //
     this.ListView_EnabledEvents.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
     this.columnHeader4,
     this.columnHeader5});
     resources.ApplyResources(this.ListView_EnabledEvents, "ListView_EnabledEvents");
     this.ListView_EnabledEvents.FullRowSelect = true;
     this.ListView_EnabledEvents.GridLines = true;
     this.ListView_EnabledEvents.HideSelection = false;
     this.ListView_EnabledEvents.MultiSelect = false;
     this.ListView_EnabledEvents.Name = "ListView_EnabledEvents";
     this.ToolTip_Graph.SetToolTip(this.ListView_EnabledEvents, resources.GetString("ListView_EnabledEvents.ToolTip"));
     this.ListView_EnabledEvents.UseCompatibleStateImageBehavior = false;
     this.ListView_EnabledEvents.View = System.Windows.Forms.View.Details;
     this.ListView_EnabledEvents.DoubleClick += new System.EventHandler(this.ListView_EnabledEvents_DoubleClick);
     //
     // columnHeader4
     //
     resources.ApplyResources(this.columnHeader4, "columnHeader4");
     //
     // columnHeader5
     //
     resources.ApplyResources(this.columnHeader5, "columnHeader5");
     //
     // GroupBox_EventTrace
     //
     this.GroupBox_EventTrace.Controls.Add(this.ListView_Trace);
     resources.ApplyResources(this.GroupBox_EventTrace, "GroupBox_EventTrace");
     this.GroupBox_EventTrace.Name = "GroupBox_EventTrace";
     this.GroupBox_EventTrace.TabStop = false;
     //
     // ListView_Trace
     //
     this.ListView_Trace.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
     this.columnHeader10,
     this.columnHeader7,
     this.columnHeader8});
     resources.ApplyResources(this.ListView_Trace, "ListView_Trace");
     this.ListView_Trace.FullRowSelect = true;
     this.ListView_Trace.GridLines = true;
     this.ListView_Trace.HideSelection = false;
     this.ListView_Trace.MultiSelect = false;
     this.ListView_Trace.Name = "ListView_Trace";
     this.ToolTip_Graph.SetToolTip(this.ListView_Trace, resources.GetString("ListView_Trace.ToolTip"));
     this.ListView_Trace.UseCompatibleStateImageBehavior = false;
     this.ListView_Trace.View = System.Windows.Forms.View.Details;
     this.ListView_Trace.SelectedIndexChanged += new System.EventHandler(this.ListView_Trace_SelectedIndexChanged);
     this.ListView_Trace.MouseUp += new System.Windows.Forms.MouseEventHandler(this.ListView_Trace_MouseUp);
     //
     // columnHeader10
     //
     resources.ApplyResources(this.columnHeader10, "columnHeader10");
     //
     // columnHeader7
     //
     resources.ApplyResources(this.columnHeader7, "columnHeader7");
     //
     // columnHeader8
     //
     resources.ApplyResources(this.columnHeader8, "columnHeader8");
     //
     // SimulatorViewer
     //
     this.SimulatorViewer.AsyncLayout = false;
     resources.ApplyResources(this.SimulatorViewer, "SimulatorViewer");
     this.SimulatorViewer.Dock = DockStyle.Fill;
     this.SimulatorViewer.BackwardEnabled = true;
     this.SimulatorViewer.BuildHitTree = true;
     this.SimulatorViewer.ForwardEnabled = true;
     this.SimulatorViewer.Graph = null;
     this.SimulatorViewer.LayoutAlgorithmSettingsButtonVisible = true;
     this.SimulatorViewer.MouseHitDistance = 0.05;
     this.SimulatorViewer.Name = "SimulatorViewer";
     this.SimulatorViewer.NavigationVisible = true;
     this.SimulatorViewer.NeedToCalculateLayout = true;
     this.SimulatorViewer.PanButtonPressed = false;
     this.SimulatorViewer.SaveAsImageEnabled = true;
     this.SimulatorViewer.SaveAsMsaglEnabled = true;
     this.SimulatorViewer.SaveButtonVisible = true;
     this.SimulatorViewer.SaveGraphButtonVisible = true;
     this.SimulatorViewer.SaveInVectorFormatEnabled = true;
     this.SimulatorViewer.ToolBarIsVisible = true;
     this.SimulatorViewer.ZoomF = 1;
     this.SimulatorViewer.ZoomFraction = 0.5;
     this.SimulatorViewer.ZoomWindowThreshold = 0.05;
     this.SimulatorViewer.SelectionChanged += new System.EventHandler(this.SimulatorViewer_SelectionChanged);
     //
     // toolStrip1
     //
     resources.ApplyResources(this.toolStrip1, "toolStrip1");
     this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     this.Label_Processes,
     this.ComboBox_Process,
     this.Button_Simulate,
     this.Button_PlayTrace,
      this.Button_SimulateTrace,
     this.toolStripSeparator2,
     this.Button_GenerateGraph,
     this.toolStripSeparator4,
     this.Button_Reset,
     this.toolStripSeparator7,
     this.Button_Settings,
     this.toolStripSeparator5,
     this.Button_InteractionPane,
     this.Button_StatePane});
     this.toolStrip1.Name = "toolStrip1";
     //
     // Label_Processes
     //
     this.Label_Processes.Name = "Label_Processes";
     resources.ApplyResources(this.Label_Processes, "Label_Processes");
     //
     // ComboBox_Process
     //
     this.ComboBox_Process.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
     this.ComboBox_Process.Name = "ComboBox_Process";
     resources.ApplyResources(this.ComboBox_Process, "ComboBox_Process");
     this.ComboBox_Process.SelectedIndexChanged += new System.EventHandler(this.ComboBox_Process_SelectedIndexChanged);
     //
     // Button_Simulate
     //
     resources.ApplyResources(this.Button_Simulate, "Button_Simulate");
     this.Button_Simulate.Name = "Button_Simulate";
     this.Button_Simulate.Click += new System.EventHandler(this.Button_Random_Click);
     //
     // Button_PlayTrace
     //
     resources.ApplyResources(this.Button_PlayTrace, "Button_PlayTrace");
     this.Button_PlayTrace.Name = "Button_PlayTrace";
     this.Button_PlayTrace.Click += new System.EventHandler(this.Button_Replay_Click);
     //
     // Button_SimulateTrace
     //
     resources.ApplyResources(this.Button_SimulateTrace, "Button_SimulateTrace");
     this.Button_SimulateTrace.Name = "Button_SimulateTrace";
     this.Button_SimulateTrace.Click += new System.EventHandler(this.Button_SimulateTrace_Click);
     //
     // toolStripSeparator2
     //
     this.toolStripSeparator2.Name = "toolStripSeparator2";
     resources.ApplyResources(this.toolStripSeparator2, "toolStripSeparator2");
     //
     // Button_GenerateGraph
     //
     resources.ApplyResources(this.Button_GenerateGraph, "Button_GenerateGraph");
     this.Button_GenerateGraph.Name = "Button_GenerateGraph";
     this.Button_GenerateGraph.Click += new System.EventHandler(this.Button_GenerateGraph_Click);
     //
     // toolStripSeparator4
     //
     this.toolStripSeparator4.Name = "toolStripSeparator4";
     resources.ApplyResources(this.toolStripSeparator4, "toolStripSeparator4");
     //
     // Button_Reset
     //
     resources.ApplyResources(this.Button_Reset, "Button_Reset");
     this.Button_Reset.Name = "Button_Reset";
     this.Button_Reset.Click += new System.EventHandler(this.Button_Reset_Click);
     //
     // toolStripSeparator7
     //
     this.toolStripSeparator7.Name = "toolStripSeparator7";
     resources.ApplyResources(this.toolStripSeparator7, "toolStripSeparator7");
     //
     // Button_Settings
     //
     this.Button_Settings.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
     this.Button_CounterExample,
     this.Button_AnimationSpeed,
     this.Button_PopupDelay,
     this.hideTauTransitionToolStripMenuItem,
     this.displayAllEnabledStatesToolStripMenuItem});
     resources.ApplyResources(this.Button_Settings, "Button_Settings");
     this.Button_Settings.Name = "Button_Settings";
     //
     // Button_CounterExample
     //
     this.Button_CounterExample.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
     this.Button_DisplayCounterexample,
     this.Button_DisplaySCC});
     resources.ApplyResources(this.Button_CounterExample, "Button_CounterExample");
     this.Button_CounterExample.Name = "Button_CounterExample";
     //
     // Button_DisplayCounterexample
     //
     this.Button_DisplayCounterexample.Checked = true;
     this.Button_DisplayCounterexample.CheckOnClick = true;
     this.Button_DisplayCounterexample.CheckState = System.Windows.Forms.CheckState.Checked;
     this.Button_DisplayCounterexample.Name = "Button_DisplayCounterexample";
     resources.ApplyResources(this.Button_DisplayCounterexample, "Button_DisplayCounterexample");
     this.Button_DisplayCounterexample.Click += new System.EventHandler(this.hignlightCounterexampleToolStripMenuItem_Click);
     //
     // Button_DisplaySCC
     //
     this.Button_DisplaySCC.CheckOnClick = true;
     this.Button_DisplaySCC.Name = "Button_DisplaySCC";
     resources.ApplyResources(this.Button_DisplaySCC, "Button_DisplaySCC");
     this.Button_DisplaySCC.Click += new System.EventHandler(this.hignlightCounterexampleToolStripMenuItem_Click);
     //
     // Button_AnimationSpeed
     //
     this.Button_AnimationSpeed.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
     this.Button_SpeedVerySlow,
     this.Button_SpeedSlow,
     this.Button_SpeedNormal,
     this.Button_SpeedFast,
     this.Button_SpeedVeryFast});
     resources.ApplyResources(this.Button_AnimationSpeed, "Button_AnimationSpeed");
     this.Button_AnimationSpeed.Name = "Button_AnimationSpeed";
     //
     // Button_SpeedVerySlow
     //
     this.Button_SpeedVerySlow.Name = "Button_SpeedVerySlow";
     resources.ApplyResources(this.Button_SpeedVerySlow, "Button_SpeedVerySlow");
     this.Button_SpeedVerySlow.Tag = "4";
     this.Button_SpeedVerySlow.Click += new System.EventHandler(this.toolStripMenuItem_SpeedVerySlow_Click_1);
     //
     // Button_SpeedSlow
     //
     this.Button_SpeedSlow.Name = "Button_SpeedSlow";
     resources.ApplyResources(this.Button_SpeedSlow, "Button_SpeedSlow");
     this.Button_SpeedSlow.Tag = "2";
     this.Button_SpeedSlow.Click += new System.EventHandler(this.toolStripMenuItem_SpeedVerySlow_Click_1);
     //
     // Button_SpeedNormal
     //
     this.Button_SpeedNormal.Checked = true;
     this.Button_SpeedNormal.CheckState = System.Windows.Forms.CheckState.Checked;
     this.Button_SpeedNormal.Name = "Button_SpeedNormal";
     resources.ApplyResources(this.Button_SpeedNormal, "Button_SpeedNormal");
     this.Button_SpeedNormal.Tag = "1";
     this.Button_SpeedNormal.Click += new System.EventHandler(this.toolStripMenuItem_SpeedVerySlow_Click_1);
     //
     // Button_SpeedFast
     //
     this.Button_SpeedFast.Name = "Button_SpeedFast";
     resources.ApplyResources(this.Button_SpeedFast, "Button_SpeedFast");
     this.Button_SpeedFast.Tag = "0.5";
     this.Button_SpeedFast.Click += new System.EventHandler(this.toolStripMenuItem_SpeedVerySlow_Click_1);
     //
     // Button_SpeedVeryFast
     //
     this.Button_SpeedVeryFast.Name = "Button_SpeedVeryFast";
     resources.ApplyResources(this.Button_SpeedVeryFast, "Button_SpeedVeryFast");
     this.Button_SpeedVeryFast.Tag = "0.25";
     this.Button_SpeedVeryFast.Click += new System.EventHandler(this.toolStripMenuItem_SpeedVerySlow_Click_1);
     //
     // Button_PopupDelay
     //
     this.Button_PopupDelay.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
     this.Button_5seconds,
     this.Button_10seconds,
     this.Button_20seconds,
     this.Button_40seconds,
     this.Button_60seconds});
     resources.ApplyResources(this.Button_PopupDelay, "Button_PopupDelay");
     this.Button_PopupDelay.Name = "Button_PopupDelay";
     //
     // Button_5seconds
     //
     this.Button_5seconds.Name = "Button_5seconds";
     resources.ApplyResources(this.Button_5seconds, "Button_5seconds");
     this.Button_5seconds.Tag = "5";
     this.Button_5seconds.Click += new System.EventHandler(this.secondsToolStripMenuItem_Click);
     //
     // Button_10seconds
     //
     this.Button_10seconds.Name = "Button_10seconds";
     resources.ApplyResources(this.Button_10seconds, "Button_10seconds");
     this.Button_10seconds.Tag = "10";
     this.Button_10seconds.Click += new System.EventHandler(this.secondsToolStripMenuItem_Click);
     //
     // Button_20seconds
     //
     this.Button_20seconds.Checked = true;
     this.Button_20seconds.CheckState = System.Windows.Forms.CheckState.Checked;
     this.Button_20seconds.Name = "Button_20seconds";
     resources.ApplyResources(this.Button_20seconds, "Button_20seconds");
     this.Button_20seconds.Tag = "20";
     this.Button_20seconds.Click += new System.EventHandler(this.secondsToolStripMenuItem_Click);
     //
     // Button_40seconds
     //
     this.Button_40seconds.Name = "Button_40seconds";
     resources.ApplyResources(this.Button_40seconds, "Button_40seconds");
     this.Button_40seconds.Tag = "40";
     this.Button_40seconds.Click += new System.EventHandler(this.secondsToolStripMenuItem_Click);
     //
     // Button_60seconds
     //
     this.Button_60seconds.Name = "Button_60seconds";
     resources.ApplyResources(this.Button_60seconds, "Button_60seconds");
     this.Button_60seconds.Tag = "60";
     this.Button_60seconds.Click += new System.EventHandler(this.secondsToolStripMenuItem_Click);
     //
     // hideTauTransitionToolStripMenuItem
     //
     this.hideTauTransitionToolStripMenuItem.CheckOnClick = true;
     this.hideTauTransitionToolStripMenuItem.Name = "hideTauTransitionToolStripMenuItem";
     resources.ApplyResources(this.hideTauTransitionToolStripMenuItem, "hideTauTransitionToolStripMenuItem");
     this.hideTauTransitionToolStripMenuItem.CheckStateChanged += new System.EventHandler(this.hideTauTransitionToolStripMenuItem_CheckStateChanged);
     //
     // displayAllEnabledStatesToolStripMenuItem
     //
     this.displayAllEnabledStatesToolStripMenuItem.CheckOnClick = true;
     this.displayAllEnabledStatesToolStripMenuItem.Checked = true;
     this.displayAllEnabledStatesToolStripMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
     this.displayAllEnabledStatesToolStripMenuItem.Name = "displayAllEnabledStatesToolStripMenuItem";
     resources.ApplyResources(this.displayAllEnabledStatesToolStripMenuItem, "displayAllEnabledStatesToolStripMenuItem");
     //
     // toolStripSeparator5
     //
     this.toolStripSeparator5.Name = "toolStripSeparator5";
     resources.ApplyResources(this.toolStripSeparator5, "toolStripSeparator5");
     //
     // Button_InteractionPane
     //
     this.Button_InteractionPane.CheckOnClick = true;
     resources.ApplyResources(this.Button_InteractionPane, "Button_InteractionPane");
     this.Button_InteractionPane.Name = "Button_InteractionPane";
     this.Button_InteractionPane.CheckStateChanged += new System.EventHandler(this.Button_EventPane_CheckStateChanged);
     //
     // Button_StatePane
     //
     this.Button_StatePane.CheckOnClick = true;
     resources.ApplyResources(this.Button_StatePane, "Button_StatePane");
     this.Button_StatePane.Name = "Button_StatePane";
     this.Button_StatePane.CheckStateChanged += new System.EventHandler(this.Button_State_CheckStateChanged);
     //
     // MenuStrip_Trace
     //
     this.MenuStrip_Trace.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     this.toolStripMenuItem1,
     this.toolStripSeparator1,
     this.cpToolStripMenuItem,
     this.copyEventToolStripMenuItem,
     this.toolStripSeparator6,
     this.saveToolStripMenuItem});
     this.MenuStrip_Trace.Name = "MenuStrip_Trace";
     resources.ApplyResources(this.MenuStrip_Trace, "MenuStrip_Trace");
     //
     // toolStripMenuItem1
     //
     resources.ApplyResources(this.toolStripMenuItem1, "toolStripMenuItem1");
     this.toolStripMenuItem1.Name = "toolStripMenuItem1";
     this.toolStripMenuItem1.Click += new System.EventHandler(this.toolStripMenuItem1_Click);
     //
     // toolStripSeparator1
     //
     this.toolStripSeparator1.Name = "toolStripSeparator1";
     resources.ApplyResources(this.toolStripSeparator1, "toolStripSeparator1");
     //
     // cpToolStripMenuItem
     //
     this.cpToolStripMenuItem.Name = "cpToolStripMenuItem";
     resources.ApplyResources(this.cpToolStripMenuItem, "cpToolStripMenuItem");
     this.cpToolStripMenuItem.Click += new System.EventHandler(this.cpToolStripMenuItem_Click);
     //
     // copyEventToolStripMenuItem
     //
     this.copyEventToolStripMenuItem.Name = "copyEventToolStripMenuItem";
     resources.ApplyResources(this.copyEventToolStripMenuItem, "copyEventToolStripMenuItem");
     this.copyEventToolStripMenuItem.Click += new System.EventHandler(this.copyEventToolStripMenuItem_Click);
     //
     // toolStripSeparator6
     //
     this.toolStripSeparator6.Name = "toolStripSeparator6";
     resources.ApplyResources(this.toolStripSeparator6, "toolStripSeparator6");
     //
     // saveToolStripMenuItem
     //
     resources.ApplyResources(this.saveToolStripMenuItem, "saveToolStripMenuItem");
     this.saveToolStripMenuItem.Name = "saveToolStripMenuItem";
     this.saveToolStripMenuItem.Click += new System.EventHandler(this.saveToolStripMenuItem_Click);
     //
     // ToolTip_Graph
     //
     this.ToolTip_Graph.AutoPopDelay = 10000000;
     this.ToolTip_Graph.InitialDelay = 500;
     this.ToolTip_Graph.ReshowDelay = 100;
     this.ToolTip_Graph.ShowAlways = true;
     //
     // statusStrip1
     //
     this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     this.StatusLabel});
     resources.ApplyResources(this.statusStrip1, "statusStrip1");
     this.statusStrip1.Name = "statusStrip1";
     //
     // StatusLabel
     //
     this.StatusLabel.Name = "StatusLabel";
     resources.ApplyResources(this.StatusLabel, "StatusLabel");
     //
     // From
     //
     resources.ApplyResources(this.From, "From");
     //
     // FromState
     //
     resources.ApplyResources(this.FromState, "FromState");
     //
     // columnHeader1
     //
     resources.ApplyResources(this.columnHeader1, "columnHeader1");
     //
     // columnHeader2
     //
     resources.ApplyResources(this.columnHeader2, "columnHeader2");
     //
     // Event
     //
     resources.ApplyResources(this.Event, "Event");
     //
     // State
     //
     resources.ApplyResources(this.State, "State");
     //
     // Process
     //
     resources.ApplyResources(this.Process, "Process");
     //
     // Panel_ToolbarCover
     //
     resources.ApplyResources(this.Panel_ToolbarCover, "Panel_ToolbarCover");
     this.Panel_ToolbarCover.Name = "Panel_ToolbarCover";
     //
     // ImageList
     //
     this.ImageList.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("ImageList.ImageStream")));
     this.ImageList.TransparentColor = System.Drawing.Color.Transparent;
     this.ImageList.Images.SetKeyName(0, "Simulate");
     this.ImageList.Images.SetKeyName(1, "Stop");
     this.ImageList.Images.SetKeyName(2, "Play");
     //
     // TableLayoutPanel
     //
     resources.ApplyResources(this.TableLayoutPanel, "TableLayoutPanel");
     this.TableLayoutPanel.Name = "TableLayoutPanel";
     //
     // SimulationForm
     //
     resources.ApplyResources(this, "$this");
     this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
     this.Controls.Add(this.toolStripContainer1);
     this.Controls.Add(this.statusStrip1);
     this.DoubleBuffered = true;
     this.Name = "SimulationForm";
     this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
     this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.SimulationForm_FormClosing);
     this.toolStripContainer1.ContentPanel.ResumeLayout(false);
     this.toolStripContainer1.TopToolStripPanel.ResumeLayout(false);
     this.toolStripContainer1.TopToolStripPanel.PerformLayout();
     this.toolStripContainer1.ResumeLayout(false);
     this.toolStripContainer1.PerformLayout();
     this.SplitContainer.Panel1.ResumeLayout(false);
     this.SplitContainer.Panel2.ResumeLayout(false);
     this.SplitContainer.ResumeLayout(false);
     this.GroupBox_EnabledEvents.ResumeLayout(false);
     this.GroupBox_EventTrace.ResumeLayout(false);
     this.toolStrip1.ResumeLayout(false);
     this.toolStrip1.PerformLayout();
     this.MenuStrip_Trace.ResumeLayout(false);
     this.statusStrip1.ResumeLayout(false);
     this.statusStrip1.PerformLayout();
     this.TableLayoutPanel.ResumeLayout(false);
     this.ResumeLayout(false);
     this.PerformLayout();
 }
示例#35
0
 private void InitializeComponent()
 {
     this.components = new System.ComponentModel.Container();
     System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
     System.Windows.Forms.ToolStripSeparator toolStripSeparator2;
     System.Windows.Forms.ToolStripSeparator toolStripSeparator3;
     System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(GraphView));
     this.toolStrip = new System.Windows.Forms.ToolStrip();
     this.projectionButton = new System.Windows.Forms.ToolStripDropDownButton();
     this.backButton = new System.Windows.Forms.ToolStripButton();
     this.forwardButton = new System.Windows.Forms.ToolStripButton();
     this.zoomInButton = new System.Windows.Forms.ToolStripButton();
     this.saveToolStripSplitButton = new System.Windows.Forms.ToolStripSplitButton();
     this.saveAsImageToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.saveAsDotToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.saveAsFSMToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.zoomOutButton = new System.Windows.Forms.ToolStripButton();
     this.handButton = new System.Windows.Forms.ToolStripButton();
     this.printButton = new System.Windows.Forms.ToolStripButton();
     this.transitionsButton = new System.Windows.Forms.ToolStripButton();
     this.loopsButton = new System.Windows.Forms.ToolStripButton();
     this.actionLabelsButton = new System.Windows.Forms.ToolStripButton();
     this.toolStripSeparator4 = new System.Windows.Forms.ToolStripSeparator();
     this.combineActionsButton = new System.Windows.Forms.ToolStripButton();
     this.layoutButton = new System.Windows.Forms.ToolStripDropDownButton();
     this.topToBottomToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.leftToRightToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.rightToLeftToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.bottomToTopToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.toolStripSeparator5 = new System.Windows.Forms.ToolStripSeparator();
     this.stateValuesButton = new System.Windows.Forms.ToolStripButton();
     this.propertiesButton = new System.Windows.Forms.ToolStripButton();
     this.progressBar = new System.Windows.Forms.ToolStripProgressBar();
     this.toolStripSeparator6 = new System.Windows.Forms.ToolStripSeparator();
     this.buttonTimer = new System.Windows.Forms.Timer(this.components);
     this.selectedItemToolTip = new System.Windows.Forms.ToolTip(this.components);
     this.propertyGrid = new System.Windows.Forms.PropertyGrid();
     this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
     this.restoreDefaultsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.sheHideHelpToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.graphWorker = new System.ComponentModel.BackgroundWorker();
     this.panel1 = new System.Windows.Forms.Panel();
     this.splitterHorizontal = new System.Windows.Forms.Splitter();
     this.imageListProjections = new System.Windows.Forms.ImageList(this.components);
     this.selectNodeContextMenuStrip = new System.Windows.Forms.ContextMenuStrip(this.components);
     this.selectNextNodeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.selectPreviousNodeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     this.panel2 = new System.Windows.Forms.Panel();
     this.viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
     this.splitter1 = new System.Windows.Forms.Splitter();
     this.stateViewer1 = new NModel.Visualization.StateViewer();
     toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
     toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
     toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
     this.toolStrip.SuspendLayout();
     this.contextMenuStrip1.SuspendLayout();
     this.panel1.SuspendLayout();
     this.selectNodeContextMenuStrip.SuspendLayout();
     this.panel2.SuspendLayout();
     this.SuspendLayout();
     //
     // toolStripSeparator1
     //
     toolStripSeparator1.Name = "toolStripSeparator1";
     toolStripSeparator1.Size = new System.Drawing.Size(6, 25);
     //
     // toolStripSeparator2
     //
     toolStripSeparator2.Name = "toolStripSeparator2";
     toolStripSeparator2.Size = new System.Drawing.Size(6, 25);
     //
     // toolStripSeparator3
     //
     toolStripSeparator3.Name = "toolStripSeparator3";
     toolStripSeparator3.Size = new System.Drawing.Size(6, 25);
     //
     // toolStrip
     //
     this.toolStrip.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden;
     this.toolStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     this.projectionButton,
     this.backButton,
     this.forwardButton,
     toolStripSeparator1,
     this.zoomInButton,
     this.saveToolStripSplitButton,
     this.zoomOutButton,
     this.handButton,
     toolStripSeparator2,
     this.printButton,
     toolStripSeparator3,
     this.transitionsButton,
     this.loopsButton,
     this.actionLabelsButton,
     this.toolStripSeparator4,
     this.combineActionsButton,
     this.layoutButton,
     this.toolStripSeparator5,
     this.stateValuesButton,
     this.propertiesButton,
     this.progressBar,
     this.toolStripSeparator6});
     this.toolStrip.Location = new System.Drawing.Point(0, 0);
     this.toolStrip.Name = "toolStrip";
     this.toolStrip.Size = new System.Drawing.Size(719, 25);
     this.toolStrip.TabIndex = 1;
     this.toolStrip.Text = "Tool Strip";
     this.toolStrip.ItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.toolStrip_ItemClicked);
     //
     // projectionButton
     //
     this.projectionButton.AutoSize = false;
     this.projectionButton.AutoToolTip = false;
     this.projectionButton.Image = ((System.Drawing.Image)(resources.GetObject("projectionButton.Image")));
     this.projectionButton.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
     this.projectionButton.ImageTransparentColor = System.Drawing.Color.Transparent;
     this.projectionButton.Name = "projectionButton";
     this.projectionButton.Size = new System.Drawing.Size(98, 22);
     this.projectionButton.Text = "     State Macine";
     this.projectionButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
     this.projectionButton.TextImageRelation = System.Windows.Forms.TextImageRelation.Overlay;
     //
     // backButton
     //
     this.backButton.Enabled = false;
     this.backButton.Image = ((System.Drawing.Image)(resources.GetObject("backButton.Image")));
     this.backButton.Name = "backButton";
     this.backButton.Size = new System.Drawing.Size(56, 22);
     this.backButton.Text = "Undo";
     this.backButton.Visible = false;
     this.backButton.Click += new System.EventHandler(this.backButton_Click);
     //
     // forwardButton
     //
     this.forwardButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
     this.forwardButton.Enabled = false;
     this.forwardButton.Image = ((System.Drawing.Image)(resources.GetObject("forwardButton.Image")));
     this.forwardButton.Name = "forwardButton";
     this.forwardButton.Size = new System.Drawing.Size(23, 22);
     this.forwardButton.Text = "Redo";
     this.forwardButton.Visible = false;
     this.forwardButton.Click += new System.EventHandler(this.forwardButton_Click);
     //
     // zoomInButton
     //
     this.zoomInButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
     this.zoomInButton.Image = ((System.Drawing.Image)(resources.GetObject("zoomInButton.Image")));
     this.zoomInButton.Name = "zoomInButton";
     this.zoomInButton.Size = new System.Drawing.Size(23, 22);
     this.zoomInButton.Text = "Zoom In";
     this.zoomInButton.Click += new System.EventHandler(this.zoomInButton_Click);
     //
     // saveToolStripSplitButton
     //
     this.saveToolStripSplitButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
     this.saveToolStripSplitButton.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
     this.saveAsImageToolStripMenuItem,
     this.saveAsDotToolStripMenuItem,
     this.saveAsFSMToolStripMenuItem});
     this.saveToolStripSplitButton.Image = ((System.Drawing.Image)(resources.GetObject("saveToolStripSplitButton.Image")));
     this.saveToolStripSplitButton.ImageTransparentColor = System.Drawing.Color.Magenta;
     this.saveToolStripSplitButton.Name = "saveToolStripSplitButton";
     this.saveToolStripSplitButton.Size = new System.Drawing.Size(32, 22);
     this.saveToolStripSplitButton.Tag = "Image";
     this.saveToolStripSplitButton.Text = "Save as image ...";
     this.saveToolStripSplitButton.ButtonClick += new System.EventHandler(this.saveToolStripSplitButton_ButtonClick);
     //
     // saveAsImageToolStripMenuItem
     //
     this.saveAsImageToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("saveAsImageToolStripMenuItem.Image")));
     this.saveAsImageToolStripMenuItem.ImageTransparentColor = System.Drawing.Color.White;
     this.saveAsImageToolStripMenuItem.Name = "saveAsImageToolStripMenuItem";
     this.saveAsImageToolStripMenuItem.Size = new System.Drawing.Size(160, 22);
     this.saveAsImageToolStripMenuItem.Text = "Save as Image ...";
     this.saveAsImageToolStripMenuItem.ToolTipText = "Save as Image ...";
     this.saveAsImageToolStripMenuItem.Click += new System.EventHandler(this.saveAsImageToolStripMenuItem_Click);
     //
     // saveAsDotToolStripMenuItem
     //
     this.saveAsDotToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("saveAsDotToolStripMenuItem.Image")));
     this.saveAsDotToolStripMenuItem.ImageTransparentColor = System.Drawing.Color.White;
     this.saveAsDotToolStripMenuItem.Name = "saveAsDotToolStripMenuItem";
     this.saveAsDotToolStripMenuItem.Size = new System.Drawing.Size(160, 22);
     this.saveAsDotToolStripMenuItem.Text = "Save as Dot ...";
     this.saveAsDotToolStripMenuItem.ToolTipText = "Save as Dot ...";
     this.saveAsDotToolStripMenuItem.Click += new System.EventHandler(this.saveAsDotToolStripMenuItem_Click);
     //
     // saveAsFSMToolStripMenuItem
     //
     this.saveAsFSMToolStripMenuItem.Name = "saveAsFSMToolStripMenuItem";
     this.saveAsFSMToolStripMenuItem.Size = new System.Drawing.Size(160, 22);
     this.saveAsFSMToolStripMenuItem.Text = "Save as FSM ...";
     this.saveAsFSMToolStripMenuItem.Click += new System.EventHandler(this.saveAsFSMToolStripMenuItem_Click);
     //
     // zoomOutButton
     //
     this.zoomOutButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
     this.zoomOutButton.Image = ((System.Drawing.Image)(resources.GetObject("zoomOutButton.Image")));
     this.zoomOutButton.Name = "zoomOutButton";
     this.zoomOutButton.Size = new System.Drawing.Size(23, 22);
     this.zoomOutButton.Text = "Zoom Out";
     this.zoomOutButton.Click += new System.EventHandler(this.zoomOutButton_Click);
     //
     // handButton
     //
     this.handButton.CheckOnClick = true;
     this.handButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
     this.handButton.Image = ((System.Drawing.Image)(resources.GetObject("handButton.Image")));
     this.handButton.Name = "handButton";
     this.handButton.Size = new System.Drawing.Size(23, 22);
     this.handButton.Text = "Pan";
     this.handButton.Click += new System.EventHandler(this.handButton_Click);
     //
     // printButton
     //
     this.printButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
     this.printButton.Image = ((System.Drawing.Image)(resources.GetObject("printButton.Image")));
     this.printButton.Name = "printButton";
     this.printButton.Size = new System.Drawing.Size(23, 22);
     this.printButton.Text = "&Print";
     this.printButton.Click += new System.EventHandler(this.printButton_Click);
     //
     // transitionsButton
     //
     this.transitionsButton.Checked = true;
     this.transitionsButton.CheckOnClick = true;
     this.transitionsButton.CheckState = System.Windows.Forms.CheckState.Checked;
     this.transitionsButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
     this.transitionsButton.Image = ((System.Drawing.Image)(resources.GetObject("transitionsButton.Image")));
     this.transitionsButton.ImageTransparentColor = System.Drawing.Color.Transparent;
     this.transitionsButton.Name = "transitionsButton";
     this.transitionsButton.Size = new System.Drawing.Size(23, 22);
     this.transitionsButton.ToolTipText = "Merge labels";
     this.transitionsButton.Click += new System.EventHandler(this.transitionsButton_Click);
     //
     // loopsButton
     //
     this.loopsButton.Checked = true;
     this.loopsButton.CheckOnClick = true;
     this.loopsButton.CheckState = System.Windows.Forms.CheckState.Checked;
     this.loopsButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
     this.loopsButton.Image = ((System.Drawing.Image)(resources.GetObject("loopsButton.Image")));
     this.loopsButton.Name = "loopsButton";
     this.loopsButton.Size = new System.Drawing.Size(23, 22);
     this.loopsButton.Text = "Show Self-Loops";
     this.loopsButton.Click += new System.EventHandler(this.loopsButton_Click);
     //
     // actionLabelsButton
     //
     this.actionLabelsButton.Checked = true;
     this.actionLabelsButton.CheckState = System.Windows.Forms.CheckState.Checked;
     this.actionLabelsButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
     this.actionLabelsButton.Image = ((System.Drawing.Image)(resources.GetObject("actionLabelsButton.Image")));
     this.actionLabelsButton.Name = "actionLabelsButton";
     this.actionLabelsButton.Size = new System.Drawing.Size(23, 22);
     this.actionLabelsButton.Text = "Transition Labels";
     this.actionLabelsButton.Click += new System.EventHandler(this.actionLabelsButton_Click);
     //
     // toolStripSeparator4
     //
     this.toolStripSeparator4.Name = "toolStripSeparator4";
     this.toolStripSeparator4.Size = new System.Drawing.Size(6, 25);
     //
     // combineActionsButton
     //
     this.combineActionsButton.CheckOnClick = true;
     this.combineActionsButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
     this.combineActionsButton.Image = ((System.Drawing.Image)(resources.GetObject("combineActionsButton.Image")));
     this.combineActionsButton.Name = "combineActionsButton";
     this.combineActionsButton.Size = new System.Drawing.Size(23, 22);
     this.combineActionsButton.Text = "Combine Start and Finish Actions";
     this.combineActionsButton.Click += new System.EventHandler(this.combineActionsButton_Click);
     //
     // layoutButton
     //
     this.layoutButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
     this.layoutButton.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
     this.topToBottomToolStripMenuItem,
     this.leftToRightToolStripMenuItem,
     this.rightToLeftToolStripMenuItem,
     this.bottomToTopToolStripMenuItem});
     this.layoutButton.Image = ((System.Drawing.Image)(resources.GetObject("layoutButton.Image")));
     this.layoutButton.Name = "layoutButton";
     this.layoutButton.Size = new System.Drawing.Size(29, 22);
     this.layoutButton.Text = "Layout Direction";
     //
     // topToBottomToolStripMenuItem
     //
     this.topToBottomToolStripMenuItem.Checked = true;
     this.topToBottomToolStripMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
     this.topToBottomToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("topToBottomToolStripMenuItem.Image")));
     this.topToBottomToolStripMenuItem.Name = "topToBottomToolStripMenuItem";
     this.topToBottomToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
     this.topToBottomToolStripMenuItem.Text = "Top to Bottom";
     this.topToBottomToolStripMenuItem.Click += new System.EventHandler(this.topToBottomToolStripMenuItem_Click);
     //
     // leftToRightToolStripMenuItem
     //
     this.leftToRightToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("leftToRightToolStripMenuItem.Image")));
     this.leftToRightToolStripMenuItem.Name = "leftToRightToolStripMenuItem";
     this.leftToRightToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
     this.leftToRightToolStripMenuItem.Text = "Left to Right";
     this.leftToRightToolStripMenuItem.Click += new System.EventHandler(this.leftToRightToolStripMenuItem_Click);
     //
     // rightToLeftToolStripMenuItem
     //
     this.rightToLeftToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("rightToLeftToolStripMenuItem.Image")));
     this.rightToLeftToolStripMenuItem.Name = "rightToLeftToolStripMenuItem";
     this.rightToLeftToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
     this.rightToLeftToolStripMenuItem.Text = "Right to Left";
     this.rightToLeftToolStripMenuItem.Click += new System.EventHandler(this.rightToLeftToolStripMenuItem_Click);
     //
     // bottomToTopToolStripMenuItem
     //
     this.bottomToTopToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("bottomToTopToolStripMenuItem.Image")));
     this.bottomToTopToolStripMenuItem.Name = "bottomToTopToolStripMenuItem";
     this.bottomToTopToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
     this.bottomToTopToolStripMenuItem.Text = "Bottom to Top";
     this.bottomToTopToolStripMenuItem.Click += new System.EventHandler(this.bottomToTopToolStripMenuItem_Click);
     //
     // toolStripSeparator5
     //
     this.toolStripSeparator5.Name = "toolStripSeparator5";
     this.toolStripSeparator5.Size = new System.Drawing.Size(6, 25);
     //
     // stateValuesButton
     //
     this.stateValuesButton.CheckOnClick = true;
     this.stateValuesButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
     this.stateValuesButton.Image = ((System.Drawing.Image)(resources.GetObject("stateValuesButton.Image")));
     this.stateValuesButton.ImageTransparentColor = System.Drawing.Color.White;
     this.stateValuesButton.Name = "stateValuesButton";
     this.stateValuesButton.Size = new System.Drawing.Size(23, 22);
     this.stateValuesButton.Text = "State Viewer";
     this.stateValuesButton.Click += new System.EventHandler(this.stateValuesButton_Click);
     //
     // propertiesButton
     //
     this.propertiesButton.CheckOnClick = true;
     this.propertiesButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
     this.propertiesButton.Image = ((System.Drawing.Image)(resources.GetObject("propertiesButton.Image")));
     this.propertiesButton.Name = "propertiesButton";
     this.propertiesButton.Size = new System.Drawing.Size(23, 22);
     this.propertiesButton.Text = "Advanced Properties";
     this.propertiesButton.Click += new System.EventHandler(this.propertiesButton_Click);
     //
     // progressBar
     //
     this.progressBar.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
     this.progressBar.AutoSize = false;
     this.progressBar.Name = "progressBar";
     this.progressBar.Overflow = System.Windows.Forms.ToolStripItemOverflow.Never;
     this.progressBar.Size = new System.Drawing.Size(100, 15);
     this.progressBar.ToolTipText = "Graph Progress";
     this.progressBar.Visible = false;
     //
     // toolStripSeparator6
     //
     this.toolStripSeparator6.Name = "toolStripSeparator6";
     this.toolStripSeparator6.Size = new System.Drawing.Size(6, 25);
     //
     // buttonTimer
     //
     this.buttonTimer.Enabled = true;
     this.buttonTimer.Tick += new System.EventHandler(this.buttonTimer_Tick);
     //
     // selectedItemToolTip
     //
     this.selectedItemToolTip.AutoPopDelay = 32767;
     this.selectedItemToolTip.InitialDelay = 1;
     this.selectedItemToolTip.ReshowDelay = 1;
     //
     // propertyGrid
     //
     this.propertyGrid.ContextMenuStrip = this.contextMenuStrip1;
     this.propertyGrid.Dock = System.Windows.Forms.DockStyle.Top;
     this.propertyGrid.Location = new System.Drawing.Point(0, 0);
     this.propertyGrid.Name = "propertyGrid";
     this.propertyGrid.SelectedObject = this;
     this.propertyGrid.Size = new System.Drawing.Size(229, 253);
     this.propertyGrid.TabIndex = 2;
     this.propertyGrid.ToolbarVisible = false;
     this.propertyGrid.Visible = false;
     //
     // contextMenuStrip1
     //
     this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     this.restoreDefaultsToolStripMenuItem,
     this.sheHideHelpToolStripMenuItem});
     this.contextMenuStrip1.Name = "contextMenuStrip1";
     this.contextMenuStrip1.ShowImageMargin = false;
     this.contextMenuStrip1.Size = new System.Drawing.Size(137, 48);
     //
     // restoreDefaultsToolStripMenuItem
     //
     this.restoreDefaultsToolStripMenuItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
     this.restoreDefaultsToolStripMenuItem.Name = "restoreDefaultsToolStripMenuItem";
     this.restoreDefaultsToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
     this.restoreDefaultsToolStripMenuItem.Text = "RestoreDefaults";
     this.restoreDefaultsToolStripMenuItem.Click += new System.EventHandler(this.restoreDefaultsToolStripMenuItem_Click);
     //
     // sheHideHelpToolStripMenuItem
     //
     this.sheHideHelpToolStripMenuItem.Name = "sheHideHelpToolStripMenuItem";
     this.sheHideHelpToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
     this.sheHideHelpToolStripMenuItem.Text = "Show/Hide Help";
     this.sheHideHelpToolStripMenuItem.Click += new System.EventHandler(this.sheHideHelpToolStripMenuItem_Click);
     //
     // graphWorker
     //
     this.graphWorker.WorkerReportsProgress = true;
     this.graphWorker.DoWork += new System.ComponentModel.DoWorkEventHandler(this.graphWorker_DoWork);
     this.graphWorker.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.graphWorker_RunWorkerCompleted);
     this.graphWorker.ProgressChanged += new System.ComponentModel.ProgressChangedEventHandler(this.graphWorker_ProgressChanged);
     //
     // panel1
     //
     this.panel1.Controls.Add(this.stateViewer1);
     this.panel1.Controls.Add(this.splitterHorizontal);
     this.panel1.Controls.Add(this.propertyGrid);
     this.panel1.Dock = System.Windows.Forms.DockStyle.Right;
     this.panel1.Location = new System.Drawing.Point(490, 0);
     this.panel1.Name = "panel1";
     this.panel1.Size = new System.Drawing.Size(229, 420);
     this.panel1.TabIndex = 5;
     this.panel1.Visible = false;
     //
     // splitterHorizontal
     //
     this.splitterHorizontal.Dock = System.Windows.Forms.DockStyle.Top;
     this.splitterHorizontal.Location = new System.Drawing.Point(0, 253);
     this.splitterHorizontal.Name = "splitterHorizontal";
     this.splitterHorizontal.Size = new System.Drawing.Size(229, 5);
     this.splitterHorizontal.TabIndex = 5;
     this.splitterHorizontal.TabStop = false;
     this.splitterHorizontal.Visible = false;
     //
     // imageListProjections
     //
     this.imageListProjections.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageListProjections.ImageStream")));
     this.imageListProjections.TransparentColor = System.Drawing.Color.White;
     this.imageListProjections.Images.SetKeyName(0, "root");
     this.imageListProjections.Images.SetKeyName(1, "L");
     this.imageListProjections.Images.SetKeyName(2, "R");
     this.imageListProjections.Images.SetKeyName(3, "LL");
     this.imageListProjections.Images.SetKeyName(4, "LR");
     this.imageListProjections.Images.SetKeyName(5, "RL");
     this.imageListProjections.Images.SetKeyName(6, "RR");
     //
     // selectNodeContextMenuStrip
     //
     this.selectNodeContextMenuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     this.selectNextNodeToolStripMenuItem,
     this.selectPreviousNodeToolStripMenuItem});
     this.selectNodeContextMenuStrip.Name = "selectNodeContextMenuStrip";
     this.selectNodeContextMenuStrip.ShowImageMargin = false;
     this.selectNodeContextMenuStrip.ShowItemToolTips = false;
     this.selectNodeContextMenuStrip.Size = new System.Drawing.Size(143, 48);
     this.selectNodeContextMenuStrip.Opening += new System.ComponentModel.CancelEventHandler(this.selectNodeContextMenuStrip_Opening);
     //
     // selectNextNodeToolStripMenuItem
     //
     this.selectNextNodeToolStripMenuItem.AutoToolTip = true;
     this.selectNextNodeToolStripMenuItem.Name = "selectNextNodeToolStripMenuItem";
     this.selectNextNodeToolStripMenuItem.ShortcutKeyDisplayString = "n";
     this.selectNextNodeToolStripMenuItem.Size = new System.Drawing.Size(142, 22);
     this.selectNextNodeToolStripMenuItem.Text = "Select Next";
     this.selectNextNodeToolStripMenuItem.ToolTipText = "Select next node";
     this.selectNextNodeToolStripMenuItem.Click += new System.EventHandler(this.selectNextNodeToolStripMenuItem_Click);
     //
     // selectPreviousNodeToolStripMenuItem
     //
     this.selectPreviousNodeToolStripMenuItem.AutoToolTip = true;
     this.selectPreviousNodeToolStripMenuItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
     this.selectPreviousNodeToolStripMenuItem.Name = "selectPreviousNodeToolStripMenuItem";
     this.selectPreviousNodeToolStripMenuItem.ShortcutKeyDisplayString = "p";
     this.selectPreviousNodeToolStripMenuItem.Size = new System.Drawing.Size(142, 22);
     this.selectPreviousNodeToolStripMenuItem.Text = "Select Previous";
     this.selectPreviousNodeToolStripMenuItem.ToolTipText = "Select previous node";
     this.selectPreviousNodeToolStripMenuItem.Click += new System.EventHandler(this.selectPreviousNodeToolStripMenuItem_Click);
     //
     // panel2
     //
     this.panel2.Controls.Add(this.viewer);
     this.panel2.Controls.Add(this.splitter1);
     this.panel2.Controls.Add(this.panel1);
     this.panel2.Dock = System.Windows.Forms.DockStyle.Fill;
     this.panel2.Location = new System.Drawing.Point(0, 25);
     this.panel2.Name = "panel2";
     this.panel2.Size = new System.Drawing.Size(719, 420);
     this.panel2.TabIndex = 6;
     //
     // viewer
     //
     this.viewer.AsyncLayout = false;
     this.viewer.AutoScroll = true;
     this.viewer.BackwardEnabled = false;
     this.viewer.Dock = System.Windows.Forms.DockStyle.Fill;
     this.viewer.ForwardEnabled = false;
     this.viewer.Graph = null;
     this.viewer.Location = new System.Drawing.Point(0, 0);
     this.viewer.MouseHitDistance = 0.05;
     this.viewer.Name = "viewer";
     this.viewer.NavigationVisible = true;
     this.viewer.PanButtonPressed = false;
     this.viewer.SaveButtonVisible = true;
     this.viewer.Size = new System.Drawing.Size(485, 420);
     this.viewer.TabIndex = 7;
     this.viewer.ZoomF = 1;
     this.viewer.ZoomFraction = 0.5;
     this.viewer.ZoomWindowThreshold = 0.05;
     this.viewer.MouseWheel += new System.Windows.Forms.MouseEventHandler(this.viewer_MouseWheel);
     this.viewer.Load += new System.EventHandler(this.viewer_Load);
     this.viewer.ObjectUnderMouseCursorChanged += new System.EventHandler<Microsoft.Msagl.Drawing.ObjectUnderMouseCursorChangedEventArgs>(this.viewer_SelectionChanged);
     //
     // splitter1
     //
     this.splitter1.Dock = System.Windows.Forms.DockStyle.Right;
     this.splitter1.Location = new System.Drawing.Point(485, 0);
     this.splitter1.Name = "splitter1";
     this.splitter1.Size = new System.Drawing.Size(5, 420);
     this.splitter1.TabIndex = 6;
     this.splitter1.TabStop = false;
     this.splitter1.Visible = false;
     //
     // stateViewer1
     //
     this.stateViewer1.BackColor = System.Drawing.SystemColors.InactiveBorder;
     this.stateViewer1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
     this.stateViewer1.DefaultModelName = "Fsm";
     this.stateViewer1.Dock = System.Windows.Forms.DockStyle.Fill;
     this.stateViewer1.Location = new System.Drawing.Point(0, 258);
     this.stateViewer1.Margin = new System.Windows.Forms.Padding(4);
     this.stateViewer1.Name = "stateViewer1";
     this.stateViewer1.Size = new System.Drawing.Size(229, 162);
     this.stateViewer1.TabIndex = 4;
     this.stateViewer1.Title = "Selected State";
     this.stateViewer1.TitleVisible = true;
     this.stateViewer1.Visible = false;
     //
     // GraphView
     //
     this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
     this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
     this.Controls.Add(this.panel2);
     this.Controls.Add(this.toolStrip);
     this.Name = "GraphView";
     this.Size = new System.Drawing.Size(719, 445);
     this.toolStrip.ResumeLayout(false);
     this.toolStrip.PerformLayout();
     this.contextMenuStrip1.ResumeLayout(false);
     this.panel1.ResumeLayout(false);
     this.selectNodeContextMenuStrip.ResumeLayout(false);
     this.panel2.ResumeLayout(false);
     this.ResumeLayout(false);
     this.PerformLayout();
 }
        private void DrawForeignKeys()
        {
            Form form = new Form();

            form.Text = "Stage-2 Reverse Engineer : Foreign_Keys";
            //create a viewer object 
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            //create a graph object 
            Microsoft.Msagl.Drawing.Graph graph = new Microsoft.Msagl.Drawing.Graph("graph");
            //create the graph content 


            foreach (Tuple<string,string> tup in foreignKeyRelations)
            {
                Microsoft.Msagl.Drawing.Node newNode = new Microsoft.Msagl.Drawing.Node(tup.Item1);
                newNode.Attr.Shape = Microsoft.Msagl.Drawing.Shape.Box;

                graph.AddNode(newNode);

                Microsoft.Msagl.Drawing.Node newNode2 = new Microsoft.Msagl.Drawing.Node(tup.Item2);
                newNode.Attr.Shape = Microsoft.Msagl.Drawing.Shape.Box;

                graph.AddNode(newNode2);

                graph.AddEdge(tup.Item1, tup.Item2);
            }

            //bind the graph to the viewer 
            viewer.Graph = graph;
            //associate the viewer with the form 
            form.SuspendLayout();
            viewer.Dock = DockStyle.Fill;
            form.Controls.Add(viewer);
            form.ResumeLayout();
            //show the form 
            form.Show();
        }
        private void DrawWeakEntities()
        {
            Form form = new Form();

            form.Text = "Stage-3 Reverse Engineer : Foreign_Keys";
            //create a viewer object 
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            //create a graph object 
            Microsoft.Msagl.Drawing.Graph graph = new Microsoft.Msagl.Drawing.Graph("graph");
            //create the graph content 


            // Draw all the entitites
            foreach(Relation rel in _masterListRelations)
            {
                Microsoft.Msagl.Drawing.Node newNode = new Microsoft.Msagl.Drawing.Node(rel.relationName);
                newNode.Attr.Shape = Microsoft.Msagl.Drawing.Shape.Box;

                //Add it to the graph
                graph.AddNode(newNode);
            }

            //Draw all the weak Entities
            foreach(Tuple<string, string> weakEnt in weakEntities)
            {
                graph.AddNode(weakEnt.Item1).Attr.Shape = Microsoft.Msagl.Drawing.Shape.Ellipse;
                graph.AddEdge(weakEnt.Item1, weakEnt.Item2);
            }

            //Draw all the other relations
            foreach(Tuple<string, string> rel in foreignKeyRelations)
            {
                Tuple<string, string> find = weakEntities.Find(obj => (obj.Item1 == rel.Item1 && obj.Item2 == rel.Item2) || (obj.Item2 == rel.Item1 && obj.Item1 == rel.Item2));
                if(find == null)
                {
                    graph.AddEdge(rel.Item1, rel.Item2);
                }

            }

            //bind the graph to the viewer 
            viewer.Graph = graph;
            //associate the viewer with the form 
            form.SuspendLayout();
            viewer.Dock = DockStyle.Fill;
            form.Controls.Add(viewer);
            form.ResumeLayout();
            //show the form 
            form.Show();
        }
        private void stage_1_Entities_Identification_Click(object sender, EventArgs e)
        {
            Form form = new System.Windows.Forms.Form();

            form.Text = "Stage-1 Reverse Engineer : Entities";
            //create a viewer object 
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            //create a graph object 
            Microsoft.Msagl.Drawing.Graph graph = new Microsoft.Msagl.Drawing.Graph("graph");
            //create the graph content 


            foreach(Relation rel  in _masterListRelations)
            {
                Microsoft.Msagl.Drawing.Node newNode = new Microsoft.Msagl.Drawing.Node(rel.relationName);
                newNode.Attr.Shape = Microsoft.Msagl.Drawing.Shape.Box;

                graph.AddNode(newNode);
            }



            //bind the graph to the viewer 
            viewer.Graph = graph;
            //associate the viewer with the form 
            form.SuspendLayout();
            viewer.Dock = System.Windows.Forms.DockStyle.Fill;
            form.Controls.Add(viewer);
            form.Size = new Size(500, 500);
            form.ResumeLayout();
            //show the form 
            form.Show();

        }