From: jpbruyere Date: Sat, 20 Aug 2016 16:58:31 +0000 (+0200) Subject: Command class creation X-Git-Tag: v0.5~7^2~9 X-Git-Url: https://git.osiis.dedyn.io/?a=commitdiff_plain;h=a1e2e7de61606024e25e8122596492122ffae2ae;p=jp%2Fcrow.git Command class creation --- diff --git a/Crow.csproj b/Crow.csproj index 5c6cb9e3..70b7d799 100644 --- a/Crow.csproj +++ b/Crow.csproj @@ -143,6 +143,7 @@ + diff --git a/src/Command.cs b/src/Command.cs new file mode 100644 index 00000000..35a7facc --- /dev/null +++ b/src/Command.cs @@ -0,0 +1,69 @@ +// +// Command.cs +// +// Author: +// Jean-Philippe Bruyère +// +// Copyright (c) 2016 jp +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +using System; +using System.Xml.Serialization; +using System.ComponentModel; + +namespace Crow +{ + public class Command : IValueChange + { + #region IValueChange implementation + public event EventHandler ValueChanged; + public virtual void NotifyValueChanged(string MemberName, object _value) + { + ValueChanged.Raise(this, new ValueChangeEventArgs(MemberName, _value)); + } + #endregion + + #region CTOR + public Command () + { + } + #endregion + + string caption; + bool isEnabled; + + + [XmlAttributeAttribute()][DefaultValue(true)] + public virtual bool IsEnabled { + get { return isEnabled; } + set { + if (isEnabled == value) + return; + isEnabled = value; + NotifyValueChanged ("IsEnabled", isEnabled); + } + } + [XmlAttributeAttribute()][DefaultValue("Unamed Command")] + public virtual string Caption { + get { return caption; } + set { + if (caption == value) + return; + caption = value; + NotifyValueChanged ("Caption", caption); + + } + } + } +}