Free cookie consent management tool by TermsFeed Policy Generator

Changeset 4876


Ignore:
Timestamp:
11/20/10 17:01:31 (13 years ago)
Author:
epitzer
Message:

Complete overhaul of DebugEngine (#47)

Location:
branches/HeuristicLab.DebugEngine
Files:
6 added
4 edited

Legend:

Unmodified
Added
Removed
  • branches/HeuristicLab.DebugEngine/DebugEngineView.Designer.cs

    r4871 r4876  
    5050      this.executionTimeTextBox = new System.Windows.Forms.TextBox();
    5151      this.executionStackView = new HeuristicLab.DebugEngine.ExecutionStackView();
     52      this.operationContentView = new HeuristicLab.DebugEngine.OperationContentView();
    5253      this.logView = new HeuristicLab.Core.Views.LogView();
    5354      this.splitContainer1 = new System.Windows.Forms.SplitContainer();
    5455      this.splitContainer2 = new System.Windows.Forms.SplitContainer();
    55       this.splitContainer3 = new System.Windows.Forms.SplitContainer();
    56       this.parameterCollectionView = new HeuristicLab.Core.Views.ParameterCollectionView();
    57       this.label3 = new System.Windows.Forms.Label();
    58       this.scopeTreeView = new System.Windows.Forms.TreeView();
    59       this.label4 = new System.Windows.Forms.Label();
    60       this.operationTextBox = new System.Windows.Forms.TextBox();
    6156      this.stepButton = new System.Windows.Forms.Button();
    62       this.updateButton = new System.Windows.Forms.Button();
    6357      this.toolTip = new System.Windows.Forms.ToolTip(this.components);
    64       this.parentButton = new System.Windows.Forms.Button();
    6558      this.splitContainer1.Panel1.SuspendLayout();
    6659      this.splitContainer1.Panel2.SuspendLayout();
     
    6962      this.splitContainer2.Panel2.SuspendLayout();
    7063      this.splitContainer2.SuspendLayout();
    71       this.splitContainer3.Panel1.SuspendLayout();
    72       this.splitContainer3.Panel2.SuspendLayout();
    73       this.splitContainer3.SuspendLayout();
    7464      this.SuspendLayout();
    7565      //
     
    9080      this.executionTimeTextBox.Name = "executionTimeTextBox";
    9181      this.executionTimeTextBox.ReadOnly = true;
    92       this.executionTimeTextBox.Size = new System.Drawing.Size(684, 20);
     82      this.executionTimeTextBox.Size = new System.Drawing.Size(747, 20);
    9383      this.executionTimeTextBox.TabIndex = 1;
    9484      //
     
    10191      this.executionStackView.Name = "executionStackView";
    10292      this.executionStackView.ReadOnly = false;
    103       this.executionStackView.Size = new System.Drawing.Size(433, 262);
     93      this.executionStackView.Size = new System.Drawing.Size(252, 262);
    10494      this.executionStackView.TabIndex = 0;
     95      //
     96      // operationContentView
     97      //
     98      this.operationContentView.Caption = "Operation Content View";
     99      this.operationContentView.Content = null;
     100      this.operationContentView.Dock = System.Windows.Forms.DockStyle.Fill;
     101      this.operationContentView.Location = new System.Drawing.Point(0, 0);
     102      this.operationContentView.Name = "operationContentView";
     103      this.operationContentView.ReadOnly = false;
     104      this.operationContentView.Size = new System.Drawing.Size(610, 503);
     105      this.operationContentView.TabIndex = 0;
    105106      //
    106107      // logView
     
    112113      this.logView.Name = "logView";
    113114      this.logView.ReadOnly = false;
    114       this.logView.Size = new System.Drawing.Size(433, 237);
     115      this.logView.Size = new System.Drawing.Size(252, 237);
    115116      this.logView.TabIndex = 2;
    116117      //
     
    129130      //
    130131      this.splitContainer1.Panel2.Controls.Add(this.logView);
    131       this.splitContainer1.Size = new System.Drawing.Size(433, 503);
     132      this.splitContainer1.Size = new System.Drawing.Size(252, 503);
    132133      this.splitContainer1.SplitterDistance = 262;
    133134      this.splitContainer1.TabIndex = 3;
     
    147148      // splitContainer2.Panel2
    148149      //
    149       this.splitContainer2.Panel2.Controls.Add(this.splitContainer3);
    150       this.splitContainer2.Panel2.Controls.Add(this.label4);
    151       this.splitContainer2.Panel2.Controls.Add(this.operationTextBox);
     150      this.splitContainer2.Panel2.Controls.Add(this.operationContentView);
    152151      this.splitContainer2.Size = new System.Drawing.Size(866, 503);
    153       this.splitContainer2.SplitterDistance = 433;
     152      this.splitContainer2.SplitterDistance = 252;
    154153      this.splitContainer2.TabIndex = 0;
    155       //
    156       // splitContainer3
    157       //
    158       this.splitContainer3.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
    159                   | System.Windows.Forms.AnchorStyles.Left)
    160                   | System.Windows.Forms.AnchorStyles.Right)));
    161       this.splitContainer3.Location = new System.Drawing.Point(3, 29);
    162       this.splitContainer3.Name = "splitContainer3";
    163       this.splitContainer3.Orientation = System.Windows.Forms.Orientation.Horizontal;
    164       //
    165       // splitContainer3.Panel1
    166       //
    167       this.splitContainer3.Panel1.Controls.Add(this.parameterCollectionView);
    168       //
    169       // splitContainer3.Panel2
    170       //
    171       this.splitContainer3.Panel2.Controls.Add(this.label3);
    172       this.splitContainer3.Panel2.Controls.Add(this.scopeTreeView);
    173       this.splitContainer3.Size = new System.Drawing.Size(423, 471);
    174       this.splitContainer3.SplitterDistance = 235;
    175       this.splitContainer3.TabIndex = 4;
    176       //
    177       // parameterCollectionView
    178       //
    179       this.parameterCollectionView.Caption = "ParameterCollection View";
    180       this.parameterCollectionView.Content = null;
    181       this.parameterCollectionView.Dock = System.Windows.Forms.DockStyle.Fill;
    182       this.parameterCollectionView.Location = new System.Drawing.Point(0, 0);
    183       this.parameterCollectionView.Name = "parameterCollectionView";
    184       this.parameterCollectionView.ReadOnly = false;
    185       this.parameterCollectionView.Size = new System.Drawing.Size(423, 235);
    186       this.parameterCollectionView.TabIndex = 0;
    187       //
    188       // label3
    189       //
    190       this.label3.AutoSize = true;
    191       this.label3.Location = new System.Drawing.Point(3, 0);
    192       this.label3.Name = "label3";
    193       this.label3.Size = new System.Drawing.Size(63, 13);
    194       this.label3.TabIndex = 1;
    195       this.label3.Text = "Scope Tree";
    196       //
    197       // scopeTreeView
    198       //
    199       this.scopeTreeView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
    200                   | System.Windows.Forms.AnchorStyles.Left)
    201                   | System.Windows.Forms.AnchorStyles.Right)));
    202       this.scopeTreeView.Location = new System.Drawing.Point(3, 16);
    203       this.scopeTreeView.Name = "scopeTreeView";
    204       this.scopeTreeView.ShowNodeToolTips = true;
    205       this.scopeTreeView.Size = new System.Drawing.Size(417, 216);
    206       this.scopeTreeView.TabIndex = 0;
    207       this.scopeTreeView.NodeMouseDoubleClick += new System.Windows.Forms.TreeNodeMouseClickEventHandler(this.scopeTreeView_NodeMouseDoubleClick);
    208       //
    209       // label4
    210       //
    211       this.label4.AutoSize = true;
    212       this.label4.Location = new System.Drawing.Point(3, 6);
    213       this.label4.Name = "label4";
    214       this.label4.Size = new System.Drawing.Size(56, 13);
    215       this.label4.TabIndex = 3;
    216       this.label4.Text = "Operation:";
    217       //
    218       // operationTextBox
    219       //
    220       this.operationTextBox.Location = new System.Drawing.Point(65, 3);
    221       this.operationTextBox.Name = "operationTextBox";
    222       this.operationTextBox.ReadOnly = true;
    223       this.operationTextBox.Size = new System.Drawing.Size(267, 20);
    224       this.operationTextBox.TabIndex = 2;
    225154      //
    226155      // stepButton
     
    228157      this.stepButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
    229158      this.stepButton.Image = ((System.Drawing.Image)(resources.GetObject("stepButton.Image")));
    230       this.stepButton.Location = new System.Drawing.Point(812, 3);
     159      this.stepButton.Location = new System.Drawing.Point(845, 3);
    231160      this.stepButton.Name = "stepButton";
    232161      this.stepButton.Size = new System.Drawing.Size(24, 24);
     
    236165      this.stepButton.Click += new System.EventHandler(this.stepButton_Click);
    237166      //
    238       // updateButton
    239       //
    240       this.updateButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
    241       this.updateButton.Image = ((System.Drawing.Image)(resources.GetObject("updateButton.Image")));
    242       this.updateButton.Location = new System.Drawing.Point(842, 3);
    243       this.updateButton.Name = "updateButton";
    244       this.updateButton.Size = new System.Drawing.Size(24, 24);
    245       this.updateButton.TabIndex = 5;
    246       this.toolTip.SetToolTip(this.updateButton, "Refresh/Reset View");
    247       this.updateButton.UseVisualStyleBackColor = true;
    248       this.updateButton.Click += new System.EventHandler(this.updateButton_Click);
    249       //
    250       // parentButton
    251       //
    252       this.parentButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
    253       this.parentButton.Image = ((System.Drawing.Image)(resources.GetObject("parentButton.Image")));
    254       this.parentButton.Location = new System.Drawing.Point(782, 3);
    255       this.parentButton.Name = "parentButton";
    256       this.parentButton.Size = new System.Drawing.Size(24, 24);
    257       this.parentButton.TabIndex = 6;
    258       this.toolTip.SetToolTip(this.parentButton, "Go to parent ExecutionContext");
    259       this.parentButton.UseVisualStyleBackColor = true;
    260       this.parentButton.Click += new System.EventHandler(this.parentButton_Click);
    261       //
    262167      // DebugEngineView
    263168      //
    264169      this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
    265       this.Controls.Add(this.parentButton);
    266170      this.Controls.Add(this.splitContainer2);
    267       this.Controls.Add(this.updateButton);
    268171      this.Controls.Add(this.stepButton);
    269172      this.Controls.Add(this.executionTimeTextBox);
     
    276179      this.splitContainer2.Panel1.ResumeLayout(false);
    277180      this.splitContainer2.Panel2.ResumeLayout(false);
    278       this.splitContainer2.Panel2.PerformLayout();
    279181      this.splitContainer2.ResumeLayout(false);
    280       this.splitContainer3.Panel1.ResumeLayout(false);
    281       this.splitContainer3.Panel2.ResumeLayout(false);
    282       this.splitContainer3.Panel2.PerformLayout();
    283       this.splitContainer3.ResumeLayout(false);
    284182      this.ResumeLayout(false);
    285183      this.PerformLayout();
     
    294192    private System.Windows.Forms.SplitContainer splitContainer1;
    295193    private System.Windows.Forms.SplitContainer splitContainer2;
    296     private System.Windows.Forms.Label label3;
    297     private System.Windows.Forms.TreeView scopeTreeView;
    298194    private System.Windows.Forms.Button stepButton;
    299     private System.Windows.Forms.Button updateButton;
    300195    private System.Windows.Forms.ToolTip toolTip;
    301     private System.Windows.Forms.Button parentButton;
    302     private System.Windows.Forms.Label label4;
    303     private System.Windows.Forms.TextBox operationTextBox;
    304     private System.Windows.Forms.SplitContainer splitContainer3;
    305     private Core.Views.ParameterCollectionView parameterCollectionView;
    306196    private HeuristicLab.DebugEngine.ExecutionStackView executionStackView;
     197    private HeuristicLab.DebugEngine.OperationContentView operationContentView;
    307198
    308199  }
  • branches/HeuristicLab.DebugEngine/DebugEngineView.cs

    r4871 r4876  
    5454    public DebugEngineView() {
    5555      InitializeComponent();
    56       updateButton.Image = VS2008ImageLibrary.Refresh;
    57       stepButton.Image = VS2008ImageLibrary.MoveNext;
    58       parentButton.Image = VS2008ImageLibrary.ArrowUp;
    5956    }
    6057
     
    9188        executionTimeTextBox.Text = "-";
    9289        executionStackView.Content = null;
     90        operationContentView.Content = null;
    9391      } else {
    9492        logView.Content = Content.Log;
    9593        executionTimeTextBox.Text = Content.ExecutionTime.ToString();
    9694        executionStackView.Content = Content.ExecutionStack;
     95        operationContentView.Content = new OperationContent(Content.CurrentOperation);
    9796      }
    9897    }
     
    103102        logView.Enabled = false;
    104103        executionTimeTextBox.Enabled = false;
     104        stepButton.Enabled = false;
    105105      } else {
    106106        logView.Enabled = true;
    107107        executionTimeTextBox.Enabled = true;
     108        stepButton.Enabled = Content.CanContinue;
    108109      }
    109110    }
     
    124125        switch (Content.ExecutionState) {
    125126          case ExecutionState.Started: executionStackView.SuspendUpdate(); break;
    126           default: executionStackView.ResumeUpdate(); break;
     127          default:
     128            executionStackView.ResumeUpdate();
     129            operationContentView.Content = new OperationContent(Content.CurrentOperation);
     130            break;
    127131        }
     132        SetEnabledStateOfControls();
    128133      }
    129134    }
    130135
    131     #region Current Operation
    132 
    133136    void Content_CurrentOperationChanged(object sender, OperationChangedEventArgs e) {
    134       if (InvokeRequired)
     137      if (InvokeRequired) {
    135138        Invoke(new EventHandler<OperationChangedEventArgs>(Content_CurrentOperationChanged), sender, e);
    136       else
    137         SetOperation(Content.CurrentOperation);
    138     }
    139 
    140     private void SetOperation(IOperation operation) {
    141       IAtomicOperation atomicOperation = operation as IAtomicOperation;
    142       operationTextBox.Text = "<none>";
    143       parameterCollectionView.Content = null;
    144       toolTip.SetToolTip(operationTextBox, null);
    145       if (atomicOperation != null && atomicOperation.Operator != null) {
    146         operationTextBox.Text = string.Format("Atomic {0}", atomicOperation.Operator.Name);
    147         toolTip.SetToolTip(operationTextBox, Utils.TypeName(atomicOperation.Operator));
    148       }
    149       OperationCollection operationCollection = operation as OperationCollection;
    150       if (operationCollection != null)
    151         operationTextBox.Text = string.Format("Collection {0}", operationCollection.Count);
    152       IExecutionContext context = operation as IExecutionContext;
    153       IScope scope = null;
    154       if (context != null) {
    155         parameterCollectionView.Content = context.Parameters;
    156         scope = context.Scope;
    157         while (scope != null && scope.Parent != null)
    158           scope = scope.Parent;
    159       }
    160       UpdateScope(scope);
    161       if (context != null)
    162         parentButton.Enabled = context.Parent != null;
    163       scopeTreeView.Tag = context;
    164     }
    165 
    166     private void UpdateScope(IScope scope) {
    167       scopeTreeView.BeginUpdate();
    168       scopeTreeView.Nodes.Clear();
    169       if (scope != null) {
    170         AddScope(scopeTreeView.Nodes, scope);
    171       }
    172       scopeTreeView.ExpandAll();
    173       if (scopeTreeView.Nodes.Count > 0)
    174         scopeTreeView.TopNode = scopeTreeView.Nodes[0];
    175       scopeTreeView.EndUpdate();
    176     }
    177 
    178    
    179 
    180     /*
    181     private string GetApproximateValue(IParameter param, ref string typeName) {
    182       string valueString = "<none>";
    183       IExecutionContext context = Content.CurrentOperation as IExecutionContext;
    184       IExecutionContext originalContext = param.ExecutionContext;
    185       object value = null;
    186       try {
    187         try {
    188           param.ExecutionContext = context;
    189           value = param.ActualValue;
    190         } finally {
    191           param.ExecutionContext = originalContext;
    192         }
    193       } catch (Exception) { }
    194       if (value != null) {
    195         valueString = value.ToString();
    196         if (context != originalContext)
    197           valueString = " ~ " + valueString;
    198         typeName = TypeName(value);
    199       }
    200       return valueString;
    201     }
    202      */
    203 
    204     private void AddScope(TreeNodeCollection nodes, IScope scope) {
    205       TreeNode node = nodes.Add(scope.Name);
    206       if (Content.CurrentAtomicOperation != null && Content.CurrentAtomicOperation.Scope == scope) {
    207         node.ForeColor = Color.Red;
    208         node.BackColor = Color.LightGray;
    209       }
    210       foreach (var var in scope.Variables) {
    211         TreeNode varNode = node.Nodes.Add(string.Format("{0}={1}", var.Name, var.Value.ToString()));
    212         varNode.Tag = var.Value;
    213         varNode.ToolTipText = Utils.TypeName(var.Value);
    214       }
    215       foreach (var subScope in scope.SubScopes) {
    216         AddScope(node.Nodes, subScope);
    217       }
    218     }
    219 
    220     #endregion
    221 
    222     protected virtual void UpdateView() {
    223       if (InvokeRequired) {
    224         Invoke(new Action(UpdateView));
    225139      } else {
    226         SetOperation(Content.CurrentOperation);
     140        if (Content.ExecutionState != ExecutionState.Started)
     141          operationContentView.Content = new OperationContent(Content.CurrentOperation);
    227142      }
    228143    }
     
    230145    private void stepButton_Click(object sender, EventArgs e) {
    231146      Content.Step();
    232       UpdateView();
    233147    }
    234148
    235     private void updateButton_Click(object sender, EventArgs e) {
    236       UpdateView();
    237     }
    238 
    239     private void scopeTreeView_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e) {
    240       if (e.Node.Tag != null)
    241         MainFormManager.MainForm.ShowContent((IItem)e.Node.Tag);
    242     }
    243 
    244     private void parentButton_Click(object sender, EventArgs e) {
    245       IExecutionContext context = scopeTreeView.Tag as IExecutionContext;
    246       if (context != null) {
    247         SetOperation(context.Parent as IOperation);
    248       }
    249     }
    250149  }
    251150}
  • branches/HeuristicLab.DebugEngine/DebugEngineView.resx

    r4871 r4876  
    122122    <value>
    123123        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
    124         YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAALDgAA
    125         Cw4BQL7hQQAAARBJREFUOE9j+P//PwM6Tuh5woxNHJsYhmaQIqABMkDMRIwhWA0onPX8f/zkt0rEGILV
     124        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAALDAAA
     125        CwwBP0AiyAAAARBJREFUOE9j+P//PwM6Tuh5woxNHJsYhmaQIqABMkDMRIwhWA0onPX8f/zkt0rEGILV
    126126        gNyZz/4ndN/7HzfhtQYh72A1IGPK0//z9v/+H9Rw8zXQAFt8huAKg/+z9/3637n173+30sv/gQbY4zIE
    127127        qwGRXY/+T9n263/J0r//E6b//W+TexanIVgNCGx++L917XuwZuOSL/+lo6/9N45c9t+h6Gw8ukuwGuBR
     
    134134    <value>17, 17</value>
    135135  </metadata>
    136   <data name="updateButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    137     <value>
    138         iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
    139         YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAALDQAA
    140         Cw0B7QfALAAAAmJJREFUOE+dk21IU1Ecxt3MCBX8MLRsvhHmtI0SM6OImSFR+kECKSiDvgRFX6IiKnKa
    141         C9dsVmtbU2sWhCFBSvamFDFwrRcZbH7YmEZ2t9Y2Z24zU3ev29M9w0XS9UsXHg6Hc5/fec75/09S0tJH
    142         BweS6dAQnw4bM5kZcyrz82Mmqwxm5n02EzKuoqdf8civ8967koTnn5GZHckzjX1Au1GD+sdHUdVVC+mt
    143         fbjcL4eNcoTosPmIyqgHJyDi6xH0j75E3fMGyCYUULg0uOJQocnRhhOfzqHyTg2sE3aU3NzGDXB4xoPE
    144         fHXiBmr7DiGraQPWyTfimPFUHNTsuB6HFCjF3IALT5vRYDqJ7eo9aB/UYtTlxJiXQk6LKJ4qoWx5ITfg
    145         gOEwpJ370Wd5AWYxJqYXY2n+wDRsbucyiKAxnxtQ0VmF809kxFzKikczMV6vZQD5CglyFcUgOxNzxkUh
    146         N2CLdidGvtjgm/yRQm7Z4w3kuL/7U755J9d4fIHV7JxPuX1rnZ8pbgC7I5a0lx2TI3Rsl9vj581Hovy5
    147         hSjvF6vZuWiabFjJDSgzVGKzfgeKb5cHC9okYWGrCB3mh1igowKSiIVUdwzfR4l2hTJuNUihdOniJStU
    148         lcJC2clxwCbIJSms1BhqHtVjfWMRd4JNuoo/AAIRqcth+WpnO3AcXaaeeFeSUh5/cJobwMZG0bWyZTUn
    149         poSRmIUyEe697eUG5LWK8cz6GkK2cf42JRqImBVDGgRCzG7Ot6B/0w32ovDOYcGl3hbU6g4i/WwW0s9k
    150         oVpdB+1gN6bCTKpniuav+Br/Z+E3/RykhyEkCzoAAAAASUVORK5CYII=
    151 </value>
    152   </data>
    153   <data name="parentButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    154     <value>
    155         iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
    156         YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAALDwAA
    157         Cw8BkvkDpQAAANpJREFUOE9j+P//PwMlGK9m99JLxoQMx2mAqu9cqbI5L/4DDYnAZwhWA2Ca5+37+98w
    158         bNF/45gNvrgMwTAAWXP+3B//nfKO/NcKWIDTEBQDkDW3rvv3P7Ln03+Psov/7bP2/9fwm4vVEBQDQH4u
    159         nvn0P4iuXfH/f9zkP//96+/91wxZ/R9o+H8Vz2lAn6DGGtYwABkAcgHMAHX/RRgaYQbhNGDy9r//c+f9
    160         BbtA1XsW6QaAYqBi6UAasOzwb8pcADIAFIUgrOw+ifQwAGlCxkSnREKZh6h0QIohAFsI3u6Zj7KhAAAA
    161         AElFTkSuQmCC
    162 </value>
    163   </data>
    164136</root>
  • branches/HeuristicLab.DebugEngine/HeuristicLab.DebugEngine.csproj

    r4871 r4876  
    133133    </Compile>
    134134    <Compile Include="OperationChangedEventArgs.cs" />
     135    <Compile Include="OperationContent.cs" />
     136    <Compile Include="OperationContentView.cs">
     137      <SubType>UserControl</SubType>
     138    </Compile>
     139    <Compile Include="OperationContentView.Designer.cs">
     140      <DependentUpon>OperationContentView.cs</DependentUpon>
     141    </Compile>
    135142    <Compile Include="Properties\AssemblyInfo.cs" />
     143    <Compile Include="Properties\Resources.Designer.cs">
     144      <AutoGen>True</AutoGen>
     145      <DesignTime>True</DesignTime>
     146      <DependentUpon>Resources.resx</DependentUpon>
     147    </Compile>
    136148    <Compile Include="Utils.cs" />
    137149  </ItemGroup>
     
    142154    <EmbeddedResource Include="ExecutionStackView.resx">
    143155      <DependentUpon>ExecutionStackView.cs</DependentUpon>
     156    </EmbeddedResource>
     157    <EmbeddedResource Include="OperationContentView.resx">
     158      <DependentUpon>OperationContentView.cs</DependentUpon>
     159    </EmbeddedResource>
     160    <EmbeddedResource Include="Properties\Resources.resx">
     161      <Generator>ResXFileCodeGenerator</Generator>
     162      <LastGenOutput>Resources.Designer.cs</LastGenOutput>
    144163    </EmbeddedResource>
    145164  </ItemGroup>
Note: See TracChangeset for help on using the changeset viewer.