diff options
| author | jpbruyere <jp.bruyere@hotmail.com> | 2017-02-10 15:54:50 +0100 |
|---|---|---|
| committer | jpbruyere <jp.bruyere@hotmail.com> | 2017-02-10 15:54:50 +0100 |
| commit | 456e7c847a4aa6fed44cc2d970ac9400ea54d0c4 (patch) | |
| tree | 42dc38f31028f3854f55a8203390ed922dd8cd5a /src/GraphicObjects/MenuItem.cs | |
| parent | 5ca711641d1934adf08d2675641e3f61647f3ffc (diff) | |
TextBox, Label, simpler SVG icon for file sys viewers (improve speed a lot), divers debug and code clean
Diffstat (limited to 'src/GraphicObjects/MenuItem.cs')
| -rw-r--r-- | src/GraphicObjects/MenuItem.cs | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/GraphicObjects/MenuItem.cs b/src/GraphicObjects/MenuItem.cs index b277194e..e317e0cb 100644 --- a/src/GraphicObjects/MenuItem.cs +++ b/src/GraphicObjects/MenuItem.cs @@ -79,6 +79,11 @@ namespace Crow } } [XmlAttributeAttribute] + public override bool IsEnabled { + get { return Command == null ? base.IsEnabled : Command.CanExecute; } + set { base.IsEnabled = value; } + } + [XmlAttributeAttribute] public override string Caption { get { return Command == null ? base.Caption : Command.Caption; } set { base.Caption = value; } @@ -124,7 +129,10 @@ namespace Crow void Command_ValueChanged (object sender, ValueChangeEventArgs e) { - NotifyValueChanged (e.MemberName, e.NewValue); + string mName = e.MemberName; + if (mName == "CanExecute") + mName = "IsEnabled"; + NotifyValueChanged (mName, e.NewValue); } void onMI_Click (object sender, MouseButtonEventArgs e) { @@ -141,7 +149,7 @@ namespace Crow } public override bool MouseIsIn (Point m) { - return base.MouseIsIn (m) || child.MouseIsIn (m); + return IsEnabled ? base.MouseIsIn (m) || child.MouseIsIn (m) : false; } public override void onMouseEnter (object sender, MouseMoveEventArgs e) { |