diff --git a/nspector/WatermarkTextBox.cs b/nspector/WatermarkTextBox.cs new file mode 100644 index 0000000..5f6ead4 --- /dev/null +++ b/nspector/WatermarkTextBox.cs @@ -0,0 +1,34 @@ +using System.ComponentModel; +using System.Drawing; +using System.Windows.Forms; + +namespace nspector +{ + public class WatermarkTextBox : TextBox + { + private const int WM_PAINT = 0x000F; + + private string _watermarkText; + [Category("Appearance")] + public string WatermarkText + { + get => _watermarkText; + set { _watermarkText = value; Invalidate(); } + } + + protected override void WndProc(ref Message m) + { + base.WndProc(ref m); + + if (m.Msg == WM_PAINT && string.IsNullOrEmpty(this.Text) && !string.IsNullOrEmpty(_watermarkText)) + { + using (Graphics g = this.CreateGraphics()) + using (Brush brush = new SolidBrush(SystemColors.GrayText)) + { + TextFormatFlags flags = TextFormatFlags.VerticalCenter | TextFormatFlags.Left; + TextRenderer.DrawText(g, _watermarkText, this.Font, this.ClientRectangle, SystemColors.GrayText, flags); + } + } + } + } +} diff --git a/nspector/frmDrvSettings.Designer.cs b/nspector/frmDrvSettings.Designer.cs index 9b69441..02142bf 100644 --- a/nspector/frmDrvSettings.Designer.cs +++ b/nspector/frmDrvSettings.Designer.cs @@ -77,6 +77,7 @@ this.chSettingValueHex = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.tbSettingDescription = new System.Windows.Forms.TextBox(); this.pnlListview = new System.Windows.Forms.Panel(); + this.txtFilter = new nspector.WatermarkTextBox(); this.tsMain.SuspendLayout(); this.pnlListview.SuspendLayout(); this.SuspendLayout(); @@ -94,10 +95,10 @@ // this.pbMain.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); - this.pbMain.Location = new System.Drawing.Point(12, 475); - this.pbMain.Margin = new System.Windows.Forms.Padding(4); + this.pbMain.Location = new System.Drawing.Point(22, 877); + this.pbMain.Margin = new System.Windows.Forms.Padding(7); this.pbMain.Name = "pbMain"; - this.pbMain.Size = new System.Drawing.Size(840, 9); + this.pbMain.Size = new System.Drawing.Size(1540, 17); this.pbMain.TabIndex = 19; // // tsMain @@ -135,10 +136,11 @@ this.tsSep6, this.tsbApplyProfile}); this.tsMain.LayoutStyle = System.Windows.Forms.ToolStripLayoutStyle.HorizontalStackWithOverflow; - this.tsMain.Location = new System.Drawing.Point(12, 4); + this.tsMain.Location = new System.Drawing.Point(22, 7); this.tsMain.Name = "tsMain"; + this.tsMain.Padding = new System.Windows.Forms.Padding(0, 0, 4, 0); this.tsMain.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional; - this.tsMain.Size = new System.Drawing.Size(840, 25); + this.tsMain.Size = new System.Drawing.Size(1540, 46); this.tsMain.TabIndex = 24; this.tsMain.Text = "toolStrip1"; // @@ -147,7 +149,7 @@ this.tslProfiles.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None; this.tslProfiles.Margin = new System.Windows.Forms.Padding(0, 5, 10, 2); this.tslProfiles.Name = "tslProfiles"; - this.tslProfiles.Size = new System.Drawing.Size(49, 18); + this.tslProfiles.Size = new System.Drawing.Size(86, 39); this.tslProfiles.Text = "Profiles:"; // // cbProfiles @@ -159,7 +161,7 @@ this.cbProfiles.Margin = new System.Windows.Forms.Padding(1); this.cbProfiles.MaxDropDownItems = 50; this.cbProfiles.Name = "cbProfiles"; - this.cbProfiles.Size = new System.Drawing.Size(290, 23); + this.cbProfiles.Size = new System.Drawing.Size(528, 38); this.cbProfiles.SelectedIndexChanged += new System.EventHandler(this.cbProfiles_SelectedIndexChanged); this.cbProfiles.TextChanged += new System.EventHandler(this.cbProfiles_TextChanged); // @@ -170,7 +172,7 @@ this.tsbModifiedProfiles.Image = global::nspector.Properties.Resources.home_sm; this.tsbModifiedProfiles.ImageTransparentColor = System.Drawing.Color.Magenta; this.tsbModifiedProfiles.Name = "tsbModifiedProfiles"; - this.tsbModifiedProfiles.Size = new System.Drawing.Size(36, 22); + this.tsbModifiedProfiles.Size = new System.Drawing.Size(44, 40); this.tsbModifiedProfiles.TextImageRelation = System.Windows.Forms.TextImageRelation.Overlay; this.tsbModifiedProfiles.ToolTipText = "Back to global profile (Home) / User modified profiles"; this.tsbModifiedProfiles.ButtonClick += new System.EventHandler(this.tsbModifiedProfiles_ButtonClick); @@ -179,7 +181,7 @@ // toolStripSeparator1 // this.toolStripSeparator1.Name = "toolStripSeparator1"; - this.toolStripSeparator1.Size = new System.Drawing.Size(6, 25); + this.toolStripSeparator1.Size = new System.Drawing.Size(6, 46); // // tsbRefreshProfile // @@ -187,7 +189,7 @@ this.tsbRefreshProfile.Image = ((System.Drawing.Image)(resources.GetObject("tsbRefreshProfile.Image"))); this.tsbRefreshProfile.ImageTransparentColor = System.Drawing.Color.Magenta; this.tsbRefreshProfile.Name = "tsbRefreshProfile"; - this.tsbRefreshProfile.Size = new System.Drawing.Size(24, 22); + this.tsbRefreshProfile.Size = new System.Drawing.Size(40, 40); this.tsbRefreshProfile.Text = "Refresh current profile."; this.tsbRefreshProfile.Click += new System.EventHandler(this.tsbRefreshProfile_Click); // @@ -197,7 +199,7 @@ this.tsbRestoreProfile.Image = ((System.Drawing.Image)(resources.GetObject("tsbRestoreProfile.Image"))); this.tsbRestoreProfile.ImageTransparentColor = System.Drawing.Color.Magenta; this.tsbRestoreProfile.Name = "tsbRestoreProfile"; - this.tsbRestoreProfile.Size = new System.Drawing.Size(24, 22); + this.tsbRestoreProfile.Size = new System.Drawing.Size(40, 40); this.tsbRestoreProfile.Text = "Restore current profile to NVIDIA defaults."; this.tsbRestoreProfile.Click += new System.EventHandler(this.tsbRestoreProfile_Click); // @@ -207,7 +209,7 @@ this.tsbCreateProfile.Image = ((System.Drawing.Image)(resources.GetObject("tsbCreateProfile.Image"))); this.tsbCreateProfile.ImageTransparentColor = System.Drawing.Color.Magenta; this.tsbCreateProfile.Name = "tsbCreateProfile"; - this.tsbCreateProfile.Size = new System.Drawing.Size(24, 22); + this.tsbCreateProfile.Size = new System.Drawing.Size(40, 40); this.tsbCreateProfile.Text = "Create new profile"; this.tsbCreateProfile.Click += new System.EventHandler(this.tsbCreateProfile_Click); // @@ -217,14 +219,14 @@ this.tsbDeleteProfile.Image = global::nspector.Properties.Resources.ieframe_1_18212; this.tsbDeleteProfile.ImageTransparentColor = System.Drawing.Color.Magenta; this.tsbDeleteProfile.Name = "tsbDeleteProfile"; - this.tsbDeleteProfile.Size = new System.Drawing.Size(24, 22); + this.tsbDeleteProfile.Size = new System.Drawing.Size(40, 40); this.tsbDeleteProfile.Text = "Delete current Profile"; this.tsbDeleteProfile.Click += new System.EventHandler(this.tsbDeleteProfile_Click); // // tsSep2 // this.tsSep2.Name = "tsSep2"; - this.tsSep2.Size = new System.Drawing.Size(6, 25); + this.tsSep2.Size = new System.Drawing.Size(6, 46); // // tsbAddApplication // @@ -232,7 +234,7 @@ this.tsbAddApplication.Image = global::nspector.Properties.Resources.window_application_add; this.tsbAddApplication.ImageTransparentColor = System.Drawing.Color.Magenta; this.tsbAddApplication.Name = "tsbAddApplication"; - this.tsbAddApplication.Size = new System.Drawing.Size(24, 22); + this.tsbAddApplication.Size = new System.Drawing.Size(40, 40); this.tsbAddApplication.Text = "Add application to current profile."; this.tsbAddApplication.Click += new System.EventHandler(this.tsbAddApplication_Click); // @@ -242,7 +244,7 @@ this.tssbRemoveApplication.Image = global::nspector.Properties.Resources.window_application_delete; this.tssbRemoveApplication.ImageTransparentColor = System.Drawing.Color.Magenta; this.tssbRemoveApplication.Name = "tssbRemoveApplication"; - this.tssbRemoveApplication.Size = new System.Drawing.Size(36, 22); + this.tssbRemoveApplication.Size = new System.Drawing.Size(44, 40); this.tssbRemoveApplication.Text = "Remove application from current profile"; this.tssbRemoveApplication.DropDownItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.tssbRemoveApplication_DropDownItemClicked); this.tssbRemoveApplication.Click += new System.EventHandler(this.tssbRemoveApplication_Click); @@ -250,7 +252,7 @@ // tsSep3 // this.tsSep3.Name = "tsSep3"; - this.tsSep3.Size = new System.Drawing.Size(6, 25); + this.tsSep3.Size = new System.Drawing.Size(6, 46); // // tsbExportProfiles // @@ -263,35 +265,35 @@ this.tsbExportProfiles.Image = global::nspector.Properties.Resources.export1; this.tsbExportProfiles.ImageTransparentColor = System.Drawing.Color.Magenta; this.tsbExportProfiles.Name = "tsbExportProfiles"; - this.tsbExportProfiles.Size = new System.Drawing.Size(36, 22); + this.tsbExportProfiles.Size = new System.Drawing.Size(44, 40); this.tsbExportProfiles.Text = "Export user defined profiles"; this.tsbExportProfiles.Click += new System.EventHandler(this.tsbExportProfiles_Click); // // exportCurrentProfileOnlyToolStripMenuItem // this.exportCurrentProfileOnlyToolStripMenuItem.Name = "exportCurrentProfileOnlyToolStripMenuItem"; - this.exportCurrentProfileOnlyToolStripMenuItem.Size = new System.Drawing.Size(343, 22); + this.exportCurrentProfileOnlyToolStripMenuItem.Size = new System.Drawing.Size(602, 40); this.exportCurrentProfileOnlyToolStripMenuItem.Text = "Export current profile only"; this.exportCurrentProfileOnlyToolStripMenuItem.Click += new System.EventHandler(this.exportCurrentProfileOnlyToolStripMenuItem_Click); // // exportCurrentProfileIncludingPredefinedSettingsToolStripMenuItem // this.exportCurrentProfileIncludingPredefinedSettingsToolStripMenuItem.Name = "exportCurrentProfileIncludingPredefinedSettingsToolStripMenuItem"; - this.exportCurrentProfileIncludingPredefinedSettingsToolStripMenuItem.Size = new System.Drawing.Size(343, 22); + this.exportCurrentProfileIncludingPredefinedSettingsToolStripMenuItem.Size = new System.Drawing.Size(602, 40); this.exportCurrentProfileIncludingPredefinedSettingsToolStripMenuItem.Text = "Export current profile including predefined settings"; this.exportCurrentProfileIncludingPredefinedSettingsToolStripMenuItem.Click += new System.EventHandler(this.exportCurrentProfileIncludingPredefinedSettingsToolStripMenuItem_Click); // // exportUserdefinedProfilesToolStripMenuItem // this.exportUserdefinedProfilesToolStripMenuItem.Name = "exportUserdefinedProfilesToolStripMenuItem"; - this.exportUserdefinedProfilesToolStripMenuItem.Size = new System.Drawing.Size(343, 22); + this.exportUserdefinedProfilesToolStripMenuItem.Size = new System.Drawing.Size(602, 40); this.exportUserdefinedProfilesToolStripMenuItem.Text = "Export all customized profiles"; this.exportUserdefinedProfilesToolStripMenuItem.Click += new System.EventHandler(this.exportUserdefinedProfilesToolStripMenuItem_Click); // // exportAllProfilesNVIDIATextFormatToolStripMenuItem // this.exportAllProfilesNVIDIATextFormatToolStripMenuItem.Name = "exportAllProfilesNVIDIATextFormatToolStripMenuItem"; - this.exportAllProfilesNVIDIATextFormatToolStripMenuItem.Size = new System.Drawing.Size(343, 22); + this.exportAllProfilesNVIDIATextFormatToolStripMenuItem.Size = new System.Drawing.Size(602, 40); this.exportAllProfilesNVIDIATextFormatToolStripMenuItem.Text = "Export all driver profiles (NVIDIA Text Format)"; this.exportAllProfilesNVIDIATextFormatToolStripMenuItem.Click += new System.EventHandler(this.exportAllProfilesNVIDIATextFormatToolStripMenuItem_Click); // @@ -304,28 +306,28 @@ this.tsbImportProfiles.Image = global::nspector.Properties.Resources.import1; this.tsbImportProfiles.ImageTransparentColor = System.Drawing.Color.Magenta; this.tsbImportProfiles.Name = "tsbImportProfiles"; - this.tsbImportProfiles.Size = new System.Drawing.Size(36, 22); + this.tsbImportProfiles.Size = new System.Drawing.Size(44, 40); this.tsbImportProfiles.Text = "Import user defined profiles"; this.tsbImportProfiles.Click += new System.EventHandler(this.tsbImportProfiles_Click); // // importProfilesToolStripMenuItem // this.importProfilesToolStripMenuItem.Name = "importProfilesToolStripMenuItem"; - this.importProfilesToolStripMenuItem.Size = new System.Drawing.Size(363, 22); + this.importProfilesToolStripMenuItem.Size = new System.Drawing.Size(639, 40); this.importProfilesToolStripMenuItem.Text = "Import profile(s)"; this.importProfilesToolStripMenuItem.Click += new System.EventHandler(this.importProfilesToolStripMenuItem_Click); // // importAllProfilesNVIDIATextFormatToolStripMenuItem // this.importAllProfilesNVIDIATextFormatToolStripMenuItem.Name = "importAllProfilesNVIDIATextFormatToolStripMenuItem"; - this.importAllProfilesNVIDIATextFormatToolStripMenuItem.Size = new System.Drawing.Size(363, 22); + this.importAllProfilesNVIDIATextFormatToolStripMenuItem.Size = new System.Drawing.Size(639, 40); this.importAllProfilesNVIDIATextFormatToolStripMenuItem.Text = "Import (replace) all driver profiles (NVIDIA Text Format)"; this.importAllProfilesNVIDIATextFormatToolStripMenuItem.Click += new System.EventHandler(this.importAllProfilesNVIDIATextFormatToolStripMenuItem_Click); // // tsSep4 // this.tsSep4.Name = "tsSep4"; - this.tsSep4.Size = new System.Drawing.Size(6, 25); + this.tsSep4.Size = new System.Drawing.Size(6, 46); // // tscbShowCustomSettingNamesOnly // @@ -334,14 +336,14 @@ this.tscbShowCustomSettingNamesOnly.Image = global::nspector.Properties.Resources.filter_user; this.tscbShowCustomSettingNamesOnly.ImageTransparentColor = System.Drawing.Color.Magenta; this.tscbShowCustomSettingNamesOnly.Name = "tscbShowCustomSettingNamesOnly"; - this.tscbShowCustomSettingNamesOnly.Size = new System.Drawing.Size(24, 22); + this.tscbShowCustomSettingNamesOnly.Size = new System.Drawing.Size(40, 40); this.tscbShowCustomSettingNamesOnly.Text = "Show the settings and values from CustomSettingNames file only."; this.tscbShowCustomSettingNamesOnly.CheckedChanged += new System.EventHandler(this.cbCustomSettingsOnly_CheckedChanged); // // tsSep5 // this.tsSep5.Name = "tsSep5"; - this.tsSep5.Size = new System.Drawing.Size(6, 25); + this.tsSep5.Size = new System.Drawing.Size(6, 46); // // tscbShowScannedUnknownSettings // @@ -351,7 +353,7 @@ this.tscbShowScannedUnknownSettings.Image = global::nspector.Properties.Resources.find_set2; this.tscbShowScannedUnknownSettings.ImageTransparentColor = System.Drawing.Color.Magenta; this.tscbShowScannedUnknownSettings.Name = "tscbShowScannedUnknownSettings"; - this.tscbShowScannedUnknownSettings.Size = new System.Drawing.Size(24, 22); + this.tscbShowScannedUnknownSettings.Size = new System.Drawing.Size(40, 40); this.tscbShowScannedUnknownSettings.Text = "Show unknown settings from NVIDIA predefined profiles"; this.tscbShowScannedUnknownSettings.Click += new System.EventHandler(this.tscbShowScannedUnknownSettings_Click); // @@ -361,14 +363,14 @@ this.tsbBitValueEditor.Image = global::nspector.Properties.Resources.text_binary; this.tsbBitValueEditor.ImageTransparentColor = System.Drawing.Color.Magenta; this.tsbBitValueEditor.Name = "tsbBitValueEditor"; - this.tsbBitValueEditor.Size = new System.Drawing.Size(24, 22); + this.tsbBitValueEditor.Size = new System.Drawing.Size(40, 40); this.tsbBitValueEditor.Text = "Show bit value editor."; this.tsbBitValueEditor.Click += new System.EventHandler(this.tsbBitValueEditor_Click); // // tsSep6 // this.tsSep6.Name = "tsSep6"; - this.tsSep6.Size = new System.Drawing.Size(6, 25); + this.tsSep6.Size = new System.Drawing.Size(6, 46); // // tsbApplyProfile // @@ -377,7 +379,7 @@ this.tsbApplyProfile.ImageTransparentColor = System.Drawing.Color.Magenta; this.tsbApplyProfile.Name = "tsbApplyProfile"; this.tsbApplyProfile.Overflow = System.Windows.Forms.ToolStripItemOverflow.Never; - this.tsbApplyProfile.Size = new System.Drawing.Size(109, 22); + this.tsbApplyProfile.Size = new System.Drawing.Size(173, 40); this.tsbApplyProfile.Text = "Apply changes"; this.tsbApplyProfile.TextAlign = System.Drawing.ContentAlignment.MiddleRight; this.tsbApplyProfile.Click += new System.EventHandler(this.tsbApplyProfile_Click); @@ -387,10 +389,10 @@ this.btnResetValue.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.btnResetValue.Enabled = false; this.btnResetValue.Image = global::nspector.Properties.Resources.nv_btn; - this.btnResetValue.Location = new System.Drawing.Point(732, 175); - this.btnResetValue.Margin = new System.Windows.Forms.Padding(0, 1, 0, 0); + this.btnResetValue.Location = new System.Drawing.Point(1342, 323); + this.btnResetValue.Margin = new System.Windows.Forms.Padding(0, 2, 0, 0); this.btnResetValue.Name = "btnResetValue"; - this.btnResetValue.Size = new System.Drawing.Size(25, 19); + this.btnResetValue.Size = new System.Drawing.Size(46, 35); this.btnResetValue.TabIndex = 7; this.btnResetValue.UseVisualStyleBackColor = true; this.btnResetValue.Click += new System.EventHandler(this.btnResetValue_Click); @@ -402,10 +404,10 @@ this.lblApplications.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(118)))), ((int)(((byte)(185)))), ((int)(((byte)(0))))); this.lblApplications.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D; this.lblApplications.ForeColor = System.Drawing.Color.White; - this.lblApplications.Location = new System.Drawing.Point(12, 32); - this.lblApplications.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + this.lblApplications.Location = new System.Drawing.Point(22, 59); + this.lblApplications.Margin = new System.Windows.Forms.Padding(7, 0, 7, 0); this.lblApplications.Name = "lblApplications"; - this.lblApplications.Size = new System.Drawing.Size(840, 17); + this.lblApplications.Size = new System.Drawing.Size(1540, 31); this.lblApplications.TabIndex = 25; this.lblApplications.Text = "fsagame.exe, bond.exe, herozero.exe"; this.lblApplications.DoubleClick += new System.EventHandler(this.tsbAddApplication_Click); @@ -444,10 +446,10 @@ // this.cbValues.BackColor = System.Drawing.SystemColors.Window; this.cbValues.FormattingEnabled = true; - this.cbValues.Location = new System.Drawing.Point(524, 175); - this.cbValues.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + this.cbValues.Location = new System.Drawing.Point(961, 323); + this.cbValues.Margin = new System.Windows.Forms.Padding(7, 0, 7, 0); this.cbValues.Name = "cbValues"; - this.cbValues.Size = new System.Drawing.Size(72, 21); + this.cbValues.Size = new System.Drawing.Size(129, 32); this.cbValues.TabIndex = 5; this.cbValues.Visible = false; this.cbValues.SelectedValueChanged += new System.EventHandler(this.cbValues_SelectedValueChanged); @@ -455,40 +457,40 @@ // // lblWidth96 // - this.lblWidth96.Location = new System.Drawing.Point(77, 233); - this.lblWidth96.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + this.lblWidth96.Location = new System.Drawing.Point(141, 430); + this.lblWidth96.Margin = new System.Windows.Forms.Padding(7, 0, 7, 0); this.lblWidth96.Name = "lblWidth96"; - this.lblWidth96.Size = new System.Drawing.Size(96, 18); + this.lblWidth96.Size = new System.Drawing.Size(176, 33); this.lblWidth96.TabIndex = 77; this.lblWidth96.Text = "96"; this.lblWidth96.Visible = false; // // lblWidth330 // - this.lblWidth330.Location = new System.Drawing.Point(77, 210); - this.lblWidth330.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + this.lblWidth330.Location = new System.Drawing.Point(141, 388); + this.lblWidth330.Margin = new System.Windows.Forms.Padding(7, 0, 7, 0); this.lblWidth330.Name = "lblWidth330"; - this.lblWidth330.Size = new System.Drawing.Size(330, 22); + this.lblWidth330.Size = new System.Drawing.Size(605, 41); this.lblWidth330.TabIndex = 78; this.lblWidth330.Text = "330 (Helper Labels for DPI Scaling)"; this.lblWidth330.Visible = false; // // lblWidth16 // - this.lblWidth16.Location = new System.Drawing.Point(77, 269); - this.lblWidth16.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + this.lblWidth16.Location = new System.Drawing.Point(141, 497); + this.lblWidth16.Margin = new System.Windows.Forms.Padding(7, 0, 7, 0); this.lblWidth16.Name = "lblWidth16"; - this.lblWidth16.Size = new System.Drawing.Size(16, 18); + this.lblWidth16.Size = new System.Drawing.Size(29, 33); this.lblWidth16.TabIndex = 79; this.lblWidth16.Text = "16"; this.lblWidth16.Visible = false; // // lblWidth30 // - this.lblWidth30.Location = new System.Drawing.Point(77, 251); - this.lblWidth30.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + this.lblWidth30.Location = new System.Drawing.Point(141, 463); + this.lblWidth30.Margin = new System.Windows.Forms.Padding(7, 0, 7, 0); this.lblWidth30.Name = "lblWidth30"; - this.lblWidth30.Size = new System.Drawing.Size(30, 18); + this.lblWidth30.Size = new System.Drawing.Size(55, 33); this.lblWidth30.TabIndex = 80; this.lblWidth30.Text = "30"; this.lblWidth30.Visible = false; @@ -504,12 +506,12 @@ this.lvSettings.GridLines = true; this.lvSettings.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.None; this.lvSettings.HideSelection = false; - this.lvSettings.Location = new System.Drawing.Point(0, 0); - this.lvSettings.Margin = new System.Windows.Forms.Padding(4); + this.lvSettings.Location = new System.Drawing.Point(0, 29); + this.lvSettings.Margin = new System.Windows.Forms.Padding(7); this.lvSettings.MultiSelect = false; this.lvSettings.Name = "lvSettings"; this.lvSettings.ShowItemToolTips = true; - this.lvSettings.Size = new System.Drawing.Size(840, 372); + this.lvSettings.Size = new System.Drawing.Size(1540, 661); this.lvSettings.SmallImageList = this.ilListView; this.lvSettings.TabIndex = 2; this.lvSettings.UseCompatibleStateImageBehavior = false; @@ -538,12 +540,13 @@ // tbSettingDescription // this.tbSettingDescription.Dock = System.Windows.Forms.DockStyle.Bottom; - this.tbSettingDescription.Location = new System.Drawing.Point(0, 372); + this.tbSettingDescription.Location = new System.Drawing.Point(0, 690); + this.tbSettingDescription.Margin = new System.Windows.Forms.Padding(6); this.tbSettingDescription.Multiline = true; this.tbSettingDescription.Name = "tbSettingDescription"; this.tbSettingDescription.ReadOnly = true; this.tbSettingDescription.ScrollBars = System.Windows.Forms.ScrollBars.Vertical; - this.tbSettingDescription.Size = new System.Drawing.Size(840, 44); + this.tbSettingDescription.Size = new System.Drawing.Size(1540, 78); this.tbSettingDescription.TabIndex = 81; this.tbSettingDescription.Visible = false; // @@ -553,17 +556,29 @@ | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.pnlListview.Controls.Add(this.lvSettings); + this.pnlListview.Controls.Add(this.txtFilter); this.pnlListview.Controls.Add(this.tbSettingDescription); - this.pnlListview.Location = new System.Drawing.Point(12, 52); + this.pnlListview.Location = new System.Drawing.Point(22, 96); + this.pnlListview.Margin = new System.Windows.Forms.Padding(6); this.pnlListview.Name = "pnlListview"; - this.pnlListview.Size = new System.Drawing.Size(840, 416); + this.pnlListview.Size = new System.Drawing.Size(1540, 768); this.pnlListview.TabIndex = 82; // + // txtFilter + // + this.txtFilter.Dock = System.Windows.Forms.DockStyle.Top; + this.txtFilter.Location = new System.Drawing.Point(0, 0); + this.txtFilter.Name = "txtFilter"; + this.txtFilter.Size = new System.Drawing.Size(1540, 29); + this.txtFilter.TabIndex = 82; + this.txtFilter.WatermarkText = "Search for setting..."; + this.txtFilter.TextChanged += new System.EventHandler(this.txtFilter_TextChanged); + // // frmDrvSettings // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 22F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(864, 492); + this.ClientSize = new System.Drawing.Size(1584, 908); this.Controls.Add(this.pnlListview); this.Controls.Add(this.lblWidth30); this.Controls.Add(this.lblWidth16); @@ -574,8 +589,8 @@ this.Controls.Add(this.pbMain); this.Controls.Add(this.btnResetValue); this.Controls.Add(this.cbValues); - this.Margin = new System.Windows.Forms.Padding(4); - this.MinimumSize = new System.Drawing.Size(879, 346); + this.Margin = new System.Windows.Forms.Padding(7); + this.MinimumSize = new System.Drawing.Size(1592, 585); this.Name = "frmDrvSettings"; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; this.Text = "nSpector - Driver Profile Settings"; @@ -640,5 +655,6 @@ private System.Windows.Forms.ToolStripMenuItem exportCurrentProfileIncludingPredefinedSettingsToolStripMenuItem; private System.Windows.Forms.TextBox tbSettingDescription; private System.Windows.Forms.Panel pnlListview; + private WatermarkTextBox txtFilter; } } \ No newline at end of file diff --git a/nspector/frmDrvSettings.cs b/nspector/frmDrvSettings.cs index c26ca07..74c7dc3 100644 --- a/nspector/frmDrvSettings.cs +++ b/nspector/frmDrvSettings.cs @@ -635,6 +635,8 @@ namespace nspector private void ChangeCurrentProfile(string profileName) { + txtFilter.Text = ""; + if (profileName == GetBaseProfileName() || profileName == _baseProfileName) { _CurrentProfile = _baseProfileName; @@ -1104,6 +1106,8 @@ namespace nspector private async void RefreshAll() { + txtFilter.Text = ""; + RefreshProfilesCombo(); await ScanProfilesSilentAsync(true, false); @@ -1305,34 +1309,36 @@ namespace nspector if (e.Control && e.KeyCode == Keys.F) { - SearchSetting(); + txtFilter.Focus(); } if (e.KeyCode == Keys.Escape) { RefreshCurrentProfile(); } - - } - private void SearchSetting() + private void txtFilter_TextChanged(object sender, EventArgs e) { - string inputString = ""; - if (InputBox.Show("Search Setting", "Please enter setting name:", ref inputString, new List(), "", 2048) == System.Windows.Forms.DialogResult.OK) + RefreshCurrentProfile(); + + if (string.IsNullOrEmpty(txtFilter.Text.Trim())) { - var lowerInput = inputString.Trim().ToLowerInvariant(); - lvSettings.BeginUpdate(); - foreach(ListViewItem itm in lvSettings.Items) - { - if (!itm.Text.ToLowerInvariant().Contains(lowerInput)) - { - itm.Remove(); - } - } - lvSettings.EndUpdate(); + return; } - + + var lowerInput = txtFilter.Text.Trim().ToLowerInvariant(); + lvSettings.BeginUpdate(); + foreach (ListViewItem itm in lvSettings.Items) + { + if (!itm.Text.ToLowerInvariant().Contains(lowerInput)) + { + itm.Remove(); + } + } + lvSettings.EndUpdate(); + + txtFilter.Focus(); // Setting listbox sometimes steals focus away } private void EnableDevmode() @@ -1424,7 +1430,6 @@ namespace nspector } Clipboard.SetText(sbSettings.ToString()); - } } } diff --git a/nspector/nvidiaProfileInspector.csproj b/nspector/nvidiaProfileInspector.csproj index 80bdaa8..6af630f 100644 --- a/nspector/nvidiaProfileInspector.csproj +++ b/nspector/nvidiaProfileInspector.csproj @@ -204,6 +204,9 @@ + + Component + frmBitEditor.cs Designer