private void OnTestDescriptionChanged( TestDescription testDescription )
{
lvSignals.Items.Clear();
lvSignals.ShowGroups = true;
Dictionary<string, ListViewGroup> groups = new Dictionary<string, ListViewGroup>();
if (testDescription != null)
{
foreach (SignalRequirementsSignalRequirement signalRequirement in testDescription.SignalRequirements)
{
if (signalRequirement.TsfClass != null && !"SHORT".Equals(signalRequirement.TsfClass.tsfClassName ))
{
ListViewGroup grp;
if (groups.ContainsKey( signalRequirement.TsfClass.tsfClassName ))
{
grp = groups[signalRequirement.TsfClass.tsfClassName];
}
else
{
grp = new ListViewGroup( signalRequirement.TsfClass.tsfClassName );
groups.Add( signalRequirement.TsfClass.tsfClassName, grp );
lvSignals.Groups.Add( grp );
}
ListViewItem lvi = new ListViewItem(signalRequirement.TsfClass.tsfLibraryID);
lvi.SubItems.Add( signalRequirement.TsfClass.tsfClassName );
StringBuilder sb = new StringBuilder();
foreach (SignalRequirementsSignalRequirementTsfClassAttribute attribute in signalRequirement.TsfClassAttribute)
{
sb.Append( string.Format( "{0}={1}, ", attribute.Name.Value, attribute.Value ) );
}
if (sb.ToString().EndsWith( ", " ))
sb.Length = sb.Length - 2;
lvi.SubItems.Add(sb.ToString());
lvi.Tag = signalRequirement;
lvi.Group = grp;
lvSignals.Items.Add( lvi );
}
}
foreach (ActionType actionType in testDescription.DetailedTestInformation.Actions)
{
foreach (ActionTypeLocalSignal localSignal in actionType.LocalSignals)
{
}
}
lvSignals.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent);
}
}