+++ /dev/null
-//
-// AssemblyInfo.cs
-//
-// Author:
-// Iain McCoy (iain@mccoy.id.au)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Ximian, Inc. http://www.ximian.com
-// (C) 2004 Novell (http://www.novell.com)
-//
-// this file based on mcs/class/Mono.Data.SqlClient/Assembly/AssemblyInfo.cs
-
-using System;
-using System.Reflection;
-using System.Runtime.InteropServices;
-
-[assembly: AssemblyVersion (Consts.FxVersion)]
-
-/* TODO COMPLETE INFORMATION
-
-[assembly: AssemblyTitle ("")]
-[assembly: AssemblyDescription ("")]
-
-[assembly: CLSCompliant (true)]
-[assembly: AssemblyFileVersion ("0.0.0.1")]
-
-[assembly: ComVisible (false)]
-
-*/
-
-[assembly: AssemblyDelaySign (true)]
-[assembly: AssemblyKeyFile ("../mono.pub")]
-
+++ /dev/null
-2005-07-24 Iain McCoy <iain@mccoy.id.au>
-
- * Test/AttachedProperties.cs: made LocalValueEnumerator test not
- depend on unstable implementation details
-
-2005-07-19 Iain McCoy <iain@mccoy.id.au>
-
- * System.Windows/DependencyObject.cs,
- System.Windows/LocalValueEnumerator.cs: implemented
- GetLocalValueEnumerator() and the LocalValueEnumerator class to
- support it.
- * Test/DependencyObject.cs: added test for LocalValueEnumerator
-
-
-2005-07-06 Iain McCoy <iain@mccoy.id.au>
-
- * System.Windows/DependencyObject.cs,
- System.Windows/DependencyProperty.cs,
- System.Windows/PropertyMetadata.cs,
- System.Windows/Callbacks.cs: Added constructors to PropertyMetadata,
- added support for default values of properties
-
-2005-07-02 Iain McCoy <iain@mccoy.id.au>
-
- * whole folder: initial implementation of the DependencyProperty
- system
+++ /dev/null
-thisdir = class/WindowsBase
-include ../../build/rules.make
-
-LIBRARY = WindowsBase.dll
-
-LIB_MCS_FLAGS =
-TEST_MCS_FLAGS = -r:WindowsBase.dll
-
-include ../../build/library.make
+++ /dev/null
-//
-// Callbacks.cs
-//
-// Author:
-// Iain McCoy (iain@mccoy.id.au)
-//
-// (C) 2005 Iain McCoy
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-
-namespace System.Windows {
- public delegate bool ValidateValueCallback(object value);
- public delegate void PropertyInvalidatedCallback(DependencyObject d);
- public delegate Object GetValueOverride(DependencyObject d);
- public delegate Object SetValueOverride(DependencyObject d);
- public delegate Object ReadLocalValueOverride(DependencyObject d);
- public delegate void WriteLocalValueOverride(DependencyObject d, Object value);
-}
+++ /dev/null
-//
-// DependencyObject.cs
-//
-// Author:
-// Iain McCoy (iain@mccoy.id.au)
-//
-// (C) 2005 Iain McCoy
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System.Collections;
-
-namespace System.Windows {
- public class DependencyObject {
- private static Hashtable propertyDeclarations = new Hashtable();
- private Hashtable properties = new Hashtable();
-
- private DependencyObjectType dependencyObjectType;
- public DependencyObjectType DependencyObjectType {
- get { return dependencyObjectType; }
- }
-
- [MonoTODO()]
- public void ClearValue(DependencyProperty dp)
- {
- throw new NotImplementedException("ClearValue(DependencyProperty dp)");
- }
-
- [MonoTODO()]
- public void ClearValue(DependencyPropertyKey key)
- {
- throw new NotImplementedException("ClearValue(DependencyPropertyKey key)");
- }
-
- [MonoTODO()]
- public LocalValueEnumerator GetLocalValueEnumerator()
- {
- return new LocalValueEnumerator(properties);
- }
-
- public object GetValue(DependencyProperty dp)
- {
- object val = properties[dp];
- if (val == null)
- val = dp.DefaultMetadata.DefaultValue;
- return val;
- }
-
- [MonoTODO()]
- public object GetValueBase(DependencyProperty dp)
- {
- throw new NotImplementedException("GetValueBase(DependencyProperty dp)");
- }
-
- [MonoTODO()]
- protected virtual object GetValueCore(DependencyProperty dp, object baseValue, PropertyMetadata metadata)
- {
- throw new NotImplementedException("GetValueCore(DependencyProperty dp, object baseValue, PropertyMetadata metadata)");
- }
-
- [MonoTODO()]
- public void InvalidateProperty(DependencyProperty dp)
- {
- throw new NotImplementedException("InvalidateProperty(DependencyProperty dp)");
- }
-
- [MonoTODO()]
- protected virtual void OnPropertyInvalidated(DependencyProperty dp, PropertyMetadata metadata)
- {
- throw new NotImplementedException("OnPropertyInvalidated(DependencyProperty dp, PropertyMetadata metadata)");
- }
-
- [MonoTODO()]
- public object ReadLocalValue(DependencyProperty dp)
- {
- throw new NotImplementedException("ReadLocalValue(DependencyProperty dp)");
- }
-
- public void SetValue(DependencyProperty dp, object value)
- {
-
- ValidateValueCallback validate = dp.ValidateValueCallback;
- if (validate != null && !validate(value))
- throw new Exception("Value does not validate");
- else
- properties[dp] = value;
- }
-
- [MonoTODO()]
- public void SetValue(DependencyPropertyKey key, object value)
- {
- throw new NotImplementedException("SetValue(DependencyPropertyKey key, object value)");
- }
-
- [MonoTODO()]
- public void SetValueBase(DependencyProperty dp, object value)
- {
- throw new NotImplementedException("SetValueBase(DependencyProperty dp, object value)");
- }
-
- [MonoTODO()]
- public void SetValueBase(DependencyPropertyKey key, object value)
- {
- throw new NotImplementedException("SetValueBase(DependencyPropertyKey key, object value)");
- }
-
- internal static DependencyProperty lookup(Type t, string name)
- {
- return (DependencyProperty)((Hashtable)propertyDeclarations[t])[name];
- }
-
- internal static void register(Type t, DependencyProperty dp)
- {
- if (propertyDeclarations[t] == null)
- propertyDeclarations[t] = new Hashtable();
- Hashtable typeDeclarations = (Hashtable)propertyDeclarations[t];
- if (!typeDeclarations.ContainsKey(dp.Name))
- typeDeclarations[dp.Name] = dp;
- else
- throw new Exception("A property named " + dp.Name + " already exists on " + t.Name);
- }
- }
-}
+++ /dev/null
-//
-// DependencyObjectType.cs
-//
-// Author:
-// Iain McCoy (iain@mccoy.id.au)
-//
-// (C) 2005 Iain McCoy
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-
-namespace System.Windows {
- public class DependencyObjectType {
- private DependencyObjectType baseType;
- private int id;
- private string name;
- private Type systemType;
-
- public DependencyObjectType BaseType {
- get { return baseType; }
- }
- public int Id {
- get { return id; }
- }
- public string Name {
- get { return name; }
- }
- public Type SystemType {
- get { return systemType; }
- }
- [MonoTODO()]
- public static DependencyObjectType FromSystemType(Type systemType)
- {
- throw new NotImplementedException("FromSystemType(Type systemType)");
- }
- [MonoTODO()]
- public bool IsInstanceOfType(DependencyObject d)
- {
- throw new NotImplementedException("IsInstanceOfType(DependencyObject d)");
- }
- [MonoTODO()]
- public bool IsSubClassOf(DependencyObjectType dependencyObjectType)
- {
- throw new NotImplementedException("IsSubClassOf(DependencyObjectType dependencyObjectType)");
- }
- }
-}
+++ /dev/null
-//
-// DependencyProperty.cs
-//
-// Author:
-// Iain McCoy (iain@mccoy.id.au)
-//
-// (C) 2005 Iain McCoy
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Windows {
- public class DependencyProperty {
- private PropertyMetadata defaultMetadata;
- private string name;
- private Type ownerType;
- private Type propertyType;
- private ValidateValueCallback validateValueCallback;
-
- private bool isAttached;
- internal bool IsAttached { get { return isAttached; } }
-
- private DependencyProperty (bool isAttached, string name, Type propertyType, Type ownerType, PropertyMetadata defaultMetadata, ValidateValueCallback validateValueCallback)
- {
- this.isAttached = isAttached;
- this.defaultMetadata = (defaultMetadata == null ? new PropertyMetadata() : defaultMetadata);
- this.name = name;
- this.ownerType = ownerType;
- this.propertyType = propertyType;
- this.validateValueCallback = validateValueCallback;
- }
-
- public PropertyMetadata DefaultMetadata {
- get { return defaultMetadata; }
- }
- public string Name {
- get { return name; }
- }
- public Type OwnerType {
- get { return ownerType; }
- }
- public Type PropertyType {
- get { return propertyType; }
- }
- public ValidateValueCallback ValidateValueCallback {
- get { return validateValueCallback; }
- }
-
- [MonoTODO()]
- public DependencyProperty AddOwner(Type ownerType)
- {
- throw new NotImplementedException("AddOwner(Type ownerType)");
- }
- [MonoTODO()]
- public DependencyProperty AddOwner(Type ownerType, PropertyMetadata typeMetadata)
- {
- throw new NotImplementedException("AddOwner(Type ownerType, PropertyMetadata typeMetadata)");
- }
-
- [MonoTODO()]
- public static DependencyProperty FromName(String name, Type ownerType)
- {
- return DependencyObject.lookup(ownerType, name);
- }
-
- [MonoTODO()]
- public PropertyMetadata GetMetadata(Type forType)
- {
- throw new NotImplementedException("GetMetadata(Type forType)");
- }
- [MonoTODO()]
- public PropertyMetadata GetMetadata(DependencyObject d)
- {
- throw new NotImplementedException("GetMetadata(DependencyObject d)");
- }
- [MonoTODO()]
- public PropertyMetadata GetMetadata(DependencyObjectType dependencyObjectType)
- {
- throw new NotImplementedException("GetMetadata(DependencyObjectType dependencyObjectType)");
- }
-
- [MonoTODO()]
- public bool IsValidType(object value)
- {
- throw new NotImplementedException("IsValidType(object value)");
- }
- [MonoTODO()]
- public bool IsValidValue(object value)
- {
- throw new NotImplementedException("IsValidValue(object value)");
- }
-
- [MonoTODO()]
- public void OverrideMetadata(Type forType, PropertyMetadata typeMetadata)
- {
- throw new NotImplementedException("OverrideMetadata(Type forType, PropertyMetadata typeMetadata)");
- }
- [MonoTODO()]
- public void OverrideMetadata(Type forType, PropertyMetadata typeMetadata, DependencyPropertyKey key)
- {
- throw new NotImplementedException("OverrideMetadata(Type forType, PropertyMetadata typeMetadata, DependencyPropertyKey key)");
- }
-
- public static DependencyProperty Register(string name, Type propertyType, Type ownerType)
- {
- return Register(name, propertyType, ownerType, null, null);
- }
- public static DependencyProperty Register(string name, Type propertyType, Type ownerType, PropertyMetadata typeMetadata)
- {
- return Register(name, propertyType, ownerType, typeMetadata, null);
- }
- public static DependencyProperty Register(string name, Type propertyType, Type ownerType, PropertyMetadata typeMetadata, ValidateValueCallback validateValueCallback)
- {
- DependencyProperty dp = new DependencyProperty(false, name, propertyType, ownerType, typeMetadata, validateValueCallback);
- DependencyObject.register(ownerType, dp);
- return dp;
- }
-
- public static DependencyProperty RegisterAttached(string name, Type propertyType, Type ownerType)
- {
- return RegisterAttached(name, propertyType, ownerType, null, null);
- }
-
- public static DependencyProperty RegisterAttached(string name, Type propertyType, Type ownerType, PropertyMetadata defaultMetadata)
- {
- return RegisterAttached(name, propertyType, ownerType, defaultMetadata, null);
- }
-
- public static DependencyProperty RegisterAttached(string name, Type propertyType, Type ownerType, PropertyMetadata defaultMetadata, ValidateValueCallback validateValueCallback)
- {
- DependencyProperty dp = new DependencyProperty(true, name, propertyType, ownerType, defaultMetadata, validateValueCallback);
- DependencyObject.register(ownerType, dp);
- return dp;
- }
-
- [MonoTODO()]
- public static DependencyPropertyKey RegisterAttachedReadOnly(string name, Type propertyType, Type ownerType, PropertyMetadata defaultMetadata)
- {
- throw new NotImplementedException("RegisterAttachedReadOnly(string name, Type propertyType, Type ownerType, PropertyMetadata defaultMetadata)");
- }
- [MonoTODO()]
- public static DependencyPropertyKey RegisterAttachedReadOnly(string name, Type propertyType, Type ownerType, PropertyMetadata defaultMetadata, ValidateValueCallback validateValueCallback)
- {
- throw new NotImplementedException("RegisterAttachedReadOnly(string name, Type propertyType, Type ownerType, PropertyMetadata defaultMetadata, ValidateValueCallback validateValueCallback)");
- }
- [MonoTODO()]
- public static DependencyPropertyKey RegisterReadOnly(string name, Type propertyType, Type ownerType, PropertyMetadata typeMetadata)
- {
- throw new NotImplementedException("RegisterReadOnly(string name, Type propertyType, Type ownerType, PropertyMetadata typeMetadata)");
- }
- [MonoTODO()]
- public static DependencyPropertyKey RegisterReadOnly(string name, Type propertyType, Type ownerType, PropertyMetadata typeMetadata, ValidateValueCallback validateValueCallback)
- {
- throw new NotImplementedException("RegisterReadOnly(string name, Type propertyType, Type ownerType, PropertyMetadata typeMetadata, ValidateValueCallback validateValueCallback)");
- }
-
- }
-}
+++ /dev/null
-//
-// DependencyPropertyKey.cs
-//
-// Author:
-// Iain McCoy (iain@mccoy.id.au)
-//
-// (C) 2005 Iain McCoy
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Windows {
- public class DependencyPropertyKey {
- private DependencyProperty dependencyProperty;
- public DependencyProperty DependencyProperty {
- get { return dependencyProperty; }
- }
- [MonoTODO()]
- public void OverrideMetadata(Type forType, PropertyMetadata typeMetadata)
- {
- throw new NotImplementedException("OverrideMetadata(Type forType, PropertyMetadata typeMetadata)");
- }
- }
-}
+++ /dev/null
-//
-// LocalValueEntry.cs
-//
-// Author:
-// Iain McCoy (iain@mccoy.id.au)
-//
-// (C) 2005 Iain McCoy
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Windows {
- public struct LocalValueEntry {
- private DependencyProperty property;
- private object value;
-
- public DependencyProperty Property {
- get { return property; }
- }
-
- public object Value {
- get { return value; }
- }
-
- internal LocalValueEntry(DependencyProperty property, object value)
- {
- this.property = property;
- this.value = value;
- }
- }
-}
+++ /dev/null
-//
-// LocalValueEnumerator.cs
-//
-// Author:
-// Iain McCoy (iain@mccoy.id.au)
-//
-// (C) 2005 Iain McCoy
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-
-using System.Collections;
-
-namespace System.Windows {
- public struct LocalValueEnumerator : IEnumerator {
- private IDictionaryEnumerator propertyEnumerator;
- private Hashtable properties;
-
- private int count;
- internal LocalValueEnumerator(Hashtable properties)
- {
- this.count = properties.Count;
- this.properties = properties;
- this.propertyEnumerator = properties.GetEnumerator();
- }
-
- public int Count {
- get { return count; }
- }
- public LocalValueEntry Current {
- get { return new LocalValueEntry((DependencyProperty)propertyEnumerator.Key,
- propertyEnumerator.Value); }
- }
- object IEnumerator.Current {
- get { return this.Current; }
- }
- public bool MoveNext()
- {
- return propertyEnumerator.MoveNext();
- }
- public void Reset()
- {
- propertyEnumerator.Reset();
- }
- }
-}
+++ /dev/null
-//
-// PropertyMetadata.cs
-//
-// Author:
-// Iain McCoy (iain@mccoy.id.au)
-//
-// (C) 2005 Iain McCoy
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Windows {
- public class PropertyMetadata {
- private object defaultValue;
- private GetValueOverride getValueOverride;
- private SetValueOverride setValueOverride;
- private bool isSealed;
- private PropertyInvalidatedCallback propertyInvalidatedCallback;
- private ReadLocalValueOverride readLocalValueOverride;
- private bool readOnly;
- private WriteLocalValueOverride writeLocalValueOverride;
-
- public object DefaultValue {
- get { return defaultValue; }
- set { defaultValue = value; }
- }
- public GetValueOverride GetValueOverride {
- get { return getValueOverride; }
- set { getValueOverride = value;}
- }
- protected bool IsSealed {
- get { return isSealed; }
- }
- public PropertyInvalidatedCallback PropertyInvalidatedCallback {
- get { return propertyInvalidatedCallback; }
- set { propertyInvalidatedCallback = value; }
- }
- public ReadLocalValueOverride ReadLocalValueOverride {
- get { return readLocalValueOverride; }
- set { readLocalValueOverride = value; }
- }
- public bool ReadOnly {
- get { return readOnly; }
- }
- public WriteLocalValueOverride WriteLocalValueOverride {
- get { return writeLocalValueOverride; }
- set { writeLocalValueOverride = value; }
- }
-
- public PropertyMetadata()
- {
- }
- public PropertyMetadata(GetValueOverride getValueOverride)
- {
- this.getValueOverride = getValueOverride;
- }
- public PropertyMetadata(GetValueOverride getValueOverride, SetValueOverride setValueOverride)
- {
- this.getValueOverride = getValueOverride;
- this.setValueOverride = setValueOverride;
- }
- public PropertyMetadata(object defaultValue)
- {
- this.defaultValue = defaultValue;
- }
- public PropertyMetadata(object defaultValue, PropertyInvalidatedCallback propertyInvalidatedCallback)
- {
- this.defaultValue = defaultValue;
- this.propertyInvalidatedCallback = propertyInvalidatedCallback;
- }
-
- public PropertyMetadata(object defaultValue, PropertyInvalidatedCallback propertyInvalidatedCallback, GetValueOverride getValueOverride)
- {
- this.defaultValue = defaultValue;
- this.propertyInvalidatedCallback = propertyInvalidatedCallback;
- this.getValueOverride = getValueOverride;
- }
- public PropertyMetadata(object defaultValue, PropertyInvalidatedCallback propertyInvalidatedCallback, GetValueOverride getValueOverride, SetValueOverride setValueOverride)
- {
- this.defaultValue = defaultValue;
- this.propertyInvalidatedCallback = propertyInvalidatedCallback;
- this.getValueOverride = getValueOverride;
- this.setValueOverride = setValueOverride;
- }
- public PropertyMetadata(PropertyInvalidatedCallback propertyInvalidatedCallback)
- {
- this.propertyInvalidatedCallback = propertyInvalidatedCallback;
- }
- public PropertyMetadata(PropertyInvalidatedCallback propertyInvalidatedCallback, GetValueOverride getValueOverride)
- {
- this.propertyInvalidatedCallback = propertyInvalidatedCallback;
- this.getValueOverride = getValueOverride;
- }
- public PropertyMetadata(PropertyInvalidatedCallback propertyInvalidatedCallback, GetValueOverride getValueOverride, SetValueOverride setValueOverride)
- {
- this.propertyInvalidatedCallback = propertyInvalidatedCallback;
- this.getValueOverride = getValueOverride;
- this.setValueOverride = setValueOverride;
- }
-
- [MonoTODO()]
- protected void ClearCachedDefaultValue (DependencyObject owner)
- {
- throw new NotImplementedException("ClearCachedDefaultValue(DependencyObject owner)");
- }
-
- [MonoTODO()]
- protected virtual object CreateDefaultValue (DependencyObject owner, DependencyProperty property)
- {
- throw new NotImplementedException("CreateDefaultValue(DependencyObject owner, DependencyProperty property)");
- }
-
- [MonoTODO()]
- protected virtual void Merge (PropertyMetadata baseMetadata, DependencyProperty dp)
- {
- throw new NotImplementedException("Merge(PropertyMetadata baseMetadata, DependencyProperty dp)");
- }
-
- [MonoTODO()]
- protected virtual void OnApply (DependencyProperty dp, Type targetType)
- {
- throw new NotImplementedException("OnApply(DependencyProperty dp, Type targetType)");
- }
- }
-}
+++ /dev/null
-//
-// RoutedEvent.cs
-//
-// Author:
-// Iain McCoy (iain@mccoy.id.au)
-//
-// (C) 2005 Iain McCoy
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Windows {
- public sealed class RoutedEvent {
- }
-}
+++ /dev/null
-// this is a template for making NUnit version 2 tests. Text enclosed in curly
-// brackets (and the brackets themselves) should be replaced by appropriate
-// code.
-
-// DependencyObject.cs - NUnit Test Cases for attached properties
-//
-// Iain McCoy (iain@mccoy.id.au)
-//
-// (C) iain@mccoy.id.au
-//
-
-using NUnit.Framework;
-using System;
-using System.Windows;
-
-// all test namespaces start with "MonoTests." Append the Namespace that
-// contains the class you are testing, e.g. MonoTests.System.Collections
-namespace MonoTests.System.Windows
-{
-
-class X {
- public static readonly DependencyProperty AProperty = DependencyProperty.RegisterAttached("A", typeof(int), typeof(X));
- public static void SetA(DependencyObject obj, int value)
- {
- obj.SetValue(AProperty, value);
- }
- public static int GetA(DependencyObject obj)
- {
- return (int)obj.GetValue(AProperty);
- }
-
- public static readonly DependencyProperty BProperty = DependencyProperty.RegisterAttached("B", typeof(string), typeof(X));
- public static void SetB(DependencyObject obj, string value)
- {
- obj.SetValue(BProperty, value);
- }
- public static string GetB(DependencyObject obj)
- {
- return (string)obj.GetValue(BProperty);
- }
-
-}
-
-class Y : DependencyObject {
-}
-
-[TestFixture]
-public class DependencyObjectTest {
-
- [SetUp]
- public void GetReady() {}
-
- [TearDown]
- public void Clean() {}
-
- [Test]
- public void TestAttachedProperty()
- {
- Y y1 = new Y();
- X.SetA(y1, 2);
- Assert.AreEqual(2, X.GetA(y1));
- }
-
- [Test]
- public void Test2AttachedProperties()
- {
- Y y1 = new Y();
- Y y2 = new Y();
- X.SetA(y1, 2);
- X.SetA(y2, 3);
- Assert.AreEqual(2, X.GetA(y1));
- Assert.AreEqual(3, X.GetA(y2));
- }
-
- [Test]
- public void TestEnumerationOfAttachedProperties()
- {
- int count = 0;
- Y y = new Y();
- X.SetA(y, 2);
- X.SetB(y, "Hi");
-
- LocalValueEnumerator e = y.GetLocalValueEnumerator();
- while (e.MoveNext()) {
- count++;
- if (e.Current.Property == X.AProperty)
- Assert.AreEqual(e.Current.Value, 2);
- else if (e.Current.Property == X.BProperty)
- Assert.AreEqual(e.Current.Value, "Hi");
- else
- Assert.Fail("Wrong sort of property" + e.Current.Property);
- }
-
-
- Assert.AreEqual(2, count);
- }
-
- // An nice way to test for exceptions the class under test should
- // throw is:
- /*
- [Test]
- [ExpectedException(typeof(ArgumentNullException))]
- public void OnValid() {
- ConcreteCollection myCollection;
- myCollection = new ConcreteCollection();
- ....
- AssertEquals ("#UniqueID", expected, actual);
- ....
- Fail ("Message");
- }
- */
-
-}
-}
+++ /dev/null
-System.Windows/Callbacks.cs
-System.Windows/DependencyObject.cs
-System.Windows/DependencyObjectType.cs
-System.Windows/DependencyProperty.cs
-System.Windows/DependencyPropertyKey.cs
-System.Windows/LocalValueEntry.cs
-System.Windows/LocalValueEnumerator.cs
-System.Windows/PropertyMetadata.cs
-System.Windows/RoutedEvent.cs
-../../build/common/MonoTODOAttribute.cs
-Assembly/AssemblyInfo.cs
-../../build/common/Consts.cs
+++ /dev/null
-AttachedProperties.cs
-LocalValueEntry.cs