diff options
author | Jeffrey Stedfast <jeff@xamarin.com> | 2011-09-27 00:56:19 +0400 |
---|---|---|
committer | Jeffrey Stedfast <jeff@xamarin.com> | 2011-09-27 00:56:19 +0400 |
commit | 3193f9ce47c76e5c714fd6fadc7493efd42ac0f6 (patch) | |
tree | 902282df79f3030f154458a8db73b30682bec4c0 /main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui | |
parent | 84c806b56d879c8385821b0fb918d603c4e49c97 (diff) |
[Ide] Upper/LowercaseSelection(): Disable when appropriate. Fixes bug #740.
Diffstat (limited to 'main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui')
-rw-r--r-- | main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/ViewCommandHandlers.cs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/ViewCommandHandlers.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/ViewCommandHandlers.cs index 78fb632a68..2edbd3d26b 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/ViewCommandHandlers.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/ViewCommandHandlers.cs @@ -238,6 +238,8 @@ namespace MonoDevelop.Ide.Gui { int pos = buffer.CursorPosition; string ch = buffer.GetText (pos, pos + 1); + if (!char.IsLower (ch)) + return; buffer.DeleteText (pos, 1); buffer.InsertText (pos, ch.ToUpper ()); buffer.CursorPosition = pos + 1; @@ -251,6 +253,13 @@ namespace MonoDevelop.Ide.Gui } } + [CommandUpdateHandler (EditCommands.UppercaseSelection)] + protected void OnUppercaseSelection (CommandInfo info) + { + IEditableTextBuffer buffer = GetContent <IEditableTextBuffer> (); + info.Enabled = buffer != null && buffer.CursorPosition < buffer.Length; + } + [CommandHandler (EditCommands.LowercaseSelection)] public void OnLowercaseSelection () { @@ -261,6 +270,8 @@ namespace MonoDevelop.Ide.Gui { int pos = buffer.CursorPosition; string ch = buffer.GetText (pos, pos + 1); + if (!char.IsUpper (ch)) + return; buffer.DeleteText (pos, 1); buffer.InsertText (pos, ch.ToLower ()); buffer.CursorPosition = pos + 1; @@ -277,7 +288,8 @@ namespace MonoDevelop.Ide.Gui [CommandUpdateHandler (EditCommands.LowercaseSelection)] protected void OnLowercaseSelection (CommandInfo info) { - info.Enabled = GetContent <IEditableTextBuffer> () != null; + IEditableTextBuffer buffer = GetContent <IEditableTextBuffer> (); + info.Enabled = buffer != null && buffer.CursorPosition < buffer.Length; } |