8
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
1 |
/*
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
2 |
* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
3 |
* All rights reserved.
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
4 |
*
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
5 |
* Redistribution and use in source and binary forms, with or without
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
6 |
* modification, are permitted provided that the following conditions are met:
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
7 |
*
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
8 |
* - Redistributions of source code must retain the above copyright notice,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
9 |
* this list of conditions and the following disclaimer.
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
10 |
* - Redistributions in binary form must reproduce the above copyright notice,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
11 |
* this list of conditions and the following disclaimer in the documentation
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
12 |
* and/or other materials provided with the distribution.
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
13 |
* - Neither the name of Nokia Corporation nor the names of its contributors
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
14 |
* may be used to endorse or promote products derived from this software
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
15 |
* without specific prior written permission.
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
16 |
*
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
17 |
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
18 |
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
19 |
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
20 |
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
21 |
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
22 |
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
23 |
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
24 |
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
25 |
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
26 |
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
27 |
* POSSIBILITY OF SUCH DAMAGE.
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
28 |
*
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
29 |
* Initial Contributors:
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
30 |
* Nokia Corporation - initial contribution.
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
31 |
*
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
32 |
* Contributors:
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
33 |
*
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
34 |
* Description:
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
35 |
*
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
36 |
*/
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
37 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
38 |
using System;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
39 |
using System.Drawing;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
40 |
using System.Collections;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
41 |
using System.ComponentModel;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
42 |
using System.Windows.Forms;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
43 |
using MemAnalysisLib;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
44 |
using MemAnalysisLib.Parser;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
45 |
using SymbianUtils.Settings;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
46 |
using MemAnalysisLib.MemoryOperations.Class;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
47 |
using MemAnalysisLib.MemoryOperations.Functions;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
48 |
using MemAnalysisLib.MemoryOperations.Operations;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
49 |
using MemAnalysisLib.Parser.Base;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
50 |
using MemAnalysisLib.Parser.Implementations;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
51 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
52 |
namespace MemAnalysisUiLib.Forms
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
53 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
54 |
public class MemAnalysisRegionalForm : System.Windows.Forms.Form
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
55 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
56 |
#region Windows Form Designer Code
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
57 |
private System.Windows.Forms.GroupBox groupBox1;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
58 |
private System.Windows.Forms.ListView iListView;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
59 |
private System.Windows.Forms.ColumnHeader iColRegionNumber;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
60 |
private System.Windows.Forms.ColumnHeader iColLineNumber;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
61 |
private System.Windows.Forms.ColumnHeader iColCountAllocs;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
62 |
private System.Windows.Forms.ColumnHeader iColCountFrees;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
63 |
private System.Windows.Forms.ColumnHeader iColMemAllocated;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
64 |
private System.Windows.Forms.ColumnHeader iColMemFreed;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
65 |
private System.Windows.Forms.ColumnHeader iColNet;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
66 |
private System.Windows.Forms.ColumnHeader iColRegionText;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
67 |
private System.Windows.Forms.GroupBox groupBox2;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
68 |
private System.Windows.Forms.TextBox iMarkerStartText;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
69 |
private System.Windows.Forms.Label label1;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
70 |
private System.Windows.Forms.Label label2;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
71 |
private System.Windows.Forms.Label label3;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
72 |
private System.Windows.Forms.TextBox iMarkerEndText;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
73 |
private System.Windows.Forms.Panel iPnl_Upper;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
74 |
private System.Windows.Forms.Panel iPnl_Lower;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
75 |
private System.Windows.Forms.Splitter iSplitter_Horizontal;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
76 |
private XPTable.Models.Table iTable;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
77 |
private XPTable.Models.TableModel iTable_Model;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
78 |
private XPTable.Models.ColumnModel iTable_ColModel;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
79 |
private XPTable.Models.TextColumn iCol_MemOp;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
80 |
private XPTable.Models.TextColumn iCol_LineNumber;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
81 |
private XPTable.Models.TextColumn iCol_CellAddr;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
82 |
private XPTable.Models.TextColumn iCol_AllocSize;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
83 |
private XPTable.Models.TextColumn iCol_Type;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
84 |
private XPTable.Models.TextColumn iCol_HeapSize;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
85 |
private XPTable.Models.TextColumn iCol_AssociatedOp;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
86 |
private XPTable.Models.TextColumn iCol_Symbol;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
87 |
private System.ComponentModel.Container components = null;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
88 |
#endregion
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
89 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
90 |
#region Constructors & destructor
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
91 |
public MemAnalysisRegionalForm( MemAnalysisParserBase aParser, XmlSettings aSettings )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
92 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
93 |
InitializeComponent();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
94 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
95 |
System.Diagnostics.Debug.Assert( aParser is MemAnalysisRegionalParser );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
96 |
iParser = (MemAnalysisRegionalParser) aParser;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
97 |
iSettings = aSettings;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
98 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
99 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
100 |
protected override void Dispose( bool disposing )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
101 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
102 |
if( disposing )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
103 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
104 |
if(components != null)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
105 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
106 |
components.Dispose();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
107 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
108 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
109 |
base.Dispose( disposing );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
110 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
111 |
#endregion
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
112 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
113 |
#region Windows Form Designer generated code
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
114 |
private void InitializeComponent()
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
115 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
116 |
this.iPnl_Upper = new System.Windows.Forms.Panel();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
117 |
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
118 |
this.iListView = new System.Windows.Forms.ListView();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
119 |
this.iColRegionNumber = new System.Windows.Forms.ColumnHeader();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
120 |
this.iColLineNumber = new System.Windows.Forms.ColumnHeader();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
121 |
this.iColCountAllocs = new System.Windows.Forms.ColumnHeader();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
122 |
this.iColCountFrees = new System.Windows.Forms.ColumnHeader();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
123 |
this.iColMemAllocated = new System.Windows.Forms.ColumnHeader();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
124 |
this.iColMemFreed = new System.Windows.Forms.ColumnHeader();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
125 |
this.iColNet = new System.Windows.Forms.ColumnHeader();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
126 |
this.iColRegionText = new System.Windows.Forms.ColumnHeader();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
127 |
this.iPnl_Lower = new System.Windows.Forms.Panel();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
128 |
this.groupBox2 = new System.Windows.Forms.GroupBox();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
129 |
this.iTable = new XPTable.Models.Table();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
130 |
this.iTable_ColModel = new XPTable.Models.ColumnModel();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
131 |
this.iCol_MemOp = new XPTable.Models.TextColumn();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
132 |
this.iCol_LineNumber = new XPTable.Models.TextColumn();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
133 |
this.iCol_CellAddr = new XPTable.Models.TextColumn();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
134 |
this.iCol_Type = new XPTable.Models.TextColumn();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
135 |
this.iCol_AllocSize = new XPTable.Models.TextColumn();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
136 |
this.iCol_HeapSize = new XPTable.Models.TextColumn();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
137 |
this.iCol_AssociatedOp = new XPTable.Models.TextColumn();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
138 |
this.iCol_Symbol = new XPTable.Models.TextColumn();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
139 |
this.iTable_Model = new XPTable.Models.TableModel();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
140 |
this.iMarkerStartText = new System.Windows.Forms.TextBox();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
141 |
this.label1 = new System.Windows.Forms.Label();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
142 |
this.label2 = new System.Windows.Forms.Label();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
143 |
this.label3 = new System.Windows.Forms.Label();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
144 |
this.iMarkerEndText = new System.Windows.Forms.TextBox();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
145 |
this.iSplitter_Horizontal = new System.Windows.Forms.Splitter();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
146 |
this.iPnl_Upper.SuspendLayout();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
147 |
this.groupBox1.SuspendLayout();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
148 |
this.iPnl_Lower.SuspendLayout();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
149 |
this.groupBox2.SuspendLayout();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
150 |
((System.ComponentModel.ISupportInitialize)(this.iTable)).BeginInit();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
151 |
this.SuspendLayout();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
152 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
153 |
// iPnl_Upper
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
154 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
155 |
this.iPnl_Upper.Controls.Add(this.groupBox1);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
156 |
this.iPnl_Upper.Dock = System.Windows.Forms.DockStyle.Top;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
157 |
this.iPnl_Upper.Location = new System.Drawing.Point(0, 0);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
158 |
this.iPnl_Upper.Name = "iPnl_Upper";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
159 |
this.iPnl_Upper.Size = new System.Drawing.Size(1016, 172);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
160 |
this.iPnl_Upper.TabIndex = 3;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
161 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
162 |
// groupBox1
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
163 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
164 |
this.groupBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
165 |
| System.Windows.Forms.AnchorStyles.Left)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
166 |
| System.Windows.Forms.AnchorStyles.Right)));
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
167 |
this.groupBox1.Controls.Add(this.iListView);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
168 |
this.groupBox1.Location = new System.Drawing.Point(8, 5);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
169 |
this.groupBox1.Name = "groupBox1";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
170 |
this.groupBox1.Size = new System.Drawing.Size(1006, 164);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
171 |
this.groupBox1.TabIndex = 1;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
172 |
this.groupBox1.TabStop = false;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
173 |
this.groupBox1.Text = "Identified regions...";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
174 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
175 |
// iListView
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
176 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
177 |
this.iListView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
178 |
| System.Windows.Forms.AnchorStyles.Left)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
179 |
| System.Windows.Forms.AnchorStyles.Right)));
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
180 |
this.iListView.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
181 |
this.iColRegionNumber,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
182 |
this.iColLineNumber,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
183 |
this.iColCountAllocs,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
184 |
this.iColCountFrees,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
185 |
this.iColMemAllocated,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
186 |
this.iColMemFreed,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
187 |
this.iColNet,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
188 |
this.iColRegionText});
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
189 |
this.iListView.FullRowSelect = true;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
190 |
this.iListView.GridLines = true;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
191 |
this.iListView.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
192 |
this.iListView.Location = new System.Drawing.Point(12, 20);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
193 |
this.iListView.Name = "iListView";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
194 |
this.iListView.Size = new System.Drawing.Size(980, 136);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
195 |
this.iListView.TabIndex = 0;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
196 |
this.iListView.View = System.Windows.Forms.View.Details;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
197 |
this.iListView.SelectedIndexChanged += new System.EventHandler(this.iListView_SelectedIndexChanged);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
198 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
199 |
// iColRegionNumber
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
200 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
201 |
this.iColRegionNumber.Text = "Region #";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
202 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
203 |
// iColLineNumber
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
204 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
205 |
this.iColLineNumber.Text = "Line #";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
206 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
207 |
// iColCountAllocs
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
208 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
209 |
this.iColCountAllocs.Text = "Alloc. Count";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
210 |
this.iColCountAllocs.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
211 |
this.iColCountAllocs.Width = 73;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
212 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
213 |
// iColCountFrees
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
214 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
215 |
this.iColCountFrees.Text = "Free\'d Count";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
216 |
this.iColCountFrees.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
217 |
this.iColCountFrees.Width = 75;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
218 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
219 |
// iColMemAllocated
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
220 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
221 |
this.iColMemAllocated.Text = "Allocated Memory";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
222 |
this.iColMemAllocated.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
223 |
this.iColMemAllocated.Width = 96;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
224 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
225 |
// iColMemFreed
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
226 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
227 |
this.iColMemFreed.Text = "Free\'d Memory";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
228 |
this.iColMemFreed.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
229 |
this.iColMemFreed.Width = 84;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
230 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
231 |
// iColNet
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
232 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
233 |
this.iColNet.Text = "Net";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
234 |
this.iColNet.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
235 |
this.iColNet.Width = 80;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
236 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
237 |
// iColRegionText
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
238 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
239 |
this.iColRegionText.Text = "";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
240 |
this.iColRegionText.Width = 337;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
241 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
242 |
// iPnl_Lower
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
243 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
244 |
this.iPnl_Lower.Controls.Add(this.groupBox2);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
245 |
this.iPnl_Lower.Dock = System.Windows.Forms.DockStyle.Fill;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
246 |
this.iPnl_Lower.Location = new System.Drawing.Point(0, 172);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
247 |
this.iPnl_Lower.Name = "iPnl_Lower";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
248 |
this.iPnl_Lower.Size = new System.Drawing.Size(1016, 569);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
249 |
this.iPnl_Lower.TabIndex = 4;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
250 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
251 |
// groupBox2
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
252 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
253 |
this.groupBox2.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
254 |
| System.Windows.Forms.AnchorStyles.Left)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
255 |
| System.Windows.Forms.AnchorStyles.Right)));
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
256 |
this.groupBox2.Controls.Add(this.iTable);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
257 |
this.groupBox2.Controls.Add(this.iMarkerStartText);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
258 |
this.groupBox2.Controls.Add(this.label1);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
259 |
this.groupBox2.Controls.Add(this.label2);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
260 |
this.groupBox2.Controls.Add(this.label3);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
261 |
this.groupBox2.Controls.Add(this.iMarkerEndText);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
262 |
this.groupBox2.Location = new System.Drawing.Point(8, 5);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
263 |
this.groupBox2.Name = "groupBox2";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
264 |
this.groupBox2.Size = new System.Drawing.Size(1006, 558);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
265 |
this.groupBox2.TabIndex = 2;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
266 |
this.groupBox2.TabStop = false;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
267 |
this.groupBox2.Text = "Memory operations within region";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
268 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
269 |
// iTable
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
270 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
271 |
this.iTable.AlternatingRowColor = System.Drawing.Color.Gainsboro;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
272 |
this.iTable.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
273 |
| System.Windows.Forms.AnchorStyles.Left)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
274 |
| System.Windows.Forms.AnchorStyles.Right)));
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
275 |
this.iTable.ColumnModel = this.iTable_ColModel;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
276 |
this.iTable.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
277 |
this.iTable.FullRowSelect = true;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
278 |
this.iTable.HeaderFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
279 |
this.iTable.Location = new System.Drawing.Point(88, 47);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
280 |
this.iTable.Name = "iTable";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
281 |
this.iTable.Size = new System.Drawing.Size(904, 476);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
282 |
this.iTable.TabIndex = 3;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
283 |
this.iTable.TableModel = this.iTable_Model;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
284 |
this.iTable.CellClick += new XPTable.Events.CellMouseEventHandler(this.iTable_CellClick);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
285 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
286 |
// iTable_ColModel
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
287 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
288 |
this.iTable_ColModel.Columns.AddRange(new XPTable.Models.Column[] {
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
289 |
this.iCol_MemOp,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
290 |
this.iCol_LineNumber,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
291 |
this.iCol_CellAddr,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
292 |
this.iCol_Type,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
293 |
this.iCol_AllocSize,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
294 |
this.iCol_HeapSize,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
295 |
this.iCol_AssociatedOp,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
296 |
this.iCol_Symbol});
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
297 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
298 |
// iCol_MemOp
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
299 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
300 |
this.iCol_MemOp.Text = "Op. #";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
301 |
this.iCol_MemOp.Width = 72;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
302 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
303 |
// iCol_LineNumber
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
304 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
305 |
this.iCol_LineNumber.Text = "Line";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
306 |
this.iCol_LineNumber.Width = 62;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
307 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
308 |
// iCol_CellAddr
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
309 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
310 |
this.iCol_CellAddr.Text = "Cell Addr.";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
311 |
this.iCol_CellAddr.Width = 62;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
312 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
313 |
// iCol_Type
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
314 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
315 |
this.iCol_Type.Text = "Type";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
316 |
this.iCol_Type.Width = 110;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
317 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
318 |
// iCol_AllocSize
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
319 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
320 |
this.iCol_AllocSize.Alignment = XPTable.Models.ColumnAlignment.Right;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
321 |
this.iCol_AllocSize.Text = "Alloc. Size";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
322 |
this.iCol_AllocSize.Width = 64;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
323 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
324 |
// iCol_HeapSize
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
325 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
326 |
this.iCol_HeapSize.Alignment = XPTable.Models.ColumnAlignment.Right;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
327 |
this.iCol_HeapSize.Text = "Heap Size";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
328 |
this.iCol_HeapSize.Width = 64;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
329 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
330 |
// iCol_AssociatedOp
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
331 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
332 |
this.iCol_AssociatedOp.Text = "Associated Op.";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
333 |
this.iCol_AssociatedOp.Width = 170;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
334 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
335 |
// iCol_Symbol
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
336 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
337 |
this.iCol_Symbol.Text = "Symbol";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
338 |
this.iCol_Symbol.Width = 270;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
339 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
340 |
// iMarkerStartText
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
341 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
342 |
this.iMarkerStartText.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
343 |
| System.Windows.Forms.AnchorStyles.Right)));
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
344 |
this.iMarkerStartText.Location = new System.Drawing.Point(88, 22);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
345 |
this.iMarkerStartText.Name = "iMarkerStartText";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
346 |
this.iMarkerStartText.ReadOnly = true;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
347 |
this.iMarkerStartText.Size = new System.Drawing.Size(904, 20);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
348 |
this.iMarkerStartText.TabIndex = 1;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
349 |
this.iMarkerStartText.Text = "";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
350 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
351 |
// label1
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
352 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
353 |
this.label1.Location = new System.Drawing.Point(16, 24);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
354 |
this.label1.Name = "label1";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
355 |
this.label1.Size = new System.Drawing.Size(64, 16);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
356 |
this.label1.TabIndex = 2;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
357 |
this.label1.Text = "Start text:";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
358 |
this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
359 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
360 |
// label2
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
361 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
362 |
this.label2.Location = new System.Drawing.Point(16, 52);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
363 |
this.label2.Name = "label2";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
364 |
this.label2.Size = new System.Drawing.Size(64, 20);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
365 |
this.label2.TabIndex = 2;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
366 |
this.label2.Text = "Operations:";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
367 |
this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
368 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
369 |
// label3
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
370 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
371 |
this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
372 |
this.label3.Location = new System.Drawing.Point(16, 530);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
373 |
this.label3.Name = "label3";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
374 |
this.label3.Size = new System.Drawing.Size(64, 16);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
375 |
this.label3.TabIndex = 2;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
376 |
this.label3.Text = "End text:";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
377 |
this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
378 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
379 |
// iMarkerEndText
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
380 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
381 |
this.iMarkerEndText.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
382 |
| System.Windows.Forms.AnchorStyles.Right)));
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
383 |
this.iMarkerEndText.Location = new System.Drawing.Point(88, 528);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
384 |
this.iMarkerEndText.Name = "iMarkerEndText";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
385 |
this.iMarkerEndText.ReadOnly = true;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
386 |
this.iMarkerEndText.Size = new System.Drawing.Size(904, 20);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
387 |
this.iMarkerEndText.TabIndex = 1;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
388 |
this.iMarkerEndText.Text = "";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
389 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
390 |
// iSplitter_Horizontal
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
391 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
392 |
this.iSplitter_Horizontal.Dock = System.Windows.Forms.DockStyle.Top;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
393 |
this.iSplitter_Horizontal.Location = new System.Drawing.Point(0, 172);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
394 |
this.iSplitter_Horizontal.Name = "iSplitter_Horizontal";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
395 |
this.iSplitter_Horizontal.Size = new System.Drawing.Size(1016, 3);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
396 |
this.iSplitter_Horizontal.TabIndex = 5;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
397 |
this.iSplitter_Horizontal.TabStop = false;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
398 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
399 |
// MemAnalysisRegionalForm
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
400 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
401 |
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
402 |
this.ClientSize = new System.Drawing.Size(1016, 741);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
403 |
this.Controls.Add(this.iSplitter_Horizontal);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
404 |
this.Controls.Add(this.iPnl_Lower);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
405 |
this.Controls.Add(this.iPnl_Upper);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
406 |
this.MaximizeBox = false;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
407 |
this.MinimizeBox = false;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
408 |
this.MinimumSize = new System.Drawing.Size(1024, 456);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
409 |
this.Name = "MemAnalysisRegionalForm";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
410 |
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
411 |
this.Text = "Marker-based Analysis";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
412 |
this.Load += new System.EventHandler(this.MemAnalysisRegionalForm_Load);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
413 |
this.iPnl_Upper.ResumeLayout(false);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
414 |
this.groupBox1.ResumeLayout(false);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
415 |
this.iPnl_Lower.ResumeLayout(false);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
416 |
this.groupBox2.ResumeLayout(false);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
417 |
((System.ComponentModel.ISupportInitialize)(this.iTable)).EndInit();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
418 |
this.ResumeLayout(false);
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
419 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
420 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
421 |
#endregion
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
422 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
423 |
#region Event handlers
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
424 |
private void MemAnalysisRegionalForm_Load(object sender, System.EventArgs e)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
425 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
426 |
PrepareListView();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
427 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
428 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
429 |
private void iListView_SelectedIndexChanged(object sender, System.EventArgs e)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
430 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
431 |
if ( iListView.SelectedIndices.Count > 0 )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
432 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
433 |
// Check the selected item isn't one of the footer (total) rows
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
434 |
ListViewItem item = iListView.SelectedItems[ 0 ];
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
435 |
if ( item.Tag != null )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
436 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
437 |
PrepareGridForSelectedListItem();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
438 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
439 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
440 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
441 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
442 |
private void iTable_CellClick(object sender, XPTable.Events.CellMouseEventArgs e)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
443 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
444 |
if ( e.Cell.Tag is MemOpBase )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
445 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
446 |
// Get the object
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
447 |
MemOpBase baseObject = (MemOpBase) e.Cell.Tag;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
448 |
System.Diagnostics.Debug.Assert( baseObject.Link != null );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
449 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
450 |
// Get the current collection
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
451 |
if ( iListView.SelectedIndices.Count > 0 && !iPreparingGrid )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
452 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
453 |
ListViewItem listItem = iListView.SelectedItems[ 0 ];
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
454 |
if ( listItem.Tag != null && listItem.Tag is MemObjRegionalCollection )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
455 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
456 |
MemObjRegionalCollection collection = (MemObjRegionalCollection) listItem.Tag;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
457 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
458 |
// Get the associated (linked) collection
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
459 |
int collectionIndex;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
460 |
int itemIndex;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
461 |
MemOpBase linkedItem;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
462 |
MemObjRegionalCollection linkedCollection = iParser.Data.CollectionByOperationIndex( baseObject.Link.OperationIndex,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
463 |
baseObject.Link.Class,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
464 |
out linkedItem,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
465 |
out collectionIndex,
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
466 |
out itemIndex );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
467 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
468 |
// Did we find a linked item?
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
469 |
if ( linkedCollection != null && linkedItem != null )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
470 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
471 |
// Select the correct list item
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
472 |
if ( collection != linkedCollection )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
473 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
474 |
// We need to jump to a different collection...
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
475 |
if ( linkedCollection.RegionStart.MatchedRegionText || !iParser.Options.MarkerOperationsOutsideRegionToBeIgnored )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
476 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
477 |
if ( iParser.Options.MarkerOperationsOutsideRegionToBeIgnored )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
478 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
479 |
collectionIndex = CollectionIndex( linkedCollection );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
480 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
481 |
iListView.Items[ iListView.SelectedIndices[0] ].Selected = false;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
482 |
iListView.Items[ collectionIndex ].Selected = true;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
483 |
iListView.Select();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
484 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
485 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
486 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
487 |
// Select it
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
488 |
iTable.TableModel.Selections.Clear();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
489 |
iTable.TableModel.Selections.AddCell( itemIndex, 6 );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
490 |
iTable.EnsureVisible( itemIndex, 6 );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
491 |
iTable.Select();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
492 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
493 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
494 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
495 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
496 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
497 |
#endregion
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
498 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
499 |
#region Internal methods
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
500 |
private void PrepareListView()
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
501 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
502 |
try
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
503 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
504 |
iListView.Enabled = false;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
505 |
Cursor.Current = Cursors.WaitCursor;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
506 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
507 |
long totalAllocCount = 0;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
508 |
long totalFreeCount = 0;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
509 |
long totalAllocSize = 0;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
510 |
long totalDeallocSize = 0;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
511 |
long totalNetSize = 0;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
512 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
513 |
// Ensure that each allocation-symbol is added to the symbol listbox
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
514 |
MemObjRegionalData data = iParser.Data;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
515 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
516 |
iListView.BeginUpdate();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
517 |
int count = data.Count;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
518 |
for(int i=0; i<count; i++)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
519 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
520 |
MemObjRegionalCollection collection = data[ i ];
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
521 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
522 |
if ( collection.RegionStart.MatchedRegionText || !iParser.Options.MarkerOperationsOutsideRegionToBeIgnored )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
523 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
524 |
long allocCount = collection.AllocationCount;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
525 |
long freeCount = collection.DeallocationCount;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
526 |
long allocSize = collection.TotalAmountOfAllocatedMemory;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
527 |
long deallocSize = collection.TotalAmountOfDeallocatedMemory;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
528 |
long netSize = collection.TotalMemoryAllocatedButNotFreed;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
529 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
530 |
ListViewItem item = new ListViewItem( (i+1).ToString("d8") );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
531 |
item.SubItems.Add( collection.RegionStart.LineNumber.ToString("d8") );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
532 |
item.SubItems.Add( allocCount.ToString() );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
533 |
item.SubItems.Add( freeCount.ToString() );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
534 |
item.SubItems.Add( allocSize.ToString() );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
535 |
item.SubItems.Add( deallocSize.ToString() );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
536 |
item.SubItems.Add( netSize.ToString() );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
537 |
item.SubItems.Add( collection.RegionStart.RegionText );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
538 |
item.Tag = collection;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
539 |
iListView.Items.Add( item );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
540 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
541 |
// Update totals
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
542 |
totalAllocCount += allocCount;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
543 |
totalFreeCount += freeCount;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
544 |
totalAllocSize += allocSize;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
545 |
totalDeallocSize += deallocSize;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
546 |
totalNetSize += netSize;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
547 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
548 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
549 |
if ( count % 100 != 0 )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
550 |
Application.DoEvents();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
551 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
552 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
553 |
// Make the first item selected
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
554 |
if ( iListView.Items.Count > 0 && iListView.SelectedIndices.Count == 0 )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
555 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
556 |
// Add total item
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
557 |
iListView.Items.Add( new ListViewItem( "" ) );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
558 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
559 |
ListViewItem totalItem = new ListViewItem( "Totals:" );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
560 |
totalItem.SubItems.Add( "" );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
561 |
totalItem.SubItems.Add( totalAllocCount.ToString() );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
562 |
totalItem.SubItems.Add( totalFreeCount.ToString() );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
563 |
totalItem.SubItems.Add( totalAllocSize.ToString() );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
564 |
totalItem.SubItems.Add( totalDeallocSize.ToString() );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
565 |
totalItem.SubItems.Add( totalNetSize.ToString() );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
566 |
totalItem.SubItems.Add( "" );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
567 |
iListView.Items.Add( totalItem );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
568 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
569 |
iListView.Items[0].Selected = true;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
570 |
iListView.Select();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
571 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
572 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
573 |
iListView.EndUpdate();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
574 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
575 |
finally
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
576 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
577 |
Cursor.Current = Cursors.Default;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
578 |
iListView.Enabled = true;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
579 |
iListView.Select();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
580 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
581 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
582 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
583 |
private void PrepareGridForSelectedListItem()
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
584 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
585 |
if ( !( iPreparingGrid || iListView.SelectedItems.Count == 0 || iListView.SelectedItems[ 0 ].Tag == null ) )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
586 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
587 |
iPreparingGrid = true;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
588 |
iListView.Enabled = false;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
589 |
Cursor.Current = Cursors.WaitCursor;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
590 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
591 |
ListViewItem listItem = iListView.SelectedItems[ 0 ];
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
592 |
MemObjRegionalCollection collection = (MemObjRegionalCollection) listItem.Tag;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
593 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
594 |
try
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
595 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
596 |
// First update the text labels to show the marker values
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
597 |
iMarkerStartText.Text = collection.RegionStart.RegionText;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
598 |
iMarkerEndText.Text = collection.RegionEnd.RegionText;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
599 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
600 |
// Clear existing content
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
601 |
iTable.TableModel.Rows.Clear();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
602 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
603 |
// Make new content
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
604 |
int count = collection.Count;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
605 |
for(int i=0; i<count; i++)
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
606 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
607 |
// The entry we are rendering
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
608 |
MemOpBase baseObject = collection[i];
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
609 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
610 |
// Only initialised if we are dealing with an allocation (or realloc) type cell.
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
611 |
MemOpAllocation memObj = null;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
612 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
613 |
// The color format for the entire row.
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
614 |
System.Drawing.Color rowColor = Color.Black;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
615 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
616 |
// The row we are creating
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
617 |
XPTable.Models.Row row = new XPTable.Models.Row();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
618 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
619 |
// Common items
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
620 |
// ============
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
621 |
row.Cells.Add( new XPTable.Models.Cell( baseObject.OperationIndex.ToString("d6") ) );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
622 |
row.Cells.Add( new XPTable.Models.Cell( baseObject.LineNumber.ToString("d6") ) );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
623 |
row.Cells.Add( new XPTable.Models.Cell( baseObject.CellAddress.ToString("x8") ) );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
624 |
row.Cells.Add( new XPTable.Models.Cell( " " + baseObject.FunctionName ) );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
625 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
626 |
// Row Color & Object Association
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
627 |
// ==============================
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
628 |
if ( baseObject is MemOpAllocation )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
629 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
630 |
// Allocation
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
631 |
memObj = (MemOpAllocation) baseObject;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
632 |
rowColor = Color.Red;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
633 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
634 |
else if ( baseObject is MemOpFree )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
635 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
636 |
// Deallocation
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
637 |
if ( baseObject.Link != null )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
638 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
639 |
memObj = (MemOpAllocation) baseObject.Link;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
640 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
641 |
else
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
642 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
643 |
memObj = null;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
644 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
645 |
rowColor = Color.Green;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
646 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
647 |
else if ( baseObject is MemOpReallocation )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
648 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
649 |
// Reallocation
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
650 |
if ( baseObject.Link != null )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
651 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
652 |
memObj = (MemOpAllocation) baseObject.Link;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
653 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
654 |
else
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
655 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
656 |
memObj = null;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
657 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
658 |
rowColor = Color.Blue;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
659 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
660 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
661 |
// Allocation size
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
662 |
// ===============
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
663 |
string allocationSize = "???";
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
664 |
if ( memObj != null )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
665 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
666 |
allocationSize = memObj.AllocationSize.ToString();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
667 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
668 |
row.Cells.Add( new XPTable.Models.Cell( allocationSize + " " ) );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
669 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
670 |
// Heap size
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
671 |
// =========
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
672 |
row.Cells.Add( new XPTable.Models.Cell( baseObject.HeapSize.ToString() + " " ) );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
673 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
674 |
// Associated object
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
675 |
// =================
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
676 |
MemOpAllocation symbolObject = memObj;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
677 |
if ( memObj != null && baseObject.Link != null )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
678 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
679 |
// If we have an associated link item, we can connect the two items together
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
680 |
string associatedText = string.Empty;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
681 |
if ( baseObject.IsAllocationType )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
682 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
683 |
associatedText = "Free'd by op #: " + baseObject.Link.OperationIndex.ToString("d5");
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
684 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
685 |
else if ( baseObject.IsReallocationType )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
686 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
687 |
associatedText = "First alloc'd by op #: " + baseObject.Link.OperationIndex.ToString("d5");
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
688 |
symbolObject = ( baseObject.Link as MemOpAllocation );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
689 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
690 |
else
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
691 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
692 |
associatedText = "Alloc'd by op #: " + baseObject.Link.OperationIndex.ToString("d5");
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
693 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
694 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
695 |
// We store the object with the cell so that we can handle hyperlinks between
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
696 |
// associated objects.
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
697 |
XPTable.Models.Cell associatedCell = new XPTable.Models.Cell( associatedText );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
698 |
associatedCell.Tag = baseObject;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
699 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
700 |
// Make it look like a hyperlink
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
701 |
associatedCell.Font = new Font( iTable.Font.FontFamily.Name, iTable.Font.SizeInPoints, System.Drawing.FontStyle.Underline );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
702 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
703 |
// Add the cell to the row
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
704 |
row.Cells.Add( associatedCell );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
705 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
706 |
else
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
707 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
708 |
if ( baseObject.IsAllocationType )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
709 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
710 |
if ( memObj != null )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
711 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
712 |
symbolObject = memObj;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
713 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
714 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
715 |
rowColor = Color.Red;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
716 |
row.Font = new System.Drawing.Font( iTable.Font.FontFamily.Name, iTable.Font.SizeInPoints, System.Drawing.FontStyle.Bold );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
717 |
row.Cells.Add( new XPTable.Models.Cell( "Object never free'd!" ) );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
718 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
719 |
else
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
720 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
721 |
row.Cells.Add( new XPTable.Models.Cell( "???!" ) );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
722 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
723 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
724 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
725 |
// Symbol
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
726 |
// ======
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
727 |
string symbol = string.Empty;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
728 |
if ( symbolObject != null && symbolObject.LinkRegisterSymbol != null )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
729 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
730 |
symbol = memObj.LinkRegisterSymbol.Symbol.ToString();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
731 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
732 |
row.Cells.Add( new XPTable.Models.Cell( symbol ) );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
733 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
734 |
// Set row color
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
735 |
// =============
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
736 |
row.ForeColor = rowColor;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
737 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
738 |
// Add row
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
739 |
// =======
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
740 |
iTable.TableModel.Rows.Add( row );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
741 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
742 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
743 |
// If no items, then dim table
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
744 |
iTable.Enabled = ( count > 0 );
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
745 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
746 |
finally
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
747 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
748 |
Cursor.Current = Cursors.Default;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
749 |
iPreparingGrid = false;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
750 |
iListView.Enabled = true;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
751 |
iListView.Select();
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
752 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
753 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
754 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
755 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
756 |
private int CollectionIndex( MemObjRegionalCollection aCollection )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
757 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
758 |
int ret = -1;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
759 |
int index = 0;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
760 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
761 |
int count = iListView.Items.Count;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
762 |
foreach( ListViewItem item in iListView.Items )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
763 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
764 |
if ( item.Tag != null )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
765 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
766 |
MemObjRegionalCollection col = (MemObjRegionalCollection) item.Tag;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
767 |
if ( col == aCollection )
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
768 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
769 |
index = ret;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
770 |
break;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
771 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
772 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
773 |
else
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
774 |
{
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
775 |
break;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
776 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
777 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
778 |
++index;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
779 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
780 |
//
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
781 |
return index;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
782 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
783 |
#endregion
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
784 |
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
785 |
#region Data members
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
786 |
private bool iPreparingGrid = false;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
787 |
private MemAnalysisRegionalParser iParser;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
788 |
private XmlSettings iSettings;
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
789 |
#endregion
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
790 |
}
|
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
791 |
}
|