diff --git a/Greenshot/Forms/SettingsForm.Designer.cs b/Greenshot/Forms/SettingsForm.Designer.cs index e44d2728f..1f2d4beaf 100644 --- a/Greenshot/Forms/SettingsForm.Designer.cs +++ b/Greenshot/Forms/SettingsForm.Designer.cs @@ -171,6 +171,7 @@ namespace Greenshot { this.textbox_storagelocation.Name = "textbox_storagelocation"; this.textbox_storagelocation.Size = new System.Drawing.Size(233, 20); this.textbox_storagelocation.TabIndex = 12; + this.textbox_storagelocation.TextChanged += new System.EventHandler(StorageLocationChanged); // // label_storagelocation // diff --git a/Greenshot/Forms/SettingsForm.cs b/Greenshot/Forms/SettingsForm.cs index 773191fb8..b75ea632b 100644 --- a/Greenshot/Forms/SettingsForm.cs +++ b/Greenshot/Forms/SettingsForm.cs @@ -55,7 +55,6 @@ namespace Greenshot { protected override void OnLoad(EventArgs e) { base.OnLoad(e); - this.Icon = GreenshotPlugin.Core.GreenshotResources.getGreenshotIcon(); // Fix for Vista/XP differences @@ -65,50 +64,51 @@ namespace Greenshot { this.trackBarJpegQuality.BackColor = System.Drawing.SystemColors.Control; } - // This makes it possible to still capture the settings screen - this.fullscreen_hotkeyControl.Enter += delegate { EnterHotkeyControl(); }; - this.fullscreen_hotkeyControl.Leave += delegate { LeaveHotkeyControl(); }; - this.window_hotkeyControl.Enter += delegate { EnterHotkeyControl(); }; - this.window_hotkeyControl.Leave += delegate { LeaveHotkeyControl(); }; - this.region_hotkeyControl.Enter += delegate { EnterHotkeyControl(); }; - this.region_hotkeyControl.Leave += delegate { LeaveHotkeyControl(); }; - this.ie_hotkeyControl.Enter += delegate { EnterHotkeyControl(); }; - this.ie_hotkeyControl.Leave += delegate { LeaveHotkeyControl(); }; - this.lastregion_hotkeyControl.Enter += delegate { EnterHotkeyControl(); }; - this.lastregion_hotkeyControl.Leave += delegate { LeaveHotkeyControl(); }; + // This makes it possible to still capture the settings screen + this.fullscreen_hotkeyControl.Enter += delegate { EnterHotkeyControl(); }; + this.fullscreen_hotkeyControl.Leave += delegate { LeaveHotkeyControl(); }; + this.window_hotkeyControl.Enter += delegate { EnterHotkeyControl(); }; + this.window_hotkeyControl.Leave += delegate { LeaveHotkeyControl(); }; + this.region_hotkeyControl.Enter += delegate { EnterHotkeyControl(); }; + this.region_hotkeyControl.Leave += delegate { LeaveHotkeyControl(); }; + this.ie_hotkeyControl.Enter += delegate { EnterHotkeyControl(); }; + this.ie_hotkeyControl.Leave += delegate { LeaveHotkeyControl(); }; + this.lastregion_hotkeyControl.Enter += delegate { EnterHotkeyControl(); }; + this.lastregion_hotkeyControl.Leave += delegate { LeaveHotkeyControl(); }; - DisplayPluginTab(); + DisplayPluginTab(); UpdateUI(); ExpertSettingsEnableState(false); DisplaySettings(); CheckSettings(); } - private void EnterHotkeyControl() { - GreenshotPlugin.Controls.HotkeyControl.UnregisterHotkeys(); - inHotkey = true; - } - private void LeaveHotkeyControl() { - MainForm.RegisterHotkeys(); - inHotkey = false; - } + private void EnterHotkeyControl() { + GreenshotPlugin.Controls.HotkeyControl.UnregisterHotkeys(); + inHotkey = true; + } - protected override bool ProcessCmdKey(ref Message msg, Keys keyData) { - switch (keyData) { - case Keys.Escape: - if (!inHotkey) { - DialogResult = DialogResult.Cancel; - } else { - return base.ProcessCmdKey(ref msg, keyData); - } - break; - default: - return base.ProcessCmdKey(ref msg, keyData); - } - return true; - } + private void LeaveHotkeyControl() { + MainForm.RegisterHotkeys(); + inHotkey = false; + } - /// + protected override bool ProcessCmdKey(ref Message msg, Keys keyData) { + switch (keyData) { + case Keys.Escape: + if (!inHotkey) { + DialogResult = DialogResult.Cancel; + } else { + return base.ProcessCmdKey(ref msg, keyData); + } + break; + default: + return base.ProcessCmdKey(ref msg, keyData); + } + return true; + } + + /// /// This is a method to popululate the ComboBox /// with the items from the enumeration /// @@ -203,9 +203,9 @@ namespace Greenshot { /// Update the UI to reflect the language and other text settings /// private void UpdateUI() { - if (coreConfiguration.HideExpertSettings) { - tabcontrol.Controls.Remove(tab_expert); - } + if (coreConfiguration.HideExpertSettings) { + tabcontrol.Controls.Remove(tab_expert); + } toolTip.SetToolTip(label_language, Language.GetString(LangKey.settings_tooltip_language)); toolTip.SetToolTip(label_storagelocation, Language.GetString(LangKey.settings_tooltip_storagelocation)); toolTip.SetToolTip(label_screenshotname, Language.GetString(LangKey.settings_tooltip_filenamepattern)); @@ -236,11 +236,20 @@ namespace Greenshot { textbox_storagelocation.BackColor = Color.Red; settingsOk = false; } else { - textbox_storagelocation.BackColor = Control.DefaultBackColor; + // "Added" feature #3547158 + if (Environment.OSVersion.Version.Major >= 6) { + this.textbox_storagelocation.BackColor = System.Drawing.SystemColors.Window; + } else { + this.textbox_storagelocation.BackColor = System.Drawing.SystemColors.Control; + } } return settingsOk; } + private void StorageLocationChanged(object sender, System.EventArgs e) { + CheckSettings(); + } + /// /// Show all destination descriptions in the current language /// @@ -429,7 +438,6 @@ namespace Greenshot { this.textbox_storagelocation.Text = this.folderBrowserDialog1.SelectedPath; } } - CheckSettings(); } void TrackBarJpegQualityScroll(object sender, System.EventArgs e) { @@ -552,7 +560,7 @@ namespace Greenshot { ExpertSettingsEnableState(checkBox.Checked); } } - + public class ListviewWithDestinationComparer : System.Collections.IComparer { public int Compare(object x, object y) { if (!(x is ListViewItem)) { @@ -561,7 +569,7 @@ namespace Greenshot { if (!(y is ListViewItem)) { return (0); } - + ListViewItem l1 = (ListViewItem)x; ListViewItem l2 = (ListViewItem)y;