// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-\r
+
using System;
-\r
+
namespace System.ComponentModel
{
[AttributeUsage(AttributeTargets.All)]
public sealed class ExtenderProvidedPropertyAttribute : Attribute
- {\r
+ {
private PropertyDescriptor extender;
private IExtenderProvider extenderProvider;
private Type receiver;
-\r
+
public ExtenderProvidedPropertyAttribute()
{
}
-\r
+
// Call this method to create a ExtenderProvidedPropertyAttribute and set it's values
internal static ExtenderProvidedPropertyAttribute CreateAttribute (PropertyDescriptor extenderProperty, IExtenderProvider provider, Type receiverType)
{
return extender;
}
}
-\r
+
public IExtenderProvider Provider {
get {
return extenderProvider;
}
}
-\r
+
public Type ReceiverType {
get {
return receiver;
}
}
-\r
+
public override bool IsDefaultAttribute()
{
// FIXME correct implementation??
(extenderProvider == null) &&
(receiver == null);
}
-\r
+
public override bool Equals (object obj)
{
if (!(obj is ExtenderProvidedPropertyAttribute))
return extender.GetHashCode() ^ extenderProvider.GetHashCode() ^ receiver.GetHashCode();
}
}
-}\r
+}