diff --git a/TBF/ComponentsManagerDlg.Designer.cs b/TBF/ComponentsManagerDlg.Designer.cs index c801234f4..2cc2dd265 100644 --- a/TBF/ComponentsManagerDlg.Designer.cs +++ b/TBF/ComponentsManagerDlg.Designer.cs @@ -68,6 +68,7 @@ namespace TBF this.listViewEx.Name = "listViewEx"; this.listViewEx.UseCompatibleStateImageBehavior = false; this.listViewEx.View = System.Windows.Forms.View.Details; + this.listViewEx.SubItemRightClicked += new Results.Forms.SubItemEventHandler(this.listViewEx_SubItemRightClicked); this.listViewEx.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.listViewEx_ColumnClick); this.listViewEx.SelectedIndexChanged += new System.EventHandler(this.componentsListView_SelectedIndexChanged); this.listViewEx.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.listViewEx_MouseDoubleClick); diff --git a/TBF/ComponentsManagerDlg.cs b/TBF/ComponentsManagerDlg.cs index 7349361a7..394526550 100644 --- a/TBF/ComponentsManagerDlg.cs +++ b/TBF/ComponentsManagerDlg.cs @@ -140,6 +140,58 @@ namespace TBF } } + private void listViewEx_SubItemRightClicked(object sender, SubItemEventArgs e) + { + if (!unlocked || ((e.SubItem != (int)Column.DebugMode) && (e.SubItem != (int)Column.Logging))) return; + + if (DialogResult.Yes == MessageBox.Show(Strings.Do_you_want_to_copy_this_value_to_all_cells_below_this_cell, + Strings.Confirmation, MessageBoxButtons.YesNo, MessageBoxIcon.Question)) + { + int columnNr = e.SubItem; + string value = null; + /// + foreach (ListViewItem item in listViewEx.Items) + { + if ((value != null) && (item.SubItems.Count > columnNr)) + { + /// Modify values in subsequent items (when value != null) + Component cmpnt = (Component)item.Tag; + if (e.SubItem == (int)Column.DebugMode) + { + for (DebugMode mode = 0; mode < DebugMode.Count; mode++) + { + if (value.Equals(mode.ToDescription())) + { + cmpnt.Mode = mode; + item.SubItems[columnNr].Text = value; + flags |= CfgUpdateFlags.RestartRqrd; + break; + } + } + } + else if (e.SubItem == (int)Column.Logging) + { + for (LogLevel level = 0; level < LogLevel.Count; level++) + { + if (value.Equals(level.ToDescription())) + { + cmpnt.Logging = level; + item.SubItems[columnNr].Text = value; + flags |= CfgUpdateFlags.RestartRqrd; + break; + } + } + } + } + else if (item == e.Item) + { + /// Pick value to be copied from this item + value = item.SubItems[columnNr].Text; + } + } + } + } + void listViewEx_SubItemEndEditing(object sender, Results.Forms.SubItemEndEditingEventArgs e) { Component cmpnt = (Component)e.Item.Tag; diff --git a/TBF/Properties/AssemblyInfo.cs b/TBF/Properties/AssemblyInfo.cs index ab105d835..7869b1400 100644 --- a/TBF/Properties/AssemblyInfo.cs +++ b/TBF/Properties/AssemblyInfo.cs @@ -29,5 +29,5 @@ using System.Runtime.InteropServices; // Build Number // Revision // -[assembly: AssemblyVersion("2.18.1167.0")] -[assembly: AssemblyFileVersion("2.18.1167.0")] +[assembly: AssemblyVersion("2.18.1168.0")] +[assembly: AssemblyFileVersion("2.18.1168.0")]