Index: Core/Common/src/Core.Common.Gui/Attributes/DynamicPropertyOrderAttribute.cs =================================================================== diff -u -rd4d24f72de2e86b7215351ed29e1debb8dd1de0d -r85248172d4c431dd8c1c0a1a8934f6ca32c1016b --- Core/Common/src/Core.Common.Gui/Attributes/DynamicPropertyOrderAttribute.cs (.../DynamicPropertyOrderAttribute.cs) (revision d4d24f72de2e86b7215351ed29e1debb8dd1de0d) +++ Core/Common/src/Core.Common.Gui/Attributes/DynamicPropertyOrderAttribute.cs (.../DynamicPropertyOrderAttribute.cs) (revision 85248172d4c431dd8c1c0a1a8934f6ca32c1016b) @@ -25,9 +25,29 @@ namespace Core.Common.Gui.Attributes { + /// + /// Marks property as a conditionally ordered property. When this attribute is declared + /// on a property, the declaring class should have a public method marked with + /// to be used to evaluate the + /// order of the property. + /// + /// + /// + /// This attribute provides a run-time alternative to . [AttributeUsage(AttributeTargets.Property)] public sealed class DynamicPropertyOrderAttribute : Attribute { + /// + /// Determines the order of the property. + /// + /// The object. + /// The name of the property of . + /// The order of the property. + /// When + /// does not correspond to a public property of . + /// When there isn't a single method + /// declared on marked with + /// that is matching the signature defined by . public static int Order(object obj, string propertyName) { if (string.IsNullOrEmpty(propertyName)) Index: Core/Common/src/Core.Common.Gui/Attributes/DynamicPropertyOrderMethodAttribute.cs =================================================================== diff -u -rd4d24f72de2e86b7215351ed29e1debb8dd1de0d -r85248172d4c431dd8c1c0a1a8934f6ca32c1016b --- Core/Common/src/Core.Common.Gui/Attributes/DynamicPropertyOrderMethodAttribute.cs (.../DynamicPropertyOrderMethodAttribute.cs) (revision d4d24f72de2e86b7215351ed29e1debb8dd1de0d) +++ Core/Common/src/Core.Common.Gui/Attributes/DynamicPropertyOrderMethodAttribute.cs (.../DynamicPropertyOrderMethodAttribute.cs) (revision 85248172d4c431dd8c1c0a1a8934f6ca32c1016b) @@ -26,11 +26,29 @@ namespace Core.Common.Gui.Attributes { + /// + /// Marks a method to be used to determine the order of a property. The method + /// should be public and have the signature of . + /// + /// [AttributeUsage(AttributeTargets.Method)] public sealed class DynamicPropertyOrderMethodAttribute : Attribute { + /// + /// Required method signature when marking a method with . + /// + /// The name of the property to be checked. + /// The order of the property. public delegate int PropertyOrder(string propertyName); + /// + /// Creates a delegate that can be used to determine the order of a property. + /// + /// The object instance declaring the evaluation method. + /// The delegate. + /// When there isn't a single method + /// declared on marked with + /// that is matching the signature defined by . public static PropertyOrder CreatePropertyOrderMethod(object target) { var methodInfo = GetPropertyOrderMethod(target); Index: Core/Common/src/Core.Common.Gui/Attributes/DynamicReadOnlyAttribute.cs =================================================================== diff -u -r4512af7782ee31b36941bb280b54d9da2953dd71 -r85248172d4c431dd8c1c0a1a8934f6ca32c1016b --- Core/Common/src/Core.Common.Gui/Attributes/DynamicReadOnlyAttribute.cs (.../DynamicReadOnlyAttribute.cs) (revision 4512af7782ee31b36941bb280b54d9da2953dd71) +++ Core/Common/src/Core.Common.Gui/Attributes/DynamicReadOnlyAttribute.cs (.../DynamicReadOnlyAttribute.cs) (revision 85248172d4c431dd8c1c0a1a8934f6ca32c1016b) @@ -42,13 +42,13 @@ /// Determines whether the property is read-only or not. /// /// The object. - /// Name of the property of . - /// True if the property is read-only, false otherwise. - /// + /// The name of the property of . + /// True if the property is read-only, false otherwise. + /// When /// does not correspond to a public property of . /// When there isn't a single method /// declared on marked with - /// and/or isn't matching the signature defined by . + /// that is matching the signature defined by . public static bool IsReadOnly(object obj, string propertyName) { if (string.IsNullOrEmpty(propertyName)) Index: Core/Common/src/Core.Common.Gui/Attributes/DynamicReadOnlyValidationMethodAttribute.cs =================================================================== diff -u -r24da3aa72ccc0776599628c9f971081694048d9a -r85248172d4c431dd8c1c0a1a8934f6ca32c1016b --- Core/Common/src/Core.Common.Gui/Attributes/DynamicReadOnlyValidationMethodAttribute.cs (.../DynamicReadOnlyValidationMethodAttribute.cs) (revision 24da3aa72ccc0776599628c9f971081694048d9a) +++ Core/Common/src/Core.Common.Gui/Attributes/DynamicReadOnlyValidationMethodAttribute.cs (.../DynamicReadOnlyValidationMethodAttribute.cs) (revision 85248172d4c431dd8c1c0a1a8934f6ca32c1016b) @@ -37,8 +37,8 @@ /// /// Required method signature when marking a method with . /// - /// Name of the property to be checked. - /// True if the referred property should be read-only, false if it should be editable. + /// The name of the property to be checked. + /// True if the referred property should be read-only, false if it should be editable. public delegate bool IsPropertyReadOnly(string propertyName); /// @@ -48,7 +48,7 @@ /// The delegate. /// When there isn't a single method /// declared on marked with - /// and/or isn't matching the signature defined by . + /// that is matching the signature defined by . public static IsPropertyReadOnly CreateIsReadOnlyMethod(object target) { var methodInfo = GetIsReadOnlyMethod(target); Index: Core/Common/src/Core.Common.Gui/Attributes/DynamicVisibleAttribute.cs =================================================================== diff -u -r24da3aa72ccc0776599628c9f971081694048d9a -r85248172d4c431dd8c1c0a1a8934f6ca32c1016b --- Core/Common/src/Core.Common.Gui/Attributes/DynamicVisibleAttribute.cs (.../DynamicVisibleAttribute.cs) (revision 24da3aa72ccc0776599628c9f971081694048d9a) +++ Core/Common/src/Core.Common.Gui/Attributes/DynamicVisibleAttribute.cs (.../DynamicVisibleAttribute.cs) (revision 85248172d4c431dd8c1c0a1a8934f6ca32c1016b) @@ -42,13 +42,13 @@ /// Determines whether the property is visible or not. /// /// The object. - /// Name of the property of . - /// True if the property is visible, false otherwise. - /// + /// The name of the property of . + /// True if the property is visible, false otherwise. + /// When /// does not correspond to a public property of . /// When there isn't a single method /// declared on marked with - /// and/or isn't matching the signature defined by . + /// that is matching the signature defined by . public static bool IsVisible(object obj, string propertyName) { if (string.IsNullOrEmpty(propertyName)) Index: Core/Common/src/Core.Common.Gui/Attributes/DynamicVisibleValidationMethodAttribute.cs =================================================================== diff -u -r24da3aa72ccc0776599628c9f971081694048d9a -r85248172d4c431dd8c1c0a1a8934f6ca32c1016b --- Core/Common/src/Core.Common.Gui/Attributes/DynamicVisibleValidationMethodAttribute.cs (.../DynamicVisibleValidationMethodAttribute.cs) (revision 24da3aa72ccc0776599628c9f971081694048d9a) +++ Core/Common/src/Core.Common.Gui/Attributes/DynamicVisibleValidationMethodAttribute.cs (.../DynamicVisibleValidationMethodAttribute.cs) (revision 85248172d4c431dd8c1c0a1a8934f6ca32c1016b) @@ -37,8 +37,8 @@ /// /// Required method signature when marking a method with . /// - /// Name of the property to be checked. - /// True if the referred property should be visible, false if it should be hidden. + /// The name of the property to be checked. + /// True if the referred property should be visible, false if it should be hidden. public delegate bool IsPropertyVisible(string propertyName); /// @@ -48,7 +48,7 @@ /// The delegate. /// When there isn't a single method /// declared on marked with - /// and/or isn't matching the signature defined by . + /// that is matching the signature defined by . public static IsPropertyVisible CreateIsVisibleMethod(object target) { var methodInfo = GetIsVisibleMethod(target);