Beispiel #1
0
 public CmdItem(int Size, string Name, CmdDelegate Cmd, EclDump ecl_dump)
 {
     size    = Size;
     name    = Name;
     cmd     = Cmd;
     ecldump = ecl_dump;
 }
        private static Control FillECLCodePanel(TabPage page)
        {
            // this can take a while, so make sure the cursor is set to wait
            Application.UseWaitCursor = true;
            Application.DoEvents();

            Control bookmarkedRow = null;
            Panel   codePanel     = (Panel)page.Controls.Find("codepanel", false)[0];

            EclDump.EclDump ecl = (EclDump.EclDump)codePanel.Tag;
            // decode ecl files, and put each line in its own textbox
            foreach (var eclAddr in ecl.decodedEcl.Keys.Reverse())
            {
                var eclText = ViewerHelper.CreateTextBox();
                eclText.Text = ecl.decodedEcl[eclAddr];
                eclText.Dock = DockStyle.Fill;
                var eclAnnotation = ViewerHelper.CreateTextBox();
                if (ecl.annotations.ContainsKey(eclAddr))
                {
                    eclAnnotation.Text      = ecl.annotations[eclAddr];
                    eclText.BackColor       = System.Drawing.Color.LightBlue;
                    eclAnnotation.BackColor = System.Drawing.Color.LightBlue;
                }
                eclAnnotation.Width = 300;
                eclAnnotation.Dock  = DockStyle.Right;
                var row = ViewerHelper.CreateRow();
                codePanel.Controls.Add(row);
                row.Controls.Add(eclText);

                row.Controls.Add(eclAnnotation);
                if (ChangeFileEventArgs.targetPlace != "" && eclAnnotation.Text.Contains(ChangeFileEventArgs.targetPlace) && page.Text == ChangeFileEventArgs.currentDaxId.ToString())
                {
                    bookmarkedRow = row;
                }
            }
            Application.UseWaitCursor = false;
            Application.DoEvents();

            return(bookmarkedRow);
        }
        private static int FillECLCodePanel(TabPage page)
        {
            int   bookMarkIndex = 0;
            Panel codePanel     = (Panel)page.Controls.Find("codepanel", false)[0];

            EclDump.EclDump ecl = (EclDump.EclDump)codePanel.Tag;
            // decode ecl files, and put each line in its own textbox

            var eclView          = new ListView();
            var addrColumn       = new ColumnHeader();
            var opCodeColumn     = new ColumnHeader();
            var opNameColumn     = new ColumnHeader();
            var codeColumn       = new ColumnHeader();
            var annotationColumn = new ColumnHeader();

            eclView.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
                addrColumn, opCodeColumn, opNameColumn, codeColumn, annotationColumn
            });

            eclView.Name          = "eclView";
            eclView.Dock          = DockStyle.Fill;
            eclView.FullRowSelect = true;
            eclView.MultiSelect   = false;
            eclView.TabIndex      = 0;
            eclView.UseCompatibleStateImageBehavior = false;
            eclView.View           = View.Details;
            eclView.HideSelection  = false;
            addrColumn.Text        = "Addr";
            addrColumn.Width       = 60;
            opCodeColumn.Text      = "OpCode";
            opCodeColumn.Width     = 60;
            opNameColumn.Text      = "OpName";
            opNameColumn.Width     = 100;
            codeColumn.Text        = "Code";
            codeColumn.Width       = 300;
            annotationColumn.Text  = "Annotation";
            annotationColumn.Width = 300;

            foreach (var eclAddr in ecl.decodedEcl.Keys)
            {
                string annotation;
                if (ecl.annotations.TryGetValue(eclAddr, out annotation) == false)
                {
                    annotation = "";
                }
                var data         = ecl.decodedEcl[eclAddr].Split('|');
                var child        = new ListViewItem(data[0]);
                var listViewItem = eclView.Items.Add(child);
                listViewItem.SubItems.Add(data[1]);
                listViewItem.SubItems.Add(data[2]);
                listViewItem.SubItems.Add(data[3]);
                listViewItem.SubItems.Add(annotation);

                if (ChangeFileEventArgs.targetPlace != "" &&
                    annotation.Contains(ChangeFileEventArgs.targetPlace) &&
                    page.Text == ChangeFileEventArgs.currentDaxId.ToString())
                {
                    bookMarkIndex = listViewItem.Index;
                }
            }
            codePanel.Controls.Add(eclView);

            return(bookMarkIndex);
        }
Beispiel #4
0
 public CmdItem(int Size, string Name, CmdDelegate Cmd, EclDump ecl_dump)
 {
     size = Size;
     name = Name;
     cmd = Cmd;
     ecldump = ecl_dump;
 }
Beispiel #5
0
 public EclOpp(byte _code, byte _low, EclDump ecl_dump)
 {
     code    = _code;
     low     = _low;
     ecldump = ecl_dump;
 }
Beispiel #6
0
 public EclOpp(byte _code, byte _low, EclDump ecl_dump)
 {
     code = _code;
     low = _low;
     ecldump = ecl_dump;
 }