issue #10 can apply a filter - though as one cannot hide TreeNodes this is a cheat

to hide  - but at least it allows to find things more easily
A real solution is to remove and insert nodes - but this is a topic for refactoring later...
pull/20/head
bm98 10 years ago
parent 72d6a8c285
commit 86ab0047d6

158
Form1.Designer.cs generated

@ -79,19 +79,21 @@
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
this.statusStrip1 = new System.Windows.Forms.StatusStrip();
this.toolStripStatusLabel2 = new System.Windows.Forms.ToolStripStatusLabel();
this.tsDDbtProfiles = new System.Windows.Forms.ToolStripDropDownButton();
this.tsDDbtMappings = new System.Windows.Forms.ToolStripDropDownButton();
this.tsBtReset = new System.Windows.Forms.ToolStripDropDownButton();
this.resetDefaultsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.resetEmptyToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripStatusLabel3 = new System.Windows.Forms.ToolStripStatusLabel();
this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
this.tsDDbtMappings = new System.Windows.Forms.ToolStripDropDownButton();
this.tsBtLoad = new System.Windows.Forms.ToolStripDropDownButton();
this.defaultsLoadAndGrabToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.resetLoadAndGrabToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.loadAndGrabToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.loadToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.resetLoadAndGrabToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.defaultsLoadAndGrabToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
this.toolStripStatusLabel2 = new System.Windows.Forms.ToolStripStatusLabel();
this.toolStripStatusLabel3 = new System.Windows.Forms.ToolStripStatusLabel();
this.txFilter = new System.Windows.Forms.TextBox();
this.btClearFilter = new System.Windows.Forms.Button();
this.UC_JoyPanel = new SCJMapper_V2.UC_JoyPanel();
this.cmCopyPaste.SuspendLayout();
this.panel3.SuspendLayout();
@ -496,7 +498,7 @@
// buttonExit
//
this.buttonExit.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.buttonExit.Location = new System.Drawing.Point(171, 75);
this.buttonExit.Location = new System.Drawing.Point(171, 21);
this.buttonExit.Name = "buttonExit";
this.buttonExit.Size = new System.Drawing.Size(120, 24);
this.buttonExit.TabIndex = 13;
@ -542,8 +544,8 @@
this.tlpanel.RowCount = 5;
this.tlpanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 75F));
this.tlpanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 540F));
this.tlpanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tlpanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tlpanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 75F));
this.tlpanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 25F));
this.tlpanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25F));
this.tlpanel.Size = new System.Drawing.Size(984, 862);
this.tlpanel.TabIndex = 25;
@ -568,15 +570,19 @@
this.tableLayoutPanel1.Controls.Add(this.btDump, 0, 0);
this.tableLayoutPanel1.Controls.Add(this.btGrab, 1, 0);
this.tableLayoutPanel1.Controls.Add(this.btDumpList, 0, 1);
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Top;
this.tableLayoutPanel1.Controls.Add(this.txFilter, 0, 3);
this.tableLayoutPanel1.Controls.Add(this.btClearFilter, 0, 4);
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel1.GrowStyle = System.Windows.Forms.TableLayoutPanelGrowStyle.FixedSize;
this.tableLayoutPanel1.Location = new System.Drawing.Point(306, 621);
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 3;
this.tableLayoutPanel1.RowCount = 5;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 30F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 30F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 30F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 30F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(294, 99);
this.tableLayoutPanel1.Size = new System.Drawing.Size(294, 156);
this.tableLayoutPanel1.TabIndex = 23;
//
// tableLayoutPanel2
@ -584,16 +590,16 @@
this.tableLayoutPanel2.ColumnCount = 2;
this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel2.Controls.Add(this.buttonExit, 1, 2);
this.tableLayoutPanel2.Controls.Add(this.buttonExit, 1, 1);
this.tableLayoutPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel2.GrowStyle = System.Windows.Forms.TableLayoutPanelGrowStyle.FixedSize;
this.tableLayoutPanel2.Location = new System.Drawing.Point(306, 729);
this.tableLayoutPanel2.Location = new System.Drawing.Point(306, 783);
this.tableLayoutPanel2.Name = "tableLayoutPanel2";
this.tableLayoutPanel2.RowCount = 3;
this.tableLayoutPanel2.RowCount = 2;
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 30F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 30F));
this.tableLayoutPanel2.Size = new System.Drawing.Size(294, 102);
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
this.tableLayoutPanel2.Size = new System.Drawing.Size(294, 48);
this.tableLayoutPanel2.TabIndex = 24;
//
// statusStrip1
@ -614,6 +620,13 @@
this.statusStrip1.TabIndex = 26;
this.statusStrip1.Text = "statusStrip1";
//
// toolStripStatusLabel2
//
this.toolStripStatusLabel2.BackColor = System.Drawing.Color.DarkKhaki;
this.toolStripStatusLabel2.Name = "toolStripStatusLabel2";
this.toolStripStatusLabel2.Size = new System.Drawing.Size(49, 17);
this.toolStripStatusLabel2.Text = "Profiles:";
//
// tsDDbtProfiles
//
this.tsDDbtProfiles.AutoSize = false;
@ -625,19 +638,6 @@
this.tsDDbtProfiles.Text = "Available Profiles";
this.tsDDbtProfiles.DropDownItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.tsDDbtProfiles_DropDownItemClicked);
//
// tsDDbtMappings
//
this.tsDDbtMappings.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.tsDDbtMappings.AutoSize = false;
this.tsDDbtMappings.BackColor = System.Drawing.Color.DarkSeaGreen;
this.tsDDbtMappings.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.tsDDbtMappings.Image = ((System.Drawing.Image)(resources.GetObject("tsDDbtMappings.Image")));
this.tsDDbtMappings.ImageTransparentColor = System.Drawing.Color.Magenta;
this.tsDDbtMappings.Name = "tsDDbtMappings";
this.tsDDbtMappings.Size = new System.Drawing.Size(250, 20);
this.tsDDbtMappings.Text = "Available Mappings";
this.tsDDbtMappings.DropDownItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.tsDDbtMappings_DropDownItemClicked);
//
// tsBtReset
//
this.tsBtReset.AutoSize = false;
@ -668,6 +668,35 @@
this.resetEmptyToolStripMenuItem.Text = "Reset empty !";
this.resetEmptyToolStripMenuItem.Click += new System.EventHandler(this.resetEmptyToolStripMenuItem_Click);
//
// toolStripStatusLabel3
//
this.toolStripStatusLabel3.AutoSize = false;
this.toolStripStatusLabel3.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.toolStripStatusLabel3.Name = "toolStripStatusLabel3";
this.toolStripStatusLabel3.Size = new System.Drawing.Size(100, 17);
this.toolStripStatusLabel3.Text = " ";
//
// toolStripStatusLabel1
//
this.toolStripStatusLabel1.BackColor = System.Drawing.Color.DarkSeaGreen;
this.toolStripStatusLabel1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
this.toolStripStatusLabel1.Size = new System.Drawing.Size(63, 17);
this.toolStripStatusLabel1.Text = "Mappings:";
//
// tsDDbtMappings
//
this.tsDDbtMappings.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.tsDDbtMappings.AutoSize = false;
this.tsDDbtMappings.BackColor = System.Drawing.Color.DarkSeaGreen;
this.tsDDbtMappings.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.tsDDbtMappings.Image = ((System.Drawing.Image)(resources.GetObject("tsDDbtMappings.Image")));
this.tsDDbtMappings.ImageTransparentColor = System.Drawing.Color.Magenta;
this.tsDDbtMappings.Name = "tsDDbtMappings";
this.tsDDbtMappings.Size = new System.Drawing.Size(250, 20);
this.tsDDbtMappings.Text = "Available Mappings";
this.tsDDbtMappings.DropDownItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.tsDDbtMappings_DropDownItemClicked);
//
// tsBtLoad
//
this.tsBtLoad.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
@ -684,6 +713,22 @@
this.tsBtLoad.Size = new System.Drawing.Size(80, 20);
this.tsBtLoad.Text = "Load...";
//
// defaultsLoadAndGrabToolStripMenuItem
//
this.defaultsLoadAndGrabToolStripMenuItem.BackColor = System.Drawing.Color.DarkSeaGreen;
this.defaultsLoadAndGrabToolStripMenuItem.Name = "defaultsLoadAndGrabToolStripMenuItem";
this.defaultsLoadAndGrabToolStripMenuItem.Size = new System.Drawing.Size(206, 22);
this.defaultsLoadAndGrabToolStripMenuItem.Text = "Defaults, Load and Grab !";
this.defaultsLoadAndGrabToolStripMenuItem.Click += new System.EventHandler(this.defaultsLoadAndGrabToolStripMenuItem_Click);
//
// resetLoadAndGrabToolStripMenuItem
//
this.resetLoadAndGrabToolStripMenuItem.BackColor = System.Drawing.Color.DarkSeaGreen;
this.resetLoadAndGrabToolStripMenuItem.Name = "resetLoadAndGrabToolStripMenuItem";
this.resetLoadAndGrabToolStripMenuItem.Size = new System.Drawing.Size(206, 22);
this.resetLoadAndGrabToolStripMenuItem.Text = "Reset, Load and Grab !";
this.resetLoadAndGrabToolStripMenuItem.Click += new System.EventHandler(this.resetLoadAndGrabToolStripMenuItem_Click);
//
// loadAndGrabToolStripMenuItem
//
this.loadAndGrabToolStripMenuItem.BackColor = System.Drawing.Color.DarkSeaGreen;
@ -700,44 +745,24 @@
this.loadToolStripMenuItem.Text = "Load !";
this.loadToolStripMenuItem.Click += new System.EventHandler(this.loadToolStripMenuItem_Click);
//
// resetLoadAndGrabToolStripMenuItem
// txFilter
//
this.resetLoadAndGrabToolStripMenuItem.BackColor = System.Drawing.Color.DarkSeaGreen;
this.resetLoadAndGrabToolStripMenuItem.Name = "resetLoadAndGrabToolStripMenuItem";
this.resetLoadAndGrabToolStripMenuItem.Size = new System.Drawing.Size(206, 22);
this.resetLoadAndGrabToolStripMenuItem.Text = "Reset, Load and Grab !";
this.resetLoadAndGrabToolStripMenuItem.Click += new System.EventHandler(this.resetLoadAndGrabToolStripMenuItem_Click);
this.txFilter.Location = new System.Drawing.Point(3, 93);
this.txFilter.Name = "txFilter";
this.txFilter.Size = new System.Drawing.Size(120, 20);
this.txFilter.TabIndex = 25;
this.txFilter.WordWrap = false;
this.txFilter.TextChanged += new System.EventHandler(this.txFilter_TextChanged);
//
// defaultsLoadAndGrabToolStripMenuItem
// btClearFilter
//
this.defaultsLoadAndGrabToolStripMenuItem.BackColor = System.Drawing.Color.DarkSeaGreen;
this.defaultsLoadAndGrabToolStripMenuItem.Name = "defaultsLoadAndGrabToolStripMenuItem";
this.defaultsLoadAndGrabToolStripMenuItem.Size = new System.Drawing.Size(206, 22);
this.defaultsLoadAndGrabToolStripMenuItem.Text = "Defaults, Load and Grab !";
this.defaultsLoadAndGrabToolStripMenuItem.Click += new System.EventHandler(this.defaultsLoadAndGrabToolStripMenuItem_Click);
//
// toolStripStatusLabel1
//
this.toolStripStatusLabel1.BackColor = System.Drawing.Color.DarkSeaGreen;
this.toolStripStatusLabel1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
this.toolStripStatusLabel1.Size = new System.Drawing.Size(63, 17);
this.toolStripStatusLabel1.Text = "Mappings:";
//
// toolStripStatusLabel2
//
this.toolStripStatusLabel2.BackColor = System.Drawing.Color.DarkKhaki;
this.toolStripStatusLabel2.Name = "toolStripStatusLabel2";
this.toolStripStatusLabel2.Size = new System.Drawing.Size(49, 17);
this.toolStripStatusLabel2.Text = "Profiles:";
//
// toolStripStatusLabel3
//
this.toolStripStatusLabel3.AutoSize = false;
this.toolStripStatusLabel3.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.toolStripStatusLabel3.Name = "toolStripStatusLabel3";
this.toolStripStatusLabel3.Size = new System.Drawing.Size(100, 17);
this.toolStripStatusLabel3.Text = " ";
this.btClearFilter.Location = new System.Drawing.Point(3, 123);
this.btClearFilter.Name = "btClearFilter";
this.btClearFilter.Size = new System.Drawing.Size(120, 24);
this.btClearFilter.TabIndex = 26;
this.btClearFilter.Text = "Clear Filter";
this.btClearFilter.UseVisualStyleBackColor = true;
this.btClearFilter.Click += new System.EventHandler(this.btClearFilter_Click);
//
// UC_JoyPanel
//
@ -770,6 +795,7 @@
this.tlpanel.ResumeLayout(false);
this.flowLayoutPanel1.ResumeLayout(false);
this.tableLayoutPanel1.ResumeLayout(false);
this.tableLayoutPanel1.PerformLayout();
this.tableLayoutPanel2.ResumeLayout(false);
this.statusStrip1.ResumeLayout(false);
this.statusStrip1.PerformLayout();
@ -840,6 +866,8 @@
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel2;
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel1;
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel3;
private System.Windows.Forms.Button btClearFilter;
private System.Windows.Forms.TextBox txFilter;
}
}

@ -293,6 +293,8 @@ namespace SCJMapper_V2
#region Event Handling
// Form Events
private void MainForm_FormClosing( object sender, FormClosingEventArgs e )
{
m_AppSettings.FormSize = this.Size;
@ -307,6 +309,9 @@ namespace SCJMapper_V2
lblLastJ.Text = JSStr( ) + m_JS[tc1.SelectedIndex].GetLastChange( ); // show last handled JS control
}
// TreeView Events
private void treeView1_AfterSelect( object sender, TreeViewEventArgs e )
{
if ( e.Node.Level == 1 ) {
@ -320,12 +325,22 @@ namespace SCJMapper_V2
}
}
// Assign Panel Items
private void btFind_Click( object sender, EventArgs e )
{
m_AT.FindCtrl( lblLastJ.Text ); // find the action for a Control (joystick input)
}
private void btAssign_Click( object sender, EventArgs e )
{
m_AT.UpdateSelectedItem( lblLastJ.Text );
if ( m_AT.Dirty ) btDump.BackColor = MyColors.DirtyColor;
}
// General Area Items
private void btClear_Click( object sender, EventArgs e )
{
@ -348,6 +363,19 @@ namespace SCJMapper_V2
Grab( );
}
private void btClearFilter_Click( object sender, EventArgs e )
{
txFilter.Text = "";
}
private void txFilter_TextChanged( object sender, EventArgs e )
{
m_AT.FilterTree( txFilter.Text );
}
// Toolstrip Items
private void tsBtReset_ButtonClick( object sender, EventArgs e )
{
}
@ -413,7 +441,7 @@ namespace SCJMapper_V2
}
// Context Menu Items
private void tsiCopy_Click( object sender, EventArgs e )
{
@ -462,10 +490,7 @@ namespace SCJMapper_V2
}
private void btFind_Click( object sender, EventArgs e )
{
m_AT.FindCtrl( lblLastJ.Text ); // find the action for a Control (joystick input)
}
// rtb drop xml file
private void rtb_DragEnter( object sender, DragEventArgs e )
@ -500,6 +525,8 @@ namespace SCJMapper_V2
string[] droppedFilenames = e.Data.GetData( DataFormats.FileDrop, true ) as string[];
if ( droppedFilenames.Length > 0 ) rtb.LoadFile( droppedFilenames[0], System.Windows.Forms.RichTextBoxStreamType.PlainText );
}
#endregion
@ -508,5 +535,6 @@ namespace SCJMapper_V2
}
}

@ -392,7 +392,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAQ
DgAAAk1TRnQBSQFMAgEBBwEAATABBwEwAQcBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
DgAAAk1TRnQBSQFMAgEBBwEAAaABBwGgAQcBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
@ -470,34 +470,34 @@
<data name="tsDDbtProfiles.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
YII=
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
gg==
</value>
</data>
<data name="tsBtReset.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@ -553,22 +553,22 @@
<data name="tsBtLoad.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">

@ -10,12 +10,74 @@ namespace SCJMapper_V2
{
class ActionTree
{
private String m_Filter = "";
public ActionMapsCls ActionMaps { get; set; }
public TreeView Ctrl { get; set; }
public Boolean Dirty { get; set; }
// Load MappingVars.csv into the ActionList and create the Control TreeView
private void ApplyFilter( )
{
TreeNode topNode = null;
Ctrl.BeginUpdate( );
foreach ( TreeNode tn in Ctrl.Nodes ) {
if ( topNode == null ) topNode = tn;
// have to search nodes of nodes
Boolean allHidden = true;
foreach ( TreeNode stn in tn.Nodes ) {
if ( ( stn.Tag != null ) && ( ( Boolean )stn.Tag == true ) ) {
// hide it - thoug you cannot hide TreeViewNodes at all...
stn.ForeColor = stn.BackColor;
}
else {
stn.ForeColor = Ctrl.ForeColor;
allHidden = false;
}
}
// make it tidier..
if ( allHidden ) tn.Collapse( );
else tn.Expand( );
}
if ( topNode != null ) Ctrl.TopNode = topNode;
Ctrl.EndUpdate( );
}
/// <summary>
/// Filters the tree
/// </summary>
private void FilterTree( )
{
Boolean hidden = ! String.IsNullOrEmpty( m_Filter ); // hide only if there is a find string
foreach ( TreeNode tn in Ctrl.Nodes ) {
// have to search nodes of nodes
foreach ( TreeNode stn in tn.Nodes ) {
if ( !stn.Text.Contains( m_Filter ) ) stn.Tag = hidden;
else stn.Tag = null;
}
}
ApplyFilter( );
}
/// <summary>
/// Filters entries with given criteria but not action maps
/// </summary>
/// <param name="filter">The text snip to filter</param>
public void FilterTree( String filter )
{
m_Filter = filter;
FilterTree( );
}
/// <summary>
/// Load MappingVars.csv into the ActionList and create the Control TreeView
/// </summary>
/// <param name="defaultProfileName">The name of the profile to load (w/o extension)</param>
/// <param name="applyDefaults">True if default mappings should be carried on</param>
public void LoadTree( String defaultProfileName, Boolean applyDefaults )
{
TreeNode tn = null;
@ -57,6 +119,7 @@ namespace SCJMapper_V2
String devID = elem[ei].Substring( 0, 1 );
String device = ActionCls.DeviceFromID( devID );
cn.ImageKey = devID;
cn.BackColor = Color.White; // some stuff does not work properly...
Array.Resize( ref cnl, cnl.Length + 1 ); cnl[cnl.Length - 1] = cn;
ac = new ActionCls( ); ac.key = cn.Name; ac.name = action; ac.device = device; ac.defBinding = defBinding;
@ -77,7 +140,7 @@ namespace SCJMapper_V2
}//for
tn = new TreeNode( acm.name, cnl ); tn.Name = acm.name; // name it to find it..
tn.ImageIndex = 0; tn.NodeFont = new Font( Ctrl.Font, FontStyle.Bold );
Ctrl.BackColor = Ctrl.BackColor; // fix for defect TreeView (cut off bold text)
Ctrl.BackColor = Color.White; // fix for defect TreeView (cut off bold text)
Ctrl.Nodes.Add( tn ); // add to control
if ( topNode == null ) topNode = tn; // once to keep the start of list
ActionMaps.Add( acm ); // add to our map
@ -100,6 +163,7 @@ namespace SCJMapper_V2
Dirty = false;
Ctrl.EndUpdate( );
FilterTree( );
}
@ -171,8 +235,14 @@ namespace SCJMapper_V2
}
}
Ctrl.EndUpdate( );
FilterTree( );
}
/// <summary>
/// Find a control that contains the string and make it visible
/// </summary>
/// <param name="ctrl">The string to find</param>
public void FindCtrl( String ctrl )
{
Boolean found = false;
@ -191,6 +261,10 @@ namespace SCJMapper_V2
}
/// <summary>
/// Reports a summary list of the mapped items
/// </summary>
/// <returns></returns>
public String ReportActions( )
{
String repList = "";
@ -209,7 +283,7 @@ namespace SCJMapper_V2
repList += rep;
foreach ( ActionCls ac in acm ) {
if ( !String.IsNullOrEmpty( ac.input ) ) {
rep = String.Format( " {0} - {1} - {2}\n", ac.name.PadRight( 35 ), ac.device.PadRight( 10 ), ac.input );
rep = String.Format( " {0} - {1} - ({2})\n", ac.name.PadRight( 35 ), ac.input.PadRight( 20 ), ac.device);
repList += rep;
}
}

Loading…
Cancel
Save