-Subproject commit 26162653439981f3c4db56685845196424572cac
+Subproject commit e01d7dea090011683da69fdafece41943f8c9462
public const string EcmaPublicKey = "b77a5c561934e089";
public const string MicrosoftPublicKey = "b03f5f7f11d50a3a";
+ public const string SystemDesign = Consts.AssemblySystem_Design;
+ public const string SystemDrawing = Consts.AssemblySystem_Drawing;
public const string SystemWeb = Consts.AssemblySystem_Web;
- public const string SystemWebExtensions = "System.Web.Extensions, Version=" + Consts.FxVersion + ", Culture=neutral, PublicKeyToken=31bf3856ad364e35";
+ public const string SystemWebExtensions = "System.Web.Extensions, Version=" + Consts.FxVersion + ", Culture=neutral, PublicKeyToken=31bf3856ad364e35";
+ public const string SystemWindowsForms = Consts.AssemblySystem_Windows_Forms;
}
static partial class SR
TEST_MCS_FLAGS = -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:618,672,219,67,169,612 \
$(foreach f, $(TEST_RESOURCES), -resource:$(f),$(notdir $(f)))
-REFERENCE_SOURCES_FLAGS = -d:FEATURE_PAL
+REFERENCE_SOURCES_FLAGS = -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO
LIB_MCS_FLAGS = -nowarn:618 -d:CONFIGURATION_2_0 $(REFERENCE_SOURCES_FLAGS) -unsafe $(RESOURCE_FILES:%=-resource:%)
TEST_MCS_FLAGS += -r:System.Configuration
PROFILE_ANY_MOBILE := $(filter monotouch monotouch_runtime monodroid xammac mobile mobile_static, $(PROFILE))
--- /dev/null
+namespace Microsoft.Win32
+{
+ static class NativeMethods
+ {
+ public const int E_ABORT = unchecked ((int)0x80004004);
+ }
+}
\ No newline at end of file
--- /dev/null
+//
+// Resource strings referenced by the code.
+//
+// Copyright 2014 Xamarin Inc
+//
+partial class SR
+{
+ public static object GetObject (string name)
+ {
+ return name;
+ }
+
+ public const string UnexpectedOpcode = "UnexpectedOpcode";
+ public const string BeginIndexNotNegative = "BeginIndexNotNegative";
+ public const string CountTooSmall = "CountTooSmall";
+ public const string ReplacementError = "ReplacementError";
+ public const string BadClassInCharRange = "BadClassInCharRange";
+ public const string TooManyAlternates = "TooManyAlternates";
+ public const string MakeException = "MakeException";
+ public const string IncompleteSlashP = "IncompleteSlashP";
+ public const string MalformedSlashP = "MalformedSlashP";
+ public const string CaptureGroupOutOfRange = "CaptureGroupOutOfRange";
+ public const string InvalidGroupName = "InvalidGroupName";
+ public const string UndefinedBackref = "UndefinedBackref";
+ public const string UndefinedNameref = "UndefinedNameref";
+ public const string UnrecognizedControl = "UnrecognizedControl";
+
+ public const string AlternationCantCapture = "AlternationCantCapture";
+ public const string AlternationCantHaveComment = "AlternationCantHaveComment";
+ public const string Arg_InvalidArrayType = "Arg_InvalidArrayType";
+ public const string Arg_RankMultiDimNotSupported = "Arg_RankMultiDimNotSupported";
+ public const string ArgumentNull_ArrayWithNullElements = "ArgumentNull_ArrayWithNullElements";
+ public const string CapnumNotZero = "CapnumNotZero";
+ public const string EnumNotStarted = "EnumNotStarted";
+ public const string IllegalCondition = "IllegalCondition";
+ public const string IllegalDefaultRegexMatchTimeoutInAppDomain = "IllegalDefaultRegexMatchTimeoutInAppDomain";
+ public const string IllegalEndEscape = "IllegalEndEscape";
+ public const string IllegalRange = "IllegalRange";
+ public const string InvalidNullEmptyArgument = "Invalid empty argument {0}";
+ public const string InternalError = "InternalError";
+ public const string LengthNotNegative = "LengthNotNegative";
+ public const string MalformedNameRef = "MalformedNameRef";
+ public const string MalformedReference = "MalformedReference";
+ public const string MissingControl = "MissingControl";
+ public const string NestedQuantify = "NestedQuantify";
+ public const string NoResultOnFailed = "NoResultOnFailed";
+ public const string NotEnoughParens = "NotEnoughParens";
+ public const string OnlyAllowedOnce = "OnlyAllowedOnce";
+ public const string QuantifyAfterNothing = "QuantifyAfterNothing";
+ public const string RegexMatchTimeoutException_Occurred = "RegexMatchTimeoutException_Occurred";
+ public const string ReversedCharRange = "ReversedCharRange";
+ public const string SubtractionMustBeLast = "SubtractionMustBeLast";
+ public const string TooFewHex = "TooFewHex";
+ public const string TooManyParens = "TooManyParens";
+ public const string UndefinedNameRef = "UndefinedNameRef";
+ public const string UndefinedReference = "UndefinedReference";
+ public const string UnimplementedState = "UnimplementedState";
+ public const string UnknownProperty = "UnknownProperty";
+ public const string UnrecognizedEscape = "UnrecognizedEscape";
+ public const string UnrecognizedGrouping = "UnrecognizedGrouping";
+ public const string UnterminatedBracket = "UnterminatedBracket";
+ public const string UnterminatedComment = "UnterminatedComment";
+
+ public const string Arg_ArrayPlusOffTooSmall = "Arg_ArrayPlusOffTooSmall";
+ public const string Arg_InsufficientSpace = "Arg_InsufficientSpace";
+ public const string Arg_MultiRank = "Arg_MultiRank";
+ public const string Arg_NonZeroLowerBound = "Arg_NonZeroLowerBound";
+ public const string Arg_WrongType = "Arg_WrongType";
+ public const string ArgumentOutOfRange_Index = "ArgumentOutOfRange_Index";
+ public const string ArgumentOutOfRange_NeedNonNegNum = "ArgumentOutOfRange_NeedNonNegNum";
+ public const string ArgumentOutOfRange_NeedNonNegNumRequired = "ArgumentOutOfRange_NeedNonNegNumRequired";
+ public const string ArgumentOutOfRange_SmallCapacity = "ArgumentOutOfRange_SmallCapacity";
+ public const string Argument_AddingDuplicate = "Argument_AddingDuplicate";
+ public const string Argument_ImplementIComparable = "Argument_ImplementIComparable";
+ public const string Argument_InvalidOffLen = "Argument_InvalidOffLen";
+ public const string ExternalLinkedListNode = "ExternalLinkedListNode";
+ public const string IndexOutOfRange = "IndexOutOfRange";
+ public const string InvalidOperation_CannotRemoveFromStackOrQueue = "InvalidOperation_CannotRemoveFromStackOrQueue";
+ public const string InvalidOperation_EmptyCollection = "InvalidOperation_EmptyCollection";
+ public const string InvalidOperation_EmptyQueue = "InvalidOperation_EmptyQueue";
+ public const string InvalidOperation_EmptyStack = "InvalidOperation_EmptyStack";
+ public const string InvalidOperation_EnumEnded = "InvalidOperation_EnumEnded";
+ public const string InvalidOperation_EnumFailedVersion = "InvalidOperation_EnumFailedVersion";
+ public const string InvalidOperation_EnumNotStarted = "InvalidOperation_EnumNotStarted";
+ public const string InvalidOperation_EnumOpCantHappen = "InvalidOperation_EnumOpCantHappen";
+ public const string Invalid_Array_Type = "Invalid_Array_Type";
+ public const string LinkedListEmpty = "LinkedListEmpty";
+ public const string LinkedListNodeIsAttached = "LinkedListNodeIsAttached";
+ public const string NotSupported_KeyCollectionSet = "NotSupported_KeyCollectionSet";
+ public const string NotSupported_SortedListNestedWrite = "NotSupported_SortedListNestedWrite";
+ public const string NotSupported_ValueCollectionSet = "NotSupported_ValueCollectionSet";
+ public const string Serialization_InvalidOnDeser = "Serialization_InvalidOnDeser";
+ public const string Serialization_MismatchedCount = "Serialization_MismatchedCount";
+ public const string Serialization_MissingValues = "Serialization_MissingValues";
+
+ public const string BlockingCollection_Add_ConcurrentCompleteAdd = "BlockingCollection_Add_ConcurrentCompleteAdd";
+ public const string BlockingCollection_Add_Failed = "BlockingCollection_Add_Failed";
+ public const string BlockingCollection_CantAddAnyWhenCompleted = "BlockingCollection_CantAddAnyWhenCompleted";
+ public const string BlockingCollection_CantTakeAnyWhenAllDone = "BlockingCollection_CantTakeAnyWhenAllDone";
+ public const string BlockingCollection_CantTakeWhenDone = "BlockingCollection_CantTakeWhenDone";
+ public const string BlockingCollection_Completed = "BlockingCollection_Completed";
+ public const string BlockingCollection_CopyTo_IncorrectType = "BlockingCollection_CopyTo_IncorrectType";
+ public const string BlockingCollection_CopyTo_MultiDim = "BlockingCollection_CopyTo_MultiDim";
+ public const string BlockingCollection_CopyTo_NonNegative = "BlockingCollection_CopyTo_NonNegative";
+ public const string BlockingCollection_CopyTo_TooManyElems = "BlockingCollection_CopyTo_TooManyElems";
+ public const string BlockingCollection_Disposed = "BlockingCollection_Disposed";
+ public const string BlockingCollection_Take_CollectionModified = "BlockingCollection_Take_CollectionModified";
+ public const string BlockingCollection_TimeoutInvalid = "BlockingCollection_TimeoutInvalid";
+ public const string BlockingCollection_ValidateCollectionsArray_DispElems = "BlockingCollection_ValidateCollectionsArray_DispElems";
+ public const string BlockingCollection_ValidateCollectionsArray_LargeSize = "BlockingCollection_ValidateCollectionsArray_LargeSize";
+ public const string BlockingCollection_ValidateCollectionsArray_NullElems = "BlockingCollection_ValidateCollectionsArray_NullElems";
+ public const string BlockingCollection_ValidateCollectionsArray_ZeroSize = "BlockingCollection_ValidateCollectionsArray_ZeroSize";
+ public const string BlockingCollection_ctor_BoundedCapacityRange = "BlockingCollection_ctor_BoundedCapacityRange";
+ public const string BlockingCollection_ctor_CountMoreThanCapacity = "BlockingCollection_ctor_CountMoreThanCapacity";
+ public const string Common_OperationCanceled = "Common_OperationCanceled";
+ public const string ConcurrentBag_CopyTo_ArgumentNullException = "ConcurrentBag_CopyTo_ArgumentNullException";
+ public const string ConcurrentBag_CopyTo_ArgumentOutOfRangeException = "ConcurrentBag_CopyTo_ArgumentOutOfRangeException";
+ public const string ConcurrentBag_Ctor_ArgumentNullException = "ConcurrentBag_Ctor_ArgumentNullException";
+ public const string ConcurrentCollection_SyncRoot_NotSupported = "ConcurrentCollection_SyncRoot_NotSupported";
+
+ public const string ArrayConverterText = "{0} Array";
+ public const string Async_AsyncEventArgs_Cancelled = "Async_AsyncEventArgs_Cancelled";
+ public const string Async_AsyncEventArgs_Error = "Async_AsyncEventArgs_Error";
+ public const string Async_AsyncEventArgs_UserState = "Async_AsyncEventArgs_UserState";
+ public const string Async_ExceptionOccurred = "Async_ExceptionOccurred";
+ public const string Async_NullDelegate = "Async_NullDelegate";
+ public const string Async_OperationAlreadyCompleted = "Async_OperationAlreadyCompleted";
+ public const string Async_OperationCancelled = "Async_OperationCancelled";
+ public const string Async_ProgressChangedEventArgs_ProgressPercentage = "Async_ProgressChangedEventArgs_ProgressPercentage";
+ public const string Async_ProgressChangedEventArgs_UserState = "Async_ProgressChangedEventArgs_UserState";
+ public const string BackgroundWorker_CancellationPending = "BackgroundWorker_CancellationPending";
+ public const string BackgroundWorker_Desc = "BackgroundWorker_Desc";
+ public const string BackgroundWorker_DoWork = "BackgroundWorker_DoWork";
+ public const string BackgroundWorker_DoWorkEventArgs_Argument = "BackgroundWorker_DoWorkEventArgs_Argument";
+ public const string BackgroundWorker_DoWorkEventArgs_Result = "BackgroundWorker_DoWorkEventArgs_Result";
+ public const string BackgroundWorker_IsBusy = "BackgroundWorker_IsBusy";
+ public const string BackgroundWorker_ProgressChanged = "BackgroundWorker_ProgressChanged";
+ public const string BackgroundWorker_RunWorkerCompleted = "BackgroundWorker_RunWorkerCompleted";
+ public const string BackgroundWorker_WorkerAlreadyRunning = "BackgroundWorker_WorkerAlreadyRunning";
+ public const string BackgroundWorker_WorkerDoesntReportProgress = "BackgroundWorker_WorkerDoesntReportProgress";
+ public const string BackgroundWorker_WorkerDoesntSupportCancellation = "BackgroundWorker_WorkerDoesntSupportCancellation";
+ public const string BackgroundWorker_WorkerReportsProgress = "BackgroundWorker_WorkerReportsProgress";
+ public const string BackgroundWorker_WorkerSupportsCancellation = "BackgroundWorker_WorkerSupportsCancellation";
+ public const string CHECKOUTCanceled = "CHECKOUTCanceled";
+ public const string CantModifyListSortDescriptionCollection = "CantModifyListSortDescriptionCollection";
+ public const string CollectionConverterText = "(Collection)";
+ public const string ConvertFromException = "{0} cannot convert from {1}.";
+ public const string ConvertInvalidPrimitive = "{0} is not a valid value for {1}.";
+ public const string ConvertToException = "'{0}' is unable to convert '{1}' to '{2}'.";
+ public const string CultureInfoConverterDefaultCultureString = "(Default)";
+ public const string CultureInfoConverterInvalidCulture = "The {0} culture cannot be converted to a CultureInfo object on this computer.";
+ public const string DuplicateComponentName = "Duplicate component name '{0}'. Component names must be unique and case-insensitive.";
+ public const string EnumConverterInvalidValue = "The value '{0}' is not a valid value for the enum '{1}'.";
+ public const string ErrorBadExtenderType = "ErrorBadExtenderType";
+ public const string ErrorInvalidEventHandler = "ErrorInvalidEventHandler";
+ public const string ErrorInvalidEventType = "ErrorInvalidEventType";
+ public const string ErrorInvalidPropertyType = "ErrorInvalidPropertyType";
+ public const string ErrorInvalidServiceInstance = "ErrorInvalidServiceInstance";
+ public const string ErrorMissingEventAccessors = "ErrorMissingEventAccessors";
+ public const string ErrorMissingPropertyAccessors = "ErrorMissingPropertyAccessors";
+ public const string ErrorPropertyAccessorException = "ErrorPropertyAccessorException";
+ public const string ErrorServiceExists = "The service {0} already exists in the service container.";
+ public const string ISupportInitializeDescr = "ISupportInitializeDescr";
+ public const string InstanceCreationEditorDefaultText = "InstanceCreationEditorDefaultText";
+ public const string InstanceDescriptorCannotBeStatic = "InstanceDescriptorCannotBeStatic";
+ public const string InstanceDescriptorLengthMismatch = "InstanceDescriptorLengthMismatch";
+ public const string InstanceDescriptorMustBeReadable = "InstanceDescriptorMustBeReadable";
+ public const string InstanceDescriptorMustBeStatic = "InstanceDescriptorMustBeStatic";
+ public const string InvalidArgument = "InvalidArgument";
+ public const string InvalidEnumArgument = "The value of argument '{0}' ({1}) is invalid for Enum type '{2}'.";
+ public const string InvalidMemberName = "InvalidMemberName";
+ public const string InvalidNullArgument = "InvalidNullArgument";
+ public const string LicExceptionTypeAndInstance = "LicExceptionTypeAndInstance";
+ public const string LicExceptionTypeOnly = "LicExceptionTypeOnly";
+ public const string LicMgrAlreadyLocked = "LicMgrAlreadyLocked";
+ public const string LicMgrContextCannotBeChanged = "LicMgrContextCannotBeChanged";
+ public const string LicMgrDifferentUser = "LicMgrDifferentUser";
+ public const string MaskedTextProviderInvalidCharError = "MaskedTextProviderInvalidCharError";
+ public const string MaskedTextProviderMaskInvalidChar = "MaskedTextProviderMaskInvalidChar ";
+ public const string MaskedTextProviderMaskNullOrEmpty = "MaskedTextProviderMaskNullOrEmpty";
+ public const string MaskedTextProviderPasswordAndPromptCharError = "MaskedTextProviderPasswordAndPromptCharError";
+ public const string MemberRelationshipService_RelationshipNotSupported = "MemberRelationshipService_RelationshipNotSupported";
+ public const string MetaExtenderName = "MetaExtenderName";
+ public const string MultilineStringConverterText = "(Text)";
+ public const string NullableConverterBadCtorArg = "NullableConverterBadCtorArg";
+ public const string PropertyCategoryAsynchronous = "PropertyCategoryAsynchronous";
+ public const string PropertyTabAttributeArrayLengthMismatch = "PropertyTabAttributeArrayLengthMismatch";
+ public const string PropertyTabAttributeBadPropertyTabScope = "PropertyTabAttributeBadPropertyTabScope";
+ public const string PropertyTabAttributeParamsBothNull = "PropertyTabAttributeParamsBothNull";
+ public const string PropertyTabAttributeTypeLoadException = "PropertyTabAttributeTypeLoadException";
+ public const string ToStringNull = "(null)";
+ public const string ToolboxItemAttributeFailedGetType = "ToolboxItemAttributeFailedGetType";
+ public const string TypeDescriptorAlreadyAssociated = "TypeDescriptorAlreadyAssociated";
+ public const string TypeDescriptorArgsCountMismatch = "TypeDescriptorArgsCountMismatch";
+ public const string TypeDescriptorExpectedElementType = "TypeDescriptorExpectedElementType";
+ public const string TypeDescriptorProviderError = "TypeDescriptorProviderError";
+ public const string TypeDescriptorSameAssociation = "TypeDescriptorSameAssociation";
+ public const string TypeDescriptorUnsupportedRemoteObject = "TypeDescriptorUnsupportedRemoteObject";
+ public const string toStringNone = "(none)";
+
+ public const string Arg_EnumIllegalVal = "Arg_EnumIllegalVal";
+ public const string Argument_InvalidClassAttribute = "Argument_InvalidClassAttribute";
+ public const string Argument_InvalidPermissionState = "Argument_InvalidPermissionState";
+ public const string Argument_WrongType = "Argument_WrongType";
+}
--- /dev/null
+namespace System.ComponentModel
+{
+ sealed class SRCategoryAttribute : CategoryAttribute
+ {
+ public SRCategoryAttribute (string category)
+ : base(category)
+ {
+ }
+ }
+}
\ No newline at end of file
--- /dev/null
+using System.Runtime.CompilerServices;
+
+namespace System.ComponentModel
+{
+ partial class Win32Exception
+ {
+ [MethodImplAttribute (MethodImplOptions.InternalCall)]
+ internal static extern string W32ErrorMessage (int error_code);
+
+ private static string GetErrorMessage (int error)
+ {
+ return W32ErrorMessage (error);
+ }
+ }
+}
\ No newline at end of file
+++ /dev/null
-//
-// Resource strings referenced by the code.
-//
-// Copyright 2014 Xamarin Inc
-//
-partial class SR
-{
- public const string UnexpectedOpcode = "UnexpectedOpcode";
- public const string BeginIndexNotNegative = "BeginIndexNotNegative";
- public const string CountTooSmall = "CountTooSmall";
- public const string ReplacementError = "ReplacementError";
- public const string BadClassInCharRange = "BadClassInCharRange";
- public const string TooManyAlternates = "TooManyAlternates";
- public const string MakeException = "MakeException";
- public const string IncompleteSlashP = "IncompleteSlashP";
- public const string MalformedSlashP = "MalformedSlashP";
- public const string CaptureGroupOutOfRange = "CaptureGroupOutOfRange";
- public const string InvalidGroupName = "InvalidGroupName";
- public const string UndefinedBackref = "UndefinedBackref";
- public const string UndefinedNameref = "UndefinedNameref";
- public const string UnrecognizedControl = "UnrecognizedControl";
-
- public const string AlternationCantCapture = "AlternationCantCapture";
- public const string AlternationCantHaveComment = "AlternationCantHaveComment";
- public const string Arg_InvalidArrayType = "Arg_InvalidArrayType";
- public const string Arg_RankMultiDimNotSupported = "Arg_RankMultiDimNotSupported";
- public const string ArgumentNull_ArrayWithNullElements = "ArgumentNull_ArrayWithNullElements";
- public const string CapnumNotZero = "CapnumNotZero";
- public const string EnumNotStarted = "EnumNotStarted";
- public const string IllegalCondition = "IllegalCondition";
- public const string IllegalDefaultRegexMatchTimeoutInAppDomain = "IllegalDefaultRegexMatchTimeoutInAppDomain";
- public const string IllegalEndEscape = "IllegalEndEscape";
- public const string IllegalRange = "IllegalRange";
- public const string InvalidNullEmptyArgument = "Invalid empty argument {0}";
- public const string InternalError = "InternalError";
- public const string LengthNotNegative = "LengthNotNegative";
- public const string MalformedNameRef = "MalformedNameRef";
- public const string MalformedReference = "MalformedReference";
- public const string MissingControl = "MissingControl";
- public const string NestedQuantify = "NestedQuantify";
- public const string NoResultOnFailed = "NoResultOnFailed";
- public const string NotEnoughParens = "NotEnoughParens";
- public const string OnlyAllowedOnce = "OnlyAllowedOnce";
- public const string QuantifyAfterNothing = "QuantifyAfterNothing";
- public const string RegexMatchTimeoutException_Occurred = "RegexMatchTimeoutException_Occurred";
- public const string ReversedCharRange = "ReversedCharRange";
- public const string SubtractionMustBeLast = "SubtractionMustBeLast";
- public const string TooFewHex = "TooFewHex";
- public const string TooManyParens = "TooManyParens";
- public const string UndefinedNameRef = "UndefinedNameRef";
- public const string UndefinedReference = "UndefinedReference";
- public const string UnimplementedState = "UnimplementedState";
- public const string UnknownProperty = "UnknownProperty";
- public const string UnrecognizedEscape = "UnrecognizedEscape";
- public const string UnrecognizedGrouping = "UnrecognizedGrouping";
- public const string UnterminatedBracket = "UnterminatedBracket";
- public const string UnterminatedComment = "UnterminatedComment";
-
- public const string Arg_ArrayPlusOffTooSmall = "Arg_ArrayPlusOffTooSmall";
- public const string Arg_InsufficientSpace = "Arg_InsufficientSpace";
- public const string Arg_MultiRank = "Arg_MultiRank";
- public const string Arg_NonZeroLowerBound = "Arg_NonZeroLowerBound";
- public const string Arg_WrongType = "Arg_WrongType";
- public const string ArgumentOutOfRange_Index = "ArgumentOutOfRange_Index";
- public const string ArgumentOutOfRange_NeedNonNegNum = "ArgumentOutOfRange_NeedNonNegNum";
- public const string ArgumentOutOfRange_NeedNonNegNumRequired = "ArgumentOutOfRange_NeedNonNegNumRequired";
- public const string ArgumentOutOfRange_SmallCapacity = "ArgumentOutOfRange_SmallCapacity";
- public const string Argument_AddingDuplicate = "Argument_AddingDuplicate";
- public const string Argument_ImplementIComparable = "Argument_ImplementIComparable";
- public const string Argument_InvalidOffLen = "Argument_InvalidOffLen";
- public const string ExternalLinkedListNode = "ExternalLinkedListNode";
- public const string IndexOutOfRange = "IndexOutOfRange";
- public const string InvalidOperation_CannotRemoveFromStackOrQueue = "InvalidOperation_CannotRemoveFromStackOrQueue";
- public const string InvalidOperation_EmptyCollection = "InvalidOperation_EmptyCollection";
- public const string InvalidOperation_EmptyQueue = "InvalidOperation_EmptyQueue";
- public const string InvalidOperation_EmptyStack = "InvalidOperation_EmptyStack";
- public const string InvalidOperation_EnumEnded = "InvalidOperation_EnumEnded";
- public const string InvalidOperation_EnumFailedVersion = "InvalidOperation_EnumFailedVersion";
- public const string InvalidOperation_EnumNotStarted = "InvalidOperation_EnumNotStarted";
- public const string InvalidOperation_EnumOpCantHappen = "InvalidOperation_EnumOpCantHappen";
- public const string Invalid_Array_Type = "Invalid_Array_Type";
- public const string LinkedListEmpty = "LinkedListEmpty";
- public const string LinkedListNodeIsAttached = "LinkedListNodeIsAttached";
- public const string NotSupported_KeyCollectionSet = "NotSupported_KeyCollectionSet";
- public const string NotSupported_SortedListNestedWrite = "NotSupported_SortedListNestedWrite";
- public const string NotSupported_ValueCollectionSet = "NotSupported_ValueCollectionSet";
- public const string Serialization_InvalidOnDeser = "Serialization_InvalidOnDeser";
- public const string Serialization_MismatchedCount = "Serialization_MismatchedCount";
- public const string Serialization_MissingValues = "Serialization_MissingValues";
-
- public const string BlockingCollection_Add_ConcurrentCompleteAdd = "BlockingCollection_Add_ConcurrentCompleteAdd";
- public const string BlockingCollection_Add_Failed = "BlockingCollection_Add_Failed";
- public const string BlockingCollection_CantAddAnyWhenCompleted = "BlockingCollection_CantAddAnyWhenCompleted";
- public const string BlockingCollection_CantTakeAnyWhenAllDone = "BlockingCollection_CantTakeAnyWhenAllDone";
- public const string BlockingCollection_CantTakeWhenDone = "BlockingCollection_CantTakeWhenDone";
- public const string BlockingCollection_Completed = "BlockingCollection_Completed";
- public const string BlockingCollection_CopyTo_IncorrectType = "BlockingCollection_CopyTo_IncorrectType";
- public const string BlockingCollection_CopyTo_MultiDim = "BlockingCollection_CopyTo_MultiDim";
- public const string BlockingCollection_CopyTo_NonNegative = "BlockingCollection_CopyTo_NonNegative";
- public const string BlockingCollection_CopyTo_TooManyElems = "BlockingCollection_CopyTo_TooManyElems";
- public const string BlockingCollection_Disposed = "BlockingCollection_Disposed";
- public const string BlockingCollection_Take_CollectionModified = "BlockingCollection_Take_CollectionModified";
- public const string BlockingCollection_TimeoutInvalid = "BlockingCollection_TimeoutInvalid";
- public const string BlockingCollection_ValidateCollectionsArray_DispElems = "BlockingCollection_ValidateCollectionsArray_DispElems";
- public const string BlockingCollection_ValidateCollectionsArray_LargeSize = "BlockingCollection_ValidateCollectionsArray_LargeSize";
- public const string BlockingCollection_ValidateCollectionsArray_NullElems = "BlockingCollection_ValidateCollectionsArray_NullElems";
- public const string BlockingCollection_ValidateCollectionsArray_ZeroSize = "BlockingCollection_ValidateCollectionsArray_ZeroSize";
- public const string BlockingCollection_ctor_BoundedCapacityRange = "BlockingCollection_ctor_BoundedCapacityRange";
- public const string BlockingCollection_ctor_CountMoreThanCapacity = "BlockingCollection_ctor_CountMoreThanCapacity";
- public const string Common_OperationCanceled = "Common_OperationCanceled";
- public const string ConcurrentBag_CopyTo_ArgumentNullException = "ConcurrentBag_CopyTo_ArgumentNullException";
- public const string ConcurrentBag_CopyTo_ArgumentOutOfRangeException = "ConcurrentBag_CopyTo_ArgumentOutOfRangeException";
- public const string ConcurrentBag_Ctor_ArgumentNullException = "ConcurrentBag_Ctor_ArgumentNullException";
- public const string ConcurrentCollection_SyncRoot_NotSupported = "ConcurrentCollection_SyncRoot_NotSupported";
-
-}
+++ /dev/null
-2009-06-06 Gert Driesen <drieseng@users.sourceforge.net>
-
- * ContextStack.cs: Added argument check to Type indexer, avoiding a
- NRE. Modify System.Int32 indexer to throw ArgumentOutOfRangeException
- instead of ArgumentException. Reduce number of times that item count
- must be obtained.
-
-2008-06-05 Ivan N. Zlatev <contact@i-nz.net>
-
- * ContextStack.cs: Also check for subclasses in the Type-based
- indexter property.
- [Fixes bug #509151]
-
-2007-11-13 Atsushi Enomoto <atsushi@ximian.com>
-
- * ResolveNameEventHandler.cs, RootDesignerSerializerAttribute.cs,
- DesignerLoader.cs, SerializationStore.cs : couple of 2.0 API fixes.
-
-2007-11-01 Ivan N. Zlatev <contact@i-nz.net>
-
- * ResolveNameEventArgs.cs: Fix Value to not return and set Name.
-
-2007-08-18 Ivan N. Zlatev <contact@i-nz.net>
-
- * ContextStack.cs: Update to 2.0.
-
-2007-07-21 Gert Driesen <drieseng@users.sourceforge.net>
-
- * InstanceDescriptor.cs: Allow null members. Fixed exception messages.
- For properties, do not perform argument check. Fixed Invoke to return
- null when member is null or when member is not ctor, method, field or
- property (eg. a type). Removed obsolete HasThis method.
-
-2007-07-18 Ivan N. Zlatev <contact@i-nz.net>
-
- * InstanceDescriptor.cs: Fix a NRE.
-
-2007-05-15 Adar Wesley <adarw@mainsoft.com>
-
- * ContextStack.cs: added missing method Append.
-
-2006-03-10 Raja R Harinath <rharinath@novell.com>
-
- * CodeDomSerializerException.cs: Move to System.Design.dll.
-
-2006-03-09 Zoltan Varga <vargaz@gmail.com>
-
- * CodeDomSerializerException.cs: New file.
-
-2005-10-18 Sebastien Pouliot <sebastien@ximian.com>
-
- * InstanceDescriptor.cs: Added CAS permissions (unrestricted at class
- level).
-
-2005-10-18 Sebastien Pouliot <sebastien@ximian.com>
-
- * InstanceDescriptor.cs: Fix Invoke method as there's no 'this' for ctors.
-
-2005-01-27 LLuis Sanchez Gual <lluis@novell.com>
-
- * InstanceDescriptor.cs: Constructors don't need to be static.
-
-2003-06-28 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
-
- * ContextStack.cs: Redone based on a stack and completely implemented
- * DesignerLoader.cs: Removed unneeded members
- * DesignerSerializerAttribute.cs: Implemented, fixed AttributeUsage
- * ResolveNameEventArgs.cs: Visibility bug fixed
- * RootDesignerSerializerAttribute.cs: Fixed and implemented, fixed AttributeUsage
- * InstanceDescriptor.cs: Completely Implemented
+++ /dev/null
-//
-// System.ComponentModel.Design.Serialization.ComponentSerializationService
-//
-// Authors:
-// Ivan N. Zlatev (contact@i-nZ.net)
-//
-// (C) 2007 Ivan N. Zlatev
-
-//
-// 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;
-using System.ComponentModel;
-using System.Collections;
-using System.IO;
-
-namespace System.ComponentModel.Design.Serialization
-{
- public abstract class ComponentSerializationService
- {
-
- protected ComponentSerializationService ()
- {
- }
-
- public abstract SerializationStore CreateStore ();
- public abstract ICollection Deserialize (SerializationStore store);
- public abstract ICollection Deserialize (SerializationStore store, IContainer container);
- public abstract SerializationStore LoadStore (Stream stream);
- public abstract void Serialize (SerializationStore store, object value);
- public abstract void SerializeAbsolute (SerializationStore store, object value);
- public abstract void SerializeMember (SerializationStore store, object owningObject, MemberDescriptor member);
- public abstract void SerializeMemberAbsolute (SerializationStore store, object owningObject, MemberDescriptor member);
-
- public void DeserializeTo (SerializationStore store, IContainer container)
- {
- DeserializeTo (store, container, true);
- }
-
- public void DeserializeTo (SerializationStore store, IContainer container, bool validateRecycledTypes)
- {
- DeserializeTo (store, container, validateRecycledTypes, true);
- }
-
- public abstract void DeserializeTo (SerializationStore store, IContainer container, bool validateRecycledTypes, bool applyDefaults);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.Serialization.ContextStack.cs
-//
-// Author:
-// Alejandro Sánchez Acosta (raciel@gnome.org)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-// Ivan N. Zlatev (contact@i-nz.net)
-//
-// (C) Alejandro Sánchez Acosta
-// (C) 2003 Andreas Nahr
-// (C) 2007 Ivan N. Zlatev
-//
-
-//
-// 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;
-using System.Collections;
-
-namespace System.ComponentModel.Design.Serialization
-{
- public sealed class ContextStack
- {
- private ArrayList _contextList;
-
- public ContextStack ()
- {
- _contextList = new ArrayList ();
- }
-
- public object Current {
- get {
- int context_count = _contextList.Count;
- if (context_count > 0)
- return _contextList [context_count - 1];
- return null;
- }
- }
-
- public object this[Type type] {
- get {
- if (type == null)
- throw new ArgumentNullException ("type");
- for (int i = _contextList.Count - 1; i >= 0; i--) {
- object context = _contextList [i];
- if (type.IsInstanceOfType (context))
- return context;
- }
- return null;
- }
- }
-
- public object this[int level] {
- get {
- if (level < 0)
- throw new ArgumentOutOfRangeException ("level");
- int context_count = _contextList.Count;
- if (context_count > 0 && context_count > level)
- return _contextList [context_count - 1 - level];
- return null;
- }
- }
-
- public object Pop ()
- {
- object o = null;
- int context_count = _contextList.Count;
- if (context_count > 0) {
- int lastItem = context_count - 1;
- o = _contextList [lastItem];
- _contextList.RemoveAt (lastItem);
- }
- return o;
- }
-
- public void Push (object context)
- {
- if (context == null)
- throw new ArgumentNullException ("context");
- _contextList.Add (context);
- }
-
- public void Append (object context)
- {
- if (context == null)
- throw new ArgumentNullException ("context");
- _contextList.Insert (0, context);
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.Design.Serialization.DefaultSerializationProviderAttribute
-//
-// Authors:
-// Ivan N. Zlatev (contact i-nZ.net)
-//
-// (C) 2007 Ivan N. Zlatev
-
-//
-// 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;
-using System.Collections;
-using System.ComponentModel;
-using System.ComponentModel.Design;
-
-namespace System.ComponentModel.Design.Serialization
-{
-
- [AttributeUsageAttribute (AttributeTargets.Class, Inherited=false)]
- public sealed class DefaultSerializationProviderAttribute : Attribute
- {
-
- private string _providerTypeName;
-
- public DefaultSerializationProviderAttribute (string providerTypeName)
- {
- if (providerTypeName == null)
- throw new ArgumentNullException ("providerTypeName");
-
- _providerTypeName = providerTypeName;
- }
-
- public DefaultSerializationProviderAttribute (Type providerType)
- {
- if (providerType == null)
- throw new ArgumentNullException ("providerType");
-
- _providerTypeName = providerType.AssemblyQualifiedName;
- }
-
- public string ProviderTypeName {
- get { return _providerTypeName; }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.Serialization.DesignerLoader.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel.Design.Serialization
-{
- // This class is merely an interface with no implementation needed
- [System.Runtime.InteropServices.ComVisible (true)]
- public abstract class DesignerLoader
- {
-
- protected DesignerLoader()
- {
- }
-
- public virtual bool Loading {
- get { return false; }
- }
-
- public abstract void BeginLoad (IDesignerLoaderHost host);
- public abstract void Dispose();
-
- public virtual void Flush()
- {
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.Serialization.DesignerSerializerAttribute.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel.Design.Serialization
-{
- [AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface, AllowMultiple = true, Inherited = true)]
- public sealed class DesignerSerializerAttribute : Attribute
- {
-
- private string serializerTypeName;
- private string baseSerializerTypeName;
-
- public DesignerSerializerAttribute (string serializerTypeName,
- string baseSerializerTypeName)
- {
- this.serializerTypeName = serializerTypeName;
- this.baseSerializerTypeName = baseSerializerTypeName;
- }
-
- public DesignerSerializerAttribute (string serializerTypeName, Type baseSerializerType)
- : this (serializerTypeName, baseSerializerType.AssemblyQualifiedName)
- {
- }
-
- public DesignerSerializerAttribute (Type serializerType, Type baseSerializerType)
- : this (serializerType.AssemblyQualifiedName, baseSerializerType.AssemblyQualifiedName)
- {
- }
-
- public string SerializerBaseTypeName {
- get { return baseSerializerTypeName; }
- }
-
- public string SerializerTypeName {
- get { return serializerTypeName; }
- }
-
- public override object TypeId {
- get { return string.Concat (this.ToString(), baseSerializerTypeName); }
- }
- }
-}
+++ /dev/null
-// System.ComponentModel.Design.Serialization.IDesignerLoaderHost.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@gnome.org>
-//
-// (C) Alejandro Sánchez Acosta
-//
-
-//
-// 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.ComponentModel.Design.Serialization
-{
- public interface IDesignerLoaderHost : IDesignerHost, IServiceContainer, IServiceProvider
- {
- void EndLoad (string baseClassName, bool successful, ICollection errorCollection);
-
- void Reload();
- }
-}
+++ /dev/null
-//
-// IDesignerLoaderHost2.cs
-//
-// Author:
-// Carlos Alberto Cortez (calberto.cortez@gmail.com)
-//
-// Copyright (C) 2010 Novell, Inc (http://www.novell.com)
-//
-// 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.
-//
-
-#if NET_4_0
-
-using System;
-
-namespace System.ComponentModel.Design.Serialization
-{
- public interface IDesignerLoaderHost2 : IDesignerLoaderHost
- {
- bool CanReloadWithErrors { get; set; }
- bool IgnoreErrorsDuringReload { get; set; }
- }
-}
-
-#endif
-
+++ /dev/null
-// System.ComponentModel.Design.Serialization.IDesignerLoaderService.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@gnome.org>
-//
-// (C) Alejandro Sánchez Acosta
-//
-
-//
-// 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.ComponentModel.Design.Serialization
-{
- public interface IDesignerLoaderService
- {
- void AddLoadDependency();
-
- void DependentLoadComplete (bool successful, ICollection errorCollection);
-
- bool Reload();
- }
-}
+++ /dev/null
-// System.ComponentModel.Design.Serialization.IDesignerSerializationManager.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@gnome.org>
-//
-// (C) Alejandro Sánchez Acosta
-//
-
-//
-// 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.ComponentModel.Design.Serialization
-{
- public interface IDesignerSerializationManager : IServiceProvider
- {
- ContextStack Context {get;}
-
- PropertyDescriptorCollection Properties {get;}
-
- void AddSerializationProvider (IDesignerSerializationProvider provider);
-
- object CreateInstance (Type type, ICollection arguments, string name, bool addToContainer);
-
- object GetInstance (string name);
-
- string GetName (object value);
-
- object GetSerializer (Type objectType, Type serializerType);
-
- Type GetType (string typeName);
-
- void RemoveSerializationProvider (IDesignerSerializationProvider provider);
-
- void ReportError (object errorInformation);
-
- void SetName (object instance, string name);
-
- event ResolveNameEventHandler ResolveName;
-
- event EventHandler SerializationComplete;
- }
-}
+++ /dev/null
-// System.ComponentModel.Design.Serialization.IDesignerSerializationProvider.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@gnome.org>
-//
-// (C) Alejandro Sánchez Acosta
-//
-
-//
-// 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.ComponentModel.Design.Serialization
-{
- public interface IDesignerSerializationProvider
- {
- object GetSerializer (IDesignerSerializationManager manager,
- object currentSerializer, Type objectType,
- Type serializerType);
- }
-}
+++ /dev/null
-// System.ComponentModel.Design.Serialization.IDesignerSerializationService.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@gnome.org>
-//
-// (C) Alejandro Sánchez Acosta
-//
-
-//
-// 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.ComponentModel.Design.Serialization
-{
- public interface IDesignerSerializationService
- {
- ICollection Deserialize (object serializationData);
-
- object Serialize (ICollection objects);
- }
-}
+++ /dev/null
-// System.ComponentModel.Design.Serialization.INameCreationService.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@gnome.org>
-//
-// (C) Alejandro Sánchez Acosta
-//
-
-//
-// 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.ComponentModel.Design.Serialization
-{
- public interface INameCreationService
- {
- string CreateName (IContainer container, Type dataType);
-
- bool IsValidName (string name);
-
- void ValidateName (string name);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.Serialization.InstanceDescriptor.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// 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;
-using System.Reflection;
-using System.Security.Permissions;
-
-namespace System.ComponentModel.Design.Serialization
-{
- [PermissionSet (SecurityAction.LinkDemand, Unrestricted = true)]
- public sealed class InstanceDescriptor {
-
- private MemberInfo member;
- private ICollection arguments;
- private bool isComplete;
-
- public InstanceDescriptor (MemberInfo member, ICollection arguments)
- : this (member, arguments, true)
- {
- }
-
- public InstanceDescriptor(MemberInfo member, ICollection arguments, bool isComplete)
- {
- this.isComplete = isComplete;
- ValidateMember (member, arguments);
- this.member = member;
- this.arguments = arguments;
- }
-
- private void ValidateMember (MemberInfo member, ICollection arguments)
- {
- if (member == null)
- return;
-
- switch (member.MemberType) {
- // According to docs only these types are allowed, but the docs do
- // state what happens for other types
- case MemberTypes.Constructor:
- ConstructorInfo CI = (ConstructorInfo) member;
- if (arguments == null) // null counts as no arguments
- if (CI.GetParameters().Length != 0)
- throw new ArgumentException ("Invalid number of arguments for this constructor");
- if (arguments.Count != CI.GetParameters().Length)
- throw new ArgumentException ("Invalid number of arguments for this constructor");
- break;
- case MemberTypes.Method:
- MethodInfo MI = (MethodInfo) member;
- if (!MI.IsStatic)
- throw new ArgumentException ("InstanceDescriptor only describes static (VB.Net: shared) members", "member");
- if (arguments == null) // null counts as no arguments
- if (MI.GetParameters().Length != 0)
- throw new ArgumentException ("Invalid number of arguments for this method", "arguments");
- if (arguments.Count != MI.GetParameters().Length)
- throw new ArgumentException ("Invalid number of arguments for this method");
- break;
- case MemberTypes.Field:
- FieldInfo FI = (FieldInfo) member;
- if (!FI.IsStatic)
- throw new ArgumentException ("Parameter must be static");
- if (arguments != null && arguments.Count != 0) // null counts as no arguments
- throw new ArgumentException ("Field members do not take any arguments");
- break;
- case MemberTypes.Property:
- PropertyInfo PI = (PropertyInfo) member;
- if (!(PI.CanRead))
- throw new ArgumentException ("Parameter must be readable");
- MethodInfo PIM = PI.GetGetMethod();
- if (!PIM.IsStatic)
- throw new ArgumentException ("Parameter must be static");
- break;
- }
- }
-
- public ICollection Arguments {
- get {
- // It seems MS does not return null even if we specified null as parameter (but does not cause an exception)
- if (arguments == null)
- return new object[0];
- return arguments;
- }
- }
-
- public bool IsComplete {
- get { return isComplete; }
- }
-
- public MemberInfo MemberInfo {
- get { return member; }
- }
-
- public object Invoke()
- {
- if (member == null)
- return null;
-
- object[] parsearguments;
- if (arguments == null)
- parsearguments = new object[0];
- else {
- parsearguments = new object[arguments.Count];
- arguments.CopyTo (parsearguments, 0);
- }
-
- //MemberInfo member;
- switch (member.MemberType) {
- case MemberTypes.Constructor:
- ConstructorInfo CI = (ConstructorInfo) member;
- return CI.Invoke (parsearguments);
-
- case MemberTypes.Method:
- MethodInfo MI = (MethodInfo) member;
- return MI.Invoke (null, parsearguments);
-
- case MemberTypes.Field:
- FieldInfo FI = (FieldInfo) member;
- return FI.GetValue (null);
-
- case MemberTypes.Property:
- PropertyInfo PI = (PropertyInfo) member;
- return PI.GetValue (null, parsearguments);
- }
- return null;
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.Serialization.MemberRelationship
-//
-// Authors:
-// Ivan N. Zlatev (contact@i-nZ.net)
-//
-// (C) 2007 Ivan N. Zlatev
-
-//
-// 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;
-using System.CodeDom;
-using System.ComponentModel;
-
-namespace System.ComponentModel.Design.Serialization
-{
- public struct MemberRelationship
- {
-
- public static readonly MemberRelationship Empty = new MemberRelationship ();
-
- private object _owner;
- private MemberDescriptor _member;
-
- public MemberRelationship (object owner, MemberDescriptor member)
- {
- _owner = owner;
- _member = member;
- }
-
- public bool IsEmpty {
- get { return (_owner == null); }
- }
-
- public object Owner {
- get { return _owner; }
- }
-
- public MemberDescriptor Member {
- get { return _member; }
- }
-
- public static bool operator == (MemberRelationship left, MemberRelationship right)
- {
- if (left.Owner == right.Owner && left.Member == right.Member)
- return true;
- else
- return false;
- }
-
- public static bool operator != (MemberRelationship left, MemberRelationship right)
- {
- return !(left == right);
- }
-
- public override int GetHashCode ()
- {
- if (_owner != null && _member != null)
- return _member.GetHashCode () ^ _owner.GetHashCode ();
- return base.GetHashCode ();
- }
-
- public override bool Equals (object o)
- {
- if (o is MemberRelationship) {
- return ((MemberRelationship)o) == this;
- }
- return false;
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.Serialization.MemberRelationshipService
-//
-// Authors:
-// Ivan N. Zlatev (contact@i-nZ.net)
-//
-// (C) 2007 Ivan N. Zlatev
-
-//
-// 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;
-using System.CodeDom;
-using System.ComponentModel;
-using System.Collections;
-
-namespace System.ComponentModel.Design.Serialization
-{
- public abstract class MemberRelationshipService
- {
-
- // MSDN: The default implementation stores relationships in a dictionary using weak references
- // so the relationship table does not keep objects alive.
- //
- private class MemberRelationshipWeakEntry
- {
-
- private WeakReference _ownerWeakRef;
- private MemberDescriptor _member;
-
- public MemberRelationshipWeakEntry (MemberRelationship relation)
- {
- _ownerWeakRef = new WeakReference (relation.Owner);
- _member = relation.Member;
- }
-
- public object Owner {
- get {
- if (_ownerWeakRef.IsAlive)
- return _ownerWeakRef.Target;
- return null;
- }
- }
-
- public MemberDescriptor Member {
- get { return _member; }
- }
-
- public static bool operator == (MemberRelationshipWeakEntry left, MemberRelationshipWeakEntry right)
- {
- if (left.Owner == right.Owner && left.Member == right.Member)
- return true;
- else
- return false;
- }
-
- public static bool operator != (MemberRelationshipWeakEntry left, MemberRelationshipWeakEntry right)
- {
- return !(left == right);
- }
-
- public override int GetHashCode ()
- {
- if (this.Owner != null && _member != null)
- return _member.GetHashCode () ^ _ownerWeakRef.Target.GetHashCode ();
- return base.GetHashCode ();
- }
-
- public override bool Equals (object o)
- {
- if (o is MemberRelationshipWeakEntry) {
- return ((MemberRelationshipWeakEntry) o) == this;
- }
- return false;
- }
- }
-
- private Hashtable _relations;
-
- protected MemberRelationshipService ()
- {
- _relations = new Hashtable ();
- }
-
- public abstract bool SupportsRelationship (MemberRelationship source, MemberRelationship relationship);
-
- protected virtual MemberRelationship GetRelationship (MemberRelationship source)
- {
- if (source.IsEmpty)
- throw new ArgumentNullException ("source");
-
- MemberRelationshipWeakEntry entry = _relations[new MemberRelationshipWeakEntry (source)] as MemberRelationshipWeakEntry;
- if (entry != null)
- return new MemberRelationship (entry.Owner, entry.Member);
- return MemberRelationship.Empty;
- }
-
- protected virtual void SetRelationship (MemberRelationship source, MemberRelationship relationship)
- {
- if (source.IsEmpty)
- throw new ArgumentNullException ("source");
-
- if (!relationship.IsEmpty && !this.SupportsRelationship (source, relationship))
- throw new ArgumentException ("Relationship not supported.");
-
- _relations[new MemberRelationshipWeakEntry (source)] = new MemberRelationshipWeakEntry (relationship);
- }
-
- public MemberRelationship this [object owner, MemberDescriptor member] {
- get { return GetRelationship (new MemberRelationship (owner, member)); }
- set { SetRelationship (new MemberRelationship (owner, member), value); }
- }
-
- public MemberRelationship this [MemberRelationship source] {
- get { return GetRelationship (source); }
- set { SetRelationship (source, value); }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.Serialization.ResolveNameEventArgs.cs
-//
-// Author:
-// Alejandro Sánchez Acosta (raciel@gnome.org)
-// Ivan N. Zlatev (contact@i-nz.net)
-//
-// (C) Alejandro Sánchez Acosta
-// (C) 2007 Ivan N. Zlatev
-//
-
-//
-// 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.ComponentModel.Design.Serialization
-{
- public class ResolveNameEventArgs : EventArgs
- {
-
- private string name;
- private object value;
-
- public ResolveNameEventArgs (string name) {
- this.name = name;
- }
-
- public string Name {
- get {
- return this.name;
- }
- }
-
- public object Value {
- get {
- return this.value;
- }
-
- set {
- this.value = value;
- }
- }
- }
-}
+++ /dev/null
-// System.ComponentModel.Design.Serialization.ResolvedNameEventHandler.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@gnome.org>
-//
-// (C) Alejandro Sánchez Acosta
-//
-
-//
-// 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.ComponentModel.Design.Serialization
-{
- public delegate void ResolveNameEventHandler (object sender, ResolveNameEventArgs e);
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.Serialization.RootDesignerSerializerAttribute.cs
-//
-// Authors:
-// Alejandro Sánchez Acosta (raciel@gnome.org)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Alejandro Sánchez Acosta
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel.Design.Serialization
-{
- [AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface, AllowMultiple = true, Inherited = true)]
- [Obsolete ("Use DesignerSerializerAttribute instead")]
- public sealed class RootDesignerSerializerAttribute : Attribute
- {
- private string serializer;
- private string baseserializer;
- private bool reload;
-
- public RootDesignerSerializerAttribute (string serializerTypeName, string baseSerializerTypeName, bool reloadable) {
- this.serializer = serializerTypeName;
- this.baseserializer = baseSerializerTypeName;
- this.reload = reloadable;
- }
-
- public RootDesignerSerializerAttribute (string serializerTypeName, Type baseSerializerType, bool reloadable)
- : this (serializerTypeName, baseSerializerType.AssemblyQualifiedName, reloadable)
- {
- }
-
- public RootDesignerSerializerAttribute (Type serializerType, Type baseSerializerType, bool reloadable)
- : this (serializerType.AssemblyQualifiedName, baseSerializerType.AssemblyQualifiedName, reloadable)
- {
- }
-
- public bool Reloadable {
- get {
- return this.reload;
- }
- }
-
- public string SerializerBaseTypeName {
- get {
- return this.baseserializer;
- }
- }
-
- public string SerializerTypeName {
- get {
- return this.serializer;
- }
- }
-
- public override object TypeId {
- get { return string.Concat (this.ToString(), baseserializer);}
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.Serialization.SerializationStore
-//
-// Authors:
-// Ivan N. Zlatev (contact i-nZ.net)
-//
-// (C) 2007 Ivan N. Zlatev
-
-//
-// 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;
-using System.Collections;
-using System.IO;
-
-namespace System.ComponentModel.Design.Serialization
-{
- public abstract class SerializationStore : IDisposable
- {
- protected SerializationStore ()
- {
- }
-
- public abstract ICollection Errors { get; }
- public abstract void Close ();
- public abstract void Save (Stream stream);
-
- protected virtual void Dispose (bool disposing)
- {
- if (disposing)
- this.Close ();
- }
-
- void IDisposable.Dispose ()
- {
- this.Dispose (true);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.ActiveDesignerEventArgs.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@es.gnu.org>
-//
-// (C) Alejandro Sánchez Acosta
-//
-
-//
-// 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.Runtime.Serialization;
-
-namespace System.ComponentModel.Design
-{
- public class ActiveDesignerEventArgs : EventArgs
- {
- private IDesignerHost oldDesigner;
- private IDesignerHost newDesigner;
-
- public ActiveDesignerEventArgs (IDesignerHost oldDesigner, IDesignerHost newDesigner) {
- this.oldDesigner = oldDesigner;
- this.newDesigner = newDesigner;
- }
-
- public IDesignerHost NewDesigner {
- get {
- return newDesigner;
- }
- }
-
- public IDesignerHost OldDesigner {
- get {
- return oldDesigner;
- }
- }
- }
-}
+++ /dev/null
-// System.ComponentModel.Design.ActiveDesignerEventHandler.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@es.gnu.org>
-//
-// (C) Alejandro Sánchez Acosta
-//
-
-//
-// 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.Runtime.Serialization;
-
-namespace System.ComponentModel.Design
-{
- public delegate void ActiveDesignerEventHandler (object sender, ActiveDesignerEventArgs e);
-}
+++ /dev/null
-2009-10-21 Carlo Kok <ck@remobjects.com>
-
- * RuntimeLicenseContext.cs: Support for the resourceAssembly parameter.
-
-2009-10-12 Carlo Kok <ck@remobjects.com>
-
- * DesigntimeLicenseContextSerializer.cs: Properly serialize licenses.
- * RuntimeLicenseContext.cs: Properly deserialize licenses.
-
-2008-06-18 Ivan N. Zlatev <contact@i-nz.net>
-
- * ServiceContainer.cs: Lazy initialize the services hashtable so that
- we handle disposed state on 2.0 nicely.
-
-2008-06-07 Gert Driesen <drieseng@users.sourceforge.net>
-
- * ServiceContainer.cs: In AddService, first check parent and end flow
- after adding service to parent, throw ArgumentNullException when
- serviceInstance or callback is null. In RemoveService, when promote is
- false the service must be removed from current container. Fixes bug
- #397824. On 1.0 profile, IServiceContainer is a default service offered
- by containers. Minor code formatting.
-
-2008-01-06 Ivan N. Zlatev <contact@i-nz.net>
-
- * ServiceContainer.cs: Check DefaultServices in GetService in 2.0.
- * MenuCommand.cs: Invoke (args) should call Invoke () and leave
- args handling for subclasses.
-
-2007-12-24 Gert Driesen <drieseng@users.sourceforge.net>
-
- * CheckoutException.cs: Provide customized message and error code
- (2.0 only) for Canceled. Call base ctor in default ctor.
-
-2007-12-24 Arina Itkes <arinai@mainsoft.com>
-
- * CheckoutException.cs:
- CheckoutException should not be initialized with ErrorCode = 0 by default.
-
-2007-12-04 Arina Itkes <arinai@mainsoft.com>
-
- * HelpKeywordAttribute.cs:
- Changes for SOAP serialization compatibility with .NET.
-
-2007-09-27 Atsushi Enomoto <atsushi@ximian.com>
-
- * ITypeDiscoveryService.cs : new.
- * DesignerTransactionCloseEventArgs.cs : added [Obsolete].
- * DesignerVerb.cs : added Description. ToString() contains " : ".
- * StandardCommands.cs : added DocumentOutline and ViewCode.
- * HelpKeywordAttribute.cs : implemented .ctor(Type).
- * ComponentChangedEventHandler.cs, ComponentRenameEventHandler.cs,
- ActiveDesignerEventHandler.cs, HelpKeywordType.cs,
- DesignerEventHandler.cs, ComponentEventHandler.cs,
- DesignerTransactionCloseEventHandler.cs, HelpContextType.cs
- ComponentChangingEventHandler.cs : [Serializable] is extra in 2.0.
- * ServiceContainer.cs : some members became virtual in 2.0.
- Removed finalizer. Added DefaultServices.
- * DesignerOptionService.cs : it is abstract. Added attributes.
- * CheckoutException.cs : added more 2.0 constructors.
- * MenuCommand.cs : added Properties property.
- * DesignerTransaction.cs : Fixed .ctor() (public->protected)
-
-2007-08-29 Ivan N. Zlatev <contact@i-nz.net>
-
- * DefaultSerializationProviderAttribute.cs: implemented.
- * ComponentSerializationService.cs: implemented.
- * MemberRelationship.cs: implemented.
- * SerializationStore.cs: implemented.
-
-2007-06-06 Ivan N. Zlatev <contact@i-nz.net>
-
- * IComponentInitialization.cs: New 2.0 interface
-
-2007-05-30 Sebastien Pouliot <sebastien@ximian.com>
-
- * IComponentDiscoveryService.cs: New 2.0 interface (required by SDD)
-
-2007-05-15 Adar Wesley <adarw@mainsoft.com>
-
- * MenuCommand.cs: added missing method overload Invoke
-
-2006-09-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * ViewTechnology.cs: update for 2.0. Patch by Ivan N. Zlatev.
-
-2006-09-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * SelectionTypes.cs: updates for 2.0. Patch by Ivan N. Zlatev.
-
-2006-09-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * ServiceContainer.cs: update for 2.0. Patch by Ivan N. Zlatev.
-
-2006-05-31 Gert Driesen <drieseng@users.sourceforge.net>
-
- * DesignerCollection.cs: Added explicit interface implemenation for
- ICollection.Count and IEnumerable.GetEnumerator. Fixes corcompare
- warnings.
-
-2005-10-04 Sebastien Pouliot <sebastien@ximian.com>
-
- * DesignerTransaction.cs: Added a call to GC.SuppressFinalize in
- Dispose.
-
-2004-03-17 Ivan Hamilton <ivan@chimerical.com.au>
-
- * RuntimeLicenseContext.cs: Implemented.
-
-2003-08-31 Alexandre Pigolkine <pigolkine@gmx.de>
-
- * ServiceContainer.cs: implemented
-
-2003-07-07 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
-
- * DesignerTransaction.cs: Fixed signature
-
-2003-07-05 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
-
- * CheckoutException.cs: Removed unneeded member
- * DesignerTransaction.cs: Added destruction code, corrected interface signature
-
-2003-06-12 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
-
- * ActiveDesignerEventArgs.cs: Fixed property access
-
- * CheckoutException.cs
- * CommandID.cs
- * ComponentChangedEventArgs.cs
- * ComponentChangingEventArgs.cs
- * ComponentEventArgs.cs
- * ComponentRenameEventArgs.cs
- * DesignerEventArgs.cs: Implemented
-
- * StandardCommands.cs
- * StandardToolWindows.cs: Implemented and removed unneeded MonoTODOs
-
- * DesignerCollection.cs
- * DesignerVerbCollection.cs: Collections implemented
-
- * DesignerTransaction.cs
- * DesignerVerb.cs: Implemented
-
- * MenuCommand.cs: Most members implemented
-
- * IDesignerHost.cs: Completed interface
-
- * IInheritanceService.cs: Hopefully fixed interface
-
- * ITypeResolutionService.cs: Completed interface
-
- * ISelectionService.cs: Completed interface
-
- * DesigntimeLicenseContext.cs: Added member, implemented
-
- * DesigntimeLicenseContextSerializer.cs: Added private constructor, removed unneeded members
-
- * SelectionTypes.cs
- * HelpContextType.cs
- * HelpKeywordType.cs: Hopefully fixed enums
-
- * ServiceContainer.cs: implementation added
-
-2002-12-05 Alejandro Sánchez Acosta <raciel@gnome.org>
-
- * ActiveDesignerEventArgs.cs,
- ActiveDesignerEventHandler.cs: Added
-
-
-
-2002-11-30 Alejandro Sánchez Acosta <raciel@es.gnu.org>
-
- * System.ComponentModel.Design/CommandID.cs
- System.ComponentModel.Design/DesignerTransactionCloseEventArgs.cs
- System.ComponentModel.Design/DesignerTransactionCloseEventHandler.cs
- System.ComponentModel.Design/DesignerTransaction.cs
- System.ComponentModel.Design/DesignerVerbCollection.cs
- System.ComponentModel.Design/DesignerVerb.cs
- System.ComponentModel.Design/IDesigner.cs
- System.ComponentModel.Design/IDesignerHost.cs
- System.ComponentModel.Design/IResourceService.cs
- System.ComponentModel.Design/ISelectionService.cs
- System.ComponentModel.Design/IServiceContainer.cs
- System.ComponentModel.Design/MenuCommand.cs
- System.ComponentModel.Design/ServiceCreatorCallback.cs : Added.
-
+++ /dev/null
-//
-// System.ComponentModel.Design.CheckoutException.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-using System.Runtime.InteropServices;
-using System.Runtime.Serialization;
-
-namespace System.ComponentModel.Design
-{
- [Serializable]
- public class CheckoutException : ExternalException
- {
- public static readonly CheckoutException Canceled = new CheckoutException (
- "The user canceled the checkout.",
- -2147467260);
-
- public CheckoutException()
- : base ()
- {
- }
-
- public CheckoutException (string message)
- : base (message)
- {
- }
-
- public CheckoutException (string message, int errorCode)
- : base (message, errorCode)
- {
- }
-
- public CheckoutException (string message, Exception innerException)
- : base (message, innerException)
- {
- }
-
- protected CheckoutException (SerializationInfo info, StreamingContext context)
- : base (info, context)
- {
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.CommandID.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@es.gnu.org>
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Alejandro Sánchez Acosta
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public class CommandID
- {
- private int cID;
- private Guid guid;
-
- public CommandID (Guid menuGroup, int commandID)
- {
- cID = commandID;
- guid = menuGroup;
- }
-
- public virtual Guid Guid {
- get {
- return guid;
- }
- }
-
- public virtual int ID {
- get {
- return cID;
- }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is CommandID))
- return false;
- if (obj == this)
- return true;
- return ((CommandID) obj).Guid.Equals (guid) &&
- ((CommandID) obj).ID.Equals (cID);
- }
-
- public override int GetHashCode()
- {
- // Guid can only be valid
- return guid.GetHashCode() ^ cID.GetHashCode();
- }
-
- public override string ToString()
- {
- return guid.ToString () + " : " + cID.ToString ();
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.ComponentChangedEventArgs.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public sealed class ComponentChangedEventArgs : EventArgs
- {
-
- private object component;
- private MemberDescriptor member;
- private object oldValue;
- private object newValue;
-
- public ComponentChangedEventArgs (object component,
- MemberDescriptor member, object oldValue, object newValue)
- {
- this.component = component;
- this.member = member;
- this.oldValue = oldValue;
- this.newValue = newValue;
- }
-
- public object Component {
- get { return component; }
- }
-
- public MemberDescriptor Member {
- get { return member; }
- }
-
- public object NewValue {
- get { return newValue; }
- }
-
- public object OldValue {
- get { return oldValue; }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.ComponentChangedEventHandler
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public delegate void ComponentChangedEventHandler (object sender,
- ComponentChangedEventArgs e);
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.ComponentChangingEventArgs.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public sealed class ComponentChangingEventArgs : EventArgs
- {
- private object component;
- private MemberDescriptor member;
-
- public ComponentChangingEventArgs (object component,
- MemberDescriptor member)
- {
- this.component = component;
- this.member = member;
- }
-
- public object Component
- {
- get { return component; }
- }
-
- public MemberDescriptor Member
- {
- get { return member; }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.ComponentChangingEventHandler
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public delegate void ComponentChangingEventHandler (object sender,
- ComponentChangingEventArgs e);
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.ComponentEventArgs.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public class ComponentEventArgs : EventArgs
- {
- IComponent icomp;
-
- public ComponentEventArgs (IComponent component)
- {
- icomp = component;
- }
-
- public virtual IComponent Component {
- get { return icomp; }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.ComponentEventHandler
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public delegate void ComponentEventHandler (object sender,
- ComponentEventArgs e);
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.ComponentRenameEventArgs.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public class ComponentRenameEventArgs : EventArgs
- {
- private object component;
- private string oldName;
- private string newName;
-
- public ComponentRenameEventArgs (object component,
- string oldName, string newName)
- {
- this.component = component;
- this.oldName = oldName;
- this.newName = newName;
- }
-
- public object Component {
- get { return component; }
- }
-
- public virtual string NewName {
- get { return newName; }
- }
-
- public virtual string OldName {
- get { return oldName; }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.ComponentRenameEventHandler
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public delegate void ComponentRenameEventHandler (object sender,
- ComponentRenameEventArgs e);
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.DesignerCollection.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel.Design
-{
- public class DesignerCollection : ICollection, IEnumerable
- {
-
- private ArrayList designers;
-
- public DesignerCollection (IDesignerHost[] designers)
- {
- this.designers = new ArrayList (designers);
- }
-
- public DesignerCollection (IList designers)
- {
- this.designers = new ArrayList (designers);
- }
-
- int ICollection.Count {
- get { return Count; }
- }
-
- public int Count {
- get { return designers.Count; }
- }
-
- public virtual IDesignerHost this [int index] {
- get { return (IDesignerHost) designers [index]; }
- }
-
- IEnumerator IEnumerable.GetEnumerator () {
- return GetEnumerator ();
- }
-
- public IEnumerator GetEnumerator()
- {
- return designers.GetEnumerator ();
- }
-
- bool ICollection.IsSynchronized {
- get { return designers.IsSynchronized; }
- }
-
- object ICollection.SyncRoot {
- get { return designers.SyncRoot; }
- }
-
- void ICollection.CopyTo (Array array, int index)
- {
- designers.CopyTo (array, index);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.DesignerEventArgs.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel.Design
-{
- public class DesignerEventArgs : EventArgs
- {
-
- private IDesignerHost host;
-
- public DesignerEventArgs (IDesignerHost host)
- {
- this.host = host;
- }
-
- public IDesignerHost Designer {
- get { return host; }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.DesignerEventHandler
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.ComponentModel.Design
-{
- public delegate void DesignerEventHandler (object sender,
- DesignerEventArgs e);
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.DesignerOptionService
-//
-// Authors:
-// Ivan N. Zlatev (contact i-nZ.net)
-//
-// (C) 2006-2007 Ivan N. Zlatev
-
-//
-// 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;
-using System.Collections;
-using System.Globalization;
-using System.ComponentModel;
-
-namespace System.ComponentModel.Design
-{
-
- public abstract class DesignerOptionService : IDesignerOptionService
- {
- [MonoTODO ("implement own TypeConverter")]
- [TypeConverter (typeof (TypeConverter))]
- [Editor ("", "System.Drawing.Design.UITypeEditor, " + Consts.AssemblySystem_Drawing)]
- public sealed class DesignerOptionCollection : IList, ICollection, IEnumerable
- {
- // PropertyDescriptor objects are taken directly from the value passed to the CreateOptionCollection method
- // and are wrapped in an additional property descriptor that hides the value object from the user. This means
- // that any value may be passed into the component parameter of the various PropertyDescriptor methods. The
- // value is not recognized and is replaced with the correct value internally.
- //
- public sealed class WrappedPropertyDescriptor : PropertyDescriptor
- {
- private PropertyDescriptor _property;
- private object _component;
-
- public WrappedPropertyDescriptor (PropertyDescriptor property, object component) : base (property.Name, new Attribute[0])
- {
- _property = property;
- _component = component;
- }
-
- public override object GetValue (object ignored)
- {
- return _property.GetValue (_component);
- }
-
- public override void SetValue (object ignored, object value)
- {
- _property.SetValue (_component, value);
- }
-
- public override bool CanResetValue (object ignored)
- {
- return _property.CanResetValue (_component);
- }
-
- public override void ResetValue (object ignored)
- {
- _property.ResetValue (_component);
- }
-
- public override bool ShouldSerializeValue (object ignored)
- {
- return _property.ShouldSerializeValue (_component);
- }
-
- public override AttributeCollection Attributes {
- get { return _property.Attributes; }
- }
-
- public override bool IsReadOnly {
- get { return _property.IsReadOnly; }
- }
-
- public override Type ComponentType {
- get { return _property.ComponentType; }
- }
-
- public override Type PropertyType {
- get { return _property.PropertyType; }
- }
- } // WrappedPropertyDescriptor
-
- private string _name;
- private object _propertiesProvider;
- private DesignerOptionCollection _parent;
- private ArrayList _children;
- private DesignerOptionService _optionService;
-
- internal DesignerOptionCollection (DesignerOptionCollection parent, string name, object propertiesProvider, DesignerOptionService service)
- {
- _name = name;
- _propertiesProvider = propertiesProvider;
- _parent = parent;
-
- if (parent != null) {
- if (parent._children == null)
- parent._children = new ArrayList ();
- parent._children.Add (this);
- }
-
- _children = new ArrayList ();
- _optionService = service;
- service.PopulateOptionCollection (this);
- }
-
- public bool ShowDialog ()
- {
- return _optionService.ShowDialog (this, _propertiesProvider);
- }
-
- public DesignerOptionCollection this[int index] {
- get { return (DesignerOptionCollection) _children[index]; }
- }
-
- public DesignerOptionCollection this[string index] {
- get {
- foreach (DesignerOptionCollection dc in _children) {
- if (String.Compare (dc.Name, index, true, CultureInfo.InvariantCulture) == 0)
- return dc;
- }
- return null;
- }
- }
-
- public string Name {
- get { return _name; }
- }
-
- public int Count {
- get {
- if (_children != null)
- return _children.Count;
- return 0;
- }
- }
-
- public DesignerOptionCollection Parent {
- get { return _parent; }
- }
-
- public PropertyDescriptorCollection Properties {
- get {
- // TypeDescriptor.GetProperties gets only the public properties.
- //
- PropertyDescriptorCollection properties = TypeDescriptor.GetProperties (_propertiesProvider);
- ArrayList wrappedProperties = new ArrayList (properties.Count);
-
- foreach (PropertyDescriptor pd in properties)
- wrappedProperties.Add (new WrappedPropertyDescriptor (pd, _propertiesProvider));
-
- PropertyDescriptor[] propertyArray = (PropertyDescriptor[]) wrappedProperties.ToArray (typeof (PropertyDescriptor));
- return new PropertyDescriptorCollection (propertyArray);
- }
- }
-
- public IEnumerator GetEnumerator ()
- {
- return _children.GetEnumerator ();
- }
-
- public int IndexOf (DesignerOptionCollection item)
- {
- return _children.IndexOf (item);
- }
-
- public void CopyTo (Array array, int index)
- {
- _children.CopyTo (array, index);
- }
-
- bool IList.IsFixedSize {
- get { return true; }
- }
-
- bool IList.IsReadOnly {
- get { return true; }
- }
-
- object IList.this[int index] {
- get { return this[index]; }
- set { throw new NotSupportedException (); }
- }
-
- bool ICollection.IsSynchronized {
- get { return false; }
- }
-
- object ICollection.SyncRoot {
- get { return this; }
- }
-
- bool IList.Contains (object item)
- {
- return _children.Contains (item);
- }
-
- int IList.IndexOf (object item)
- {
- return _children.IndexOf (item);
- }
-
- int IList.Add (object item)
- {
- throw new NotSupportedException ();
- }
-
- void IList.Remove (object item)
- {
- throw new NotSupportedException ();
- }
-
- void IList.RemoveAt (int index)
- {
- throw new NotSupportedException ();
- }
-
- void IList.Insert (int index, object item)
- {
- throw new NotSupportedException ();
- }
-
- void IList.Clear ()
- {
- throw new NotSupportedException ();
- }
-
- } // DesignerOptionCollection
-
-
- private DesignerOptionCollection _options;
-
- protected internal DesignerOptionService ()
- {
- }
-
- protected DesignerOptionCollection CreateOptionCollection (DesignerOptionCollection parent, string name, Object value)
- {
- if (name == null)
- throw new ArgumentNullException ("name");
- if (parent == null)
- throw new ArgumentNullException ("parent");
- if (name == String.Empty)
- throw new ArgumentException ("name.Length == 0");
-
- return new DesignerOptionCollection (parent, name, value, this);
- }
-
- protected virtual bool ShowDialog (DesignerOptionCollection options, object optionObject)
- {
- return false;
- }
-
- protected virtual void PopulateOptionCollection (DesignerOptionCollection options)
- {
- }
-
- public DesignerOptionCollection Options {
- get {
- if (_options == null)
- _options = new DesignerOptionCollection (null, String.Empty, null, this);
-
- return _options;
- }
- }
-
-
- object IDesignerOptionService.GetOptionValue (string pageName, string valueName)
- {
- if (pageName == null)
- throw new ArgumentNullException ("pageName");
- if (valueName == null)
- throw new ArgumentNullException ("valueName");
-
- PropertyDescriptor property = GetOptionProperty (pageName, valueName);
- if (property != null)
- return property.GetValue (null);
-
- return null;
- }
-
- void IDesignerOptionService.SetOptionValue (string pageName, string valueName, object value)
- {
- if (pageName == null)
- throw new ArgumentNullException ("pageName");
- if (valueName == null)
- throw new ArgumentNullException ("valueName");
-
- PropertyDescriptor property = GetOptionProperty (pageName, valueName);
- if (property != null)
- property.SetValue (null, value);
- }
-
- // Go to the page and get the property associated with the option name.
- //
- private PropertyDescriptor GetOptionProperty (string pageName, string valueName)
- {
- string[] pages = pageName.Split (new char[] { '\\' });
-
- DesignerOptionCollection options = this.Options;
- foreach (string page in pages) {
- options = options[page];
- if (options == null)
- return null;
- }
-
- return options.Properties[valueName];
- }
-
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.DesignerTransaction.cs
-//
-// Author:
-// Alejandro Sánchez Acosta (raciel@es.gnu.org)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Alejandro Sánchez Acosta
-// (C) 2003 Andreas Nahr
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// 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.ComponentModel.Design
-{
- public abstract class DesignerTransaction : IDisposable
- {
- private string description;
- private bool committed;
- private bool canceled;
-
- protected DesignerTransaction ()
- : this ("")
- {
- }
-
- protected DesignerTransaction (string description)
- {
- this.description = description;
- this.committed = false;
- this.canceled = false;
- }
-
- void IDisposable.Dispose ()
- {
- Dispose (true);
- }
-
- protected virtual void Dispose (bool disposing)
- {
- Cancel ();
- if (disposing) {
- GC.SuppressFinalize (true);
- }
- }
-
- protected abstract void OnCancel ();
-
- protected abstract void OnCommit ();
-
- public void Cancel ()
- {
- // LAMESPEC Cannot find anything about the exact behavior, but I do some checks that
- // seem to make sense
- if (this.Canceled == false && this.Committed == false) {
- this.canceled = true;
- OnCancel ();
- }
- }
-
- public void Commit ()
- {
- // LAMESPEC Cannot find anything about the exact behavior, but I do some checks that
- // seem to make sense
- if (this.Canceled == false && this.Committed == false) {
- this.committed = true;
- OnCommit ();
- }
- }
-
- public bool Canceled {
- get {
- return canceled;
- }
- }
-
- public bool Committed {
- get {
- return committed;
- }
- }
-
- public string Description {
- get {
- return description;
- }
- }
-
- ~DesignerTransaction ()
- {
- Dispose (false);
- }
- }
-}
+++ /dev/null
-// System.ComponentModel.Design.DesignerTransactionCloseEventArgs.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@es.gnu.org>
-// Ivan N. Zlatev <contact i-nZ.net>
-//
-// (C) Alejandro Sánchez Acosta
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public class DesignerTransactionCloseEventArgs : EventArgs
- {
- private bool commit;
- private bool last_transaction;
-
- public DesignerTransactionCloseEventArgs (bool commit, bool lastTransaction)
- {
- this.commit = commit;
- this.last_transaction = lastTransaction;
- }
-
- [Obsolete ("Use another constructor that indicates lastTransaction")]
- public DesignerTransactionCloseEventArgs (bool commit)
- {
- this.commit = commit;
- }
-
- public bool LastTransaction {
- get { return last_transaction; }
- }
-
- public bool TransactionCommitted {
- get { return commit; }
- }
- }
-}
+++ /dev/null
-// System.ComponentModel.Design.DesignerTransactionCloseEventHandler.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@es.gnu.org>
-//
-// (C) Alejandro Sánchez Acosta
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public delegate void DesignerTransactionCloseEventHandler (object sender, DesignerTransactionCloseEventArgs e);
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.DesignerVerb.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@es.gnu.org>
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Alejandro Sánchez Acosta
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public class DesignerVerb : MenuCommand
- {
- private string text;
- private string description;
-
- public DesignerVerb (string text, EventHandler handler)
- : this (text, handler, StandardCommands.VerbFirst)
- {
- }
-
- public DesignerVerb (string text, EventHandler handler, CommandID startCommandID)
- : base (handler, startCommandID) {
- this.text = text;
- }
-
- public string Text {
- get { return text; }
- }
-
- public string Description {
- get { return description; }
- set { description = value; }
- }
-
- public override string ToString()
- {
- return string.Concat (text, " : ", base.ToString ());
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.DesignerVerbCollection.cs
-//
-// Authors:
-// Alejandro Sánchez Acosta <raciel@es.gnu.org>
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Alejandro Sánchez Acosta
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-using System.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public class DesignerVerbCollection : CollectionBase
- {
- public DesignerVerbCollection()
- {
- }
-
- public DesignerVerbCollection (DesignerVerb[] value)
- {
- InnerList.AddRange (value);
- }
-
- public DesignerVerb this[int index] {
- get {
- return (DesignerVerb) InnerList[index];
- }
-
- set {
- InnerList[index] = value;
- }
- }
-
- public int Add (DesignerVerb value)
- {
- return InnerList.Add ( value);
- }
-
- public void AddRange (DesignerVerb[] value)
- {
- InnerList.AddRange (value);
- }
-
- public void AddRange (DesignerVerbCollection value)
- {
- InnerList.AddRange (value);
- }
-
- public bool Contains (DesignerVerb value)
- {
- return InnerList.Contains (value);
- }
-
- public void CopyTo (DesignerVerb[] array, int index)
- {
- InnerList.CopyTo (array, index);
- }
-
- public int IndexOf (DesignerVerb value)
- {
- return InnerList.IndexOf (value);
- }
-
- public void Insert (int index, DesignerVerb value)
- {
- InnerList.Insert (index, value);
- }
-
- protected override void OnClear()
- {
- // Cannot think of anything we would need to do here - probably nothing
- }
-
- protected override void OnInsert (int index, object value)
- {
- // Cannot think of anything we would need to do here - probably nothing
- }
-
- protected override void OnRemove (int index, object value)
- {
- // Cannot think of anything we would need to do here - probably nothing
- }
-
- protected override void OnSet(int index, object oldValue, object newValue)
- {
- // Cannot think of anything we would need to do here - probably nothing
- }
-
- protected override void OnValidate(object value)
- {
- // Cannot think of anything we would need to do here - probably nothing
- }
-
- public void Remove (DesignerVerb value)
- {
- InnerList.Remove (value);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.DesigntimeLicenseContext.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel;
-using System.Reflection;
-using System.Collections;
-
-namespace System.ComponentModel.Design
-{
- public class DesigntimeLicenseContext : LicenseContext
- {
- internal Hashtable keys = new Hashtable ();
-
- public DesigntimeLicenseContext()
- {
- }
-
- public override string GetSavedLicenseKey (Type type, Assembly resourceAssembly)
- {
- return (string) keys [type];
- }
-
- public override void SetSavedLicenseKey (Type type, string key)
- {
- keys [type] = key;
- }
-
- public override LicenseUsageMode UsageMode {
- get {
- // It's a 'Designtime'LicenseContext
- return LicenseUsageMode.Designtime;
- }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.DesigntimeLicenseContextSerializer.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-// Carlo Kok (ck@remobjects.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-// (C) 2009 Carlo Kok
-//
-
-//
-// 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.IO;
-using System.Runtime.Serialization.Formatters.Binary;
-using System.Collections;
-
-namespace System.ComponentModel.Design
-{
- public class DesigntimeLicenseContextSerializer
- {
-
- private DesigntimeLicenseContextSerializer ()
- {
- }
-
- public static void Serialize (Stream o, string cryptoKey, DesigntimeLicenseContext context)
- {
- object [] lData = new object [2];
- lData [0] = cryptoKey;
- Hashtable lNewTable = new Hashtable ();
- foreach (DictionaryEntry et in context.keys) {
- lNewTable.Add (((Type) et.Key).AssemblyQualifiedName, et.Value);
- }
- lData[1] = lNewTable;
-
- BinaryFormatter lFormatter = new BinaryFormatter ();
- lFormatter.Serialize (o, lData);
- }
-
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.HelpContextType.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.ComponentModel.Design
-{
- public enum HelpContextType
- {
- Ambient = 0,
- Window = 1,
- Selection = 2,
- ToolWindowSelection = 3
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.HelpKeywordAttribute.cs
-//
-// Author:
-// Miguel de Icaza <miguel@ximian.com>
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-//
-// 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;
-
-namespace System.ComponentModel.Design {
-
- [AttributeUsage (AttributeTargets.All, AllowMultiple = false, Inherited = false)]
- [Serializable]
- public sealed class HelpKeywordAttribute : Attribute {
-
- public static readonly HelpKeywordAttribute Default = null;
-
- string contextKeyword;
-
- public HelpKeywordAttribute ()
- {
- }
-
- public HelpKeywordAttribute (string keyword)
- {
- this.contextKeyword = keyword;
- }
-
- public HelpKeywordAttribute (Type t)
- {
- if (t == null)
- throw new ArgumentNullException ("t");
- this.contextKeyword = t.FullName;
- }
-
- public override bool Equals (object other)
- {
- if (other == null)
- return false;
-
- HelpKeywordAttribute o = other as HelpKeywordAttribute;
- if (o == null)
- return false;
-
- return (o.contextKeyword == contextKeyword);
- }
-
- public override int GetHashCode ()
- {
- return contextKeyword != null ? contextKeyword.GetHashCode () : 0;
- }
-
- public override bool IsDefaultAttribute ()
- {
- return contextKeyword == null;
- }
-
- public string HelpKeyword {
- get {
- return contextKeyword;
- }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.HelpKeywordType.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.ComponentModel.Design
-{
- public enum HelpKeywordType
- {
- F1Keyword = 0,
- GeneralKeyword = 1,
- FilterKeyword = 2
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.IComponentChangeService
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public interface IComponentChangeService
- {
- void OnComponentChanged (object component,
- MemberDescriptor member,
- object oldValue,
- object newValue);
- void OnComponentChanging (object component,
- MemberDescriptor member);
- event ComponentEventHandler ComponentAdded;
- event ComponentEventHandler ComponentAdding;
- event ComponentChangedEventHandler ComponentChanged;
- event ComponentChangingEventHandler ComponentChanging;
- event ComponentEventHandler ComponentRemoved;
- event ComponentEventHandler ComponentRemoving;
- event ComponentRenameEventHandler ComponentRename;
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.IComponentDiscoveryService interface
-//
-// Authors:
-// Sebastien Pouliot <sebastien@ximian.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-// 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.ComponentModel.Design {
-
- public interface IComponentDiscoveryService {
-
- ICollection GetComponentTypes (IDesignerHost designerHost, Type baseType);
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.Design.IComponentInitializer
-//
-// Authors:
-// Ivan N. Zlatev (contact i-nZ.net)
-//
-// (C) 2006 Ivan N. Zlatev
-
-//
-// 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;
-using System.Collections;
-
-namespace System.ComponentModel.Design
-{
- public interface IComponentInitializer
- {
- void InitializeExistingComponent (IDictionary defaultValues);
- void InitializeNewComponent (IDictionary defaultValues);
- }
-}
-
+++ /dev/null
-// System.ComponentModel.Design.IDesigner.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@es.gnu.org>
-//
-// (C) Alejandro Sánchez Acosta
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public interface IDesigner : IDisposable
- {
- IComponent Component {get;}
-
- DesignerVerbCollection Verbs {get;}
-
- void DoDefaultAction ();
-
- void Initialize (IComponent component);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.IDesignerEventService
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.ComponentModel.Design
-{
- public interface IDesignerEventService
- {
- IDesignerHost ActiveDesigner {get;}
- DesignerCollection Designers {get;}
- event ActiveDesignerEventHandler ActiveDesignerChanged;
- event DesignerEventHandler DesignerCreated;
- event DesignerEventHandler DesignerDisposed;
- event EventHandler SelectionChanged;
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.IDesignerFilter
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.ComponentModel.Design
-{
- public interface IDesignerFilter
- {
- void PostFilterAttributes (IDictionary attributes);
- void PostFilterEvents (IDictionary events);
- void PostFilterProperties (IDictionary properties);
- void PreFilterAttributes (IDictionary attributes);
- void PreFilterEvents (IDictionary events);
- void PreFilterProperties (IDictionary properties);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.IDesignerHost.cs
-//
-// Authors:
-// Alejandro Sánchez Acosta <raciel@es.gnu.org>
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Alejandro Sánchez Acosta
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel;
-using System.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public interface IDesignerHost : IServiceContainer, IServiceProvider
- {
- IContainer Container {get;}
-
- bool InTransaction {get;}
-
- bool Loading {get;}
-
- IComponent RootComponent {get;}
-
- string RootComponentClassName {get;}
-
- string TransactionDescription {get;}
-
- void Activate();
-
- IComponent CreateComponent (Type componentClass);
-
- IComponent CreateComponent (Type componentClass, string name);
-
- DesignerTransaction CreateTransaction ();
-
- DesignerTransaction CreateTransaction (string description);
-
- void DestroyComponent (IComponent component);
-
- IDesigner GetDesigner (IComponent component);
-
- Type GetType (string typeName);
-
- event EventHandler Activated;
-
- event EventHandler Deactivated;
-
- event EventHandler LoadComplete;
-
- event DesignerTransactionCloseEventHandler TransactionClosed;
-
- event DesignerTransactionCloseEventHandler TransactionClosing;
-
- event EventHandler TransactionOpened;
-
- event EventHandler TransactionOpening;
- }
-}
+++ /dev/null
-//
-// IDesignerHostTransactionState.cs
-//
-// Author:
-// Carlos Alberto Cortez (calberto.cortez@gmail.com)
-//
-// Copyright (C) 2010 Novell, Inc (http://www.novell.com)
-//
-// 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.
-//
-
-#if NET_4_0
-
-using System;
-
-namespace System.ComponentModel.Design
-{
- public interface IDesignerHostTransactionState
- {
- bool IsClosingTransaction { get; }
- }
-}
-
-#endif
-
+++ /dev/null
-//
-// System.ComponentModel.Design.IDesignerOptionService
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.ComponentModel.Design
-{
- public interface IDesignerOptionService
- {
- object GetOptionValue (string pageName, string valueName);
- void SetOptionValue (string pageName, string valueName,
- object value);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.IDictionaryService
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.ComponentModel.Design
-{
- public interface IDictionaryService
- {
- object GetKey (object value);
- object GetValue (object key);
- void SetValue (object key, object value);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.IEventBindingService
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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;
-using System.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public interface IEventBindingService
- {
- string CreateUniqueMethodName (IComponent component,
- EventDescriptor e);
- ICollection GetCompatibleMethods (EventDescriptor e);
- EventDescriptor GetEvent (PropertyDescriptor property);
- PropertyDescriptorCollection GetEventProperties (
- EventDescriptorCollection events);
- PropertyDescriptor GetEventProperty (EventDescriptor e);
- bool ShowCode();
- bool ShowCode (int lineNumber);
- bool ShowCode (IComponent component, EventDescriptor e);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.IExtenderListService
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.ComponentModel.Design
-{
- public interface IExtenderListService
- {
- IExtenderProvider[] GetExtenderProviders();
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.IExtenderProviderService
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.ComponentModel.Design
-{
- public interface IExtenderProviderService
- {
- void AddExtenderProvider (IExtenderProvider provider);
- void RemoveExtenderProvider (IExtenderProvider provider);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.IHelpService
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.ComponentModel.Design
-{
- public interface IHelpService
- {
- void AddContextAttribute (string name, string value,
- HelpKeywordType keywordType);
-
- void ClearContextAttributes();
- IHelpService CreateLocalContext (HelpContextType contextType);
- void RemoveContextAttribute (string name, string value);
- void RemoveLocalContext (IHelpService localContext);
- void ShowHelpFromKeyword (string helpKeyword);
- void ShowHelpFromUrl (string helpUrl);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.IInheritanceService.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.ComponentModel;
-
-namespace System.ComponentModel.Design
-{
- public interface IInheritanceService
- {
- void AddInheritedComponents (IComponent component, IContainer container);
-
- InheritanceAttribute GetInheritanceAttribute (IComponent component);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.IMenuCommandService
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public interface IMenuCommandService
- {
- DesignerVerbCollection Verbs {get;}
- void AddCommand (MenuCommand command);
- void AddVerb (DesignerVerb verb);
- MenuCommand FindCommand (CommandID commandID);
- bool GlobalInvoke (CommandID commandID);
- void RemoveCommand (MenuCommand command);
- void RemoveVerb (DesignerVerb verb);
- void ShowContextMenu (CommandID menuID, int x, int y);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.IReferenceService
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.ComponentModel.Design
-{
- public interface IReferenceService
- {
- IComponent GetComponent (object reference);
- string GetName (object reference);
- object GetReference (string name);
- object[] GetReferences();
- object[] GetReferences (Type baseType);
- }
-}
+++ /dev/null
-// System.ComponentModel.Design.IResourceService.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@es.gnu.org>
-//
-// (C) Alejandro Sánchez Acosta
-//
-
-//
-// 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.Globalization;
-using System.Resources;
-
-namespace System.ComponentModel.Design
-{
- public interface IResourceService
- {
- IResourceReader GetResourceReader (CultureInfo info);
-
- IResourceWriter GetResourceWriter (CultureInfo info);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.IRootDesigner
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public interface IRootDesigner : IDesigner, IDisposable
- {
- ViewTechnology[] SupportedTechnologies {get;}
- object GetView (ViewTechnology technology);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.ISelectionService.cs
-//
-// Authors:
-// Alejandro Sánchez Acosta <raciel@es.gnu.org>
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Alejandro Sánchez Acosta
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-using System.Collections;
-using System.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public interface ISelectionService
- {
- bool GetComponentSelected (object component);
-
- ICollection GetSelectedComponents ();
-
- void SetSelectedComponents (ICollection components, SelectionTypes selectionType);
-
- void SetSelectedComponents (ICollection components);
-
- object PrimarySelection {get;}
-
- int SelectionCount {get;}
-
- event EventHandler SelectionChanged;
-
- event EventHandler SelectionChanging;
- }
-}
+++ /dev/null
-// System.ComponentModel.Design.IServiceContainer.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@es.gnu.org>
-//
-// (C) Alejandro Sánchez Acosta
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public interface IServiceContainer : IServiceProvider
- {
- void AddService(
- Type serviceType,
- object serviceInstance
- );
-
- void AddService(
- Type serviceType,
- ServiceCreatorCallback callback
- );
-
- void AddService(
- Type serviceType,
- object serviceInstance,
- bool promote
- );
-
- void AddService(
- Type serviceType,
- ServiceCreatorCallback callback,
- bool promote
- );
-
- void RemoveService(
- Type serviceType
- );
-
- void RemoveService(
- Type serviceType,
- bool promote
- );
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.ITreeDesigner
-//
-// Authors:
-// Ivan N. Zlatev (contact i-nZ.net)
-//
-// (C) 2006 Ivan N. Zlatev
-
-//
-// 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;
-using System.Collections;
-using System.ComponentModel;
-
-namespace System.ComponentModel.Design
-{
- public interface ITreeDesigner : IDesigner, IDisposable
- {
- ICollection Children {
- get;
- }
-
- IDesigner Parent {
- get;
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.ITypeDescriptorFilterService.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.ComponentModel.Design
-{
- public interface ITypeDescriptorFilterService
- {
- bool FilterAttributes (IComponent component,
- IDictionary attributes);
-
- bool FilterEvents (IComponent component,
- IDictionary events);
-
- bool FilterProperties (IComponent component,
- IDictionary properties);
- }
-}
+++ /dev/null
-//
-// ITypeDiscoveryService.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-// Copyright (C) 2007 Novell, Inc.
-//
-
-//
-// 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;
-using System.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- public interface ITypeDiscoveryService
- {
- ICollection GetTypes (Type baseType, bool excludeGlobalTypes);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.ITypeResolutionService.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Reflection;
-
-namespace System.ComponentModel.Design
-{
- public interface ITypeResolutionService
- {
- Assembly GetAssembly (AssemblyName name);
- Assembly GetAssembly (AssemblyName name, bool throwOnError);
- string GetPathOfAssembly (AssemblyName name);
- Type GetType (string name);
- Type GetType (string name, bool throwOnError);
- Type GetType (string name, bool throwOnError, bool ignoreCase);
- void ReferenceAssembly (AssemblyName name);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.MenuCommand.cs
-//
-// Authors:
-// Alejandro Sánchez Acosta <raciel@es.gnu.org>
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Alejandro Sánchez Acosta
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-using System.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public class MenuCommand
- {
-
- private EventHandler handler;
- private CommandID command;
- private bool ischecked = false;
- private bool enabled = true;
- private bool issupported = true;
- private bool visible = true;
- private Hashtable properties;
-
- public MenuCommand (EventHandler handler, CommandID command)
- {
- this.handler = handler;
- this.command = command;
- }
-
- public virtual bool Checked {
- get {
- return ischecked;
- }
- set {
- if (ischecked != value) {
- ischecked = value;
- OnCommandChanged (EventArgs.Empty);
- }
- }
- }
-
- public virtual CommandID CommandID {
- get {
- return command;
- }
- }
-
- public virtual bool Enabled {
- get {
- return enabled;
- }
- set {
- if (enabled != value)
- {
- enabled = value;
- OnCommandChanged (EventArgs.Empty);
- }
- }
- }
-
- [MonoTODO]
- public virtual int OleStatus {
- get {
- // This is calcualted from the other properties, but the docs to not tell how
- // Default seems to be "3", but changes with diffentent set properties
- return 3;
- }
- }
-
- public virtual IDictionary Properties {
- get {
- if (properties == null)
- properties = new Hashtable ();
- return properties;
- }
- }
-
- public virtual bool Supported {
- get {
- return issupported;
- }
-
- set {
- issupported = value;
- }
- }
-
- public virtual bool Visible {
- get {
- return visible;
- }
-
- set {
- visible = value;
- }
- }
-
- public virtual void Invoke()
- {
- // FIXME Not sure if this invocation is what should be done here
- if (handler != null)
- handler (this, EventArgs.Empty);
- }
-
- public virtual void Invoke (object arg)
- {
- this.Invoke ();
- }
-
- protected virtual void OnCommandChanged (EventArgs e)
- {
- if (CommandChanged != null)
- CommandChanged (this, e);
- }
-
- public override string ToString()
- {
- // MS runtime produces a NullReferenceException here if CommandID property == null
- // which I guess isn't a good idea (throwing exceptions in ToStrings???) - bug in MS??
- string commandpart = string.Empty;
- if (command != null)
- commandpart = command.ToString ();
- commandpart = string.Concat (commandpart, " : ");
- if (this.Supported)
- commandpart = string.Concat (commandpart, "Supported");
- if (this.Enabled)
- commandpart = string.Concat (commandpart, "|Enabled");
- if (this.Visible)
- commandpart = string.Concat (commandpart, "|Visible");
- if (this.Checked)
- commandpart = string.Concat (commandpart, "|Checked");
- return commandpart;
- }
-
- public event EventHandler CommandChanged;
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.RuntimeLicenseContext.cs
-//
-// Authors:
-// Ivan Hamilton (ivan@chimerical.com.au)
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-// Carlo Kok (ck@remobjects.com)
-//
-// (C) 2004 Ivan Hamilton
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-// (C) 2009 Carlo Kok
-//
-
-//
-// 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.ComponentModel;
-using System.Reflection;
-using System.Collections;
-using System.IO;
-using System.Runtime.Serialization.Formatters.Binary;
-
-namespace System.ComponentModel.Design
-{
- internal class RuntimeLicenseContext : LicenseContext
- {
- private Hashtable extraassemblies;
- private Hashtable keys;
-
- public RuntimeLicenseContext () : base ()
- {
- }
-
- void LoadKeys ()
- {
- if (keys != null)
- return;
- keys = new Hashtable ();
-
- Assembly asm = Assembly.GetEntryAssembly ();
- if (asm != null)
- LoadAssemblyLicenses (keys, asm);
- else {
- foreach (Assembly asmnode in AppDomain.CurrentDomain.GetAssemblies ()) {
- LoadAssemblyLicenses (keys, asmnode);
- }
- }
- }
-
- void LoadAssemblyLicenses (Hashtable targetkeys, Assembly asm)
- {
- if (asm is System.Reflection.Emit.AssemblyBuilder) return;
- string asmname = Path.GetFileName (asm.Location);
- string resourcename = asmname + ".licenses";
- try {
- foreach (string name in asm.GetManifestResourceNames ()) {
- if (name != resourcename)
- continue;
- using (Stream stream = asm.GetManifestResourceStream (name)) {
- BinaryFormatter formatter = new BinaryFormatter ();
- object[] res = formatter.Deserialize (stream) as object[];
- if (String.Compare ((string) res[0], asmname, true) == 0) {
- Hashtable table = (Hashtable) res[1];
- foreach (DictionaryEntry et in table)
- targetkeys.Add (et.Key, et.Value);
- }
- }
- }
-
- } catch (InvalidCastException) {
- }
- }
-
- public override string GetSavedLicenseKey (Type type, Assembly resourceAssembly)
- {
- if (type == null)
- throw new ArgumentNullException ("type");
- if (resourceAssembly != null) {
- if (extraassemblies == null)
- extraassemblies = new Hashtable ();
- Hashtable ht = extraassemblies [resourceAssembly.FullName] as Hashtable;
- if (ht == null) {
- ht = new Hashtable ();
- LoadAssemblyLicenses (ht, resourceAssembly);
- extraassemblies [resourceAssembly.FullName] = ht;
- }
- return (string) ht [type.AssemblyQualifiedName];
- }
- LoadKeys ();
- return (string) keys [type.AssemblyQualifiedName];
- }
-
- public override void SetSavedLicenseKey (Type type, string key)
- {
- if (type == null)
- throw new ArgumentNullException ("type");
- LoadKeys ();
- keys [type.AssemblyQualifiedName] = key;
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.SelectionTypes.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Ivan N. Zlatev (contact i-nZ.net)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2006 Ivan N. Zlatev
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [Flags]
- [ComVisible(true)]
- public enum SelectionTypes
- {
- Auto = 1,
- [Obsolete ("This value has been deprecated. Use SelectionTypes.Auto instead.")]
- Normal = 1,
- Replace = 2,
- [Obsolete ("This value has been deprecated. It is no longer supported.")]
- MouseDown = 4,
- [Obsolete ("This value has been deprecated. It is no longer supported.")]
- MouseUp = 8,
- [Obsolete ("This value has been deprecated. Use SelectionTypes.Primary instead.")]
- Click = 16,
- Primary = 16,
- [Obsolete ("This value has been deprecated. It is no longer supported.")]
- Valid = 31,
- Toggle = 32,
- Add = 64,
- Remove = 128
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.ServiceContainer.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-// Ivan N. Zlatev (contact i-nZ.net)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-// (C) 2006 Ivan N. Zlatev
-
-//
-// 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;
-using System.Collections;
-
-namespace System.ComponentModel.Design
-{
- public class ServiceContainer : IServiceContainer, IServiceProvider, IDisposable
- {
- private IServiceProvider parentProvider;
- private Hashtable services;
- private bool _disposed;
-
- public ServiceContainer()
- : this (null)
- {
- }
-
- private Hashtable Services {
- get {
- if (services == null)
- services = new Hashtable ();
- return services;
- }
- }
-
- public ServiceContainer (IServiceProvider parentProvider)
- {
- this.parentProvider = parentProvider;
- }
-
- public void AddService (Type serviceType, object serviceInstance)
- {
- AddService (serviceType, serviceInstance, false);
- }
-
- public void AddService (Type serviceType, ServiceCreatorCallback callback)
- {
- AddService (serviceType, callback, false);
- }
-
- public virtual void AddService (Type serviceType,
- object serviceInstance,
- bool promote)
- {
- if (promote && parentProvider != null) {
- IServiceContainer container = (IServiceContainer)
- parentProvider.GetService (typeof (IServiceContainer));
- container.AddService (serviceType, serviceInstance, promote);
- return;
- }
-
- if (serviceType == null)
- throw new ArgumentNullException ("serviceType");
- if (serviceInstance == null)
- throw new ArgumentNullException ("serviceInstance");
- if (Services.Contains (serviceType))
- throw new ArgumentException (string.Format (
- "The service {0} already exists in the service container.",
- serviceType.ToString ()), "serviceType");
- Services.Add (serviceType, serviceInstance);
- }
-
- public virtual
- void AddService (Type serviceType,
- ServiceCreatorCallback callback,
- bool promote)
- {
- if (promote && parentProvider != null) {
- IServiceContainer container = (IServiceContainer)
- parentProvider.GetService (typeof (IServiceContainer));
- container.AddService (serviceType, callback, promote);
- return;
- }
-
- if (serviceType == null)
- throw new ArgumentNullException ("serviceType");
- if (callback == null)
- throw new ArgumentNullException ("callback");
- if (Services.Contains (serviceType))
- throw new ArgumentException (string.Format (
- "The service {0} already exists in the service container.",
- serviceType.ToString ()), "serviceType");
- Services.Add (serviceType, callback);
- }
-
- public void RemoveService (Type serviceType)
- {
- RemoveService (serviceType, false);
- }
-
- public virtual void RemoveService (Type serviceType, bool promote)
- {
- if (promote && parentProvider != null) {
- IServiceContainer container = (IServiceContainer)
- parentProvider.GetService (typeof (IServiceContainer));
- container.RemoveService (serviceType, promote);
- return;
- }
-
- if (serviceType == null)
- throw new ArgumentNullException ("serviceType");
- Services.Remove (serviceType);
- }
-
- public virtual
- object GetService (Type serviceType)
- {
- object result = null;
-
- Type[] defaultServices = this.DefaultServices;
- for (int i=0; i < defaultServices.Length; i++) {
- if (defaultServices[i] == serviceType) {
- result = this;
- break;
- }
- }
-
- if (result == null)
- result = Services [serviceType];
- if (result == null && parentProvider != null)
- result = parentProvider.GetService (serviceType);
- if (result != null) {
- ServiceCreatorCallback cb = result as ServiceCreatorCallback;
- if (cb != null) {
- result = cb (this, serviceType);
- Services [serviceType] = result;
- }
- }
- return result;
- }
-
- protected virtual
- Type [] DefaultServices {
- get {
- return new Type [] { typeof (IServiceContainer), typeof (ServiceContainer)};
- }
- }
-
- public void Dispose ()
- {
- this.Dispose (true);
- GC.SuppressFinalize (this);
- }
-
- protected virtual void Dispose (bool disposing)
- {
- if (!_disposed) {
- if (disposing) {
- if (services != null) {
- foreach (object obj in services) {
- if (obj is IDisposable) {
- ((IDisposable) obj).Dispose ();
- }
- }
- services = null;
- }
- }
- _disposed = true;
- }
- }
- }
-}
+++ /dev/null
-// System.ComponentModel.Design.ServiceCreatorCallback.cs
-//
-// Author:
-// Alejandro Sánchez Acosta <raciel@es.gnu.org>
-//
-// (C) Alejandro Sánchez Acosta
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public delegate object ServiceCreatorCallback (IServiceContainer container, Type serviceType);
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.StandardCommands.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel.Design
-{
- public class StandardCommands
- {
- public static readonly CommandID AlignBottom;
- public static readonly CommandID AlignHorizontalCenters;
- public static readonly CommandID AlignLeft;
- public static readonly CommandID AlignRight;
- public static readonly CommandID AlignToGrid;
- public static readonly CommandID AlignTop;
- public static readonly CommandID AlignVerticalCenters;
- public static readonly CommandID ArrangeBottom;
- public static readonly CommandID ArrangeIcons;
- public static readonly CommandID ArrangeRight;
- public static readonly CommandID BringForward;
- public static readonly CommandID BringToFront;
- public static readonly CommandID CenterHorizontally;
- public static readonly CommandID CenterVertically;
- public static readonly CommandID Copy;
- public static readonly CommandID Cut;
- public static readonly CommandID Delete;
- public static readonly CommandID F1Help;
- public static readonly CommandID Group;
- public static readonly CommandID HorizSpaceConcatenate;
- public static readonly CommandID HorizSpaceDecrease;
- public static readonly CommandID HorizSpaceIncrease;
- public static readonly CommandID HorizSpaceMakeEqual;
- public static readonly CommandID LineupIcons;
- public static readonly CommandID LockControls;
- public static readonly CommandID MultiLevelRedo;
- public static readonly CommandID MultiLevelUndo;
- public static readonly CommandID Paste;
- public static readonly CommandID Properties;
- public static readonly CommandID PropertiesWindow;
- public static readonly CommandID Redo;
- public static readonly CommandID Replace;
- public static readonly CommandID SelectAll;
- public static readonly CommandID SendBackward;
- public static readonly CommandID SendToBack;
- public static readonly CommandID ShowGrid;
- public static readonly CommandID ShowLargeIcons;
- public static readonly CommandID SizeToControl;
- public static readonly CommandID SizeToControlHeight;
- public static readonly CommandID SizeToControlWidth;
- public static readonly CommandID SizeToFit;
- public static readonly CommandID SizeToGrid;
- public static readonly CommandID SnapToGrid;
- public static readonly CommandID TabOrder;
- public static readonly CommandID Undo;
- public static readonly CommandID Ungroup;
- public static readonly CommandID VerbFirst;
- public static readonly CommandID VerbLast;
- public static readonly CommandID VertSpaceConcatenate;
- public static readonly CommandID VertSpaceDecrease;
- public static readonly CommandID VertSpaceIncrease;
- public static readonly CommandID VertSpaceMakeEqual;
- public static readonly CommandID ViewGrid;
- public static readonly CommandID DocumentOutline;
- public static readonly CommandID ViewCode;
-
- static StandardCommands()
- {
- // It seems that all static commands use this Guid values in MS impl
- Guid guidA = new Guid("5efc7975-14bc-11cf-9b2b-00aa00573819");
- Guid guidB = new Guid("74d21313-2aee-11d1-8bfb-00a0c90f26f7");
-
- // got command IDs by looking at StandardCommands.AlignBottom.ToString in MS impl
- AlignBottom = new CommandID (guidA, 1);
- AlignHorizontalCenters = new CommandID (guidA, 2);
- AlignLeft = new CommandID (guidA, 3);
- AlignRight = new CommandID (guidA, 4);
- AlignToGrid = new CommandID (guidA, 5);
- AlignTop = new CommandID (guidA, 6);
- AlignVerticalCenters = new CommandID (guidA, 7);
- ArrangeBottom = new CommandID (guidA, 8);
-
- ArrangeIcons = new CommandID (guidB, 12298);
-
- ArrangeRight = new CommandID (guidA, 9);
- BringForward = new CommandID (guidA, 10);
- BringToFront = new CommandID (guidA, 11);
- CenterHorizontally = new CommandID (guidA, 12);
- CenterVertically = new CommandID (guidA, 13);
-
- Copy = new CommandID (guidA, 15);
- Cut = new CommandID (guidA, 16);
- Delete = new CommandID (guidA, 17);
-
- F1Help = new CommandID (guidA, 377);
-
- Group = new CommandID (guidA, 20);
- HorizSpaceConcatenate = new CommandID (guidA, 21);
- HorizSpaceDecrease = new CommandID (guidA, 22);
- HorizSpaceIncrease = new CommandID (guidA, 23);
- HorizSpaceMakeEqual = new CommandID (guidA, 24);
-
- LineupIcons = new CommandID (guidB, 12299);
-
- LockControls = new CommandID (guidA, 369);
-
- MultiLevelRedo = new CommandID (guidA, 30);
-
- MultiLevelUndo = new CommandID (guidA, 44);
-
- Paste = new CommandID (guidA, 26);
- Properties = new CommandID (guidA, 28);
-
- PropertiesWindow = new CommandID (guidA, 235);
-
- Redo = new CommandID (guidA, 29);
-
- Replace = new CommandID (guidA, 230);
-
- SelectAll = new CommandID (guidA, 31);
- SendBackward = new CommandID (guidA, 32);
- SendToBack = new CommandID (guidA, 33);
-
- ShowGrid = new CommandID (guidA, 103);
-
- ShowLargeIcons = new CommandID (guidB, 12300);
-
- SizeToControl = new CommandID (guidA, 35);
- SizeToControlHeight = new CommandID (guidA, 36);
- SizeToControlWidth = new CommandID (guidA, 37);
- SizeToFit = new CommandID (guidA, 38);
- SizeToGrid = new CommandID (guidA, 39);
- SnapToGrid = new CommandID (guidA, 40);
- TabOrder = new CommandID (guidA, 41);
-
- Undo = new CommandID (guidA, 43);
-
- Ungroup = new CommandID (guidA, 45);
-
- VerbFirst = new CommandID (guidB, 8192);
- VerbLast = new CommandID (guidB, 8448);
-
- VertSpaceConcatenate = new CommandID (guidA, 46);
- VertSpaceDecrease = new CommandID (guidA, 47);
- VertSpaceIncrease = new CommandID (guidA, 48);
- VertSpaceMakeEqual = new CommandID (guidA, 49);
-
- ViewGrid = new CommandID (guidA, 125);
-
- DocumentOutline = new CommandID (guidA, 239);
- ViewCode = new CommandID (guidA, 333);
- }
-
- public StandardCommands()
- {
- // LAMESPEC having a public constructor but only static methods
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Design.StandardToolWindows.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel.Design
-{
- public class StandardToolWindows
- {
- public static readonly Guid ObjectBrowser = new Guid ("970d9861-ee83-11d0-a778-00a0c91110c3");
- public static readonly Guid OutputWindow = new Guid ("34e76e81-ee4a-11d0-ae2e-00a0c90fffc3");
- public static readonly Guid ProjectExplorer = new Guid ("3ae79031-e1bc-11d0-8f78-00a0c9110057");
- public static readonly Guid PropertyBrowser = new Guid ("eefa5220-e298-11d0-8f78-00a0c9110057");
- public static readonly Guid RelatedLinks = new Guid ("66dba47c-61df-11d2-aa79-00c04f990343");
- public static readonly Guid ServerExplorer = new Guid ("74946827-37a0-11d2-a273-00c04f8ef4ff");
- public static readonly Guid TaskList = new Guid ("4a9b7e51-aa16-11d0-a8c5-00a0c921a4d2");
- public static readonly Guid Toolbox = new Guid ("b1e99781-ab81-11d0-b683-00aa00a3ee26");
-
- public StandardToolWindows()
- {
- }
- }
-}
+++ /dev/null
-//
-// TypeDescriptionProviderService.cs
-//
-// Author:
-// Carlos Alberto Cortez (calberto.cortez@gmail.com)
-//
-// Copyright (C) 2010 Novell, Inc (http://www.novell.com)
-//
-// 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.
-//
-
-#if NET_4_0
-
-using System;
-
-namespace System.ComponentModel.Design
-{
- public abstract class TypeDescriptionProviderService
- {
- protected TypeDescriptionProviderService ()
- {
- }
-
- public abstract TypeDescriptionProvider GetProvider (object instance);
- public abstract TypeDescriptionProvider GetProvider (Type type);
- }
-}
-
-#endif
-
+++ /dev/null
-//
-// System.ComponentModel.Design.ViewTechnology
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Ivan N. Zlatev (contact i-nZ.net)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2006 Ivan N. Zlatev
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel.Design
-{
- [ComVisible(true)]
- public enum ViewTechnology
- {
- [Obsolete ("Use ViewTechnology.Default.")]
- Passthrough,
- [Obsolete ("Use ViewTechnology.Default.")]
- WindowsForms,
- Default
- }
-}
+++ /dev/null
-/DataObjectAttribute.cs -crlf
+++ /dev/null
-//
-// AddingNewEventArgs.cs
-//
-// Author: Duncan Mak (duncan@novell.com)
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-//
-// 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;
-
-namespace System.ComponentModel {
-
- public class AddingNewEventArgs : EventArgs
- {
- object obj;
-
- public AddingNewEventArgs ()
- : this (null)
- {
- }
-
- public AddingNewEventArgs (object newObject)
- {
- this.obj = newObject;
- }
-
- public object NewObject {
- get { return obj; }
- set { obj = value; }
- }
- }
-}
+++ /dev/null
-//
-// AddingNewEventHandler.cs
-//
-// Author: Duncan Mak (duncan@novell.com)
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-//
-// 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;
-
-namespace System.ComponentModel {
-
- public delegate void AddingNewEventHandler (object sender, AddingNewEventArgs e);
-
-}
+++ /dev/null
-//
-// System.ComponentModel.AmbientValueAttribute
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel
-{
- [AttributeUsage(AttributeTargets.All)]
- public sealed class AmbientValueAttribute : Attribute
- {
-
- private object AmbientValue;
-
- public AmbientValueAttribute (bool value)
- {
- AmbientValue = value;
- }
-
- public AmbientValueAttribute (byte value)
- {
- AmbientValue = value;
- }
-
- public AmbientValueAttribute (char value)
- {
- AmbientValue = value;
- }
-
- public AmbientValueAttribute (double value)
- {
- AmbientValue = value;
- }
-
- public AmbientValueAttribute (short value)
- {
- AmbientValue = value;
- }
-
- public AmbientValueAttribute (int value)
- {
- AmbientValue = value;
- }
-
- public AmbientValueAttribute (long value)
- {
- AmbientValue = value;
- }
-
- public AmbientValueAttribute (object value)
- {
- AmbientValue = value;
- }
-
- public AmbientValueAttribute (float value)
- {
- AmbientValue = value;
- }
-
- public AmbientValueAttribute (string value)
- {
- AmbientValue = value;
- }
-
- public AmbientValueAttribute (Type type, string value)
- {
- try {
- AmbientValue = Convert.ChangeType (value, type);
- } catch {
- AmbientValue = null;
- }
- }
-
- public object Value {
- get { return AmbientValue; }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is AmbientValueAttribute))
- return false;
-
- if (obj == this)
- return true;
-
- return ((AmbientValueAttribute) obj).Value == AmbientValue;
- }
-
- public override int GetHashCode()
- {
- return AmbientValue.GetHashCode ();
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ArrayConverter
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-
-namespace System.ComponentModel
-{
- public class ArrayConverter : CollectionConverter
- {
- public override object ConvertTo (ITypeDescriptorContext context, CultureInfo culture, object value,
- Type destinationType)
- {
- if (destinationType == null)
- throw new ArgumentNullException ("destinationType");
-
- if (destinationType == typeof (string) && (value is Array))
- return value.GetType ().Name + " Array";
-
- return base.ConvertTo (context, culture, value, destinationType);
- }
-
- public override PropertyDescriptorCollection GetProperties (ITypeDescriptorContext context,
- object value, Attribute[] attributes)
- {
- if (value == null)
- throw new NullReferenceException ();
-
- PropertyDescriptorCollection col = new PropertyDescriptorCollection (null);
- if (value is Array) {
- Array array = (Array)value;
- for (int i = 0; i < array.Length; i ++) {
- col.Add (new ArrayPropertyDescriptor (i, array.GetType()));
- }
- }
-
- return col;
- }
-
- public override bool GetPropertiesSupported (ITypeDescriptorContext context)
- {
- return true;
- }
-
- internal class ArrayPropertyDescriptor : PropertyDescriptor
- {
- int index;
- Type array_type;
- public ArrayPropertyDescriptor (int index, Type array_type)
- : base (String.Format ("[{0}]", index), null)
- {
- this.index = index;
- this.array_type = array_type;
- }
-
- public override Type ComponentType {
- get { return array_type; }
- }
-
- public override Type PropertyType {
- get { return array_type.GetElementType(); }
- }
-
- public override bool IsReadOnly {
- get { return false; }
- }
-
- public override object GetValue (object component)
- {
- if (component == null)
- return null;
-
- return ((Array)component).GetValue (index);
- }
-
- public override void SetValue (object component, object value)
- {
- if (component == null)
- return;
-
- ((Array)component).SetValue (value, index);
- }
-
- public override void ResetValue (object component)
- {
- }
-
- public override bool CanResetValue (object component)
- {
- return false;
- }
-
- public override bool ShouldSerializeValue (object component)
- {
- return false;
- }
- }
- }
-}
-
+++ /dev/null
-//
-// System.Web.Services.Protocols.AsyncCompletedEventArgs.cs
-//
-// Author:
-// Lluis Sanchez (lluis@novell.com)
-//
-// Copyright (C) Novell, Inc., 2004
-//
-
-//
-// 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.ComponentModel
-{
- public class AsyncCompletedEventArgs : EventArgs
- {
- Exception _error;
- bool _cancelled;
- object _userState;
-
- public AsyncCompletedEventArgs (Exception error, bool cancelled, object userState)
- {
- _error = error;
- _cancelled = cancelled;
- _userState = userState;
- }
-
- protected void RaiseExceptionIfNecessary()
- {
- if (_error != null)
- throw new System.Reflection.TargetInvocationException (_error);
- else if (_cancelled)
- throw new InvalidOperationException ("The operation was cancelled");
- }
-
- public bool Cancelled {
- get { return _cancelled; }
- }
-
- public Exception Error {
- get { return _error; }
- }
-
- public object UserState {
- get { return _userState; }
- }
- }
-}
-
+++ /dev/null
-//
-// System.Web.Services.Protocols.AsyncCompletedEventHandler.cs
-//
-// Author:
-// Lluis Sanchez (lluis@novell.com)
-//
-// Copyright (C) Novell, Inc., 2004
-//
-
-//
-// 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.ComponentModel
-{
- public delegate void AsyncCompletedEventHandler (
- object sender,
- AsyncCompletedEventArgs e
- );
-}
-
+++ /dev/null
-//
-// AsyncOperation.cs
-//
-// Authors:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-// Copyright (C) 2006 Novell, Inc.
-//
-
-//
-// 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.Threading;
-
-namespace System.ComponentModel
-{
- public sealed class AsyncOperation
- {
- internal AsyncOperation (SynchronizationContext ctx,
- object state)
- {
- this.ctx = ctx;
- this.state = state;
-
- ctx.OperationStarted ();
- }
-
- ~AsyncOperation ()
- {
- if (!done && ctx != null)
- ctx.OperationCompleted ();
- }
-
- SynchronizationContext ctx;
- object state;
- bool done;
-
- public SynchronizationContext SynchronizationContext {
- get { return ctx; }
- }
-
- public object UserSuppliedState {
- get { return state; }
- }
-
- public void OperationCompleted ()
- {
- if (done)
- throw new InvalidOperationException ("This task is already completed. Multiple call to OperationCompleted is not allowed.");
-
- ctx.OperationCompleted ();
-
- done = true;
- }
-
- public void Post (SendOrPostCallback d, object arg)
- {
- if (d == null)
- throw new ArgumentNullException ("d");
-
- if (done)
- throw new InvalidOperationException ("This task is already completed. Multiple call to Post is not allowed.");
-
- ctx.Post (d, arg);
- }
-
- public void PostOperationCompleted (
- SendOrPostCallback d, object arg)
- {
- if (d == null)
- throw new ArgumentNullException ("d");
-
- if (done)
- throw new InvalidOperationException ("This task is already completed. Multiple call to PostOperationCompleted is not allowed.");
-
- Post (d, arg);
- OperationCompleted ();
- }
- }
-}
+++ /dev/null
-//
-// AsyncOperationManager.cs
-//
-// Authors:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-// Copyright (C) 2006 Novell, Inc.
-//
-
-//
-// 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.Security.Permissions;
-using System.Threading;
-
-namespace System.ComponentModel
-{
- public static class AsyncOperationManager
- {
- static AsyncOperationManager ()
- {
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static SynchronizationContext SynchronizationContext {
- get {
- if (SynchronizationContext.Current == null)
- SynchronizationContext.SetSynchronizationContext (new SynchronizationContext ());
-
- return SynchronizationContext.Current;
- }
- [SecurityPermission (SecurityAction.LinkDemand)]
- set { SynchronizationContext.SetSynchronizationContext (value); }
- }
-
- public static AsyncOperation CreateOperation (object userSuppliedState)
- {
- return new AsyncOperation (
- SynchronizationContext, userSuppliedState);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.AttributeCollection.cs
-//
-// Authors:
-// Rodrigo Moya (rodrigo@ximian.com)
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-//
-// (C) 2002 Ximian, Inc. (http://www.ximian.com)
-//
-
-//
-// 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;
-using System.Collections;
-using System.Reflection;
-using System.Runtime.InteropServices;
-
-namespace System.ComponentModel
-{
- [ComVisible (true)]
- public class AttributeCollection : ICollection
- {
- private ArrayList attrList = new ArrayList ();
- public static readonly AttributeCollection Empty = new AttributeCollection ((ArrayList)null);
-
- internal AttributeCollection (ArrayList attributes)
- {
- if (attributes != null)
- attrList = attributes;
- }
-
- public AttributeCollection (params Attribute[] attributes)
- {
- if (attributes != null)
- for (int i = 0; i < attributes.Length; i++)
- attrList.Add (attributes[i]);
- }
-
-#if NET_4_0
- protected AttributeCollection ()
- {
- }
-#endif
-
- public static AttributeCollection FromExisting (AttributeCollection existing, params Attribute [] newAttributes)
- {
- if (existing == null)
- throw new ArgumentNullException ("existing");
- AttributeCollection ret = new AttributeCollection ();
- ret.attrList.AddRange (existing.attrList);
- if (newAttributes != null)
- ret.attrList.AddRange (newAttributes);
- return ret;
- }
-
- public bool Contains (Attribute attr)
- {
- Attribute at = this [attr.GetType ()];
- if (at != null)
- return attr.Equals (at);
- else
- return false;
- }
-
- public bool Contains (Attribute [] attributes)
- {
- if (attributes == null)
- return true;
-
- foreach (Attribute attr in attributes)
- if (!Contains (attr))
- return false;
-
- return true;
- }
-
- public void CopyTo (Array array, int index)
- {
- attrList.CopyTo (array, index);
- }
-
- IEnumerator IEnumerable.GetEnumerator () {
- return GetEnumerator ();
- }
-
- public IEnumerator GetEnumerator ()
- {
- return attrList.GetEnumerator ();
- }
-
- public bool Matches (Attribute attr)
- {
- foreach (Attribute a in attrList)
- if (a.Match (attr))
- return true;
- return false;
- }
-
- public bool Matches (Attribute [] attributes)
- {
- foreach (Attribute a in attributes)
- if (!(Matches (a)))
- return false;
- return true;
- }
-
- protected Attribute GetDefaultAttribute (Type attributeType)
- {
- Attribute attr = null;
- BindingFlags bf = BindingFlags.Public | BindingFlags.Static;
-
- FieldInfo def = attributeType.GetField ("Default", bf);
- if (def == null) {
- ConstructorInfo constructorInfo = attributeType.GetConstructor (Type.EmptyTypes);
- if (constructorInfo != null)
- attr = constructorInfo.Invoke (null) as Attribute;
- if (attr != null && !attr.IsDefaultAttribute ())
- attr = null;
- } else {
- attr = (Attribute) def.GetValue (null);
- }
-
- return attr;
- }
-
- bool ICollection.IsSynchronized {
- get {
- return attrList.IsSynchronized;
- }
- }
-
- object ICollection.SyncRoot {
- get {
- return attrList.SyncRoot;
- }
- }
-
- int ICollection.Count {
- get {
- return Count;
- }
- }
-
- public int Count {
- get {
- return attrList != null ? attrList.Count : 0;
- }
- }
-
- public virtual Attribute this[Type type] {
- get {
- Attribute attr = null;
- if (attrList != null) {
- foreach (Attribute a in attrList) {
- if (type.IsAssignableFrom (a.GetType ())) {
- attr = a;
- break;
- }
- }
- }
-
- if (attr == null)
- attr = GetDefaultAttribute (type);
-
- return attr;
- }
- }
-
- public virtual Attribute this[int index] {
- get {
- return (Attribute) attrList [index];
- }
- }
-
-#if NET_4_0
- Attribute [] attributes_arr;
-
- // MSDN doesn't mention it, but this property is returning the same instance always.
- protected virtual Attribute [] Attributes {
- get {
- if (attrList == null || attrList.Count == 0)
- return null;
-
- if (attributes_arr == null)
- attributes_arr = (Attribute[]) attrList.ToArray (typeof (Attribute));
-
- return attributes_arr;
- }
- }
-#endif
- }
-}
+++ /dev/null
-//
-// 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.
-//
-
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-namespace System.ComponentModel
-{
- [AttributeUsage (AttributeTargets.Property, AllowMultiple = false, Inherited = true)]
- public class AttributeProviderAttribute : Attribute
- {
- string type_name;
- string property_name;
-
- public AttributeProviderAttribute (Type type)
- {
- type_name = type.AssemblyQualifiedName;
- }
-
- public AttributeProviderAttribute (string typeName, string propertyName)
- {
- type_name = typeName;
- property_name = propertyName;
- }
-
- public AttributeProviderAttribute (string typeName)
- {
- type_name = typeName;
- }
-
- public string PropertyName {
- get { return property_name; }
- }
-
- public string TypeName {
- get { return type_name; }
- }
- }
-}
+++ /dev/null
-//
-// BackgroundWorker.cs
-//
-// Authors:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-// Copyright (C) 2006 Novell, Inc.
-//
-
-//
-// 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.Generic;
-using System.Threading;
-
-namespace System.ComponentModel
-{
-#if !NET_2_1
- [DefaultEvent ("DoWork")]
- public class BackgroundWorker : Component
-#else
- public class BackgroundWorker
-#endif
- {
- public BackgroundWorker ()
- {
- }
-
- AsyncOperation async;
- bool cancel_pending, report_progress = false, support_cancel = false, complete = false;
-
- public event DoWorkEventHandler DoWork;
- public event ProgressChangedEventHandler ProgressChanged;
- public event RunWorkerCompletedEventHandler RunWorkerCompleted;
-
-#if !NET_2_1
- [Browsable (false)]
-#endif
- public bool CancellationPending {
- get { return cancel_pending; }
- }
-
-#if !NET_2_1
- [Browsable (false)]
-#endif
- public bool IsBusy {
- get { return async != null; }
- }
-
- [DefaultValue (false)]
- public bool WorkerReportsProgress {
- get { return report_progress; }
- set { report_progress = value; }
- }
-
- [DefaultValue (false)]
- public bool WorkerSupportsCancellation {
- get { return support_cancel; }
- set { support_cancel = value; }
- }
-
- public void CancelAsync ()
- {
- if (!support_cancel)
- throw new InvalidOperationException ("This background worker does not support cancellation.");
-
- if (!IsBusy)
- return;
-
- cancel_pending = true;
- }
-
- public void ReportProgress (int percentProgress)
- {
- ReportProgress (percentProgress, null);
- }
-
- public void ReportProgress (int percentProgress, object userState)
- {
- if (!WorkerReportsProgress)
- throw new InvalidOperationException ("This background worker does not report progress.");
-
- if (complete)
- throw new InvalidOperationException ("The background worker has ended.");
-
- ProgressChangedEventArgs pcea = new ProgressChangedEventArgs (percentProgress, userState);
- if (async == null) {
- // we can report progress before a call to RunWorkerAsync - but we do it sync
- OnProgressChanged (pcea);
- } else {
- async.Post (delegate (object o) {
- ProgressChangedEventArgs e = o as ProgressChangedEventArgs;
- OnProgressChanged (e);
- }, pcea);
- }
- }
-
- public void RunWorkerAsync ()
- {
- RunWorkerAsync (null);
- }
-
- delegate void ProcessWorkerEventHandler (object argument, AsyncOperation async, SendOrPostCallback callback);
-
- void ProcessWorker (object argument, AsyncOperation async, SendOrPostCallback callback)
- {
- // do worker
- Exception error = null;
- DoWorkEventArgs e = new DoWorkEventArgs (argument);
- try {
- OnDoWork (e);
- } catch (Exception ex) {
- error = ex;
- e.Cancel = false;
- }
- callback (new object [] {
- new RunWorkerCompletedEventArgs (
- e.Result, error, e.Cancel),
- async});
- }
-
- void CompleteWorker (object state)
- {
- object [] args = (object []) state;
- RunWorkerCompletedEventArgs e =
- args [0] as RunWorkerCompletedEventArgs;
- AsyncOperation async = args [1] as AsyncOperation;
-
- SendOrPostCallback callback = delegate (object darg) {
- this.async = null;
- complete = true;
- OnRunWorkerCompleted (darg as RunWorkerCompletedEventArgs);
- };
-
- async.PostOperationCompleted (callback, e);
-
- cancel_pending = false;
- }
-
- public void RunWorkerAsync (object argument)
- {
- if (IsBusy)
- throw new InvalidOperationException ("The background worker is busy.");
-
- async = AsyncOperationManager.CreateOperation (this);
-
- complete = false;
- ProcessWorkerEventHandler handler =
- new ProcessWorkerEventHandler (ProcessWorker);
- handler.BeginInvoke (argument, async, CompleteWorker, null, null);
- }
-
- protected virtual void OnDoWork (DoWorkEventArgs e)
- {
- if (DoWork != null)
- DoWork (this, e);
- }
-
- protected virtual void OnProgressChanged (ProgressChangedEventArgs e)
- {
- if (ProgressChanged != null)
- ProgressChanged (this, e);
- }
-
- protected virtual void OnRunWorkerCompleted (RunWorkerCompletedEventArgs e)
- {
- if (RunWorkerCompleted != null)
- RunWorkerCompleted (this, e);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.BaseNumberConverter.cs
-//
-// Authors:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2002/2003 Ximian, Inc (http://www.ximian.com)
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-using System.Globalization;
-
-namespace System.ComponentModel
-{
- public abstract class BaseNumberConverter : TypeConverter
- {
- internal Type InnerType;
-
- protected BaseNumberConverter()
- {
- }
-
- internal abstract bool SupportHex {
- get;
- }
-
- public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType)
- {
- return sourceType == typeof (string) || base.CanConvertFrom (context, sourceType);
- }
-
- public override bool CanConvertTo(ITypeDescriptorContext context, Type t)
- {
- return t.IsPrimitive || base.CanConvertTo (context, t);
- }
-
- public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
- {
- if (culture == null)
- culture = CultureInfo.CurrentCulture;
-
- string text = value as string;
- if (text != null) {
- try {
- if (SupportHex) {
- if (text.Length >= 1 && text[0] == '#') {
- return ConvertFromString (text.Substring (1), 16);
- }
-
- if (text.StartsWith ("0x") || text.StartsWith ("0X")) {
- return ConvertFromString (text, 16);
- }
- }
-
- NumberFormatInfo numberFormatInfo = (NumberFormatInfo) culture.GetFormat(typeof(NumberFormatInfo));
- return ConvertFromString (text, numberFormatInfo);
- } catch (Exception e) {
- // LAMESPEC MS wraps the actual exception in an Exception
- throw new Exception (value.ToString() + " is not a valid "
- + "value for " + InnerType.Name + ".", e);
- }
- }
-
- return base.ConvertFrom (context, culture, value);
- }
-
- public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture,
- object value, Type destinationType)
- {
- if (value == null)
- throw new ArgumentNullException ("value");
-
- if (culture == null)
- culture = CultureInfo.CurrentCulture;
-
- if (destinationType == typeof (string) && value is IConvertible)
- return ((IConvertible) value).ToType (destinationType, culture);
-
- if (destinationType.IsPrimitive)
- return Convert.ChangeType (value, destinationType, culture);
-
- return base.ConvertTo (context, culture, value, destinationType);
- }
-
- internal abstract string ConvertToString (object value, NumberFormatInfo format);
-
- internal abstract object ConvertFromString (string value, NumberFormatInfo format);
-
- internal virtual object ConvertFromString (string value, int fromBase)
- {
- if (SupportHex) {
- throw new NotImplementedException ();
- } else {
- throw new InvalidOperationException ();
- }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.BindableAttribute.cs
-//
-// Author:
-// Tim Coleman (tim@timcoleman.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// Copyright (C) Tim Coleman, 2002
-// (C) 2003 Andreas Nahr
-//
-//
-
-//
-// 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.ComponentModel {
- [AttributeUsage (AttributeTargets.All)]
- public sealed class BindableAttribute : Attribute {
-
- #region Fields
-
- //BindableSupport flags;
- private bool bindable;
-
- private BindingDirection direction = BindingDirection.OneWay;
- #endregion // Fields
-
- public static readonly BindableAttribute No = new BindableAttribute (BindableSupport.No);
- public static readonly BindableAttribute Yes = new BindableAttribute (BindableSupport.Yes);
- public static readonly BindableAttribute Default = new BindableAttribute (BindableSupport.Default);
-
- #region Constructors
-
- public BindableAttribute (BindableSupport flags)
- {
- //this.flags = flags;
- if (flags == BindableSupport.No)
- this.bindable = false;
-
- if (flags == BindableSupport.Yes || flags == BindableSupport.Default)
- this.bindable = true;
- }
-
- public BindableAttribute (bool bindable)
- {
- this.bindable = bindable;
- }
-
- public BindableAttribute (bool bindable, BindingDirection direction)
- {
- this.bindable = bindable;
- this.direction = direction;
- }
-
- public BindableAttribute (BindableSupport flags, BindingDirection direction): this (flags)
- {
- this.direction = direction;
- }
-
- public BindingDirection Direction {
- get { return direction; }
- }
-
- #endregion // Constructors
-
- #region Properties
-
- public bool Bindable {
- get { return bindable; }
- }
-
- #endregion // Properties
-
- #region Methods
-
- public override bool Equals (object obj)
- {
- if (!(obj is BindableAttribute))
- return false;
-
- if (obj == this)
- return true;
-
- return ((BindableAttribute) obj).Bindable == bindable;
- }
-
- public override int GetHashCode ()
- {
- return bindable.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return bindable == BindableAttribute.Default.Bindable;
- }
-
- #endregion // Methods
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.BindableSupport.cs
-//
-// Author:
-// Tim Coleman (tim@timcoleman.com)
-//
-// Copyright (C) Tim Coleman, 2002
-//
-
-//
-// 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.ComponentModel
-{
- public enum BindableSupport {
- No,
- Yes,
- Default
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.BindingDirection.cs
-//
-// Author:
-// Lluis Sanchez Gual (lluis@novell.com)
-//
-// (C) 2005 Novell, Inc (http://www.novell.com)
-//
-
-//
-// 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.ComponentModel
-{
- public enum BindingDirection {
- OneWay,
- TwoWay
- }
-}
-
+++ /dev/null
-// 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.
-//
-// Copyright (c) 2007 Novell, Inc.
-//
-
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.Reflection;
-
-namespace System.ComponentModel {
- [SerializableAttribute]
- public class BindingList<T> : Collection<T>,
- IBindingList, IList, ICollection,
- IEnumerable, ICancelAddNew, IRaiseItemChangedEvents
- {
- bool allow_edit = true;
- bool allow_remove = true;
- bool allow_new;
- bool allow_new_set;
-
- bool raise_list_changed_events = true;
-
- bool type_has_default_ctor;
- bool type_raises_item_changed_events;
-
- bool add_pending;
- int pending_add_index;
-
- void CheckType ()
- {
- ConstructorInfo ci = typeof (T).GetConstructor (Type.EmptyTypes);
- type_has_default_ctor = (ci != null);
- type_raises_item_changed_events = typeof (INotifyPropertyChanged).IsAssignableFrom (typeof (T));
- }
-
- public BindingList (IList<T> list) : base(list)
- {
- CheckType ();
- }
-
- public BindingList () : base ()
- {
- CheckType ();
- }
-
- public bool AllowEdit {
- get { return allow_edit; }
- set {
- if (allow_edit != value) {
- allow_edit = value;
-
- if (raise_list_changed_events)
- OnListChanged (new ListChangedEventArgs (ListChangedType.Reset, -1 /* XXX */));
- }
- }
- }
-
- public bool AllowNew {
- get {
- /* if the user explicitly it, return that value */
- if (allow_new_set)
- return allow_new;
-
- /* if the list type has a default constructor we allow new */
- if (type_has_default_ctor)
- return true;
-
- /* if the user adds a delegate, we return true even if
- the type doesn't have a default ctor */
- if (AddingNew != null)
- return true;
-
- return false;
- }
- set {
- // this funky check (using AllowNew
- // instead of allow_new allows us to
- // keep the logic for the 3 cases in
- // one place (the getter) instead of
- // spreading them around the file (in
- // the ctor, in the AddingNew add
- // handler, etc.
- if (AllowNew != value) {
- allow_new_set = true;
-
- allow_new = value;
-
- if (raise_list_changed_events)
- OnListChanged (new ListChangedEventArgs (ListChangedType.Reset, -1 /* XXX */));
- }
- }
- }
-
- public bool AllowRemove {
- get { return allow_remove; }
- set {
- if (allow_remove != value) {
- allow_remove = value;
-
- if (raise_list_changed_events)
- OnListChanged (new ListChangedEventArgs (ListChangedType.Reset, -1 /* XXX */));
- }
- }
- }
-
- protected virtual bool IsSortedCore {
- get { return false; }
- }
-
- public bool RaiseListChangedEvents {
- get { return raise_list_changed_events; }
- set { raise_list_changed_events = value; }
- }
-
- protected virtual ListSortDirection SortDirectionCore {
- get { return ListSortDirection.Ascending; }
- }
-
- protected virtual PropertyDescriptor SortPropertyCore {
- get { return null; }
- }
-
- protected virtual bool SupportsChangeNotificationCore {
- get { return true; }
- }
-
- protected virtual bool SupportsSearchingCore {
- get { return false; }
- }
-
- protected virtual bool SupportsSortingCore {
- get { return false; }
- }
-
- public event AddingNewEventHandler AddingNew;
- public event ListChangedEventHandler ListChanged;
-
- public T AddNew ()
- {
- return (T)AddNewCore ();
- }
-
- protected virtual object AddNewCore ()
- {
- if (!AllowNew)
- throw new InvalidOperationException ();
-
- AddingNewEventArgs args = new AddingNewEventArgs ();
-
- OnAddingNew (args);
-
- T new_obj = (T)args.NewObject;
- if (new_obj == null) {
- if (!type_has_default_ctor)
- throw new InvalidOperationException ();
-
- new_obj = (T)Activator.CreateInstance (typeof (T));
- }
-
- Add (new_obj);
- pending_add_index = IndexOf (new_obj);
- add_pending = true;
-
- return new_obj;
- }
-
- protected virtual void ApplySortCore (PropertyDescriptor prop, ListSortDirection direction)
- {
- throw new NotSupportedException ();
- }
-
- public virtual void CancelNew (int itemIndex)
- {
- if (!add_pending)
- return;
-
- if (itemIndex != pending_add_index)
- return;
-
- add_pending = false;
-
- base.RemoveItem (itemIndex);
-
- if (raise_list_changed_events)
- OnListChanged (new ListChangedEventArgs (ListChangedType.ItemDeleted, itemIndex));
- }
-
- protected override void ClearItems ()
- {
- EndNew (pending_add_index);
- if (type_raises_item_changed_events) {
- foreach ( T item in base.Items ) {
- (item as INotifyPropertyChanged).PropertyChanged -= Item_PropertyChanged;
- }
- }
- base.ClearItems ();
-
- OnListChanged (new ListChangedEventArgs (ListChangedType.Reset, -1));
- }
-
- public virtual void EndNew (int itemIndex)
- {
- if (!add_pending)
- return;
-
- if (itemIndex != pending_add_index)
- return;
-
- add_pending = false;
- }
-
- protected virtual int FindCore (PropertyDescriptor prop, object key)
- {
- throw new NotSupportedException ();
- }
-
- protected override void InsertItem (int index, T item)
- {
- EndNew (pending_add_index);
-
- base.InsertItem (index, item);
-
- if (raise_list_changed_events)
- OnListChanged (new ListChangedEventArgs (ListChangedType.ItemAdded, index));
-
- if (item != null && type_raises_item_changed_events)
- (item as INotifyPropertyChanged).PropertyChanged += Item_PropertyChanged;
- }
-
- void Item_PropertyChanged (object item, PropertyChangedEventArgs args)
- {
- var property_info = item.GetType ().GetProperty (args.PropertyName);
-
- if (property_info != null) {
- OnListChanged (new ListChangedEventArgs (ListChangedType.ItemChanged, base.IndexOf ((T) item),
- new ReflectionPropertyDescriptor (property_info)) );
- } else {
- OnListChanged (new ListChangedEventArgs (ListChangedType.ItemChanged, base.IndexOf ((T) item)) );
- }
- }
-
- protected virtual void OnAddingNew (AddingNewEventArgs e)
- {
- if (AddingNew != null)
- AddingNew (this, e);
- }
-
- protected virtual void OnListChanged (ListChangedEventArgs e)
- {
- if (ListChanged != null)
- ListChanged (this, e);
- }
-
- protected override void RemoveItem (int index)
- {
- if (!AllowRemove)
- throw new NotSupportedException ();
-
- EndNew (pending_add_index);
- if (type_raises_item_changed_events) {
- (base[index] as INotifyPropertyChanged).PropertyChanged -= Item_PropertyChanged;
- }
- base.RemoveItem (index);
-
- if (raise_list_changed_events)
- OnListChanged (new ListChangedEventArgs (ListChangedType.ItemDeleted, index));
- }
-
- protected virtual void RemoveSortCore ()
- {
- throw new NotSupportedException ();
- }
-
- public void ResetBindings ()
- {
- OnListChanged (new ListChangedEventArgs (ListChangedType.Reset, -1));
- }
-
- public void ResetItem (int position)
- {
- OnListChanged (new ListChangedEventArgs (ListChangedType.ItemChanged, position));
- }
-
- protected override void SetItem (int index, T item)
- {
- if (type_raises_item_changed_events) {
- (base[index] as INotifyPropertyChanged).PropertyChanged -= Item_PropertyChanged;
- (item as INotifyPropertyChanged).PropertyChanged += Item_PropertyChanged;
- }
- base.SetItem (index, item);
-
- OnListChanged (new ListChangedEventArgs (ListChangedType.ItemChanged, index));
- }
-
- void IBindingList.AddIndex (PropertyDescriptor index)
- {
- /* no implementation by default */
- }
-
- object IBindingList.AddNew ()
- {
- return AddNew ();
- }
-
- void IBindingList.ApplySort (PropertyDescriptor property, ListSortDirection direction)
- {
- ApplySortCore (property, direction);
- }
-
- int IBindingList.Find (PropertyDescriptor property, object key)
- {
- return FindCore (property, key);
- }
-
- void IBindingList.RemoveIndex (PropertyDescriptor property)
- {
- /* no implementation by default */
- }
-
- void IBindingList.RemoveSort ()
- {
- RemoveSortCore ();
- }
-
- bool IBindingList.IsSorted {
- get { return IsSortedCore; }
- }
-
- ListSortDirection IBindingList.SortDirection {
- get { return SortDirectionCore; }
- }
-
- PropertyDescriptor IBindingList.SortProperty {
- get { return SortPropertyCore; }
- }
-
- bool IBindingList.AllowEdit {
- get { return AllowEdit; }
- }
-
- bool IBindingList.AllowNew {
- get { return AllowNew; }
- }
-
- bool IBindingList.AllowRemove {
- get { return AllowRemove; }
- }
-
- bool IBindingList.SupportsChangeNotification {
- get { return SupportsChangeNotificationCore; }
- }
-
- bool IBindingList.SupportsSearching {
- get { return SupportsSearchingCore; }
- }
-
- bool IBindingList.SupportsSorting {
- get { return SupportsSortingCore; }
- }
-
- bool IRaiseItemChangedEvents.RaisesItemChangedEvents {
- get { return type_raises_item_changed_events; }
- }
- }
-
-}
-
+++ /dev/null
-//
-// System.ComponentModel.BooleanConverter
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-
-namespace System.ComponentModel
-{
- public class BooleanConverter : TypeConverter
- {
-
- public BooleanConverter()
- {
- }
-
- public override bool CanConvertFrom (ITypeDescriptorContext context, Type sourceType)
- {
- if (sourceType == typeof (string))
- return true;
- return base.CanConvertFrom (context, sourceType);
- }
-
- public override object ConvertFrom (ITypeDescriptorContext context, CultureInfo culture, object value)
- {
- if (value is string)
- return bool.Parse ((string) value);
- else
- return base.ConvertFrom (context, culture, value);
- }
-
- public override StandardValuesCollection GetStandardValues (ITypeDescriptorContext context)
- {
- return new StandardValuesCollection (new bool[2] {true, false} );
- }
-
- public override bool GetStandardValuesExclusive (ITypeDescriptorContext context)
- {
- return true;
- }
-
- public override bool GetStandardValuesSupported (ITypeDescriptorContext context)
- {
- return true;
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.BrowsableAttribute.cs
-//
-// Author:
-// Miguel de Icaza (miguel@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Ximian, Inc. http://www.ximian.com
-// (C) 2003 Andreas Nahr
-//
-//
-
-//
-// 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.ComponentModel {
-
- [AttributeUsage (AttributeTargets.All)]
- public sealed class BrowsableAttribute : Attribute
- {
- private bool browsable;
-
- public static readonly BrowsableAttribute Default = new BrowsableAttribute (true);
- public static readonly BrowsableAttribute No = new BrowsableAttribute (false);
- public static readonly BrowsableAttribute Yes = new BrowsableAttribute (true);
-
- public BrowsableAttribute (bool browsable)
- {
- this.browsable = browsable;
- }
-
- public bool Browsable {
- get { return browsable; }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is BrowsableAttribute))
- return false;
- if (obj == this)
- return true;
- return ((BrowsableAttribute) obj).Browsable == browsable;
- }
-
- public override int GetHashCode ()
- {
- return browsable.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return browsable == BrowsableAttribute.Default.Browsable;
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.ByteConverter
-//
-// Authors:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-
-namespace System.ComponentModel
-{
- public class ByteConverter : BaseNumberConverter
- {
- public ByteConverter()
- {
- InnerType = typeof (Byte);
- }
-
- internal override bool SupportHex {
- get { return true; }
- }
-
- internal override string ConvertToString (object value, NumberFormatInfo format)
- {
- return ((byte) value).ToString ("G", format);
- }
-
- internal override object ConvertFromString (string value, NumberFormatInfo format)
- {
- return byte.Parse (value, NumberStyles.Integer, format);
- }
-
- internal override object ConvertFromString (string value, int fromBase)
- {
- return Convert.ToByte (value, fromBase);
- }
- }
-}
-
+++ /dev/null
-//------------------------------------------------------------------------------
-//
-// System.ComponentModel.CancelEventArgs.
-//
-// Author: Asier Llano Palacios, asierllano@infonegocio.com
-//
-//------------------------------------------------------------------------------
-
-//
-// 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;
-
-namespace System.ComponentModel {
-
- public class CancelEventArgs : EventArgs
- {
- private bool cancel;
-
- public CancelEventArgs() {
- cancel = false;
- }
-
- public CancelEventArgs( bool cancel )
- {
- this.cancel = cancel;
- }
-
- public bool Cancel {
- get {
- return cancel;
- }
- set {
- cancel = value;
- }
- }
- }
-
-}
-
-
+++ /dev/null
-//------------------------------------------------------------------------------
-//
-// System.ComponentModel.CancelEventHandler.
-//
-// Author: Asier Llano Palacios, asierllano@infonegocio.com
-//
-//------------------------------------------------------------------------------
-
-//
-// 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;
-
-namespace System.ComponentModel {
-
- public delegate void CancelEventHandler( object sender, CancelEventArgs e );
-}
-
-
+++ /dev/null
-//
-// System.ComponentModel.CategoryAttribute.cs
-//
-// Author:
-// Miguel de Icaza (miguel@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Ximian, Inc. http://www.ximian.com
-// (C) 2003 Andreas Nahr
-//
-//
-
-//
-// 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.ComponentModel {
-
- [AttributeUsage (AttributeTargets.All)]
- public class CategoryAttribute : Attribute
- {
- private string category;
- private bool IsLocalized;
-
- static volatile CategoryAttribute action, appearance, behaviour, data, def;
- static volatile CategoryAttribute design, drag_drop, focus, format, key;
- static volatile CategoryAttribute layout, mouse, window_style;
- static volatile CategoryAttribute async;
-
- static object lockobj = new object ();
-
- public CategoryAttribute ()
- {
- this.category = "Misc";
- }
-
- public CategoryAttribute (string category)
- {
- this.category = category;
- }
-
-
- public static CategoryAttribute Action {
- get {
- if (action != null)
- return action;
-
- lock (lockobj) {
- if (action == null)
- action = new CategoryAttribute ("Action");
- }
- return action;
- }
- }
-
- public static CategoryAttribute Appearance {
- get {
- if (appearance != null)
- return appearance;
-
- lock (lockobj) {
- if (appearance == null)
- appearance = new CategoryAttribute ("Appearance");
- }
- return appearance;
- }
- }
-
- public static CategoryAttribute Asynchronous {
- get {
- if (behaviour != null)
- return behaviour;
-
- lock (lockobj) {
- if (async == null)
- async = new CategoryAttribute ("Asynchronous");
- }
- return async;
- }
- }
-
- public static CategoryAttribute Behavior {
- get {
- if (behaviour != null)
- return behaviour;
-
- lock (lockobj) {
- if (behaviour == null)
- behaviour = new CategoryAttribute ("Behavior");
- }
- return behaviour;
- }
- }
-
- public static CategoryAttribute Data {
- get {
- if (data != null)
- return data;
-
- lock (lockobj) {
- if (data == null)
- data = new CategoryAttribute ("Data");
- }
- return data;
- }
- }
-
- public static CategoryAttribute Default {
- get {
- if (def != null)
- return def;
-
- lock (lockobj) {
- if (def == null)
-#if NET_2_1
- def = new CategoryAttribute ("Default");
-#else
- def = new CategoryAttribute ();
-#endif
- }
- return def;
- }
- }
-
- public static CategoryAttribute Design {
- get {
- if (design != null)
- return design;
-
- lock (lockobj) {
- if (design == null)
- design = new CategoryAttribute ("Design");
- }
- return design;
- }
- }
-
- public static CategoryAttribute DragDrop {
- get {
- if (drag_drop != null)
- return drag_drop;
-
- lock (lockobj) {
- if (drag_drop == null)
-#if NET_2_1
- drag_drop = new CategoryAttribute ("DragDrop");
-#else
- drag_drop = new CategoryAttribute ("Drag Drop");
-#endif
- }
- return drag_drop;
- }
- }
-
- public static CategoryAttribute Focus {
- get {
- if (focus != null)
- return focus;
-
- lock (lockobj) {
- if (focus == null)
- focus = new CategoryAttribute ("Focus");
- }
- return focus;
- }
- }
-
- public static CategoryAttribute Format {
- get {
- if (format != null)
- return format;
-
- lock (lockobj) {
- if (format == null)
- format = new CategoryAttribute ("Format");
- }
- return format;
- }
- }
-
- public static CategoryAttribute Key {
- get {
- if (key != null)
- return key;
-
- lock (lockobj) {
- if (key == null)
- key = new CategoryAttribute ("Key");
- }
- return key;
- }
- }
-
- public static CategoryAttribute Layout {
- get {
- if (layout != null)
- return layout;
-
- lock (lockobj) {
- if (layout == null)
- layout = new CategoryAttribute ("Layout");
- }
- return layout;
- }
- }
-
- public static CategoryAttribute Mouse {
- get {
- if (mouse != null)
- return mouse;
-
- lock (lockobj) {
- if (mouse == null)
- mouse = new CategoryAttribute ("Mouse");
- }
- return mouse;
- }
- }
-
- public static CategoryAttribute WindowStyle {
- get {
- if (window_style != null)
- return window_style;
-
- lock (lockobj) {
- if (window_style == null)
-#if NET_2_1
- window_style = new CategoryAttribute ("WindowStyle");
-#else
- window_style = new CategoryAttribute ("Window Style");
-#endif
- }
- return window_style;
- }
- }
-
- protected virtual string GetLocalizedString (string value)
- {
- return Locale.GetText (value);
- }
-
- public string Category {
- get {
- if (IsLocalized == false) {
- IsLocalized = true;
- string LocalizedString = GetLocalizedString (category);
- if (LocalizedString != null)
- category = LocalizedString;
- }
-
- return category;
- }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is CategoryAttribute))
- return false;
- if (obj == this)
- return true;
- return ((CategoryAttribute) obj).Category == category;
- }
-
- public override int GetHashCode ()
- {
- return category.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return category == CategoryAttribute.Default.Category;
- }
- }
-}
-
+++ /dev/null
-2011-05-05 Veerapuram Varadhan <v.varadhan@gmail.com>
-
- ** Fixes #663287
- * NullableConverter.cs (ConvertTo): Compare the type of value
- against underlyingType instead of nullableType.
-
-2010-07-19 Marek Habersack <mhabersack@novell.com>
-
- * MultilineStringConverter.cs: implemented
-
-2010-06-29 Sebastien Pouliot <sebastien@ximian.com>
-
- * ComplexBindingPropertiesAttribute.cs:
- * DefaultBindingPropertyAttribute.cs:
- * DefaultEventAttribute.cs:
- * DefaultPropertyAttribute.cs:
- Fix GetHashCode so that values are equals if Equals
- return true
- * DesignTimeVisibleAttribute.cs: Fix default value for Visible.
-
-2010-06-25 Alan McGovern <amcgovern@novell.com>
-
- * TypeConverter_2_1.cs: Implement ConvertToString as per docs and
- moonlight tests.
-
-2010-05-21 Sebastien Pouliot <sebastien@ximian.com>
-
- * AsyncOperation.cs: Add checks for null delegates
- * BackgroundWorker.cs: Ensure ProgressChanged can be called before
- starting the work but not after its complete
-
-2010-05-20 Sebastien Pouliot <sebastien@ximian.com>
-
- * DefaultValueAttribute.cs: Two instances where DefaultValue ==
- null are equal so they *must* return the same hash code
-
-2010-03-20 Miguel de Icaza <miguel@novell.com>
-
- * TypeDescriptor.cs: Remove warning.
-
-2010-03-16 Jb Evain <jbevain@novell.com>
-
- * TypeConverter_2_1.cs, ComponentCollection.cs,
- PropertyDescriptor.cs: use MOONLIGHT symbol to disambiguate
- MonoTouch and Moonlight code.
-
-2010-02-05 Carlos Alberto Cortez <calberto.cortez@gmail.com>
-
- * MaskedTextProvider.cs: In ToString() if we are a password, use the
- prompt char in the places where no char has been filled in yet, instead of
- putting the password char.
- Fixes #360407.
-
-2010-01-15 Alexandre Gomes <alexmipego@gmail.com>
-
- * BaseNumberConverter.cs: Fixed CanConvertTo and ConvertTo when
- targeting primitive types.
-
-2009-12-08 Marek Habersack <mhabersack@novell.com>
-
- * TypeDescriptor.cs: AddProvider overloads must refresh the
- instance and type when called.
- If GetProvider (object) fails to look up provider for the passed
- instance, it attempts to look up provider for the instance's
- type.
- GetProvider (Type) looks for providers using all the parent types
- of the passed type if no provider for it is found.
- WrappedTypeDescriptionProvider.GetTypeDescriptor chains up to the
- wrapped type, if present.
-
- * TypeDescriptionProvider.cs: GetTypeDescriptor properly returns
- the value obtained from parent in GetTypeDescriptor.
-
-2009-11-30 Sebastien Pouliot <sebastien@ximian.com>
-
- * TypeConverterAttribute.cs: Add missing [ComVisible] for SL2/3 builds
-
-2009-10-14 Jonathan Pryor <jpryor@novell.com>
-
- * TypeConverter_2_1.cs: Skip this type in the MonoTouch profile;
- MonoTouch will be using the 2.0 version of TypeConverter.
- * ComponentCollection.cs, PropertyDescriptor.cs: MonoTouch uses the
- .NET 2.0 versions of these types.
-
-2009-09-29 Alan McGovern <amcgovern@novell.com>
-
- * DefaultValueAttribute.cs: Implement the cctor which takes
- a Type and a string for the SL2 case.
- * CategoryAttribute.cs: Fix a typo in the CategoryAttribute.Asynchronous
- ctor and fix some SL2 specific naming changes for the default properties.
-
-2009-09-24 Ivan N. Zlatev <contact@i-nz.net>
-
- * EnumConverter.cs: Fix conversion of 0 flag values.
- [Fixes bug #541402]
-
-2009-07-22 Jb Evain <jbevain@novell.com>
-
- * ExpandableObjectConverter.cs: no method to override for a NET_2_1 profile.
-
-2009-07-20 Tom Hindle <tom_hindle@sil.org>
-
- * Container.cs: Replaced for loop with for loop.
- [Fixes bug #522474]
-
-2009-07-19 Gert Driesen <drieseng@users.sourceforge.net>
-
- * Container.cs: Use generic list on 2.0 profile, and avoid using var
- on 1.0 profile. Use for loop instead of while in Dispose to avoid
- accessing count on each iteration.
-
-2009-07-19 Gert Driesen <drieseng@users.sourceforge.net>
-
- * Container.cs: Avoid NRE in Remove and RemoveWithoutUnsiting.
-
-2009-07-18 Gert Driesen <drieseng@users.sourceforge.net>
-
- * Container.cs: Changed Dispose(bool) behaviour to match .NET, based
- on patch by Tom Hindle (tom_hindle@sil.org). Also use ValidateName
- in Add overloads on 1.0 profile by making it available as private
- method. Use case-insensitive comparison of component name.
-
-2009-06-29 Gonzalo Paniagua Javier <gonzalo@novell.com>
-
- * LicenseProviderAttribute.cs: avoid nullref when provider has not
- been set or cannot be loaded.
-
-2009-06-23 Marek Habersack <mhabersack@novell.com>
-
- * TypeDescriptor.cs: do not wrap DefaultTypeDescriptionProvider.
- Implemented GetAttributes and GetProperties in
- DefaultTypeDescriptor.
-
- * AttributeCollection.cs: make sure that attrList is never null.
-
-2009-06-22 Marek Habersack <mhabersack@novell.com>
-
- * WeakObjectWrapper.cs, WeakObjectWrapperComparer.cs: added - used
- by TypeDescriptor for storage of type description providers.
-
- * TypeDescriptor.cs: implemented part of the 2.0+ API which deals
- with adding/removing/getting type description providers.
-
- * AttributeCollection.cs: do not throw NREX when attrList is
- null in Count.
-
-2009-05-14 Jonathan Pryor <jpryor@novell.com>
-
- * ListChangedEventArgs.cs: Fix .NET compatibility problems (discovered
- from trying to run the System.Data.Linq unit tests).
-
-2009-04-22 Gonzalo Paniagua Javier <gonzalo@novell.com>
-
- * Win32Exception.cs: made W32ErrorMessage internal.
-
-2009-02-28 Zoltan Varga <vargaz@gmail.com>
-
- * EventHandlerList.cs: Change this to use a linked list as stated by the
- MSDN docs.
-
-2009-02-27 Rodrigo Kumpera <rkumpera@novell.com>
-
- * ReflectionPropertyDescriptor.cs: Don't cache getter and
- setter properties. Cache instead the PropertyInfo objects
- that defined them.
-
- PropertyInfo::Get/SetValue is faster than calling the method
- throught reflection.
-
-2009-02-21 Kornél Pál <kornelpal@gmail.com>
-
- * EventHandlerList.cs: Fix profile 1.x build by not using HandlerEntry.
-
-2009-02-21 Gonzalo Paniagua Javier <gonzalo@novell.com>
-
- * EventHandlerList.cs: there's no need for HandlerEntry here.
- Just store the delegate.
-
-2009-02-19 Marek Habersack <mhabersack@novell.com>
-
- * AttributeCollection.cs: this [Type] shouldn't throw a NREX when
- attrList is null.
-
- * TypeDescriptor.cs: GetConverter (Type) must throw
- ArgumentNullException if the passed parameter is null.
- FindDefaultConverterType should gracefully cope with type being
- null.
-
-2009-01-09 Ivan N. Zlatev <contact@i-nz.net>
-
- * BindingList.cs: Add calls InsertItem which raises OnListChanged, so
- don't raise a duplicate OnListChanged in AddNewCore.
-
-2008-12-22 Ivan N. Zlatev <contact@i-nz.net>
-
- * ReferenceConverter.cs: Implemented.
- [Fixes bug #381435]
-
-2008-12-06 Ivan N. Zlatev <contact@i-nz.net>
-
- * TypeDescriptor.cs: Added support for NullableConverter.
-
-2008-12-06 Ivan N. Zlatev <contact@i-nz.net>
-
- * NullableConverter.cs: Implemented.
-
-2008-12-06 Ivan N. Zlatev <contact@i-nz.net>
-
- * ListSortDescriptionCollection.cs: Add the items supplied in the
- ctor to the internal list.
-
-2008-11-21 Rolf Bjarne Kvinge <rkvinge@novell.com>
-
- * TypeConverter_2_1.cs: fix method signatures to match SL2 api.
-
-2008-11-20 Jb Evain <jbevain@novell.com>
-
- * TypeConverter_2_1.cs: update to SL2 api.
-
-2008-11-12 Jb Evain <jbevain@novell.com>
-
- * IComponent.cs
- * ComponentCollection.cs
- * PropertyDescriptor.cs: adjust api for NET_2_1.
-
-2008-09-08 Jonathan Pobst <monkey@jpobst.com>
-
- * BackgroundWorker.cs: If the user sets Cancel to true, but then
- throws an exception in DoWork, we need to set Cancel back to false.
- [Fixes bug #328830]
-
-2008-09-01 Rodrigo Kumpera <rkumpera@novell.com>
-
- * ReflectionPropertyDescriptor.cs (SetValue, GetValue) : Lookup
- the MethodInfo for accessors in parent types in case of partial
- overrides of virtual properties.
-
-2008-08-07 Sebastien Pouliot <sebastien@ximian.com>
-
- * DefaultValueAttribute.cs: Fix Equals (wrt boxing) and
- GetHashCode (wrt NRE on null Value).
- * PropertyChangedEventArgs.cs: Property PropertyName is not
- virtual for NET_2_1
-
-2008-07-31 Jb Evain <jbevain@novell.com>
-
- * BackgroundWorker.cs
- * DoWorkEventArgs.cs
- * DefaultValueAttribute.cs
- * RunWorkerCompletedEventArgs.cs: clean up for NET_2_1.
-
- * TypeConverter_2_1.cs: new specific type for NET_2_1.
-
-2008-07-23 Marek Habersack <mhabersack@novell.com>
-
- * EventHandlerList.cs: optimize the implementation.
-
-2008-07-17 Ivan N. Zlatev <contact@i-nz.net>
-
- * TypeDescriptor.cs: Attributes precendence (higher to lower)
- should be type -> base types -> interfaces and not
- type -> interfaces -> base types.
-
-2008-07-17 Ivan N. Zlatev <contact@i-nz.net>
-
- * TypeDescriptor.cs:
- - Refactor the default converters table not to be a Hashtable,
- because the order of the keys is not preserved.
- - Fix FindDefaultConverterType to properly make use of the default
- converters.
-
-2008-07-16 Ivan N. Zlatev <contact@i-nz.net>
-
- * TypeDescriptor.cs:
- - Fix GetConverter (Type) overload to have same logic as the
- object one.
- - Object-ReferenceConverter should be the last entry in the predefined
- converters table, so that when we look up we don't end up with the wrong
- converter for derived types.
-
-2008-07-16 Jonathan Pobst <monkey@jpobst.com>
-
- Apply patch from Achille Fouilleul (achille.fouilleul at gadz dot org)
-
- * BackgroundWorker.cs: Ensure the async object is set to null before
- calling RunWorkerCompleted, as IsBusy is based off the async object.
- [Fixes bug #394365]
-
-2008-07-16 Jonathan Pobst <monkey@jpobst.com>
-
- Apply patches from Jordan Callicoat (MonkeeSage at gmail dot com)
-
- * AsyncCompleteEventArgs.cs: RaiseExceptionIfNecessary should throw
- TargetInvocationException if there was an exception, and IOE if
- the operation was cancelled.
- * BackgroundWorker.cs: Do not call RunWorkerCompleted from CancelAsync,
- setting cancel_pending to true is enough.
- * RunWorkerCompletedEventArgs.cs: Raise exceptions when user tries
- to access the Result if there are any exceptions.
- [Fixes bugs #328830 and 373153]
-
-2008-07-01 Rodrigo Kumpera <rkumpera@novell.com>
-
- * PropertyDescriptorCollection.cs : Kill some foreach loops.
-
-2008-06-27 Atsushi Enomoto <atsushi@ximian.com>
-
- * PropertyDescriptorCollection.cs : huh.
-
-2008-06-27 Gert Driesen <drieseng@users.sourceforge.net>
-
- * EventDescriptorCollection.cs: Fixed Empty to return read-only
- collection. In a read-only collection, throw NotSupportedException
- instead of InvalidOperationException when attempting to modify the
- collection. Fixed find to use ordinal comparison on 2.0 profile.
- Fixed IList's IsFixedSize and IsReadOnly.
- * PropertyDescriptorCollection.cs (Find): Use key as argument name
- when name is null. Silly compatiblity fix.
-
-2008-06-27 Gert Driesen <drieseng@users.sourceforge.net>
-
- * EventDescriptorCollection.cs: Fixed NRE in Sort overloads when order
- string array is null.
- * PropertyDescriptorCollection.cs: Fixed NRE in Sort overloads when
- order string array is null.
-
-2008-06-27 Ivan N. Zlatev <contact@i-nz.net>
-
- * PropertyDescriptorCollection.cs, EventDescriptorCollection.cs,
- MemberDescriptor.cs: Implement proper sorting of descriptors by
- comparing their names.
- [Fixes bug #403882]
-
-2008-06-25 Ivan N. Zlatev <contact@i-nz.net>
-
- * TypeDescriptor.cs: Fix a NRE.
- [Fixes bug #403880]
-
-2008-06-11 Atsushi Enomoto <atsushi@ximian.com>
-
- * DateTimeConverter.cs : use MM for month instead of mm.
- Fixed bug #396649, patch by Andy Hume.
-
-2008-06-02 Dick Porter <dick@ximian.com>
-
- * Win32Exception.cs: Turn W32ErrorMessage into an icall so it can
- use the FormatMessage API. Fixes bug 321827.
-
-2008-06-02 Ivan N. Zlatev <contact@i-nz.net>
-
- * MemberDescriptor.cs, PropertyDescriptor.cs,
- ReflectionPropertyDescriptor.cs: Implement FillAttributes.
- * MemberDescriptor.cs:
- - Attributes should be checked for duplicates based on their
- TypeId and not Type.
- - For duplicate attributes the last one added has higher precedence.
- * ReflectionPropertyDescriptor.cs: Use the property type supplied
- in the ctor instead of using reflection, because this won't work if
- there are more then one property with the same name.
-
-2008-05-29 Ivan N. Zlatev <contact@i-nz.net>
-
- * TypeDescriptor.cs: GetAttributes must retrieve the attributes of
- the type, the base types and the interfaces the type implements.
- [Fix part of bug #394310]
-
-2008-05-21 Atsushi Enomoto <atsushi@ximian.com>
-
- * INotifyPropertyChanging.cs, PropertyChangingEventArgs.cs,
- PropertyChangingEventHandler.cs : new types in 2.0 SP1.
-
-2008-05-19 Sebastien Pouliot <sebastien@ximian.com>
-
- * CharConverter.cs,
- * DateTimeConverter.cs,
- * GuidConverter.cs,
- * TimeSpanConverter.cs: Avoid unboxing structs more than one time.
- [Found using Gendarme]
-
-2008-05-05 James Fitzsimons <james.fitzsimons@gmail.com>
-
- * TypeDescriptor.cs: GetProperties should not return write-only
- properties.
-
-2008-04-26 Jb Evain <jbevain@novell.com>
-
- * PropertyTabAttribute.cs, BindingList.cs: replace
- usages of new Type [0] with Type.EmptyTypes.
- Found with Gendarme.
-
-2008-04-16 Marek Habersack <mhabersack@novell.com>
-
- * ReferenceConverter.cs: fix ConvertFrom and ConvertTo when
- converting from/to string - base must be called only if the
- conversion target type is NOT string, otherwise the result of the
- conversion will be the value type name.
-
-2008-04-13 Jb Evain <jbevain@novell.com>
-
- * TypeDescriptor.cs: internalize method AddEditorTable
- for the 2.1 profile.
- Merged from the Moonlight 2 branch.
-
-2008-04-07 Ivan N. Zlatev <contact@i-nz.net>
-
- * ReflectionPropertyDescriptor.cs: ReadOnlyAttribute has a Default,
- so there is no need for a null reference check. Fixes the attr_ro unused
- value warning during compilation.
-
-2008-03-28 Ivan N. Zlatev <contact@i-nz.net>
-
- * TypeDescriptor.cs: Do not return parent type properties, where the child
- has used "new" and also changed the property return type. The problem was that
- Type.GetProperties returns both the child and parent property in this case.
- [Fixes bug #374334]
-
-2008-03-19 Ivan N. Zlatev <contact@i-nz.net>
-
- * PropertyTabAttribute.cs: Implement Equals, bugfixes and refactorings.
-
-2008-03-15 Gert Driesen <drieseng@users.sourceforge.net>
-
- * DesignerAttribute.cs: To match MS, throw NRE when designerTypeName
- argument is null in ctors.
-
-2008-03-13 Ivan N. Zlatev <contact@i-nz.net>
-
- * DesignerAttribute.cs: For the TypeId strip type name only
- of the base type to prevent AssemblyQualifiedName and not clashes.
- * TypeDescriptor.cs: GetAttributes should ask for the inherited
- attributes. I was wrong.
-
-2008-03-10 Ivan N. Zlatev <contact@i-nz.net>
-
- * TypeDescriptor.cs: GetAttributes should not ask the Type
- for the inherited attributes. Until recently it didn't
- make a difference if we did or not, because
- Type.GetCustomAttributes never returned inherited such.
-
-2008-03-06 Ivan N. Zlatev <contact@i-nz.net>
-
- * Container.cs: On disposal unsite the component first before
- disposing in order to prevent it from asking us to remove it
- through the Site property.
- [Fixes bugs #367653 and #367583]
-
-2008-03-01 Ivan N. Zlatev <contact@i-nz.net>
-
- * Component.cs: Do not set the Site to null on disposing as this
- is the Containers job. Instead try to remove from Container if sited.
-
-2008-02-26 Gert Driesen <drieseng@users.sourceforge.net>
-
- * CharConverter.cs: Use trimmed value in FormatException.
-
-2008-02-26 Ivan N. Zlatev <contact@i-nz.net>
-
- * PropertyDescriptor.cs:
- - Implement CreateInstance and GetTypeFromName
- and refactor GetEditor and Converter use them.
- - Drop TypeDescriptor.GetTypeFromName as we also want to check the
- ComponentType assembly, which it doesn't do.
- * TypeDescriptor.cs: Make GetTypeFromName private as it is no longer
- used from the outside.
-
-2008-02-26 Ivan N. Zlatev <contact@i-nz.net>
-
- * ReflectionPropertyDescriptor.cs: Use Attribute.GetCustomAttributes
- instead of PropertyInfo.GetCustomAttributes as the latter will not
- retrieve inherited attributes.
- [Fixes bug #322464]
-
-2008-02-17 Gert Driesen <drieseng@users.sourceforge.net>
-
- * CharConverter.cs (ConvertFrom): Avoid NRE when value is null.
- Provide more info when left of value > 1.
- * CultureInfoConverter.cs (ConvertFrom): Avoid NRE when value is null.
- On 2.0 profile, use case-sensitive comparison for (Default) value.
- Use case-insensitive comparing when value is considered as displayname.
- Provide more info in exception message.
- (ConvertTo): Use '(Default)' instead of '(default)' for invariant
- culture.
-
-2008-02-16 Ivan N. Zlatev <contact@i-nz.net>
-
- * CharConverter.cs:
- - Handle \0 char.
- - Trim the ConvertFrom string
- - Handle null string in ConvertFrom as \0 char.
- [Fixes bug #362112]
-
-2008-02-16 Ivan N. Zlatev <contact@i-nz.net>
-
- * CultureInfoConverter.cs:
- - Handle "(default)" to and from conversion
- - Sort cultures alphabetically and also cache them.
- [Fixes bug #362113]
-
-2008-02-16 Ivan N. Zlatev <contact@i-nz.net>
-
- * TypeDescriptor.cs, PropertyDescriptor.cs:
- Do not throw when can't find Type from string.
- * ReferenceConverter.cs: Convert null value from and to string.
- Return an empty StandardValueCollection.
- [Part of fix for bugs #360666 and #358332]
-
-2008-02-04 Ivan N. Zlatev <contact@i-nz.net>
-
- * DateTimeConverter.cs: handle empty strings in ConvertFrom.
-
-2008-01-19 Rolf Bjarne Kvinge <RKvinge@novell.com>
-
- * MaskedTextProvider.cs: Fix IsPassword (found by Gendarme)
-
-2008-01-07 Sebastien Pouliot <sebastien@ximian.com>
-
- * CultureInfoConverter.cs: Gendarme's AvoidToStringOnStringsRule in
- ConvertFrom method.
- * DesignerAttribute.cs: Gendarme's AvoidToStringOnStringsRule in
- TypeId getter.
-
-2008-01-04 Ivan N. Zlatev <contact@i-nz.net>
-
- * ReflectionPropertyDescriptor.cs: Create Transactions with
- descriptions when setting/resetting the property.
-
-2008-01-03 Gert Driesen <drieseng@users.sourceforge.net>
-
- * Component.cs: Moved Site property before Container to match MS. This
- allows a unit test for ordered result of TypeDescriptor.GetProperties
- to pass.
-
-2008-01-03 Vladimir Krasnov <vladimirk@mainsoft.com>
-
- * TypeDescriptor.cs: fixed properties order in returning collections
- in PropertyDescriptorCollection
-
-2007-12-25 Vladimir Krasnov <vladimirk@mainsoft.com>
-
- * PropertyDescriptorCollection.cs: optimized Find method, removed
- culture sensitive string comparison
-
-2007-12-19 Dick Porter <dick@ximian.com>
-
- * Win32Exception.cs: Add text for error 5, Access denied.
-
-2007-12-04 Arina Itkes <arinai@mainsoft.com>
-
- * WarningException.cs:
- Changes for SOAP serialization compatibility with .NET.
-
-2007-12-04 Gert Driesen <drieseng@users.sourceforge.net>
-
- * Win32Exception.cs: Do not pass native error to base ctors.
-
-2007-11-15 Gert Driesen <drieseng@users.sourceforge.net>
-
- * MemberDescriptor.cs: Spaces to tabs, code formatting.
- * PropertyDescriptor.cs: When adding or removing a new handler for an
- existing component, update the hashtable. In GetValueChangedHandler,
- return null if component is null.
-
-<2007-11-12 Atsushi Enomoto <atsushi@ximian.com>
-
- * PropertyDescriptor.cs : implement GetValueChangedHandler().
- * ToolboxItemFilterAttribute.cs : implement ToString().
-
-2007-11-03 Gert Driesen <drieseng@users.sourceforge.net>
-
- * InvalidEnumArgumentException.cs: Fixed default ctor. Modified
- message on 2.0 profile for ctor (string, int, Type) to match MS.
-
-2007-10-29 Atsushi Enomoto <atsushi@ximian.com>
-
- * AttributeCollection.cs : implemented FromExisting().
- * Container.cs : implemented ValidateName() support.
- * ContainerFilterService.cs : FilterComponents() does nothing.
- * InstanceCreationEditor.cs : implemented get_Text().
-
-2007-09-27 Atsushi Enomoto <atsushi@ximian.com>
-
- * TypeDescriptor.cs : added missing ObsoleteAttribute.
- * MemberDescriptor.cs, PropertyDescriptor.cs :
- implemented GetInvocationTarget().
-
-2007-09-25 Jonathan Pobst <monkey@jpobst.com>
-
- * AsyncOperationManager.cs: Tie the SynchronizationContext here to
- SynchronizationContext.Current.
-
-2007-09-17 Gert Driesen <drieseng@users.sourceforge.net>
-
- * ComponentResourceManager.cs: In ApplyResources, when culture is
- null use CurrentUICulture. Use hashtable, which is case-insensitive
- when IgnoreCase is true, to store the resources of the specified
- culture and its parent(s). When IgnoreCase is set, perform a
- case-insensitive lookup of property. Ignore resources that have no
- value, or where the value is not an instance of the property type.
- Fixes bug #82674.
-
-2007-09-05 Gert Driesen <drieseng@users.sourceforge.net>
-
- * EnumConverter.cs: Added support for converting flag enum from
- string.
-
-2007-08-31 Gert Driesen <drieseng@users.sourceforge.net>
-
- * TypeConverter.cs: Fixed GetConvertFromException and
- GetConvertToException to match MS, and use these in ConvertFrom and
- ConvertTo.
- * EnumConverter.cs: Use IsFlags instead of duplicating code that
- checks for FlagsAttribute. When converting to InstanceDescriptor and
- no corresponding enum field is found, then let base class throw a
- NotSupportedException.
-
-2007-08-30 Ivan N. Zlatev <contact@i-nz.net>
-
- * EnumConverter.cs: Implemented conversion to InstanceDescriptor
- for enums with a FlagsAttribute. Fixes #82118.
-
-2007-08-29 Ivan N. Zlatev <contact@i-nz.net>
-
- * DesignerOptionService.cs: implemented.
- * ITreeDesigner.cs: implemented.
-
-2007-08-25 Ivan N. Zlatev <contact@i-nz.net>
-
- * NestedContainer.cs: implemented.
-
-2007-08-25 Ivan N. Zlatev <contact@i-nz.net>
-
- * TypeDescriptionProvider.cs: implemented.
- * TypeDescriptionProviderAttribute.cs: implemented.
- * CustomTypeDescriptor.cs: implemented.
- * TypeDescriptor.cs: Implement CreateInstance.
-
-2007-08-20 Gert Driesen <drieseng@users.sourceforge.net>
-
- * EnumConverter.cs: Conversion to and from Enum [] is 2.0 only.
- Modified conversion to string to support enum names and integral
- values, and throw ArgumentException if value is not valid.
- For conversion to InstanceDescriptor, use ConvertToString to get name
- of field. Avoid endless loop when converting to Enum [].
- * ToolboxItemFilterType.cs: Spaces to tabs.
- * TypeConverter.cs: Improve exception messages (to match MS).
-
-2007-08-19 Ivan N. Zlatev <contact@i-nz.net>
-
- * ReflectionPropertyDescriptor.cs: For read-only properties,
- ShouldSerializeValue must also check for
- DesignerSerializationVisibility.Content and if present return true.
-
-2007-08-19 Ivan N. Zlatev <contact@i-nz.net>
-
- * EnumConverter.cs: Implement conversion to and from Enum[]
-
-2007-08-19 Ivan N. Zlatev <contact@i-nz.net>
-
- * TypeDescriptor.cs: GetProperties should return only the last type's
- implementation of a property with a matching name in the base types.
-
-2007-08-03 Jb Evain <jbevain@novell.com>
-
- * ComponentCollection.cs: use our own collection base
- for the 2.1 profile, as ReadOnlyCollectionBase does not exist
- in 2.1, and they are internalized by the linker.
-
-2007-08-01 Atsushi Enomoto <atsushi@ximian.com>
-
- * BackgroundWorker.cs : remove extra MonoTODOs.
-
-2007-07-21 Gert Driesen <drieseng@users.souceforge.net>
-
- * DisplayNameAttribute.cs: To match MS, do not change null DisplayName
- to a zero-length string. Modified IsDefaultAttribute to take into
- account null DisplayName.
-
-2007-07-16 Gert Driesen <drieseng@users.sourceforge.net>
-
- * ReflectionPropertyDescriptor.cs: For read-only properties,
- ShouldSerializeValue must only take into account the return value
- of the ShouldSerialize method. Code formatting.
-
-2007-07-12 Rolf Bjarne Kvinge <RKvinge@novell.com>
-
- * PropertyDescriptor.cs: GetEditor: We have to check the property
- itself for attributes as well, not only the property type.
- * TypeDescriptor.cs: Make a couple of methods internal so that
- PropertyDescriptor can use them.
-
-2007-07-12 Rolf Bjarne Kvinge <RKvinge@novell.com>
-
- * TypeDescriptor.cs: GetEditor: Make sure the static constructor of the
- editors basetype is called, since that's where we're initializing
- the editor table.
-
-2007-07-11 Igor Zelmanovich <igorz@mainsoft.com>
-
- * ReflectionPropertyDescriptor: fixed ShouldSerializeValue:
- MSDN: If this method cannot find a DefaultValueAttribute or
- a ShouldSerializeMyProperty method, it cannot create optimizations
- and it returns true.
-
-2007-07-11 Igor Zelmanovich <igorz@mainsoft.com>
-
- * ReflectionPropertyDescriptor: fixed ShouldSerializeValue:
- avoid NullReferenceException.
-
-2007-07-10 Rolf Bjarne Kvinge <RKvinge@novell.com>
-
- * TypeDescriptor.cs: Implemented AddEditorTable, and check the editor
- table in GetEditor if no editor can be found using attributes.
-
-2007-06-30 Gert Driesen <drieseng@users.sourceforge.net>
-
- * PropertyDescriptorCollection.cs: Added missing explicit interface
- implementation of IEnumerable.GetEnumerator.
- * TypeDescriptor.cs: Params modifier applies to 1.0 profile as well.
- Spaces to tabs.
-
-2007-05-31 Atsushi Enomoto <atsushi@ximian.com>
-
- * LookupBindingPropertiesAttribute.cs:
- Should be sealed. Implemented GetHashCode().
-
-2007-05-31 Atsushi Enomoto <atsushi@ximian.com>
-
- * ContainerFilterService.cs CustomTypeDescriptor.cs
- InstanceCreationEditor.cs InvalidAsynchronousStateException.cs
- MultilineStringConverter.cs NestedContainer.cs
- NullableConverter.cs TypeDescriptionProvider.cs
- TypeDescriptionProviderAttribute.cs :
- 2.0 stubs except for [Obsolete].
- * TypeDescriptor.cs : added missing 2.0 members.
-
-2007-05-31 Atsushi Enomoto <atsushi@ximian.com>
-
- * PropertyDescriptor.cs : oops, wrong fix.
-
-2007-05-31 Atsushi Enomoto <atsushi@ximian.com>
-
- * PropertyDescriptor.cs : call base. fix winforms tests.
-
-2007-05-31 Rolf Bjarne Kvinge <RKvinge@novell.com>
-
- * LookupBindingPropertiesAttribute.cs: Implemented.
-
-2007-05-31 Atsushi Enomoto <atsushi@ximian.com>
-
- * AsyncOperationManager.cs AttributeCollection.cs
- BackgroundWorker.cs BindingList.cs CategoryAttribute.cs
- Component.cs DataObjectFieldAttribute.cs DefaultValueAttribute.cs
- DescriptionAttribute.cs EventDescriptorCollection.cs
- IComNativeDescriptorHandler.cs IListSource.cs
- ListSortDescriptionCollection.cs MemberDescriptor.cs
- PropertyDescriptor.cs SyntaxCheck.cs ToolboxItemFilterAttribute.cs:
- 2.0 profile updates.
-
-2007-05-15 Adar Wesley <adarw@mainsoft.com>
-
- * AttributeCollection.cs: added missing method FromExisting.
-
- * Container.cs: added missing method ValidateName
-
- * DefaultValueAttribute.cs: added missing method SetValue.
-
- * EventHandlerList.cs: added missing method AddHandlers.
-
- * MemberDescriptor.cs: added missing method GetInvocationTarget.
-
- * PropertyDescriptor.cs: added missing method GetValueChangedHandler.
-
- * TypeDescriptor.cs: added missing methods CreateInstance, GetFullComponentName,
- GetClassName, GetReflectionType, CreateAssociation, GetAssociation,
- RemoveAssociation, RemoveAssociations.
-
-2007-05-14 Vladimir Krasnov <vladimirk@mainsoft.com>
-
- * PropertyDescriptorCollection.cs: fixed Find method, compare using
- invariant culture
-
-2007-05-10 Rolf Bjarne Kvinge <RKvinge@novell.com>
-
- * MaskedTextProvider.cs: Small fix for ToString for passwords.
-
-2007-05-09 Igor Zelmanovich <igorz@mainsoft.com>
-
- * Win32Exception.cs:
- added MonoNotSupported attribute for TARGATE_JVM.
-
-2007-05-08 Igor Zelmanovich <igorz@mainsoft.com>
-
- * RunWorkerCompletedEventArgs.cs: added 'new' keyword, cause
- UserState hides inherit property.
-
-2007-04-07 Gert Driesen <drieseng@users.sourceforge.net>
-
- * RecommendedAsConfigurableAttribute.cs: Mark obsolete on 2.0 profile.
-
-2007-03-05 Rolf Bjarne Kvinge <RKvinge@novell.com>
-
- * MaskedTextProvider.cs: Make internal methods private.
-
-2007-02-27 Rolf Bjarne Kvinge <RKvinge@novell.com>
-
- * MaskedTextProvider.cs: Added.
-
-2007-02-17 Gert Driesen <drieseng@users.sourceforge.net>
-
- * DateTimeConverter.cs: Fixed typo in exception message.
-
-2007-02-13 Gert Driesen <drieseng@users.sourceforge.net>
-
- * TypeDescriptor.cs: Do not assume that an ISite always has an
- ITypeDescriptorFilterService. Fixes bug #80836.
-
-2007-01-29 Marek Habersack <grendello@gmail.com>
-
- * PasswordPropertyTextAttribute.cs: Implement.
-
-2007-01-21 Zoltan Varga <vargaz@gmail.com>
-
- * RecommendedAsConfigurableAttribute.cs: Make this non-obsolete to fix
- the 2.0 build, since System.ServiceProcess.ServiceController uses it.
-
-2007-01-20 Chris Toshok <toshok@ximian.com>
-
- * InheritanceLevel.cs: 2.0 class-status work.
-
- * ListSortDirection.cs: same.
-
- * BindableSupport.cs: same.
-
- * SyntaxCheck.cs: same.
-
- * CancelEventHandler.cs: same.
-
- * ListChangedEventHandler.cs: same.
-
- * SettingsBindableAttribute.cs: same.
-
- * ToolboxItemFilterType.cs: same.
-
- * PropertyChangedEventHandler.cs: same.
-
- * MarshalByValueComponent.cs: same.
-
- * LicenseUsageMode.cs: same.
-
- * RefreshProperties.cs: same.
-
- * RecommendedAsConfigurableAttribute.cs: same.
-
-2007-01-20 Chris Toshok <toshok@ximian.com>
-
- * BindingList.cs: new class.
-
-2007-01-13 Miguel de Icaza <miguel@novell.com>
-
- * DataObjectFieldAttribute.cs: Removed some code I left from the
- copy/paste activity from the xxxMethodxx.
-
-2007-01-12 Miguel de Icaza <miguel@novell.com>
-
- * DataObjectFieldAttribute.cs: Add new file.
-
-2007-01-11 Dick Porter <dick@ximian.com>
-
- * Win32Exception.cs: Add error 50 (ERROR_NOT_SUPPORTED)
-
-2007-01-08 Raja R Harinath <rharinath@novell.com>
-
- * ISupportInitializeNotification.cs: Add implemented interface.
- * ICancelAddNew.cs, IIntellisenseBuilder.cs: New.
- * INestedContainer.cs, INestedSite.cs: New.
-
-2007-01-02 Konstantin Triger <kostat@mainsoft.com>
-
- * DataObjectAttribute.cs: Implemented.
-
-2007-01-02 Konstantin Triger <kostat@mainsoft.com>
-
- * EventHandlerList.cs: Do not reject null key.
-
-2006-12-25 Raja R Harinath <harinath@gmail.com>
-
- * InitializationEventAttribute.cs: New.
-
-2006-12-24 Konstantin Triger <kostat@mainsoft.com>
-
- * Implemented DataObjectMethodAttribute and DataObjectMethodType.
-
-2006-12-22 Rolf Bjarne Kvinge <RKvinge@novell.com>
-
- * DefaultBindingPropertyAttribute.cs: new attribute.
-
-2006-12-21 Gert Driesen <drieseng@users.sourceforge.net>
-
- * MemberDescriptor.cs: On 2.0 profile, take the DisplayNameAttribute
- into account for DisplayName. Fixes bug #80292.
-
-2006-12-20 Chris Toshok <toshok@ximian.com>
-
- * AttributeProviderAttribute.cs: new class.
-
-2006-12-20 Chris Toshok <toshok@ximian.com>
-
- * ComplexBindingPropertiesAttribute.cs: add Default field.
-
-2006-12-20 Chris Toshok <toshok@ximian.com>
-
- * ComplexBindingPropertiesAttribute.cs: new 2.0 attribute.
-
-2006-12-19 Chris Toshok <toshok@ximian.com>
-
- * PropertyDescriptor.cs: stop crashing on a missing type
- converter.
-
-2006-12-06 Chris Toshok <toshok@ximian.com>
-
- * ReflectionPropertyDescriptor.cs: turns out if "ShouldSerialize*"
- is present and returns false, "CanReset*" also returns false.
-
-2006-12-06 Chris Toshok <toshok@ximian.com>
-
- * ReflectionPropertyDescriptor.cs: ShouldSerializeValue should
- return false if there's no ShouldSerialize method.
-
-2006-12-06 Chris Toshok <toshok@ximian.com>
-
- * ReflectionPropertyDescriptor.cs: fixes for CanResetValue and
- ShouldSerializeValue - we need to find both public and nonpublic
- methods.
-
-2006-12-01 Duncan Mak <duncan@a-chinaman.com>
-
- * AddingNewEventArgs.cs:
- * AddingNewEventHandler.cs: Added.
-
- * ListChangedEventArgs.cs (.ctor): Uncomment the bit about
- property descriptor now that there's an implementation of it.
- (PropertyDescriptor): New 2.0 property.
-
-2006-11-29 Ivan N. Zlatev <contact@i-nz.net>
-
- * MemberDescriptor.cs, ReflectionPropertyDescriptor.cs: 1) The
- ReflectionPropretyDescriptor must be able to operate with non
- public properties.
-
- 2) The current implementation ignores the fact that the component
- can be in design mode. In design mode some of the properties (the
- design-time ones) are supposed to be redirected to the
- designer. The component which should be used to access the
- property is retrieved by using MemberDescriptor.GetInvokee
- (implemented in the patch). Updated the
- ReflectorPropertyDescriptor to use GetInvokee to decide which
- component should it use.
-
- Reviewed by: Miguel de Icaza
-
-2006-11-28 Miguel de Icaza <miguel@novell.com>
-
- * TypeDescriptor.cs: This implementation is really from Gonzalo,
- he dictated to me :-)
-
-2006-11-20 Nagappan A <anagappan@novell.com>
-
- * ISupportInitializeNotification.cs: New Interface file to support
- NET 2.0 features.
-
-2006-11-09 Chris Toshok <toshok@ximian.com>
-
- * ReflectionPropertyDescriptor.cs: IsReadOnly needs to take into
- account the ReadOnlyAttribute.
-
-2006-11-08 Gert Driesen <drieseng@users.sourceforge.net>
-
- * ArrayConverter.cs: Modifed ConvertTo for Array => String to match
- MS. In GetProperties, throw NRE to match MS.
-
-2006-11-08 Chris Toshok <toshok@ximian.com>
-
- * ArrayConverter.cs: implement GetProperties correctly, by
- creating ArrayPropertyDescriptor objects for each array element.
-
-2006-10-05 Andrew Skiba <andrews@mainsoft.com>
-
- * EventHandlerList.cs: Implement event handler list according to MS
- definition. No hash table, just a simple list with good performance
- for a small number of events (<20) and worse performance when number
- of events is bigger (patch by eyala@mainsoft.com).
-
-2006-10-29 Alexander Olk <alex.olk@googlemail.com>
-
- * ComponentResourceManager.cs: Make ApplyResources work.
- Instead of iterating through the resource set table we now
- read the property infos of an object and check if there is
- an item in the resource set for each property info. This makes
- it finally possible to create language dependent resources
- that do not have to include everything from a parent culture
- resource (mostly invariant culture).
- Throw an ArgumentNullException if value or objectName is null.
-
-2006-10-29 Alexander Olk <alex.olk@googlemail.com>
-
- * ComponentResourceManager.cs: Don't close the resource set in
- ApplyResources, it is possible to call ApplyResources multiple
- times. Closing the resource set means that it gets disposed.
- Fixes bug #79182.
-
-2006-09-28 Andrew Skiba <andrews@mainsoft.com>
-
- * Component.cs,PropertyDescriptorCollection.cs,MarshalByValueComponent.cs:
- TARGET_JVM
-
-2006-09-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * Container.cs: 'unsite' the component when removing it. Fixes
- bug #79255. Patch by Ivan N. Zlatev.
-
-2006-09-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * TypeDescriptor.cs: don't ignore toplevel attributes when they are
- overriden.
-
- Patch by Ivan N. Zlatev that fixes bug #79256.
-
-2006-08-20 Gert Driesen <drieseng@users.sourceforge.net>
-
- * InvalidEnumArgumentException.cs: Beautify error message.
-
-2006-08-14 Raja R Harinath <rharinath@novell.com>
-
- * IRaiseItemChangedEvents.cs: Add. Mentioned in #79012.
-
-2006-07-31 Sebastien Pouliot <sebastien@ximian.com>
-
- * InvalidEnumArgumentException.cs: Updated to 2.0.
- * LicenseException.cs: Updated to 2.0. Add a demand for
- SerializationFormatter on GetObjectData method.
- * TypeDescriptor.cs: Add linkdemand for ReflectionPermission on
- CreateEvent and CreateProperties methods. Add linkdemand for
- unrestricted on ComNativeDescriptorHandler get/set.
- * WarningException.cs: Updated to 2.0. Add a demand for
- SerializationFormatter on GetObjectData method.
- * Win32Exception.cs: Add a demand for SerializationFormatter on
- GetObjectData method.
-
-2006-07-14 Peter Dennis Bartok <pbartok@novell.com>
-
- * MaskedTextResultHint.cs: Added
-
-2006-05-31 Gert Driesen <drieseng@users.sourceforge.net>
-
- * TypeConverter.cs: Added explicit interface implementation for
- ICollection.CopyTo and IEnumerable.GetEnumerator. Fixes corcompare
- warnings.
- * Component.cs: Remove TypeConverter attribute. Fixes corcompare
- warning.
- * AttributeCollection.cs: Added explicit interface implemenation for
- IEnumerable.GetEnumerator, IList.RemoveAt and ICollection.Count.
- Fixes corcompare warnings.
- * PropertyDescriptorCollection.cs: Added explicit interface
- implemenation for ICollection.Count. Fixes corcompare warning.
-
-2006-05-22 Atsushi Enomoto <atsushi@ximian.com>
-
- * TypeDescriptor.cs : GetProperties() does not return indexers.
-
-2006-05-11 Atsushi Enomoto <atsushi@ximian.com>
-
- * ReflectionPropertyDescriptor.cs,
- DerivedPropertyDescriptor.cs : invoke OnValueChanged() when
- the value was successfully changed. It is needed to have
- MWF PropertyGrid change properties successfully.
-
-2006-05-08 Atsushi Enomoto <atsushi@ximian.com>
-
- * AsyncOperation.cs : SynchronizationContext.OperationStarted()
- should not be called more than once. So move it from Post() to
- .ctor(). Thanks again to cl.
-
-2006-05-08 Atsushi Enomoto <atsushi@ximian.com>
-
- * AsyncOperation.cs : call OperationStared() at Post(). Call
- OperationCompleted() at the finalizer. Thanks to cl.
-
-2006-05-08 Atsushi Enomoto <atsushi@ximian.com>
-
- * SettingsBindableAttribute.cs : new file. Bug #78333 is fixed.
-
-2006-04-27 Miguel de Icaza <miguel@novell.com>
-
- * Component.cs: The converter for the Component is
- ComponentConverter, which makes the GetPropertiesSupported return
- true. So JChamber's patch should work now.
-
-2006-04-26 Miguel de Icaza <miguel@novell.com>
-
- * TypeDescriptor.cs (Info.GetProperties, TypeInfo.GetProperties):
- Use the more specific GetProperties call so we do not return
- static properties, should fix that part of the PropertyGrid bug
- #78192.
-
- Code formatting police hit again.
-
- * ReflectionPropertyDescriptor.cs (CanResetvalue): Do not
- dereference a null value, avoids crash in property grid.
-
- Code formatting police.
-
-2006-04-25 Miguel de Icaza <miguel@novell.com>
-
- * TypeConverter.cs (ConvertFrom): Do not crash if we are passed a
- null value.
-
-2006-04-25 Atsushi Enomoto <atsushi@ximian.com>
-
- * BaseNumberConverter.cs : (ConvertTo) regardless of InnerType,
- it converts the argument value to InnerType using supplied format.
- (It might be not limited to NET_2_0 but it's too cosmetic to dig
- into the problem. At least this is for run-test-ondotnet fixes.)
-
-2006-04-17 Atsushi Enomoto <atsushi@ximian.com>
-
- * BackgroundWorker.cs, RunWorkerCompletedEventArgs.cs :
- cosmetic attribute fixes.
-
-2006-04-17 Atsushi Enomoto <atsushi@ximian.com>
-
- * AsyncOperation.cs,
- AsyncOperationManager.cs
- BackgroundWorker.cs
- DoWorkEventArgs.cs
- DoWorkEventHandler.cs
- RunWorkerCompletedEventArgs.cs
- RunWorkerCompletedEventHandler.cs :
- Initial implementation of AsyncOperation and BackgroundWorker.
-
- (However I think it does not work as expected - it depends on
- SynchronizationContext.Post() and I doubt it works fine - the
- callback should run synchronously while it does not look so.)
-
-2006-03-30 Atsushi Enomoto <atsushi@ximian.com>
-
- * AsyncCompletedEventArgs.cs : constructor did not initialize fields.
-
-2006-03-28 Atsushi Enomoto <atsushi@ximian.com>
-
- * ProgressChangedEventHandler.cs ProgressChangedEventArgs.cs :
- added 2.0 types.
-
-2006-02-26 Pedro Martinez Julia <pedromj@gmail.com>
-
- * HandledEventHandler.cs: Resolving a "Replaced" SVN flag.
-
-2006-02-23 Andrew Skiba <andrews@mainsoft.com>
-
- * TypeDescriptor.cs: performance improvement for GetAttributes,
- GetProperties and GetEvents. See the standalone test for the use case.
-
-2006-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * Container.cs: patch by Brian Crowell that fixes GetService().
-
-2006-01-22 Chris Toshok <toshok@ximian.com>
-
- * DesignerSerializationVisibilityAttribute.cs: in the 2.0 case,
- this attribute is valid on fields and events as well.
-
-2005-11-19 Zoltan Varga <vargaz@gmail.com>
-
- * TypeDescriptor.cs: Small changes to make this more compliant with
- MSDN docs and actual MS behaviour.
-
-2005-11-07 Pedro Martinez Julia <pedromj@gmail.com>
-
- * IBindingListView.cs Initial implementation
- * HandledEventArgs.cs Initial implementation
- * HandledEventHandler.cs Initial implementation
- * ListSortDescription.cs: Initial implementation
- * ListSortDescriptionCollection.cs: Initial implementation
-
-2005-10-31 Dick Porter <dick@ximian.com>
-
- * Win32Exception.cs: Add another error code.
-
-2005-09-20 Chris Toshok <toshok@ximian.com>
-
- * INotifyPropertyChanged.cs: new interface.
-
-2005-09-19 Gert Driesen <drieseng@users.sourceforge.net>
-
- * TypeDescriptor.cs: Remove usage of removed internal
- PropertyDescriptorCollection ctor. Return read-only collection.
- * PropertyDescriptorCollection.cs: Removed internal ctor taking
- ArrayList. Add ctor for making read-only collection. Added
- read-only checks. Implemented IsReadOnly and IsFixedSize. Empty now
- returns read-only collection to match MS.NET.
-
-2005-09-12 Gert Driesen <drieseng@users.sourceforge.net>
-
- * TypeConverter.cs: Only return browsable properties in GetProperties.
-
-2005-08-28 Gert Driesen <drieseng@users.sourceforge.net>
-
- * DateTimeConverter.cs: ConvertTo must return zero-length string
- for DateTime.MinValue. Use CultureInfo.GetFormat to obtain
- DateTimeFormatInfo to match MS.NET.
-
-2005-08-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * TypeDescriptor.cs: remove double lock in DefaultConverter.
-
-2005-08-26 Gert Driesen <drieseng@users.sourceforge.net>
-
- * BaseNumberConverter.cs: Use CultureInfo.GetFormat to obtain
- NumberFormatInfo to match MS.NET. Added ConvertToString abstract
- method for conversion to string.
- * ByteConverter.cs: Implemented ConvertToString.
- * DecimalConverter.cs: Implemented ConvertToString.
- * DoubleConverter.cs: Implemented ConvertToString.
- * Int16Converter.cs: Implemented ConvertToString.
- * Int32Converter.cs: Implemented ConvertToString.
- * Int64Converter.cs: Implemented ConvertToString.
- * SByteConverter.cs: Implemented ConvertToString.
- * SingleConverter.cs: Implemented ConvertToString.
- * UInt16Converter.cs: Implemented ConvertToString.
- * UInt32Converter.cs: Implemented ConvertToString.
- * UInt64Converter.cs: Implemented ConvertToString.
-
-2005-08-19 Gert Driesen <drieseng@users.sourceforge.net>
-
- * SingleConverter.cs: Implement conversion from string to match MS.NET.
- Set eol-style to native.
- * TypeConverter.cs: Always support conversion from InstanceDescriptor.
- Set eol-style to native.
- * UInt16Converter.cs: Implement conversion from string to match MS.NET.
- Added support for converting string containing hex prefix. Set
- eol-style to native.
- * SByteConverter.cs: Implement conversion from string to match MS.NET.
- Added support for converting string containing hex prefix. Set
- eol-style to native.
- * Int16Converter.cs: Implement conversion from string to match MS.NET.
- Added support for converting string containing hex prefix. Set
- eol-style to native.
- * UInt64Converter.cs: Implement conversion from string to match MS.NET.
- Added support for converting string containing hex prefix. Set
- eol-style to native.
- * DecimalConverter.cs: Implement conversion from string to match MS.NET.
- Set eol-style to native.
- * Int64Converter.cs: Implement conversion from string to match MS.NET.
- Added support for converting string containing hex prefix. Set
- eol-style to native.
- * UInt32Converter.cs: Implement conversion from string to match MS.NET.
- Added support for converting string containing hex prefix. Set
- eol-style to native.
- * Int32Converter.cs: Implement conversion from string to match MS.NET.
- Added support for converting string containing hex prefix. Set
- eol-style to native.
- * DoubleConverter.cs: Implement conversion from string to match MS.NET.
- Set eol-style to native.
- * BaseNumberConverter.cs: Support conversion from string containing
- hex prefixes. Set eol-style to native.
- * ByteConverter.cs: Implement conversion from string to match MS.NET.
- Added support for converting string containing hex prefix. Set
- eol-style to native.
-
-2005-08-18 Gert Driesen <drieseng@users.sourceforge.net>
-
- * EditorBrowsableState.cs: Changed line ending from CRLF to LF to
- match other sources. Set eol-style to native.
- * ExtenderProvidedPropertyAttribute.cs: Changed line ending from CRLF
- to LF to match other sources. Set eol-style to native.
- * RefreshEventHandler.cs: Changed line ending from CRLF to LF to match
- other sources. Set eol-style to native.
- * TypeDescriptor.cs: Changed line ending from CRLF to LF to match
- other sources. Set eol-style to native.
-
-2005-08-16 Gert Driesen <drieseng@users.sourceforge.net>
-
- * BaseNumberConverter.cs: In ConvertFrom, wrap all exceptions that
- are thrown while converting from string in an Exception.
-
-2005-08-16 Gert Driesen <drieseng@users.sourceforge.net>
-
- * ToolboxItemAttribute.cs: Fixed GetHashCode to correspond with MS.NET.
- Fixed initialization order. Throw ArgumentException if item type
- cannot be loaded.
-
-2005-08-09 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * ToolboxItemAttribute.cs: Fixed typo
-
-2005-08-09 Gert Driesen <drieseng@users.sourceforge.net>
-
- * IComponent.cs: Fixed Designer attribute to match MS.NET.
- * DesignerAttribute.cs: DesignerBaseTypeName defaults to fullname of
- IDesigner to match MS.NET.
-
-2005-08-07 Michael Hutchinson <m.j.hutchinson@dur.ac.uk>
-
- Patch from Michael Hutchinson to make the aspnet editor work.
-
- * ReflectionPropertyDescriptor.cs: Create transactions and raise
- component change events for all IComponents, not just base
- implementation 'Component' derivatives.
-
- * MemberDescriptor.cs: Make members 'Browsable' by default, as per
- MS spec.
-
- * PropertyDescriptor.cs: Changed default
- DesignerSerializationVisibility value to Visible rather than
- Hidden, as per MS spec.
-
-2005-07-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * TypeDescriptor.cs: (GetProperties) throw exception if 'component' is
- null.
-
-2005-06-30 Sebastien Pouliot <sebastien@ximian.com>
-
- * Win32Exception.cs: Added some declarative security (permission from
- corlib) as an initial test (outside corlib). Added new constructors
- for NET_2_0.
-
-2005-06-27 LLuis Sanchez Gual <lluis@novell.com>
-
- * CultureInfoConverter.cs: Correctly look for verbose name of
- the culture being converted.
-
-2005-06-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * ToolboxItemAttribute.cs: fix the fix that was fixed before.
-
-2005-06-08 Zoltan Varga <vargaz@freemail.hu>
-
- * ToolboxItemAttribute.cs: Revert last change as it breaks the build.
-
-2005-06-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * ToolboxItemAttribute.cs: fix default type name.
-
-2005-06-04 Gert Driesen <drieseng@users.sourceforge.net>
-
- * Win32Exception.cs: improve error message for error 10047.
-
-2005-06-04 Gert Driesen <drieseng@users.sourceforge.net>
-
- * TypeDescriptor.cs: in .NET 2.0, GetComponentName returns null if
- object is not an IComponent or has no Site.
- In .NET 2.0, GetDefaultEvent does not fallback to first defined event
- if the default event is filtered out. GetDefaultProperty did not
- take filtering into account. Fixes bug #75152.
-
-2005-05-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * Win32Exception.cs: add 10049 WSAEADDRNOTAVAIL. Fixes bug #75106.
-
-2005-05-15 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
-
- * IComponent.cs: Fix attributes
-
-2005-04-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * TypeDescriptor.cs: implemented GetEditor. Patch by Jonathan Chambers.
-
-2005-04-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * DefaultValueAttribute.cs: fixed the .ctor that takes a type and a
- string. Previous implementation caused *lots* of exceptions being thrown
- when processing WebControl types.
-
-2005-04-22 LLuis Sanchez Gual <lluis@novell.com>
-
- * AttributeCollection.cs: When checking if the list contains an
- attribute, always return true if that attribute is the default
- attribute for that kind of attributes.
-
-2005-04-13 LLuis Sanchez Gual <lluis@novell.com>
-
- * TypeDescriptor.cs: When creating a converter, use a constructor that
- takes a Type parameter if exists.
- * PropertyDescriptor.cs: In the Converter property, check for a
- TypeConverterAttribute in the property.
-
-2005-03-02 Jackson Harper <jackson@ximian.com>
-
- * ReflectionEventDescriptor.cs: Bind handlers to the actual event so that
- the delegates get invoked when the methods are.
-
-2005-03-02 Jackson Harper <jackson@ximian.com>
-
- * EventDescriptorCollection.cs: Handle null in the constructor properly.
-
-2005-02-12 Geoff Norton <gnorton@customerdna.com>
-
- * CharConverter.cs: Implement the ability to convert from "".
-
-2005-02-10 Geoff Norton <gnorton@customerdna.com>
-
- * CultureInfoConverter.cs: Implement converting from the
- string "(default)" that MS will put in .resx files.
-
-2005-02-10 Lluis Sanchez Gual <lluis@novell.com>
-
- * BindableAttribute.cs: Implemented 2.0 api.
-
-2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * TypeDescriptor.cs: fixed bug #71601. GetConverter should handle
- TypeConverter derived classes that take a Type argument.
-
-2005-01-27 LLuis Sanchez Gual <lluis@novell.com>
-
- * DateTimeConverter.cs, CultureInfoConverter.cs, DecimalConverter.cs,
- TimeSpanConverter.cs, GuidConverter.cs, EnumConverter.cs:
- Implemented support for InstanceDescriptor.
-
-2005-01-25 LLuis Sanchez Gual <lluis@novell.com>
-
- * Win32Exception.cs: Set the correct name for the serialized
- NativeErrorCode. This fixes bug #71572. Fix by Aleksandar Dezelin.
-
-2005-01-24 Joerg Rosenkranz <joergr@voelcker.com>
-
- * TypeDescriptor.cs: Changed handling of interfaces and objects in
- GetConverter to reflect the behaviour of .NET. This fixes bug #71444.
-
-2005-01-19 Jonathan Pryor <jonpryor@vt.edu>
-
- * TypeDescriptor.cs: Fix Info.GetDefaultEvent() so that it filters events
- properly. This matches .NET 1.1 and fixes a test case.
-
-2005-01-19 Jonathan Pryor <jonpryor@vt.edu>
-
- * TypeDescriptor.cs: Fix GetComponentName() so that it returns the type
- name if no Site is present. This matches .NET 1.1 and fixes a test case.
-
-2005-01-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * BaseNumberConverter.cs: when the culture we get is null, set it to the
- default. Fixes bug #67033. Thanks to Sander Rijken.
-
-2005-01-10 LLuis Sanchez Gual <lluis@novell.com>
-
- * BindingDirection.cs: New enum.
-
-2004-12-09 Dick Porter <dick@ximian.com>
-
- * Win32Exception.cs: Add another socket error, fix the message of
- some old ones.
-
-2004-10-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * AttributeCollection.cs: support attributes inherited from the one
- we want. Fixes bug #67088. Thanks to Sander Rijken.
-
-2004-08-14 Jackson Harper <jackson@ximian.com>
-
- * Container.cs: Release all when we are supposed to release all.
-
-2004-07-14 Atsushi Enomoto <atsushi@ximian.com>
-
- * Added IChangeTracking.cs and IRevertibleChangeTracking.cs.
-
-2004-07-09 LLuis Sanchez Gual <lluis@novell.com>
-
- * AsyncCompletedEventArgs.cs: Implemented.
- * AsyncCompletedEventHandler.cs: Implemented.
-
-2004-06-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * TypeDescriptor.cs: when a component in componentTable is Disposed,
- remove it from the table.
-
-Fri Jun 11 11:58:22 CEST 2004 Paolo Molaro <lupus@ximian.com>
-
- * LocalizableAttribute.cs, DesignerSerializationVisibilityAttribute.cs,
- DesignOnlyAttribute.cs: fix targets for attributes.
-
-2004-05-05 Lluis Sanchez Gual <lluis@ximian.com>
-
- * BooleanConverter.cs: Improved ConverFrom method.
-
-2004-04-28 Lluis Sanchez Gual <lluis@ximian.com>
-
- * TypeDescriptor.cs: Do not return attributes that have the same TypeID.
- This fixes bug #57655.
-
-2004-04-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * TypeDescriptor.cs: fixed ComponentInfo.GetAttributes(). Now it returns
- all the attributes, not just DesignerAttribute instances. nGallery
- complained.
-
-2004-04-21 Lluis Sanchez Gual <lluis@ximian.com>
-
- * BooleanConverter.cs: GetStandardValues must return an array of
- booleans, not an array of strings.
-
-2004-04-16 Lluis Sanchez Gual <lluis@ximian.com>
-
- * ReflectionPropertyDescriptor.cs: Access internal PropertyInfo
- through GetPropertyInfo(). Take into account that a component may not
- be sited or not have some services.
- * TypeDescriptor.cs: GetTypeFromName(): Added null check for Site
- property. Other minor fixes.
-
-2004-04-16 Joerg Rosenkranz <joergr@voelcker.com>
-
- * TypeDescriptor.cs: Fixed implementation of GetConverter.
- This fixes #57137.
-
-2004-04-14 Lluis Sanchez Gual <lluis@ximian.com>
-
- * AttributeCollection.cs: Added new internal constructor.
- * DesignerAttribute.cs: Fixed property TypeId.
- * EventDescriptorCollection.cs: Added internal constructor. Added new
- method Filter that removes events that do not have the specified
- attributes.
- * MemberDescriptor.cs: Minor fixes.
- * PropertyDescriptor.cs: Implemented some missing methods.
- * PropertyDescriptorCollection.cs: Added internal constructor. Implemented
- Sort methods.
- * ReferenceConverter.cs: Removed some TODOs.
- * SyntaxCheck.cs: Implemented CheckMachineName and CheckPath.
- * TypeDescriptor.cs: Implemented most of missing methods.
-
-2004-04-08 Lluis Sanchez Gual <lluis@ximian.com>
-
- * AmbientValueAttribute.cs, EnumConverter.cs, ListChangedEventArgs.cs:
- Removed unneded TODOs.
- * ComponentResourceManager.cs: Implemented ApplyResources.
- * EventDescriptorCollection.cs: Implemented several missing methods.
- * LicFileLicenseProvider.cs: Implemented.
- * MemberDescriptor.cs: Implemented some missing methods. Handle correctly
- the creation of the Attribute list.
- * TypeConverter.cs: Use null as default value for attribute array parameter.
-
-2004-04-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * Win32Exception.cs: added 10024 (WSAEMFILE).
-
-2004-04-05 Lluis Sanchez Gual <lluis@ximian.com>
-
- * AttributeCollection.cs: Don't try to create a default attribute if the
- attribute type does not have a default constructor. Fix by Jon Wagner.
- This fixes #53898.
-
-2004-03-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * Win32Exception.cs: added ERROR_PATH_NOT_FOUND that reports the same
- message as ERROR_FILE_NOT_FOUND.
-
-2004-03-17 Ivan Hamilton <ivan@chimerical.com.au>
-
- * LicenseManager.cs: Completed TODO.
-
-2003-12-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * Win32Exception.cs: use a switch instead of creating a hashtable when
- mapping from an error code to a message.
-
-2003-11-22 Miguel de Icaza <miguel@ximian.com>
-
- * PropertyDescriptorCollection.cs (Insert): Another one.
-
- * PropertyTabAttribute.cs (Equals): Avoid recurssion
-
-2003-11-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
-
- * IComponent.cs: Added missing attribute
-
-2003-11-12 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
-
- * ComponentResourceManager.cs: Added and partially implemented
-
-2003-09-13 Duncan Mak <duncan@ximian.com>
-
- Patch from Jrg Rosenkranz <joergr@voelcker.com>, this fixes the
- bugs described in bug #48351.
-
- * EnumConverter.cs (ConvertFrom): Removed the special handling for
- multiple values. This is done in Enum.Parse already.
-
- * TypeDescriptor.cs (GetConverter): Does not work for enumeration
- types because EnumConverter does not have a default
- constructor. Fixed by changing the special handling for
- enumeration types.
-
-2003-08-31 Jerome Laban <jlaban@wanadoo.fr>
- * Container.cs: A site without name cannot be duplicate.
-
-2003-07-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * Win32Exception.cs: added message for 10054.
-
-2003-07-17 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
-
- * CategoryAttribute.cs: Added localization support
-
-2003-07-17 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
-
- * IComponent.cs:
- * MarshalByValueComponent.cs: Reworked attributes based on the new Consts scheme
-
-2003-07-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * TypeDescriptor.cs: fixed GetConverter (type) for enumerations that
- have a TypeConverter. Fixes bug #46397.
-
-2003-07-14 Jerome Laban <jlaban@wanadoo.fr>
-
- * IComponent.cs: Removed duplicate Designer attribute.
-
-2003-07-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
-
- * Component.cs: Implementation added
- * Container.cs: Implementation added
- * MarshalByValueComponent.cs: Implementation added
- * ReferenceConverter.cs: Small addition for future implementation
-
-2003-07-10 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
-
- * TypeConverter.cs: Implemented missing methods
- * TypeDescriptor.cs: Redirections added
-
-2003-07-05 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
-
- * EnumConverter.cs: Fixed signature
- * EventDescriptorCollection.cs: Fixed signature
- * InheritanceLevel.cs: Fixed enum values; little restyling
- * License.cs: Removed undefined member
- * LicenseManager.cs: Fixed signature, little implementation added
- * PropertyDescriptorCollection.cs: Removed unused field (fixes last remaining compiler warning in this namespace)
- * WarningException.cs: Removed wrong attribute
- * Win32Exception.cs: Added missing attribute
-
-2003-07-02 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
-
- * AttributeCollection.cs: Fixed public members
- * BaseNumberConverter.cs: Changed InnerType to internal to match public assembly signature
- * BrowsableAttribute.cs: Removed wrong constructor, Restyle according to guidelines
- * CategoryAttribute.cs: Changed public fields to properties
- * EnumConverter.cs: Added and implemented missing properties, improved implementation
- * EventDescriptorCollection.cs: Fixed wrong signatures, added implementation, fixed potential bug
- * PropertyDescriptorCollection.cs: Fixed public members
- * ReferenceConverter.cs: Implementation added
- * SyntaxCheck.cs: Improved string checks, added MonoTODO descriptions
- * TypeDescriptor.cs: Implementations added
-
-2003-07-02 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
-
- * ISite.cs: Fixed attributes, fixed header
- * ITypeDescriptorContext.cs: Fixed attributes, formatting corrections
- * WarningException.cs: Fixed attributes, formatting corrections
- * AttributeCollection.cs: Fixed attributes
- * DesignerSerializationVisibility.cs: Fixed attributes
- * TypeConverter.cs: Fixed attributes
-
- * MarshalByValueComponent.cs:
- * IComponent.cs: Fixed attributes, supports .Net 1.0 and 1.1
-
- * DescriptionAttribute.cs:
- * DesignerCategoryAttribute.cs:
- * DoubleConverter.cs:
- * EditorBrowsableAttribute.cs:
- * EventDescriptorCollection.cs:
- * PropertyChangedEventHandler.cs:
- * RefreshEventArgs.cs:
- * StringConverter.cs:
- * DefaultValueAttribute.cs: Reformatted following style guidelines
-
- * License.cs: Removed unused MonoTODOs
- * LicenseContext.cs: Implemented
- * LicenseException.cs: Implemented
- * LicenseProvider.cs: Removed unused MonoTODOs and unneccesary Finalizer
- * LicenseUsageMode.cs: Fixed enum
- * RefreshProperties.cs: Fixed enum
- * LicFileLicenseProvider.cs: Implementation added
- * ExtenderProvidedPropertyAttribute.cs: Implementation added, formatting corrections
- * ExpandableObjectConverter.cs: Implemented
- * ComponentConverter.cs: Implemented
-
-2003-06-23 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
-
- * DesignerAttribute.cs: Fixed AttributeUsage, implementation errors,
- better Hashcode generation
- * EditorAttribute.cs: Fixed AttributeUsage, implementation errors,
- better Hashcode generation
- * LicenseContext.cs: Added and implemented missing property
- * ListBindableAttribute.cs: Simplified implementation, removed
- unneccessary data.
- * ReadOnlyAttribute.cs: Better Hashcode generation
- * RunInstallerAttribute.cs: Better Hashcode generation, more robust
- Equals check.
-
- * LicenseProviderAttribute.cs: Fixed AttributeUsage, indentation
- * ProvidePropertyAttribute.cs: Fixed AttributeUsage
- * ToolboxItemFilterAttribute.cs: Fixed AttributeUsage
-
- * MarshalByValueComponent.cs:
- * IContainer.cs:
- * IComponent.cs: Added missing attribute(s)
-
-2003-06-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * AmbientValueAttribute.cs:
- * ArrayConverter.cs:
- * BaseNumberConverter.cs:
- * BindableAttribute.cs:
- * BooleanConverter.cs:
- * BrowsableAttribute.cs:
- * ByteConverter.cs:
- * CategoryAttribute.cs:
- * CharConverter.cs:
- * CollectionConverter.cs:
- * Component.cs:
- * ComponentCollection.cs:
- * ComponentEditor.cs:
- * Container.cs:
- * CultureInfoConverter.cs:
- * DateTimeConverter.cs:
- * DecimalConverter.cs:
- * DefaultEventAttribute.cs:
- * DefaultPropertyAttribute.cs:
- * DefaultValueAttribute.cs:
- * DescriptionAttribute.cs:
- * DesignOnlyAttribute.cs:
- * DesignTimeVisibleAttribute.cs:
- * DesignerCategoryAttribute.cs:
- * DesignerSerializationVisibilityAttribute.cs:
- * DoubleConverter.cs:
- * EditorBrowsableAttribute.cs:
- * EventDescriptor.cs:
- * EventDescriptorCollection.cs:
- * ExpandableObjectConverter.cs:
- * ExtenderProvidedPropertyAttribute.cs: New file.
- * GuidConverter.cs:
- * IComNativeDescriptorHandler.cs:
- * IComponent.cs:
- * ImmutableObjectAttribute.cs:
- * InheritanceAttribute.cs:
- * InheritanceLevel.cs:
- * InstallerTypeAttribute.cs:
- * Int16Converter.cs:
- * Int32Converter.cs:
- * Int64Converter.cs:
- * InvalidEnumArgumentException.cs:
- * LicenseProviderAttribute.cs:
- * LocalizableAttribute.cs:
- * MarshalByValueComponent.cs:
- * MemberDescriptor.cs:
- * MergablePropertyAttribute.cs:
- * NotifyParentPropertyAttribute.cs:
- * ParenthesizePropertyNameAttribute.cs:
- * PropertyDescriptor.cs:
- * PropertyDescriptorCollection.cs:
- * PropertyTabAttribute.cs:
- * ProvidePropertyAttribute.cs:
- * RecommendedAsConfigurableAttribute.cs:
- * RefreshPropertiesAttribute.cs:
- * SByteConverter.cs:
- * SingleConverter.cs:
- * TimeSpanConverter.cs:
- * ToolboxItemFilterAttribute.cs:
- * TypeConverter.cs:
- * TypeConverterAttribute.cs:
- * TypeDescriptor.cs:
- * TypeListConverter.cs:
- * UInt16Converter.cs:
- * UInt32Converter.cs:
- * UInt64Converter.cs: implementation and fixes by Andreas Nahr
- (A-Soft@A-SoftTech.com).
-
-2003-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * IExtenderProvider.cs: mono-stylized.
- * IComNativeDescriptorHandler.cs:
- * SyntaxCheck.cs: new files from Andreas Nahr.
-
-2003-03-20 Dick Porter <dick@ximian.com>
-
- * Win32Exception.cs: Made the fallback error more useful by
- reporting the error number
-
-2003-03-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * MarshalByValueComponent.cs: removed a monotodo.
-
-2003-03-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * Win32Exception.cs: added error code 2.
-
-2003-03-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * Win32Exception.cs: implemented GetObjectData ().
-
-2003-03-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * RunInstallerAttribute.cs: New file.
-
-2003-02-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * Win32Exception.cs: added 10065 (WSA_EHOSTUNREACH).
-
-2003-02-05 Alan Tam <Tam@SiuLung.com>
-
- * DesignedCategoryAttribute.cs: Implemented DesignerCategoryAttribute
-
-2003-01-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * BrowsableAttribute.cs: this attribute applies to All. Since the fix
- to bug #37380, mcs complained about this when compiling System.Data.
-
-2003-01-08 Dick Porter <dick@ximian.com>
-
- * Win32Exception.cs (ComponentModel): Added EWOULDBLOCK
-
-2003-01-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * TypeDescriptor.cs: use ICustomTypeDescriptor if the component
- implements it. It's done for GetProperties and should be done for the
- rest of methods present in ICustomTypeDescriptor.
-
-2003-01-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * TypeDescriptor.cs: moved code from GetProperties (object) to (Type).
-
-2002-11-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * DefaultValueAttribute.cs: the attribute applies to All.
-
-2002-11-19 Duncan Mak <duncan@ximian.com>
-
- * DesignerAttribute.cs:
- * EditorAttribute: Style changes. Gonzalo committed the build
- fixes before I did.
-
-2002-11-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * DesignerAttribute.cs:
- * EditorAttribute.cs: fixed the build.
-
-2002-11-19 Alejandro Snchez Acosta <raciel@es.gnu.org>
-
- * EditorAttribute: implemented.
- * DesignerAttribute: implemented.
-
-2002-11-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * Win32Exception.cs: added 10107 -> WASSYSCALLFAILURE.
-
-2002-11-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * ListBindableAttribute.cs: implemented.
-
-2002-11-02 Duncan Mak <duncan@ximian.com>
-
- * InvalidEnumArgumentException.cs: Added.
-
-2002-10-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * EventHandlerList.cs: fixed bug #29535.
-
-2002-10-03 Dick Porter <dick@ximian.com>
-
- * Win32Exception.cs: Added ETIMEDOUT
-
-2002-09-30 Dick Porter <dick@ximian.com>
-
- * Win32Exception.cs: Sorted the errors, added EINPROGRESS
-
-2002-09-17 Asier Llano Palacios <asierllano@infonegocio.com>
-
- * CancelEventArgs.cs
- * WarningException.cs
- * CancelEventHandler.cs
- * PropertyChangedEventHandler.cs
- * IExtenderProvider.cs: Implemented
-
-2002-08-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * Component.cs:
- * ComponentCollection.cs:
- * Container.cs:
- * MarshalByValueComponent.cs: IDisposable fixes.
-
-2002-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * BindableSupport.cs:
- * Component.cs:
- * EventDescriptorCollection.cs:
- * ITypeDescriptorContext.cs:
- * TypeConverter.cs:
- * TypeDescriptor.cs: class status based fixes.
-
- * StringConverter.cs: implemented a couple of methods.
-
-2002-07-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * EnumConverter.cs: new file.
-
- * TypeConverter.cs: implemented a few simple methods.
-
- * TypeDescriptor.cs:
- (GetConverter): initial support for converters of well-known types.
-
-2002-07-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * DerivedPropertyDescriptor.cs: New file. Internal class.
-
- * PropertyDescriptorCollection.cs: almost fully implemented.
-
- * TypeDescriptor.cs: implemented a couple of GetProperties ().
-
-Wed Jul 24 13:14:30 CEST 2002 Paolo Molaro <lupus@ximian.com>
-
- * Component.cs: don't die if Disposed is null.
-
-2002-07-22 Tim Coleman <tim@timcoleman.com>
- * RecommendedAsConfigurableAttribute.cs: new file added
- for System.Web.Services build
-
-2002-07-22 Tim Coleman <tim@timcoleman.com>
- * ExpandableObjectConverter.cs: Fix error with constructor
-
-2002-07-22 Tim Coleman <tim@timcoleman.com>
- * TypeConverter.cs: Fixed bad stubb function
- GetConvertToException ()
-
-2002-07-22 Tim Coleman <tim@timcoleman.com>
- * ComponentCollection.cs: Added reference to
- ReadOnlyCollectionBase to make sure
- that we inherit the appropriate methods.
- Not sure why the Dispose() method is
- required, but left for now.
-
-2002-07-22 Tim Coleman <tim@timcoleman.com>
- * TypeConverter.cs: Added new stubbs
- * BindableAttribute.cs: Added
- * BindableSupport.cs: Added
- * NotifyParentPropertyAttribute.cs: Added
- * ExpandableObjectConverter.cs: Added
-
-2002-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * MemberDescriptor.cs: implemented Attributes and Category.
-
- * PropertyDescriptor.cs: implemented Converter. Declared GetValue ().
-
- * PropertyDescriptorCollection.cs: fixed indexers declaration.
-
- * ReadOnlyAttribute.cs: GetHashCoder (), Equals (), IsDefault () and
- fixed value for Yes.
-
- * ToolboxItemAttribute.cs: fixed declaration of IsDefaultAttribute.
-
- * TypeConverter.cs: added SimplePropertyDescriptor class.
-
-2002-07-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * ToolboxItemAttribute.cs: New file.
-
-2002-07-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * DefaultEventAttribute.cs: new file.
-
-2002-07-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * AttributeCollection.cs: fixlet.
-
-2002-07-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * AttributeCollection.cs: finished implementation.
- * TypeDescriptor.cs: implemented GetAttributes (object).
-
-2002-07-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * AttributeCollection.cs: initialize member variables.
-
- * RefreshEventArgs.cs: implemented.
- * RefreshEventHandler.cs: New file.
-
- * TypeDescriptor.cs: fully stubbed out the remaining method.
-
-2002-07-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * DefaultPropertyAttribute.cs: New file.
-
-2002-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * TypeConverter.cs: flushed local changes.
-
-2002-06-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * StringConverter.cs: stubbed out.
- * TypeConverter.cs: stubbed the rest out and added some implementation.
-
- Five errors left when compiling System.Web in linux.
-
-2002-06-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * TypeConverterAttribute.cs: attribute used by
- TypeDescriptor.Getconverter ().
-
- * TypeDescriptor.cs: implemented GetConverter in the right way.
-
-2002-06-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * TypeConverter.cs:
- * ITypeDescriptorContext.cs:
- * TypeDescriptor.cs: implemented minimal set of features needed by xsp,
- which uses ColorConverter.
-
-2002-05-12 Daniel Morgan <danmorg@sc.rr.com>
-
- * IComponent.cs
- * ISite.cs: added using System
-
- * MarshalByValueComponent.cs: changed all throwing of Not ImplementedException
- to // TODOs and added using System. The throwing of the exceptions prevented
- System.Data from running.
-
-2002-05-10 Rodrigo Moya <rodrigo@ximian.com>
-
- * EventDescriptorCollection.cs (this[index]): call eventList[index],
- not this[index], which issues an 'ambigous call' error on Linux.
-
-2002-05-07 Rodrigo Moya <rodrigo@ximian.com>
-
- * EventDescriptor.cs: added missing constructors.
-
- * EventDescriptorCollection.cs: fixed interface methods implementation
-
- * IDataErrorInfo.cs:
- * IEditableObject.cs: new interfaces.
-
-2002-05-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * System.ComponentModel/AttributeCollection.cs: added a cast to make
- it compile.
-
-2002-05-03 Rodrigo Moya <rodrigo@ximian.com>
-
- * AttributeCollection.cs:
- * EventDescriptor.cs:
- * EventDescriptorCollection.cs:
- * ICustomTypeDescriptor.cs: new files.
-
-2002-05-01 Duncan Mak <duncan@ximian.com>
-
- * ListChangedType.cs:
- * ListChangedEventHandler.cs:
- * ListChangedEventArgs.cs: Added to fix build.
-
-2002-05-01 Miguel de Icaza <miguel@ximian.com>
-
- * PropertyDescriptorCollection.cs: Added the IList explicit
- implementation methods.
-
- lots of bug fixes to get the build to compile again.
-
-2002-05-01 Duncan Mak <duncan@ximian.com>
-
- * ListSortDirection.cs: EnumChecked.
-
-2002-05-01 Rodrigo Moya <rodrigo@ximian.com>
-
- * ListSortDirection.cs: new enumeration. Please, somebody run
- EnumCheck on it, as I don't have a windows machine.
-
- * PropertyDescriptorCollection.cs: new class.
-
- * ITypedList.cs:
- * IBindingList.cs: new interfaces.
-
-2002-04-28 Duncan Mak <duncan@ximian.com>
-
- * CollectionChangeAction.cs: Changed enum layout to fit the MS
- implementation. Please use EnumCheck!
-
-2002-04-28 Rodrigo Moya <rodrigo@ximian.com>
-
- * CollectionChangeAction.cs: new enumeration.
-
- * CategoryAttribute.cs: moved the 'return' keyword to the
- end of the method, to avoid compilation errors on Linux for
- all CategoryAttribute properties.
-
-2002-04-28 Rodrigo Moya <rodrigo@ximian.com>
-
- * IListSource.cs:
- * ISupportInitialize.cs:
- * MarshalByValueComponent.cs: new stubs, needed for System.Data
- compilation.
-
- * PropertyChangedEventArgs.cs:
- * CollectionChangeEventHandler.cs:
- * CollectionChangeEventArgs.cs: implemented.
-
-2002-04-28 Lawrence Pit <loz@cable.a2000.nl>
-
- * Added error code 11001 to Win32Exception, used by Dns.c
-
-2002-04-04 Dick Porter <dick@ximian.com>
-
- * ISynchronizeInvoke.cs: Needed by Process
-
-2002-01-23 Dick Porter <dick@ximian.com>
-
- * Win32Exception.cs: implement, with support for looking up
- runtime errors.
-
-2002-01-17 Miguel de Icaza <miguel@ximian.com>
-
- * Win32Exception.cs: Add.
-
-2002-01-05 Ravi Pratap <ravi@ximian.com>
-
- * CategoryAttribute.cs, Component.cs, ComponentCollection.cs: MonoTODO.
-
- * Container.cs, MemberDescriptor.cs, PropertyDescriptor.cs : Ditto.
-
-2001-10-27 Miguel de Icaza <miguel@ximian.com>
-
- * DesignerSerializationVisibilityAttribute.cs: Implemented.
-
- * DesignerSerializationVisibility.cs: New enumeration.
-
- * LocalizableAttribute.cs: Implemented.
-
- * BrowsableAttribute.cs: Implemented.
-
- * DesignOnlyAttribute.cs: Implemented.
-
- * DescriptionAttribute.cs: Implement.
-
- * MemberDescriptor.cs: Implemented.
-
- * CategoryAttribute.cs: implemented.
-
-2001-08-21 Nick Drochak <ndrochak@gol.com>
-
- * Component.cs: Eliminated compile errors by removing redundant fields and
- using the ISite member instead. Also raised the Disposed event, but not
- sure if it's correct now. Look for FIXME in the comments.
-
-2001-08-02 Miguel de Icaza <miguel@ximian.com>
-
- * EventHandlerList.cs: New file.
-
- * Container.cs, Component.cs, IContainer.cs, IComponent.cs,
- ComponentCollection.cs, ISite.cs: New classes
-
+++ /dev/null
-//
-// System.ComponentModel.CharConverter
-//
-// Author:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-// Ivan N. Zlatev (contact@i-nz.net)
-//
-// (C) 2003 Andreas Nahr
-// (C) 2008 Novell, Inc. (http://www.novell.com)
-//
-
-//
-// 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.Globalization;
-
-namespace System.ComponentModel
-{
- public class CharConverter : TypeConverter
- {
- public override bool CanConvertFrom (ITypeDescriptorContext context, Type sourceType)
- {
- if (sourceType == typeof (string))
- return true;
- return base.CanConvertFrom (context, sourceType);
- }
-
- public override object ConvertFrom (ITypeDescriptorContext context, CultureInfo culture, object value)
- {
- string char_string = value as string;
- if (char_string != null) {
- if (char_string.Length > 1)
- char_string = char_string.Trim ();
- if (char_string.Length > 1)
- throw new FormatException (string.Format (
- "String {0} is not a valid Char: " +
- "it has to be less than or equal to " +
- "one char long.", char_string));
- if (char_string.Length == 0)
- return '\0';
- return char_string [0];
- }
- return base.ConvertFrom (context, culture, value);
- }
-
- public override object ConvertTo (ITypeDescriptorContext context,
- CultureInfo culture, object value, Type destinationType)
- {
- if (destinationType == typeof (string)) {
- if ((value != null) && (value is char)) {
- char c = (char) value;
- if (c == '\0')
- return String.Empty;
- else
- return new string (c, 1);
- }
- }
-
- return base.ConvertTo (context, culture, value, destinationType);
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.CollectionChangeAction.cs
-//
-// Author:
-// Rodrigo Moya (rodrigo@ximian.com)
-//
-// (C) Ximian, Inc
-//
-
-//
-// 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.ComponentModel
-{
- /// <summary>
- /// Specifies how the collection is changed.
- /// </summary>
- public enum CollectionChangeAction {
- Add = 1,
- Remove = 2,
- Refresh = 3
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.CollectionChangeEventArgs.cs
-//
-// Author:
-// Rodrigo Moya (rodrigo@ximian.com)
-//
-// (C) Ximian, Inc
-//
-
-//
-// 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.ComponentModel
-{
- /// <summary>
- /// Provides data for the CollectionChanged event.
- /// </summary>
- public class CollectionChangeEventArgs : EventArgs
- {
- private CollectionChangeAction changeAction;
- private object theElement;
-
- public CollectionChangeEventArgs (CollectionChangeAction action,
- object element) {
- changeAction = action;
- theElement = element;
- }
-
- public virtual CollectionChangeAction Action {
- get {
- return changeAction;
- }
- }
-
- public virtual object Element {
- get {
- return theElement;
- }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.CollectionChangeEventHandler.cs
-//
-// Author:
-// Rodrigo Moya (rodrigo@ximian.com)
-//
-// (C) Ximian, Inc
-//
-
-//
-// 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.ComponentModel
-{
- public delegate void CollectionChangeEventHandler (object sender,
- CollectionChangeEventArgs e);
-}
+++ /dev/null
-//
-// System.ComponentModel.CollectionConverter
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-using System.Globalization;
-
-namespace System.ComponentModel
-{
- public class CollectionConverter : TypeConverter
- {
-
- public CollectionConverter()
- {
- }
-
- public override object ConvertTo (ITypeDescriptorContext context,
- CultureInfo culture, object value, Type destinationType)
- {
- if (destinationType == typeof (string))
- if (value != null && (value is ICollection))
- return "(Collection)";
-
- return base.ConvertTo (context, culture, value, destinationType);
- }
-
- public override PropertyDescriptorCollection GetProperties (ITypeDescriptorContext context,
- object value, Attribute[] attributes)
- {
- return null;
- }
-
- public override bool GetPropertiesSupported (ITypeDescriptorContext context)
- {
- return false;
- }
- }
-}
-
+++ /dev/null
-//
-// 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.
-//
-
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-namespace System.ComponentModel
-{
- [AttributeUsage (AttributeTargets.Class, AllowMultiple = false, Inherited = true)]
- public sealed class ComplexBindingPropertiesAttribute : Attribute
- {
- string data_source;
- string data_member;
-
- public static readonly ComplexBindingPropertiesAttribute Default = new ComplexBindingPropertiesAttribute ();
-
- public ComplexBindingPropertiesAttribute (string dataSource, string dataMember)
- {
- data_source = dataSource;
- data_member = dataMember;
- }
-
- public ComplexBindingPropertiesAttribute (string dataSource)
- {
- data_source = dataSource;
- }
-
- public ComplexBindingPropertiesAttribute ()
- {
- }
-
- public string DataMember {
- get { return data_member; }
- }
-
- public string DataSource {
- get { return data_source; }
- }
-
- public override bool Equals (object obj)
- {
- ComplexBindingPropertiesAttribute a = obj as ComplexBindingPropertiesAttribute;
- if (a == null)
- return false;
-
- return a.DataMember == data_member && a.DataSource == data_source;
- }
-
- public override int GetHashCode ()
- {
- int hc = data_source == null ? 0 : data_source.GetHashCode ();
- hc ^= data_member == null ? 0 : data_member.GetHashCode ();
- return hc;
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Component.cs
-//
-// Author:
-// Miguel de Icaza (miguel@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Ximian, Inc. http://www.ximian.com
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-using System.ComponentModel;
-using System.Runtime.InteropServices;
-
-namespace System.ComponentModel {
-
- [DesignerCategory ("Component")]
- [ComVisible (true)]
- [ClassInterface (ClassInterfaceType.AutoDispatch)]
- public class Component : MarshalByRefObject, IComponent, IDisposable
- {
-
- private EventHandlerList event_handlers;
- private ISite mySite;
- static readonly object disposedEvent = new object ();
-
- public Component ()
- {
- event_handlers = null;
- }
-
- protected virtual bool CanRaiseEvents {
- get { return false; }
- }
-
- [Browsable (false), DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public virtual ISite Site
- {
- get { return mySite; }
- set { mySite = value; }
- }
-
- [Browsable (false), DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public IContainer Container {
- get {
- if (mySite == null)
- return null;
- return mySite.Container;
- }
- }
-
- [Browsable (false), DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- protected bool DesignMode {
- get {
- if (mySite == null)
- return false;
- return mySite.DesignMode;
- }
- }
-
- protected EventHandlerList Events {
- get {
- // Note: space vs. time tradeoff
- // We create the object here if it's never be accessed before. This potentially
- // saves space. However, we must check each time the propery is accessed to
- // determine whether we need to create the object, which increases overhead.
- // We could put the creation in the contructor, but that would waste space
- // if it were never used. However, accessing this property would be faster.
- if (null == event_handlers)
- event_handlers = new EventHandlerList();
-
- return event_handlers;
- }
- }
-
- ~Component()
- {
- Dispose (false);
- }
-
- public void Dispose ()
- {
- Dispose (true);
- GC.SuppressFinalize (this);
- }
-
- // <summary>
- // Controls disposal of resources used by this.
- // </summary>
- //
- // <param name="release_all"> Controls which resources are released</param>
- //
- // <remarks>
- // if release_all is set to true, both managed and unmanaged
- // resources should be released. If release_all is set to false,
- // only unmanaged resources should be disposed
- // </remarks>
- protected virtual void Dispose (bool release_all)
- {
- if (release_all) {
- if (mySite != null && mySite.Container != null)
- mySite.Container.Remove (this);
- EventHandler eh = (EventHandler) Events [disposedEvent];
- if (eh != null)
- eh (this, EventArgs.Empty);
- }
- }
-
- protected virtual object GetService (Type service)
- {
- if (mySite != null) {
- return mySite.GetService(service);
- }
- return null;
- }
-
- public override string ToString ()
- {
- if (mySite == null)
- return GetType ().ToString ();
- return String.Format ("{0} [{1}]", mySite.Name, GetType ().ToString ());
- }
-
- [Browsable (false), EditorBrowsable (EditorBrowsableState.Advanced)]
- public event EventHandler Disposed {
- add { Events.AddHandler (disposedEvent, value); }
- remove { Events.RemoveHandler (disposedEvent, value); }
- }
- }
-
-}
+++ /dev/null
-//
-// System.ComponentModel.ComponentCollection.cs
-//
-// Author:
-// Miguel de Icaza (miguel@ximian.com)
-// Tim Coleman (tim@timcoleman.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Ximian, Inc. http://www.ximian.com
-// Copyright (C) Tim Coleman, 2002
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-using System.Runtime.InteropServices;
-using System.Reflection;
-
-namespace System.ComponentModel {
-
- [ComVisible (true)]
- public class ComponentCollection : ReadOnlyCollectionBase
- {
- #region Constructors
-
- public ComponentCollection (IComponent[] components)
- {
- InnerList.AddRange (components);
- }
-
- #endregion // Constructors
-
- #region Properties
-
- public virtual IComponent this [int index] {
- get { return (IComponent) InnerList[index]; }
- }
-
- public virtual IComponent this [string name] {
- get {
- foreach (IComponent C in InnerList) {
- if (C.Site != null)
- if (C.Site.Name == name)
- return C;
- }
- return null;
- }
- }
-
- #endregion // Properties
-
- #region Methods
-
- public void CopyTo (IComponent[] array, int index)
- {
- InnerList.CopyTo (array,index);
- }
-
- #endregion // Methods
-
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ComponentConverter.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel
-{
- public class ComponentConverter : ReferenceConverter
- {
-
- public ComponentConverter (Type type) : base (type)
- {
- }
-
- public override PropertyDescriptorCollection GetProperties (ITypeDescriptorContext context,
- object value,
- Attribute[] attributes)
- {
- return TypeDescriptor.GetProperties (value, attributes);
- }
-
- public override bool GetPropertiesSupported (ITypeDescriptorContext context)
- {
- return true;
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ComponentEditor
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel
-{
- public abstract class ComponentEditor
- {
- protected ComponentEditor()
- {
- }
-
- public bool EditComponent (object component)
- {
- return EditComponent (null, component);
- }
-
- public abstract bool EditComponent (ITypeDescriptorContext context, object component);
-
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.ComponentResourceManager.cs
-//
-// Author:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-// Gert Driesen (drieseng@users.sourceforge.net)
-//
-// (C) 2003 Andreas Nahr
-//
-//
-//
-// 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;
-using System.Collections;
-using System.Collections.Specialized;
-using System.Globalization;
-using System.Reflection;
-using System.Resources;
-
-namespace System.ComponentModel
-{
- public class ComponentResourceManager : ResourceManager
- {
- public ComponentResourceManager ()
- {
- }
-
- public ComponentResourceManager (Type t)
- : base (t)
- {
- }
-
- public void ApplyResources (object value, string objectName)
- {
- ApplyResources (value, objectName, (CultureInfo) null);
- }
-
- public virtual void ApplyResources (object value, string objectName, CultureInfo culture)
- {
- if (value == null)
- throw new ArgumentNullException ("value");
- if (objectName == null)
- throw new ArgumentNullException ("objectName");
- if (culture == null)
- culture = CultureInfo.CurrentUICulture;
-
- Hashtable resources = IgnoreCase ? CollectionsUtil.CreateCaseInsensitiveHashtable ()
- : new Hashtable ();
- BuildResources (culture, resources);
-
- string objKey = objectName + ".";
- CompareOptions compareOptions = IgnoreCase ?
- CompareOptions.IgnoreCase : CompareOptions.None;
- Type type = value.GetType ();
-
- BindingFlags bindingFlags = BindingFlags.Public | BindingFlags.Instance;
- if (IgnoreCase)
- bindingFlags |= BindingFlags.IgnoreCase;
-
- foreach (DictionaryEntry de in resources) {
- string resName = (string) de.Key;
- if (!culture.CompareInfo.IsPrefix (resName, objKey, compareOptions))
- continue;
-
- string propName = resName.Substring (objKey.Length);
- PropertyInfo pinfo = type.GetProperty (propName,
- bindingFlags);
- if (pinfo == null || !pinfo.CanWrite)
- continue;
- object resValue = de.Value;
- if (resValue == null || pinfo.PropertyType.IsInstanceOfType (resValue))
- pinfo.SetValue (value, resValue, null);
- }
- }
-
- void BuildResources (CultureInfo culture, Hashtable resources)
- {
- // first load resources for less specific culture
- if (culture != culture.Parent) {
- BuildResources (culture.Parent, resources);
- }
-
- ResourceSet rs = GetResourceSet (culture, true, false);
- if (rs != null) {
- foreach (DictionaryEntry de in rs)
- resources [(string) de.Key] = de.Value;
- }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Container.cs
-//
-// Author:
-// Miguel de Icaza (miguel@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-// Ivan N. Zlatev (contact i-nZ.net)
-//
-// (C) Ximian, Inc. http://www.ximian.com
-// (C) 2003 Andreas Nahr
-// (C) 2006 Ivan N. Zlatev
-//
-
-//
-// 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;
-using System.Collections.Generic;
-
-namespace System.ComponentModel {
-
- // <summary>
- // Container class: encapsulates components.
- // </summary>
- //
- // <remarks>
- //
- // </remarks>
- public class Container : IContainer, IDisposable {
- private List<IComponent> c = new List<IComponent> ();
-
- // <summary>
- // Auxiliary class to support the default behaviour of CreateSite
- // </summary>
- //
- // <remarks>
- // This is an internal class that is used to provide a
- // default implementation of an ISite class. Container
- // is just a default implementation of IContainer, and
- // provides this as a way of getting started
- // </remarks>
-
- class DefaultSite : ISite {
-
- private readonly IComponent component;
- private readonly Container container;
- private string name;
-
- public DefaultSite (string name, IComponent component, Container container)
- {
- this.component = component;
- this.container = container;
- this.name = name;
- }
-
- public IComponent Component {
- get {
- return component;
- }
- }
-
- public IContainer Container {
- get {
- return container;
- }
- }
-
- public bool DesignMode {
- get {
- return false;
- }
- }
-
- public string Name {
- get {
- return name;
- }
-
- set {
- name = value;
- }
- }
-
- public virtual object GetService (Type t)
- {
- if (typeof (ISite) == t)
- return this;
-
- return container.GetService (t);
- }
- }
-
- public virtual ComponentCollection Components {
- get {
- IComponent [] a = c.ToArray ();
- return new ComponentCollection (a);
- }
- }
-
- public virtual void Add (IComponent component)
- {
- Add (component, null);
- }
-
- public virtual void Add (IComponent component, string name)
- {
- if (component != null) {
- if (component.Site == null || component.Site.Container != this) {
- ValidateName (component, name);
- if (component.Site != null)
- component.Site.Container.Remove (component);
- component.Site = this.CreateSite (component, name);
- c.Add (component);
- }
- }
- }
-
- protected virtual
- void ValidateName (IComponent component, string name)
- {
- if (component == null)
- throw new ArgumentNullException ("component");
- if (name == null)
- return;
- foreach (IComponent ic in c) {
- if (object.ReferenceEquals (component, ic))
- continue;
- if (ic.Site != null && string.Compare (ic.Site.Name, name, true) == 0)
- throw new ArgumentException (String.Format ("There already is a named component '{0}' in this container", name));
- }
- }
-
- protected virtual ISite CreateSite (IComponent component, string name)
- {
- return new DefaultSite (name, component, this);
- }
-
- public void Dispose ()
- {
- Dispose (true);
- GC.SuppressFinalize (this);
- }
-
- protected virtual void Dispose (bool disposing)
- {
- if (disposing) {
- while (c.Count > 0) {
- int index = c.Count - 1;
- var component = c [index];
- Remove (component);
- component.Dispose ();
- }
- }
- }
-
- ~Container ()
- {
- Dispose (false);
- }
-
- protected virtual object GetService (Type service)
- {
- if (typeof(IContainer) != service)
- return null;
- return this;
- }
-
- public virtual void Remove (IComponent component)
- {
- Remove (component, true);
- }
-
- void Remove (IComponent component, bool unsite)
- {
- if (component != null) {
- if (component.Site != null && component.Site.Container == this) {
- if (unsite)
- component.Site = null;
- c.Remove (component);
- }
- }
- }
-
- protected void RemoveWithoutUnsiting (IComponent component)
- {
- Remove (component, false);
- }
- }
-
-}
+++ /dev/null
-//
-// ContainerFilterService.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-// Copyright (C) 2007 Novell, Inc. http://www.novell.com
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- public abstract class ContainerFilterService
- {
- public virtual ComponentCollection FilterComponents (ComponentCollection components)
- {
- // The default implementation returns the input as is.
- return components;
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.CultureInfoConverter
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-// Ivan N. Zlatev <contact@i-nz.net>
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-// (C) 2008 Novell, Inc. (http://www.novell.com)
-//
-
-//
-// 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;
-using System.Globalization;
-using System.Reflection;
-using System.ComponentModel.Design.Serialization;
-
-namespace System.ComponentModel
-{
- public class CultureInfoConverter : TypeConverter
- {
- private class CultureInfoComparer : IComparer
- {
- public int Compare (object first, object second)
- {
- if (first == null) {
- if (second == null)
- return 0;
- else
- return -1;
- }
- if (second == null)
- return 1;
-
- return String.Compare (((CultureInfo)first).DisplayName, ((CultureInfo)second).DisplayName,
- false, CultureInfo.CurrentCulture);
- }
- }
-
- private StandardValuesCollection _standardValues;
-
- public CultureInfoConverter()
- {
- }
-
- public override bool CanConvertFrom (ITypeDescriptorContext context,
- Type sourceType)
- {
- if (sourceType == typeof (string))
- return true;
- return base.CanConvertFrom (context, sourceType);
- }
-
- public override bool CanConvertTo (ITypeDescriptorContext context,
- Type destinationType)
- {
- if (destinationType == typeof (string))
- return true;
- if (destinationType == typeof (InstanceDescriptor))
- return true;
- return base.CanConvertTo (context, destinationType);
- }
-
- public override object ConvertFrom (ITypeDescriptorContext context,
- CultureInfo culture, object value)
- {
- string culture_string = value as string;
- if (culture_string != null) {
- if (String.Compare (culture_string, "(Default)", false) == 0)
- return CultureInfo.InvariantCulture;
-
- try {
- // try to create a new CultureInfo if form is RFC 1766
- return new CultureInfo (culture_string);
- } catch {
- // try to create a new CultureInfo if form is verbose name
- foreach (CultureInfo CI in CultureInfo.GetCultures (CultureTypes.AllCultures))
- if (string.Compare (CI.DisplayName, 0, culture_string, 0, culture_string.Length, true) == 0)
- return CI;
- }
- throw new ArgumentException (string.Format (
- "Culture {0} cannot be converted to a " +
- "CultureInfo or is not available in " +
- "this environment.", value));
- }
- return base.ConvertFrom (context, culture, value);
- }
-
- public override object ConvertTo (ITypeDescriptorContext context,
- CultureInfo culture, object value, Type destinationType)
- {
- if (destinationType == typeof (string)) {
- if (value != null && (value is CultureInfo)) {
- if (value == CultureInfo.InvariantCulture)
- return "(Default)";
- else
- return ((CultureInfo) value).DisplayName;
- } else {
- return "(Default)";
- }
- }
- if (destinationType == typeof (InstanceDescriptor) && value is CultureInfo) {
- CultureInfo cval = (CultureInfo) value;
- ConstructorInfo ctor = typeof(CultureInfo).GetConstructor (new Type[] {typeof(int)});
- return new InstanceDescriptor (ctor, new object[] {cval.LCID});
- }
- return base.ConvertTo (context, culture, value, destinationType);
- }
-
- public override StandardValuesCollection GetStandardValues (ITypeDescriptorContext context)
- {
- if (_standardValues == null) {
- CultureInfo[] cultures = CultureInfo.GetCultures (CultureTypes.AllCultures);
- Array.Sort (cultures, new CultureInfoComparer ());
- CultureInfo[] stdValues = new CultureInfo[cultures.Length + 1];
- stdValues[0] = CultureInfo.InvariantCulture;
- Array.Copy (cultures, 0, stdValues, 1, cultures.Length);
- _standardValues = new StandardValuesCollection (stdValues);
- }
- return _standardValues;
- }
-
- public override bool GetStandardValuesExclusive (ITypeDescriptorContext context)
- {
- return false;
- }
-
- public override bool GetStandardValuesSupported (ITypeDescriptorContext context)
- {
- return true;
- }
-
-#if NET_4_0
- protected virtual string GetCultureName (CultureInfo culture)
- {
- // .Net doesn't throw ArgumentNullException here, ugh.
- return culture.Name;
- }
-#endif
-
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.CustomTypeDescriptor
-//
-// Authors:
-// Ivan N. Zlatev (contact i-nZ.net)
-//
-// (C) 2007 Ivan N. Zlatev
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
-
- public abstract class CustomTypeDescriptor : ICustomTypeDescriptor
- {
-
- private ICustomTypeDescriptor _parent;
-
- protected CustomTypeDescriptor ()
- {
- }
-
-
- protected CustomTypeDescriptor (ICustomTypeDescriptor parent)
- {
- _parent = parent;
- }
-
-
- public virtual AttributeCollection GetAttributes ()
- {
- if (_parent != null)
- return _parent.GetAttributes ();
-
- return AttributeCollection.Empty;
- }
-
-
- public virtual string GetClassName ()
- {
- if (_parent != null)
- return _parent.GetClassName ();
-
- return null;
- }
-
-
- public virtual string GetComponentName ()
- {
- if (_parent != null)
- return _parent.GetComponentName ();
-
- return null;
- }
-
-
- public virtual TypeConverter GetConverter ()
- {
- if (_parent != null)
- return _parent.GetConverter ();
-
- return new TypeConverter();
- }
-
-
- public virtual EventDescriptor GetDefaultEvent()
- {
- if (_parent != null)
- return _parent.GetDefaultEvent ();
-
- return null;
- }
-
-
- public virtual PropertyDescriptor GetDefaultProperty ()
- {
- if (_parent != null)
- return _parent.GetDefaultProperty ();
-
- return null;
- }
-
-
- public virtual object GetEditor (Type editorBaseType)
- {
- if (_parent != null)
- return _parent.GetEditor (editorBaseType);
-
- return null;
- }
-
-
- public virtual EventDescriptorCollection GetEvents ()
- {
- if (_parent != null)
- return _parent.GetEvents ();
-
- return EventDescriptorCollection.Empty;
- }
-
-
- public virtual EventDescriptorCollection GetEvents (Attribute[] attributes)
- {
- if (_parent != null)
- return _parent.GetEvents(attributes);
-
- return EventDescriptorCollection.Empty;
- }
-
-
- public virtual PropertyDescriptorCollection GetProperties ()
- {
- if (_parent != null)
- return _parent.GetProperties ();
-
- return PropertyDescriptorCollection.Empty;
- }
-
-
- public virtual PropertyDescriptorCollection GetProperties (Attribute[] attributes)
- {
- if (_parent != null)
- return _parent.GetProperties (attributes);
-
- return PropertyDescriptorCollection.Empty;
- }
-
-
- public virtual object GetPropertyOwner (PropertyDescriptor pd)
- {
- if (_parent != null)
- return _parent.GetPropertyOwner (pd);
-
- return null;
- }
-
- }
-
-}
-
+++ /dev/null
-//
-// System.ComponentModel.DataErrorsChangedEventArgs.cs: Contains the data
-// for the System.ComponentModel.INotifyDataErrorInfo.ErrorsChanged event.
-//
-// Author:
-// Kevin Daub (daub815@gmail.com)
-// (C) 2012 Kevin Daub
-//
-// 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.
-//
-
-#if NET_4_5
-
-namespace System.ComponentModel {
- public class DataErrorsChangedEventArgs : EventArgs {
- public DataErrorsChangedEventArgs (string propertyName)
- {
- this.PropertyName = propertyName;
- }
-
- public virtual string PropertyName { get; private set; }
- }
-}
-
-#endif
+++ /dev/null
-//\r
-// (C) 2006 Mainsoft Corporation (http://www.mainsoft.com)\r
-//\r
-// Authors:\r
-// Konstantin Triger <kostat@mainsoft.com>\r
-//\r
-// Permission is hereby granted, free of charge, to any person obtaining\r
-// a copy of this software and associated documentation files (the\r
-// "Software"), to deal in the Software without restriction, including\r
-// without limitation the rights to use, copy, modify, merge, publish,\r
-// distribute, sublicense, and/or sell copies of the Software, and to\r
-// permit persons to whom the Software is furnished to do so, subject to\r
-// the following conditions:\r
-//\r
-// The above copyright notice and this permission notice shall be\r
-// included in all copies or substantial portions of the Software.\r
-//\r
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
-//\r
-\r
-using System;\r
-using System.Collections.Generic;\r
-using System.Text;\r
-\r
-namespace System.ComponentModel\r
-{\r
- [AttributeUsageAttribute (AttributeTargets.Class)]\r
- public sealed class DataObjectAttribute : Attribute\r
- {\r
- #region Fields\r
-\r
- public static readonly DataObjectAttribute DataObject;\r
- public static readonly DataObjectAttribute Default;\r
- public static readonly DataObjectAttribute NonDataObject;\r
-\r
- readonly bool _isDataObject;\r
-\r
- #endregion\r
-\r
- #region Constructors\r
-\r
- static DataObjectAttribute () {\r
- DataObject = new DataObjectAttribute (true);\r
- NonDataObject = new DataObjectAttribute (false);\r
- Default = NonDataObject;\r
- }\r
-\r
- public DataObjectAttribute () : this (true) { }\r
- public DataObjectAttribute (bool isDataObject) {\r
- _isDataObject = isDataObject;\r
- }\r
-\r
- #endregion\r
-\r
- #region Properties\r
-\r
- public bool IsDataObject { get { return _isDataObject; } }\r
-\r
- #endregion\r
-\r
- #region Methods\r
-\r
- public override bool Equals (object obj) {\r
- if (!(obj is DataObjectAttribute))\r
- return false;\r
-\r
- return ((DataObjectAttribute) obj).IsDataObject == IsDataObject;\r
- }\r
- public override int GetHashCode () {\r
- return IsDataObject.GetHashCode ();\r
- }\r
- public override bool IsDefaultAttribute () {\r
- return Default.Equals (this);\r
- }\r
-\r
- #endregion\r
- }\r
-}\r
+++ /dev/null
-//
-// Copyright 2006 Novell, Inc (http://www.novell.com)
-//
-// Authors:
-// Miguel de Icaza <miguel@novell.com>
-//
-// 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;
-using System.Collections.Generic;
-using System.Text;
-
-namespace System.ComponentModel
-{
- [AttributeUsageAttribute (AttributeTargets.Property)]
- public sealed class DataObjectFieldAttribute : Attribute
- {
- bool primary_key, is_identity, is_nullable;
- int length = -1;
-
- public DataObjectFieldAttribute (bool primaryKey)
- {
- primary_key = primaryKey;
- }
-
- public DataObjectFieldAttribute (bool primaryKey, bool isIdentity)
- {
- primary_key = primaryKey;
- is_identity = isIdentity;
- }
-
- public DataObjectFieldAttribute (bool primaryKey, bool isIdentity, bool isNullable)
- {
- primary_key = primaryKey;
- is_identity = isIdentity;
- is_nullable = isNullable;
- }
-
- public DataObjectFieldAttribute (bool primaryKey, bool isIdentity, bool isNullable, int length)
- {
- primary_key = primaryKey;
- is_identity = isIdentity;
- is_nullable = isNullable;
- this.length = length;
- }
-
- public bool IsIdentity {
- get { return is_identity; }
- }
-
- public bool IsNullable {
- get { return is_nullable; }
- }
-
- public int Length {
- get { return length; }
- }
-
- public bool PrimaryKey {
- get { return primary_key; }
- }
-
- public override bool Equals (object obj)
- {
- DataObjectFieldAttribute other = obj as DataObjectFieldAttribute;
- if (other == null)
- return false;
-
- return other.primary_key == primary_key &&
- other.is_identity == is_identity &&
- other.is_nullable == is_nullable &&
- other.length == length;
- }
-
- public override int GetHashCode ()
- {
- return ((primary_key ? 1 : 0) |
- (is_identity ? 2 : 0) |
- (is_nullable ? 4 : 0)) ^
- length;
-
- }
- }
-}
-
+++ /dev/null
-//
-// (C) 2006 Mainsoft Corporation (http://www.mainsoft.com)
-//
-// Authors:
-// Konstantin Triger <kostat@mainsoft.com>
-//
-// 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;
-using System.Collections.Generic;
-using System.Text;
-
-namespace System.ComponentModel
-{
- [AttributeUsageAttribute (AttributeTargets.Method)]
- public sealed class DataObjectMethodAttribute : Attribute
- {
- #region Fields
-
- readonly DataObjectMethodType _methodType;
- readonly bool _isDefault;
-
- #endregion
-
- #region Constructors
-
- public DataObjectMethodAttribute (DataObjectMethodType methodType) : this (methodType, false) { }
- public DataObjectMethodAttribute (DataObjectMethodType methodType, bool isDefault) {
- _methodType = methodType;
- _isDefault = isDefault;
- }
-
- #endregion
-
- #region Properties
-
- public DataObjectMethodType MethodType { get { return _methodType; } }
- public bool IsDefault { get { return _isDefault; } }
-
- #endregion
-
- #region Methods
-
- public override bool Match (object obj) {
- if (!(obj is DataObjectMethodAttribute))
- return false;
- return ((DataObjectMethodAttribute) obj).MethodType == MethodType;
- }
-
- public override bool Equals (object obj) {
- return Match (obj) ?
- ((DataObjectMethodAttribute) obj).IsDefault == IsDefault
- : false;
- }
-
- public override int GetHashCode () {
- return MethodType.GetHashCode () ^ IsDefault.GetHashCode ();
- }
-
- #endregion
- }
-}
+++ /dev/null
-//
-// (C) 2006 Mainsoft Corporation (http://www.mainsoft.com)
-//
-// Authors:
-// Konstantin Triger <kostat@mainsoft.com>
-//
-// 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;
-using System.Collections.Generic;
-using System.Text;
-
-namespace System.ComponentModel
-{
- public enum DataObjectMethodType
- {
- Fill = 0,
- Select = 1,
- Update = 2,
- Insert = 3,
- Delete = 4
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.DateTimeConverter
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel.Design.Serialization;
-using System.Globalization;
-using System.Reflection;
-
-namespace System.ComponentModel
-{
- public class DateTimeConverter : TypeConverter
- {
- public DateTimeConverter()
- {
- }
-
- public override bool CanConvertFrom (ITypeDescriptorContext context, Type sourceType)
- {
- if (sourceType == typeof (string))
- return true;
- return base.CanConvertFrom (context, sourceType);
- }
-
- public override bool CanConvertTo (ITypeDescriptorContext context, Type destinationType)
- {
- if (destinationType == typeof (InstanceDescriptor))
- return true;
- return base.CanConvertTo (context, destinationType);
- }
-
- public override object ConvertFrom (ITypeDescriptorContext context, CultureInfo culture, object value)
- {
- if (value is string) {
- string DateString = (string) value;
- try {
- if (DateString != null && DateString.Trim ().Length == 0) {
- return DateTime.MinValue;
- } else if (culture == null) {
- return DateTime.Parse (DateString);
- } else {
- DateTimeFormatInfo info = (DateTimeFormatInfo) culture.GetFormat (typeof (DateTimeFormatInfo));
- return DateTime.Parse (DateString, info);
- }
- } catch {
- throw new FormatException (DateString + " is not a valid DateTime value.");
- }
- }
- return base.ConvertFrom (context, culture, value);
- }
-
- public override object ConvertTo (ITypeDescriptorContext context, CultureInfo culture, object value,
- Type destinationType)
- {
- if (value is DateTime) {
- DateTime datetime = (DateTime) value;
- if (destinationType == typeof (string)) {
- if (culture == null)
- culture = CultureInfo.CurrentCulture;
-
- if (datetime == DateTime.MinValue)
- return string.Empty;
-
- DateTimeFormatInfo info = (DateTimeFormatInfo) culture.GetFormat (typeof (DateTimeFormatInfo));
-
- if (culture == CultureInfo.InvariantCulture) {
- if (datetime.Equals (datetime.Date)) {
- return datetime.ToString ("yyyy-MM-dd", culture);
- }
- return datetime.ToString (culture);
- } else {
- if (datetime == datetime.Date) {
- return datetime.ToString (info.ShortDatePattern, culture);
- } else {
- return datetime.ToString (info.ShortDatePattern + " " +
- info.ShortTimePattern, culture);
- }
- }
- } else if (destinationType == typeof (InstanceDescriptor)) {
- ConstructorInfo ctor = typeof(DateTime).GetConstructor (new Type[] {typeof(long)});
- return new InstanceDescriptor (ctor, new object[] { datetime.Ticks });
- }
- }
- return base.ConvertTo (context, culture, value, destinationType);
- }
- }
-}
+++ /dev/null
-//
-// DateTimeOffsetConverter.cs
-//
-// Author:
-// Carlos Alberto Cortez (calberto.cortez@gmail.com)
-//
-// Copyright (C) 2010 Novell, Inc (http://www.novell.com)
-//
-// 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.
-//
-
-#if NET_4_0
-
-using System;
-using System.Globalization;
-using System.ComponentModel.Design.Serialization;
-using System.Reflection;
-
-namespace System.ComponentModel
-{
- public class DateTimeOffsetConverter : TypeConverter
- {
- static readonly string OffsetPattern = "K";
- static readonly string InvariantDatePattern = "yyyy-MM-dd";
-
- public DateTimeOffsetConverter ()
- {
- }
-
- public override bool CanConvertFrom (ITypeDescriptorContext context, Type sourceType)
- {
- if (sourceType == typeof (string))
- return true;
-
- return base.CanConvertFrom (context, sourceType);
- }
-
- public override bool CanConvertTo (ITypeDescriptorContext context, Type destinationType)
- {
- if (destinationType == typeof (string) || destinationType == typeof (InstanceDescriptor))
- return true;
-
- return base.CanConvertTo (context, destinationType);
- }
-
- public override object ConvertFrom (ITypeDescriptorContext context, CultureInfo culture, object value)
- {
- if (value is string) {
- string s = ((string) value).Trim ();
- if (s.Length == 0)
- return DateTimeOffset.MinValue;
-
- DateTimeOffset retval;
- if (culture == null) {
- if (DateTimeOffset.TryParse (s, out retval))
- return retval;
- } else {
- DateTimeFormatInfo info = (DateTimeFormatInfo) culture.GetFormat (typeof (DateTimeFormatInfo));
- if (DateTimeOffset.TryParse (s, info, DateTimeStyles.None, out retval))
- return retval;
- }
-
- throw new FormatException (s + " is not a valid DateTimeOffset value.");
- }
-
- return base.ConvertFrom (context, culture, value);
- }
-
- public override object ConvertTo (ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType)
- {
- if (value is DateTimeOffset) {
- DateTimeOffset dt_offset = (DateTimeOffset) value;
-
- if (destinationType == typeof (string)) {
- if (dt_offset == DateTimeOffset.MinValue)
- return String.Empty;
-
- if (culture == null)
- culture = CultureInfo.CurrentCulture;
-
- // InvariantCulture gets special handling.
- if (culture == CultureInfo.InvariantCulture) {
- if (dt_offset.DateTime == dt_offset.Date)
- return dt_offset.ToString (InvariantDatePattern + " " + OffsetPattern);
-
- return dt_offset.ToString (culture);
- }
-
- DateTimeFormatInfo info = (DateTimeFormatInfo) culture.GetFormat (typeof (DateTimeFormatInfo));
- if (dt_offset.DateTime == dt_offset.Date)
- return dt_offset.ToString (info.ShortDatePattern + " " + OffsetPattern);
-
- // No need to pass CultureInfo, as we already consumed the proper patterns.
- return dt_offset.ToString (info.ShortDatePattern + " " + info.ShortTimePattern + " " + OffsetPattern, null);
- }
-
- if (destinationType == typeof (InstanceDescriptor)) {
- ConstructorInfo ctor = typeof (DateTimeOffset).GetConstructor ( GetDateTimeOffsetArgumentTypes ());
- object [] ctor_args = new object [] { dt_offset.Year, dt_offset.Month, dt_offset.Day,
- dt_offset.Hour, dt_offset.Minute, dt_offset.Second, dt_offset.Millisecond,
- dt_offset.Offset };
- return new InstanceDescriptor (ctor, ctor_args);
- }
- }
-
- return base.ConvertTo (context, culture, value, destinationType);
- }
-
- static Type [] ctor_argument_types;
-
- static Type [] GetDateTimeOffsetArgumentTypes ()
- {
- if (ctor_argument_types == null) {
- Type int_type = typeof (int);
- ctor_argument_types = new Type [] { int_type, int_type, int_type, int_type, int_type, int_type, int_type,
- typeof (TimeSpan) };
- }
-
- return ctor_argument_types;
- }
- }
-}
-
-#endif
-
+++ /dev/null
-//
-// System.ComponentModel.DecimalConverter
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-using System.Reflection;
-using System.ComponentModel.Design.Serialization;
-
-namespace System.ComponentModel
-{
- public class DecimalConverter : BaseNumberConverter
- {
- public DecimalConverter()
- {
- InnerType = typeof(Decimal);
- }
-
- internal override bool SupportHex {
- get { return false; }
- }
-
- public override bool CanConvertTo (ITypeDescriptorContext context,
- Type destinationType)
- {
- if (destinationType == typeof (InstanceDescriptor))
- return true;
- return base.CanConvertTo (context, destinationType);
- }
-
- public override object ConvertTo (ITypeDescriptorContext context,
- CultureInfo culture, object value, Type destinationType)
- {
- if (destinationType == typeof (InstanceDescriptor) && value is Decimal) {
- Decimal cval = (Decimal) value;
- ConstructorInfo ctor = typeof(Decimal).GetConstructor (new Type[] {typeof(int[])});
- return new InstanceDescriptor (ctor, new object[] {Decimal.GetBits (cval)});
- }
-
- return base.ConvertTo(context, culture, value, destinationType);
- }
-
- internal override string ConvertToString (object value, NumberFormatInfo format)
- {
- return ((decimal) value).ToString ("G", format);
- }
-
- internal override object ConvertFromString (string value, NumberFormatInfo format)
- {
- return decimal.Parse (value, NumberStyles.Float, format);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.DefaultBindingPropertyAttribute
-//
-// Authors:
-// Rolf Bjarne Kvinge (RKvinge@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc.
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- [AttributeUsage (AttributeTargets.Class)]
- public sealed class DefaultBindingPropertyAttribute : Attribute
- {
- public static readonly DefaultBindingPropertyAttribute Default;
-
- private string name;
-
- static DefaultBindingPropertyAttribute ()
- {
- Default = new DefaultBindingPropertyAttribute ();
- }
-
- public DefaultBindingPropertyAttribute ()
- {
- }
-
- public DefaultBindingPropertyAttribute (string name)
- {
- this.name = name;
- }
-
- public override bool Equals (object obj)
- {
- DefaultBindingPropertyAttribute other = obj as DefaultBindingPropertyAttribute;
-
- if (obj == null)
- return false;
-
- return name == other.Name;
- }
-
- public override int GetHashCode ()
- {
- return name == null ? 0 : name.GetHashCode ();
- }
-
- public string Name {
- get {
- return name;
- }
- }
-
-
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.DefaultEventAttribute
-//
-// Authors:
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2002 Ximian, Inc (http://www.ximian.com)
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- [AttributeUsage(AttributeTargets.Class)]
- public sealed class DefaultEventAttribute : Attribute
- {
- private string eventName;
-
- public static readonly DefaultEventAttribute Default = new DefaultEventAttribute (null);
-
- public DefaultEventAttribute (string name)
- {
- eventName = name;
- }
-
- public string Name
- {
- get { return eventName; }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is DefaultEventAttribute))
- return false;
-
- return (((DefaultEventAttribute) obj).eventName == eventName);
- }
-
- public override int GetHashCode ()
- {
- return eventName == null ? 0 : eventName.GetHashCode ();
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.DefaultPropertyAttribute
-//
-// Authors:
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2002 Ximian, Inc (http://www.ximian.com)
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- [AttributeUsage(AttributeTargets.Class)]
- public sealed class DefaultPropertyAttribute : Attribute
- {
- private string property_name;
-
- public static readonly DefaultPropertyAttribute Default = new DefaultPropertyAttribute (null);
-
- public DefaultPropertyAttribute (string name)
- {
- property_name = name;
- }
-
- public string Name
- {
- get { return property_name; }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is DefaultPropertyAttribute))
- return false;
-
- return (((DefaultPropertyAttribute) obj).Name == property_name);
- }
-
- public override int GetHashCode ()
- {
- return property_name == null ? 0 : property_name.GetHashCode ();
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.DefaultValueAttribute.cs
-//
-// Authors:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-namespace System.ComponentModel
-{
- [AttributeUsage(AttributeTargets.All)]
- public class DefaultValueAttribute : Attribute
- {
-
- private object DefaultValue;
-
- public DefaultValueAttribute (bool value)
- {
- DefaultValue = value;
- }
-
- public DefaultValueAttribute (byte value)
- {
- DefaultValue = value;
- }
-
- public DefaultValueAttribute (char value)
- {
- DefaultValue = value;
- }
-
- public DefaultValueAttribute (double value)
- {
- DefaultValue = value;
- }
-
- public DefaultValueAttribute (short value)
- {
- DefaultValue = value;
- }
-
- public DefaultValueAttribute (int value)
- {
- DefaultValue = value;
- }
-
- public DefaultValueAttribute (long value)
- {
- DefaultValue = value;
- }
-
- public DefaultValueAttribute (object value)
- {
- DefaultValue = value;
- }
-
- public DefaultValueAttribute (float value)
- {
- DefaultValue = value;
- }
-
- public DefaultValueAttribute (string value)
- {
- DefaultValue = value;
- }
-
- public DefaultValueAttribute (Type type, string value)
- {
- try {
-#if NET_2_1
- if (type.IsEnum)
- DefaultValue = Enum.Parse (type, value);
- else if (type == typeof (TimeSpan))
- DefaultValue = TimeSpan.Parse (value);
- else
- DefaultValue = Convert.ChangeType (value, type, null);
-#else
- TypeConverter converter = TypeDescriptor.GetConverter (type);
- DefaultValue = converter.ConvertFromString (null, CultureInfo.InvariantCulture, value);
-#endif
- } catch { }
- }
-
- public virtual object Value {
- get { return DefaultValue; }
- }
-
- protected void SetValue (object value)
- {
- DefaultValue = value;
- }
-
- public override bool Equals (object obj)
- {
- DefaultValueAttribute dva = (obj as DefaultValueAttribute);
- if (dva == null)
- return false;
-
- if (DefaultValue == null)
- return (dva.Value == null);
-
- return DefaultValue.Equals (dva.Value);
- }
-
- public override int GetHashCode()
- {
- if (DefaultValue == null)
- return 0;
- return DefaultValue.GetHashCode();
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.DerivedPropertyDescriptor
-//
-// Authors:
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-//
-// (C) 2002 Ximian, Inc (http://www.ximian.com)
-//
-
-//
-// 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;
-using System.Reflection;
-
-namespace System.ComponentModel
-{
- class DerivedPropertyDescriptor : PropertyDescriptor
- {
- bool readOnly;
- Type componentType;
- Type propertyType;
- PropertyInfo prop;
-
- protected DerivedPropertyDescriptor (string name, Attribute [] attrs)
- : base (name, attrs)
- {
- }
-
- public DerivedPropertyDescriptor (string name, Attribute [] attrs, int dummy)
- : this (name, attrs)
- {
- }
-
- public void SetReadOnly (bool value)
- {
- readOnly = value;
- }
-
- public void SetComponentType (Type type)
- {
- componentType = type;
- }
-
- public void SetPropertyType (Type type)
- {
- propertyType = type;
- }
-
- public override object GetValue (object component)
- {
- if (prop == null)
- prop = componentType.GetProperty (Name);
-
- return prop.GetValue (component, null);
- }
-
- public override void SetValue(object component, object value) {
-
- if (prop == null)
- prop = componentType.GetProperty (Name);
-
- prop.SetValue (component, value, null);
- // FIXME: EventArgs might be differen type.
- OnValueChanged (component, new PropertyChangedEventArgs (Name));
- }
-
- [MonoTODO]
- public override void ResetValue(object component) {
-
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public override bool CanResetValue(object component) {
-
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public override bool ShouldSerializeValue(object component) {
-
- throw new NotImplementedException ();
- }
-
- public override Type ComponentType
- {
- get {
- return componentType;
- }
-
- }
-
- public override bool IsReadOnly
- {
- get {
- return readOnly;
-
- }
-
- }
-
- public override Type PropertyType
- {
- get {
- return propertyType;
- }
-
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.DescriptionAttribute.cs
-//
-// Authors:
-// Miguel de Icaza (miguel@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Ximian, Inc. http://www.ximian.com
-// (C) 2003 Andreas Nahr
-//
-//
-
-//
-// 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.ComponentModel {
-
- [AttributeUsage (AttributeTargets.All)]
- public class DescriptionAttribute : Attribute
- {
- private string desc;
-
- public static readonly DescriptionAttribute Default = new DescriptionAttribute ();
-
- public DescriptionAttribute ()
- {
- desc = string.Empty;
- }
-
- public DescriptionAttribute (string description)
- {
- desc = description;
- }
-
- public virtual string Description {
- get {
- return DescriptionValue;
- }
- }
-
- //
- // Notice that the default Description implementation uses this by default
- //
- protected string DescriptionValue {
- get {
- return desc;
- }
-
- set {
- desc = value;
- }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is DescriptionAttribute))
- return false;
- if (obj == this)
- return true;
- return ((DescriptionAttribute) obj).Description == desc;
- }
-
- public override int GetHashCode ()
- {
- return desc.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return this == Default;
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.DesignOnlyAttribute.cs
-//
-// Author:
-// Miguel de Icaza (miguel@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Ximian, Inc. http://www.ximian.com
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel {
-
- [AttributeUsage (AttributeTargets.All)]
- public sealed class DesignOnlyAttribute : Attribute
- {
-
- private bool design_only;
-
- public static readonly DesignOnlyAttribute Default = new DesignOnlyAttribute (false);
- public static readonly DesignOnlyAttribute No = new DesignOnlyAttribute (false);
- public static readonly DesignOnlyAttribute Yes = new DesignOnlyAttribute (true);
-
- public DesignOnlyAttribute (bool design_only)
- {
- this.design_only = design_only;
- }
-
- public bool IsDesignOnly {
- get { return design_only; }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is DesignOnlyAttribute))
- return false;
- if (obj == this)
- return true;
- return ((DesignOnlyAttribute) obj).IsDesignOnly == design_only;
- }
-
- public override int GetHashCode ()
- {
- return design_only.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return design_only == DesignOnlyAttribute.Default.IsDesignOnly;
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.DesignTimeVisibleAttribute.cs
-//
-// Author:
-// Tim Coleman (tim@timcoleman.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// Copyright (C) Tim Coleman, 2002
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel {
- [AttributeUsage (AttributeTargets.Class | AttributeTargets.Interface)]
- public sealed class DesignTimeVisibleAttribute : Attribute
- {
- #region Fields
-
- private bool visible;
-
- public static readonly DesignTimeVisibleAttribute Default = new DesignTimeVisibleAttribute (true);
- public static readonly DesignTimeVisibleAttribute No = new DesignTimeVisibleAttribute (false);
- public static readonly DesignTimeVisibleAttribute Yes = new DesignTimeVisibleAttribute (true);
-
- #endregion // Fields
-
- #region Constructors
-
- public DesignTimeVisibleAttribute ()
- : this (false)
- {
- }
-
- public DesignTimeVisibleAttribute (bool visible)
- {
- this.visible = visible;
- }
-
- #endregion // Constructors
-
- #region Properties
-
- public bool Visible {
- get { return visible; }
- }
-
- #endregion // Properties
-
- #region Methods
-
-
- public override bool Equals (object obj)
- {
- if (!(obj is DesignTimeVisibleAttribute))
- return false;
- if (obj == this)
- return true;
- return ((DesignTimeVisibleAttribute) obj).Visible == visible;
- }
-
- public override int GetHashCode ()
- {
- return visible.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return visible == DesignTimeVisibleAttribute.Default.Visible;
- }
-
- #endregion // Methods
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.DesignerAttribute.cs
-//
-// Author:
-// Alejandro Sánchez Acosta (raciel@es.gnu.org)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Alejandro Sánchez Acosta
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel.Design;
-
-namespace System.ComponentModel
-{
-
- /// <summary>
- /// Designer Attribute for classes.
- /// </summary>
- [AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface, AllowMultiple = true, Inherited = true)]
- public sealed class DesignerAttribute : Attribute
- {
- private string name;
- private string basetypename;
-
- public DesignerAttribute (string designerTypeName)
- {
- if (designerTypeName == null)
- throw new NullReferenceException ();
- name = designerTypeName;
- basetypename = typeof(IDesigner).FullName;
- }
-
- public DesignerAttribute (Type designerType)
- : this (designerType.AssemblyQualifiedName)
- {
- }
-
- public DesignerAttribute (string designerTypeName, Type designerBaseType)
- : this (designerTypeName, designerBaseType.AssemblyQualifiedName)
- {
- }
-
- public DesignerAttribute (Type designerType, Type designerBaseType)
- : this (designerType.AssemblyQualifiedName, designerBaseType.AssemblyQualifiedName)
- {
- }
-
- public DesignerAttribute (string designerTypeName, string designerBaseTypeName)
- {
- if (designerTypeName == null)
- throw new NullReferenceException ();
- name = designerTypeName;
- basetypename = designerBaseTypeName;
- }
-
- public string DesignerBaseTypeName {
- get {
- return basetypename;
- }
- }
-
- public string DesignerTypeName {
- get {
- return name;
- }
- }
-
- public override object TypeId {
- get {
- string baseTypeNameOnly = basetypename;
- int index = baseTypeNameOnly.IndexOf (',');
- if (index != -1) // strip name
- baseTypeNameOnly = baseTypeNameOnly.Substring (0, index);
- return this.GetType ().ToString() + baseTypeNameOnly;
- }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is DesignerAttribute))
- return false;
- return ((DesignerAttribute) obj).DesignerBaseTypeName.Equals (basetypename) &&
- ((DesignerAttribute) obj).DesignerTypeName.Equals (name);
- }
-
- public override int GetHashCode ()
- {
- return string.Concat(name, basetypename).GetHashCode ();
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.DesignerCategoryAttribute.cs
-//
-// Authors:
-// Alan Tam Siu Lung (Tam@SiuLung.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel {
-
- [AttributeUsage(AttributeTargets.Class)]
- public sealed class DesignerCategoryAttribute : Attribute
- {
- private string category;
-
- public static readonly DesignerCategoryAttribute Component = new DesignerCategoryAttribute ("Component");
- public static readonly DesignerCategoryAttribute Form = new DesignerCategoryAttribute ("Form");
- public static readonly DesignerCategoryAttribute Generic = new DesignerCategoryAttribute ("Designer");
- public static readonly DesignerCategoryAttribute Default = new DesignerCategoryAttribute (string.Empty);
-
- public DesignerCategoryAttribute ()
- {
- this.category = string.Empty;
- }
-
- public DesignerCategoryAttribute (string category)
- {
- this.category = category;
- }
-
- public override object TypeId {
- get {
- return GetType ();
- }
- }
-
- public string Category {
- get {
- return category;
- }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is DesignerCategoryAttribute))
- return false;
- if (obj == this)
- return true;
- return ((DesignerCategoryAttribute) obj).Category == category;
- }
-
- public override int GetHashCode ()
- {
- return category.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return category == DesignerCategoryAttribute.Default.Category;
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.DesignerSerializationVisibility.cs
-//
-// Author:
-// Miguel de Icaza (miguel@ximian.com)
-//
-// (C) Ximian, Inc. http://www.ximian.com
-//
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel {
-
- [ComVisible (true)]
- public enum DesignerSerializationVisibility {
- Hidden, Visible, Content
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.DesignerSerializationVisibilityAttribute.cs
-//
-// Author:
-// Miguel de Icaza (miguel@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Ximian, Inc. http://www.ximian.com
-// (C) 2003 Andreas Nahr
-//
-//
-
-//
-// 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.ComponentModel {
-
- [AttributeUsage (AttributeTargets.Method | AttributeTargets.Property
- | AttributeTargets.Field | AttributeTargets.Event
- )]
- public sealed class DesignerSerializationVisibilityAttribute : Attribute
- {
-
- private DesignerSerializationVisibility visibility;
-
- public static readonly DesignerSerializationVisibilityAttribute Default=
- new DesignerSerializationVisibilityAttribute (DesignerSerializationVisibility.Visible);
- public static readonly DesignerSerializationVisibilityAttribute Content =
- new DesignerSerializationVisibilityAttribute (DesignerSerializationVisibility.Content);
- public static readonly DesignerSerializationVisibilityAttribute Hidden =
- new DesignerSerializationVisibilityAttribute (DesignerSerializationVisibility.Hidden);
- public static readonly DesignerSerializationVisibilityAttribute Visible=
- new DesignerSerializationVisibilityAttribute (DesignerSerializationVisibility.Visible);
-
-
- public DesignerSerializationVisibilityAttribute (DesignerSerializationVisibility vis)
- {
- visibility = vis;
- }
-
-
- public DesignerSerializationVisibility Visibility {
- get { return visibility; }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is DesignerSerializationVisibilityAttribute))
- return false;
- if (obj == this)
- return true;
- return ((DesignerSerializationVisibilityAttribute) obj).Visibility == visibility;
- }
-
- public override int GetHashCode ()
- {
- return visibility.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return visibility == DesignerSerializationVisibilityAttribute.Default.Visibility;
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.DisplayNameAttribute
-//
-// Authors:
-// Marek Habersack <grendello@gmail.com>
-//
-// (C) 2006 Marek Habersack
-//
-// 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.ComponentModel
-{
- [AttributeUsageAttribute (AttributeTargets.Class | AttributeTargets.Method | AttributeTargets.Property | AttributeTargets.Event)]
- public class DisplayNameAttribute : Attribute
- {
- public static readonly DisplayNameAttribute Default = new DisplayNameAttribute ();
-
- private string attributeDisplayName;
-
- public DisplayNameAttribute ()
- {
- this.attributeDisplayName = String.Empty;
- }
-
- public DisplayNameAttribute (string displayName)
- {
- this.attributeDisplayName = displayName;
- }
-
- public override bool IsDefaultAttribute ()
- {
- if (attributeDisplayName != null)
- return attributeDisplayName.Length == 0;
- return false;
- }
-
- public override int GetHashCode ()
- {
- return attributeDisplayName.GetHashCode ();
- }
-
- public override bool Equals (object obj)
- {
- if (obj == this)
- return true;
-
- DisplayNameAttribute dna = obj as DisplayNameAttribute;
-
- if (dna == null)
- return false;
- return dna.DisplayName == attributeDisplayName;
- }
-
- public virtual string DisplayName {
- get { return attributeDisplayName; }
- }
-
- protected string DisplayNameValue {
- get { return attributeDisplayName; }
- set { attributeDisplayName = value; }
- }
- }
-}
+++ /dev/null
-//
-// DoWorkEventArgs.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-// Copyright (C) 2006 Novell, Inc.
-//
-
-//
-// 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.ComponentModel
-{
- public class DoWorkEventArgs
-#if !NET_2_1
- : CancelEventArgs
-#else
- : EventArgs
-#endif
- {
- public DoWorkEventArgs (object argument)
- {
- arg = argument;
- }
-
- object arg, result;
-
- public object Argument {
- get { return arg; }
- }
-
- public object Result {
- get { return result; }
- set { result = value; }
- }
-
-#if NET_2_1
- bool cancel;
-
- public bool Cancel {
- get { return cancel; }
- set { cancel = value; }
- }
-#endif
- }
-}
+++ /dev/null
-//
-// DoWorkEventHandler.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-
-//
-// 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.ComponentModel
-{
- public delegate void DoWorkEventHandler (object sender, DoWorkEventArgs e);
-}
+++ /dev/null
-//
-// System.ComponentModel.DoubleConverter.cs
-//
-// Author:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-
-namespace System.ComponentModel
-{
- public class DoubleConverter : BaseNumberConverter
- {
- public DoubleConverter()
- {
- InnerType = typeof (Double);
- }
-
- internal override bool SupportHex {
- get { return false; }
- }
-
- internal override string ConvertToString (object value, NumberFormatInfo format)
- {
- return ((double) value).ToString ("R", format);
- }
-
- internal override object ConvertFromString (string value, NumberFormatInfo format)
- {
- return double.Parse (value, NumberStyles.Float, format);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.EditorAttribute.cs
-//
-// Author:
-// Alejandro Sánchez Acosta (raciel@es.gnu.org)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Alejandro Sánchez Acosta
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel {
-
- /// <summary>
- /// Editor Attribute for classes.
- /// </summary>
- [AttributeUsage (AttributeTargets.All, AllowMultiple = true, Inherited = true)]
- public sealed class EditorAttribute : Attribute {
-
- string name;
- string basename;
-
- public EditorAttribute ()
- {
- this.name = string.Empty;
- }
-
- public EditorAttribute (string typeName, string baseTypeName)
- {
- name = typeName;
- basename = baseTypeName;
- }
-
- public EditorAttribute (string typeName, Type baseType)
- : this (typeName, baseType.AssemblyQualifiedName)
- {
- }
-
- public EditorAttribute (Type type, Type baseType)
- : this (type.AssemblyQualifiedName, baseType.AssemblyQualifiedName)
- {
- }
-
- public string EditorBaseTypeName {
- get {
- return basename;
- }
- }
-
- public string EditorTypeName {
- get {
- return name;
- }
- }
-
- public override object TypeId {
- get {
- return this.GetType ();
- }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is EditorAttribute))
- return false;
-
- return ((EditorAttribute) obj).EditorBaseTypeName.Equals (basename) &&
- ((EditorAttribute) obj).EditorTypeName.Equals (name);
- }
-
- public override int GetHashCode ()
- {
- return string.Concat(name, basename).GetHashCode ();
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.EditorBrowsableAttribute.cs
-//
-// Author:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-//
-
-//
-// 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.ComponentModel;
-
-namespace System.ComponentModel
-{
-
- [AttributeUsage (AttributeTargets.Class | AttributeTargets.Constructor | AttributeTargets.Delegate |
- AttributeTargets.Enum | AttributeTargets.Event | AttributeTargets.Field |
- AttributeTargets.Interface | AttributeTargets.Method | AttributeTargets.Property |
- AttributeTargets.Struct)]
- public sealed class EditorBrowsableAttribute : Attribute
- {
- private EditorBrowsableState state;
-
- public EditorBrowsableAttribute ()
- {
- this.state = EditorBrowsableState.Always;
- }
-
- public EditorBrowsableAttribute (System.ComponentModel.EditorBrowsableState state)
- {
- this.state = state;
- }
-
- public EditorBrowsableState State {
- get {
- return state;
- }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is EditorBrowsableAttribute))
- return false;
- if (obj == this)
- return true;
- return ((EditorBrowsableAttribute) obj).State == state;
- }
-
- public override int GetHashCode ()
- {
- return state.GetHashCode ();
- }
- }
-}
+++ /dev/null
-//
-// ProjectData.cs
-//
-// Author:
-// Martin Adoue (martin@cwanet.com)
-//
-// (C) 2002 Martin Adoue
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
-
- /// <summary>
- /// Specifies the browsable state of a property or method from within an editor.
- /// </summary>
- public enum EditorBrowsableState
- {
- /// <summary>
- /// The property or method is always browsable from within an editor.
- /// </summary>
- Always = 0,
- /// <summary>
- /// The property or method is never browsable from within an editor.
- /// </summary>
- Never = 1,
- /// <summary>
- /// The property or method is a feature that only advanced users should see. An editor can either show or hide such properties.
- /// </summary>
- Advanced = 2
- }
-
-}
+++ /dev/null
-//
-// System.ComponentModel.EnumConverter.cs
-//
-// Authors:
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-// Ivan N. Zlatev (contact@i-nz.net)
-//
-// (C) 2002 Ximian, Inc (http://www.ximian.com)
-// (C) 2003 Andreas Nahr
-// (C) 2007 Ivan N. Zlatev
-//
-
-//
-// 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;
-using System.Collections;
-using System.Globalization;
-using System.Reflection;
-using System.ComponentModel.Design.Serialization;
-
-namespace System.ComponentModel
-{
- public class EnumConverter : TypeConverter
- {
- private Type type;
- private StandardValuesCollection stdValues;
-
- public EnumConverter (Type type)
- {
- this.type = type;
- }
-
- public override bool CanConvertTo (ITypeDescriptorContext context, Type destinationType)
- {
- if (destinationType == typeof (InstanceDescriptor))
- return true;
-
- if (destinationType == typeof (Enum[]))
- return true;
-
- return base.CanConvertTo (context, destinationType);
- }
-
- public override object ConvertTo (ITypeDescriptorContext context,
- CultureInfo culture,
- object value,
- Type destinationType)
- {
- if (destinationType == typeof (string) && value != null) {
- // we need to be able to convert enum names,
- // integral values and other enum fields
- if (value is IConvertible) {
- Type underlyingType = Enum.GetUnderlyingType (type);
- if (underlyingType != value.GetType ()) {
- value = ((IConvertible) value).ToType (
- underlyingType, culture);
- }
- }
-
- if (!IsFlags && !IsValid (context, value))
- throw CreateValueNotValidException (value);
-
- return Enum.Format (type, value, "G");
- } else if (destinationType == typeof (InstanceDescriptor) && value != null) {
- string enumString = ConvertToString (context, culture, value);
- if (IsFlags && enumString.IndexOf (",") != -1) {
- if (value is IConvertible) {
- Type underlyingType = Enum.GetUnderlyingType (type);
- object enumValue = ((IConvertible)value).ToType (underlyingType, culture);
- MethodInfo toObjectMethod = typeof (Enum).GetMethod ("ToObject", new Type[] { typeof (Type),
- underlyingType });
- return new InstanceDescriptor (toObjectMethod, new object[] { type, enumValue });
- }
- } else {
- FieldInfo f = type.GetField (enumString);
- if (f != null)
- return new InstanceDescriptor (f, null);
- }
- } else if (destinationType == typeof (Enum[]) && value != null) {
- if (!IsFlags) {
- return new Enum[] { (Enum) Enum.ToObject (type, value) };
- } else {
- long valueLong = Convert.ToInt64 (
- (Enum) value, culture);
- Array enumValArray = Enum.GetValues (type);
- long[] enumValues = new long[enumValArray.Length];
- for (int i=0; i < enumValArray.Length; i++)
- enumValues[i] = Convert.ToInt64 (enumValArray.GetValue (i));
-
- ArrayList enums = new ArrayList ();
- bool interrupt = false;
- while (!interrupt) {
- // interrupt the loop unless we find a match to avoid
- // looping indefinitely
- interrupt = true;
- foreach (long val in enumValues) {
- if ((val != 0 && ((val & valueLong) == val)) || val == valueLong) {
- enums.Add (Enum.ToObject (type, val));
- valueLong &= (~val);
- interrupt = false;
- }
- }
- if (valueLong == 0) // nothing left to do
- interrupt = true;
- }
-
- // add item for remainder
- if (valueLong != 0)
- enums.Add (Enum.ToObject (type, valueLong));
-
- return enums.ToArray (typeof(Enum));
- }
- }
-
- return base.ConvertTo (context, culture, value, destinationType);
- }
-
- public override bool CanConvertFrom (ITypeDescriptorContext context, Type sourceType)
- {
- if (sourceType == typeof (string))
- return true;
-
- if (sourceType == typeof (Enum[]))
- return true;
-
- return base.CanConvertFrom (context, sourceType);
- }
-
- public override object ConvertFrom (ITypeDescriptorContext context,
- CultureInfo culture,
- object value)
- {
- if (value is string) {
- string name = value as string;
- try {
- if (name.IndexOf (',') == -1)
- return Enum.Parse (type, name, true);
-
- long val = 0;
- string [] names = name.Split (',');
- foreach (string n in names) {
- Enum e = (Enum) Enum.Parse (type, n, true);
- val |= Convert.ToInt64 (e, culture);
- }
- return Enum.ToObject (type, val);
- } catch (Exception ex) {
- throw new FormatException (name + " is " +
- "not a valid value for " +
- type.Name, ex);
- }
- } else if (value is Enum[]) {
- long val = 0;
- foreach (Enum e in (Enum[])value)
- val |= Convert.ToInt64 (e, culture);
- return Enum.ToObject (type, val);
- }
-
- return base.ConvertFrom (context, culture, value);
- }
-
- public override bool IsValid (ITypeDescriptorContext context, object value)
- {
- return Enum.IsDefined (type, value);
- }
-
- public override bool GetStandardValuesSupported (ITypeDescriptorContext context)
- {
- return true;
- }
-
- public override bool GetStandardValuesExclusive (ITypeDescriptorContext context)
- {
- return !IsFlags;
- }
-
- public override StandardValuesCollection GetStandardValues (ITypeDescriptorContext context)
- {
- if (stdValues == null) {
- Array values = Enum.GetValues (type);
- Array.Sort (values);
- stdValues = new StandardValuesCollection (values);
- }
- return stdValues;
- }
-
- protected virtual IComparer Comparer {
- get { return new EnumConverter.EnumComparer (); }
- }
-
- protected Type EnumType {
- get { return type; }
- }
-
- protected TypeConverter.StandardValuesCollection Values {
- get { return stdValues; }
- set { stdValues = value; }
- }
-
- ArgumentException CreateValueNotValidException (object value)
- {
- string msg = string.Format (CultureInfo.InvariantCulture,
- "The value '{0}' is not a valid value for the " +
- "enum '{1}'", value, type.Name);
- return new ArgumentException (msg);
- }
-
- bool IsFlags {
- get {
- return (type.IsDefined (typeof (FlagsAttribute),
- false));
- }
- }
-
- private class EnumComparer : IComparer
- {
- int IComparer.Compare (object compareObject1, object compareObject2)
- {
- string CompareString1 = (compareObject1 as string);
- string CompareString2 = (compareObject2 as string);
- if ((CompareString1 == null) || (CompareString2 == null))
- return Collections.Comparer.Default.Compare (compareObject1, compareObject2);
- return CultureInfo.InvariantCulture.CompareInfo.Compare (CompareString1, CompareString2);
- }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.EventDescriptor.cs
-//
-// Authors:
-// Rodrigo Moya (rodrigo@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Ximian, Inc. 2002
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel
-{
- [ComVisible (true)]
- public abstract class EventDescriptor : MemberDescriptor
- {
-
- protected EventDescriptor (MemberDescriptor desc) : base (desc)
- {
- }
-
- protected EventDescriptor (MemberDescriptor desc, Attribute[] attrs) : base (desc, attrs)
- {
- }
-
- protected EventDescriptor (string str, Attribute[] attrs) : base (str, attrs)
- {
- }
-
- public abstract void AddEventHandler (object component, System.Delegate value);
-
- public abstract void RemoveEventHandler(object component, System.Delegate value);
-
- public abstract System.Type ComponentType { get; }
-
- public abstract System.Type EventType { get; }
-
- public abstract bool IsMulticast { get; }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.EventDescriptorCollection.cs
-//
-// Authors:
-// Rodrigo Moya (rodrigo@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Ximian, Inc.
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-using System.Globalization;
-using System.Runtime.InteropServices;
-
-namespace System.ComponentModel
-{
- [ComVisible (true)]
- public class EventDescriptorCollection : IList, ICollection, IEnumerable
- {
- private ArrayList eventList = new ArrayList ();
- private bool isReadOnly;
- public static readonly EventDescriptorCollection Empty = new EventDescriptorCollection (null, true);
-
- private EventDescriptorCollection ()
- {
- }
-
- internal EventDescriptorCollection (ArrayList list)
- {
- eventList = list;
- }
-
- public EventDescriptorCollection (EventDescriptor[] events)
- : this (events, false)
- {
- }
-
- public EventDescriptorCollection (EventDescriptor[] events, bool readOnly)
- {
- this.isReadOnly = readOnly;
- if (events == null)
- return;
-
- for (int i = 0; i < events.Length; i++)
- this.Add (events[i]);
- }
-
- public int Add (EventDescriptor value)
- {
- if (isReadOnly)
- throw new NotSupportedException ("The collection is read-only");
- return eventList.Add (value);
- }
-
- void IList.Clear ()
- {
- Clear ();
- }
-
- public void Clear ()
- {
- if (isReadOnly)
- throw new NotSupportedException ("The collection is read-only");
- eventList.Clear ();
- }
-
- public bool Contains (EventDescriptor value) {
- return eventList.Contains (value);
- }
-
- public virtual EventDescriptor Find (string name, bool ignoreCase)
- {
- foreach (EventDescriptor e in eventList) {
- if (ignoreCase) {
- if (0 == String.Compare (name, e.Name, StringComparison.OrdinalIgnoreCase))
- return e;
- } else {
- if (0 == String.Compare (name, e.Name, StringComparison.Ordinal))
- return e;
- }
- }
- return null;
- }
-
- IEnumerator IEnumerable.GetEnumerator () {
- return GetEnumerator ();
- }
-
- public IEnumerator GetEnumerator () {
- return eventList.GetEnumerator ();
- }
-
- public int IndexOf (EventDescriptor value) {
- return eventList.IndexOf (value);
- }
-
- public void Insert (int index, EventDescriptor value)
- {
- if (isReadOnly)
- throw new NotSupportedException ("The collection is read-only");
- eventList.Insert (index, value);
- }
-
- public void Remove (EventDescriptor value)
- {
- if (isReadOnly)
- throw new NotSupportedException ("The collection is read-only");
- eventList.Remove (value);
- }
-
- void IList.RemoveAt (int index)
- {
- RemoveAt (index);
- }
-
- public void RemoveAt (int index)
- {
- if (isReadOnly)
- throw new NotSupportedException ("The collection is read-only");
- eventList.RemoveAt (index);
- }
-
- public virtual EventDescriptorCollection Sort () {
- EventDescriptorCollection col = CloneCollection ();
- col.InternalSort ((IComparer) null);
- return col;
- }
-
- public virtual EventDescriptorCollection Sort (IComparer comparer) {
- EventDescriptorCollection col = CloneCollection ();
- col.InternalSort (comparer);
- return col;
- }
-
- public virtual EventDescriptorCollection Sort (string[] order) {
- EventDescriptorCollection col = CloneCollection ();
- col.InternalSort (order);
- return col;
- }
-
- public virtual EventDescriptorCollection Sort (string[] order, IComparer comparer) {
- EventDescriptorCollection col = CloneCollection ();
- if (order != null) {
- ArrayList sorted = col.ExtractItems (order);
- col.InternalSort (comparer);
- sorted.AddRange (col.eventList);
- col.eventList = sorted;
- } else {
- col.InternalSort (comparer);
- }
- return col;
- }
-
- protected void InternalSort (IComparer comparer) {
- if (comparer == null)
- comparer = MemberDescriptor.DefaultComparer;
- eventList.Sort (comparer);
- }
-
- protected void InternalSort (string[] order) {
- if (order != null) {
- ArrayList sorted = ExtractItems (order);
- InternalSort ((IComparer) null);
- sorted.AddRange (eventList);
- eventList = sorted;
- } else {
- InternalSort ((IComparer) null);
- }
- }
-
- ArrayList ExtractItems (string[] names)
- {
- ArrayList sorted = new ArrayList (eventList.Count);
- object[] ext = new object [names.Length];
-
- for (int n=0; n<eventList.Count; n++)
- {
- EventDescriptor ed = (EventDescriptor) eventList[n];
- int i = Array.IndexOf (names, ed.Name);
- if (i != -1) {
- ext[i] = ed;
- eventList.RemoveAt (n);
- n--;
- }
- }
- foreach (object ob in ext)
- if (ob != null) sorted.Add (ob);
-
- return sorted;
- }
-
- private EventDescriptorCollection CloneCollection ()
- {
- EventDescriptorCollection col = new EventDescriptorCollection ();
- col.eventList = (ArrayList) eventList.Clone ();
- return col;
- }
-
- internal EventDescriptorCollection Filter (Attribute[] attributes)
- {
- EventDescriptorCollection col = new EventDescriptorCollection ();
- foreach (EventDescriptor ed in eventList)
- if (ed.Attributes.Contains (attributes))
- col.eventList.Add (ed);
- return col;
- }
-
- int ICollection.Count {
- get { return Count; }
- }
-
- public int Count {
- get {
- return eventList.Count;
- }
- }
-
- public virtual EventDescriptor this[string name] {
- get { return Find (name, false); }
- }
-
- public virtual EventDescriptor this[int index] {
- get {
- return (EventDescriptor) eventList[index];
- }
- }
-
- // IList methods
-
- int IList.Add (object value) {
- return Add ((EventDescriptor) value);
- }
-
- bool IList.Contains (object value) {
- return Contains ((EventDescriptor) value);
- }
-
- int IList.IndexOf (object value) {
- return IndexOf ((EventDescriptor) value);
- }
-
- void IList.Insert (int index, object value) {
- Insert (index, (EventDescriptor) value);
- }
-
- void IList.Remove (object value) {
- Remove ((EventDescriptor) value);
- }
-
- bool IList.IsFixedSize {
- get {
- return isReadOnly;
- }
- }
-
- bool IList.IsReadOnly {
- get { return isReadOnly; }
- }
-
- object IList.this[int index] {
- get {
- return eventList[index];
- }
- set {
- if (isReadOnly)
- throw new NotSupportedException ("The collection is read-only");
- eventList[index] = value;
- }
- }
-
- // ICollection methods
-
- void ICollection.CopyTo (Array array, int index) {
- eventList.CopyTo (array, index);
- }
-
- bool ICollection.IsSynchronized {
- get { return false; }
- }
-
- object ICollection.SyncRoot {
- get { return null; }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.EventHandlerList.cs
-//
-// Author:
-// Miguel de Icaza (miguel@ximian.com)
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-//
-// (C) Ximian, Inc. http://www.ximian.com
-//
-
-//
-// 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;
-using System.Collections;
-using System.Collections.Generic;
-
-namespace System.ComponentModel {
-
- internal class ListEntry {
- public object key;
- public Delegate value;
- public ListEntry next;
- }
-
- // <summary>
- // List of Event delegates.
- // </summary>
- //
- // <remarks>
- // Longer description
- // </remarks>
- public sealed class EventHandlerList : IDisposable
- {
- ListEntry entries;
-
- Delegate null_entry;
-
- public EventHandlerList ()
- {
- }
-
- public Delegate this [object key] {
- get {
- if (key == null)
- return null_entry;
- ListEntry entry = FindEntry (key);
- if (entry != null)
- return entry.value;
- else
- return null;
- }
-
- set {
- AddHandler (key, value);
- }
- }
-
- public void AddHandler (object key, Delegate value)
- {
- if (key == null) {
- null_entry = Delegate.Combine (null_entry, value);
- return;
- }
-
- ListEntry entry = FindEntry (key);
- if (entry == null) {
- entry = new ListEntry ();
- entry.key = key;
- entry.value = null;
- entry.next = entries;
- entries = entry;
- }
-
- entry.value = Delegate.Combine (entry.value, value);
- }
-
- public void AddHandlers (EventHandlerList listToAddFrom)
- {
- if (listToAddFrom == null)
- return;
-
- ListEntry entry = listToAddFrom.entries;
- while (entry != null) {
- AddHandler (entry.key, entry.value);
- entry = entry.next;
- }
- }
-
- public void RemoveHandler (object key, Delegate value)
- {
- if (key == null) {
- null_entry = Delegate.Remove (null_entry, value);
- return;
- }
-
- ListEntry entry = FindEntry (key);
- if (entry == null)
- return;
-
- entry.value = Delegate.Remove (entry.value, value);
- }
-
- public void Dispose ()
- {
- entries = null;
- }
-
- private ListEntry FindEntry (object key)
- {
- ListEntry entry = entries;
- while (entry != null) {
- if (entry.key == key)
- return entry;
- entry = entry.next;
- }
-
- return null;
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.ExpandableObjectConverter.cs
-//
-// Authors:
-// Tim Coleman (tim@timcoleman.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// Copyright (C) Tim Coleman, 2002
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- public class ExpandableObjectConverter : TypeConverter
- {
-
- public ExpandableObjectConverter ()
- {
- }
-#if !NET_2_1
- public override PropertyDescriptorCollection GetProperties (ITypeDescriptorContext context,
- object value, Attribute[] attributes)
- {
- return TypeDescriptor.GetProperties (value, attributes);
- }
-
- public override bool GetPropertiesSupported (ITypeDescriptorContext context)
- {
- return true;
- }
-#endif
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ExtenderProvidedPropertyAttribute.cs
-//
-// Author:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
-
- [AttributeUsage(AttributeTargets.All)]
- public sealed class ExtenderProvidedPropertyAttribute : Attribute
- {
- private PropertyDescriptor extender;
- private IExtenderProvider extenderProvider;
- private Type receiver;
-
- public ExtenderProvidedPropertyAttribute()
- {
- }
-
- // Call this method to create a ExtenderProvidedPropertyAttribute and set it's values
- internal static ExtenderProvidedPropertyAttribute CreateAttribute (PropertyDescriptor extenderProperty, IExtenderProvider provider, Type receiverType)
- {
- ExtenderProvidedPropertyAttribute NewAttribute = new ExtenderProvidedPropertyAttribute();
- NewAttribute.extender = extenderProperty;
- NewAttribute.receiver = receiverType;
- NewAttribute.extenderProvider = provider;
- return NewAttribute;
- }
-
- public PropertyDescriptor ExtenderProperty {
- get {
- return extender;
- }
- }
-
- public IExtenderProvider Provider {
- get {
- return extenderProvider;
- }
- }
-
- public Type ReceiverType {
- get {
- return receiver;
- }
- }
-
- public override bool IsDefaultAttribute()
- {
- // FIXME correct implementation??
- return (extender == null) &&
- (extenderProvider == null) &&
- (receiver == null);
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is ExtenderProvidedPropertyAttribute))
- return false;
- if (obj == this)
- return true;
- return ((ExtenderProvidedPropertyAttribute) obj).ExtenderProperty.Equals (extender) &&
- ((ExtenderProvidedPropertyAttribute) obj).Provider.Equals (extenderProvider) &&
- ((ExtenderProvidedPropertyAttribute) obj).ReceiverType.Equals (receiver);
- }
-
- public override int GetHashCode()
- {
- return extender.GetHashCode() ^ extenderProvider.GetHashCode() ^ receiver.GetHashCode();
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.GuidConverter
-//
-// Author:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-using System.Reflection;
-using System.ComponentModel.Design.Serialization;
-
-namespace System.ComponentModel
-{
- public class GuidConverter : TypeConverter
- {
-
- public GuidConverter()
- {
- }
-
- public override bool CanConvertFrom (ITypeDescriptorContext context, Type sourceType)
- {
- if (sourceType == typeof (string))
- return true;
- return base.CanConvertFrom (context, sourceType);
- }
-
- public override bool CanConvertTo (ITypeDescriptorContext context, Type destinationType)
- {
- if (destinationType == typeof (string))
- return true;
- if (destinationType == typeof (InstanceDescriptor))
- return true;
- return base.CanConvertTo (context, destinationType);
- }
-
- public override object ConvertFrom (ITypeDescriptorContext context,
- CultureInfo culture, object value)
- {
- if (value.GetType() == typeof (string)) {
- string GuidString = (string) value;
- try {
- return new Guid (GuidString);
- } catch {
- throw new FormatException (GuidString + "is not a valid GUID.");
- }
- }
- return base.ConvertFrom (context, culture, value);
- }
-
- public override object ConvertTo (ITypeDescriptorContext context,
- CultureInfo culture, object value, Type destinationType)
- {
- if (value is Guid) {
- Guid guid = (Guid) value;
-
- if (destinationType == typeof (string) && value != null)
- // LAMESPEC MS seems to always parse "D" type
- return guid.ToString("D");
-
- if (destinationType == typeof (InstanceDescriptor)) {
- ConstructorInfo ctor = typeof(Guid).GetConstructor (new Type[] {typeof(string)});
- return new InstanceDescriptor (ctor, new object[] { guid.ToString("D") });
- }
- }
- return base.ConvertTo (context, culture, value, destinationType);
- }
- }
-}
+++ /dev/null
-// 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.
-//
-// Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
-//
-// Author:
-// Pedro MartÃnez Juliá <pedromj@gmail.com>
-//
-
-
-namespace System.ComponentModel {
-
- public class HandledEventArgs : EventArgs {
-
- private bool handled;
-
- public HandledEventArgs () {
- handled = false;
- }
-
- public HandledEventArgs (bool defaultHandledValue) {
- handled = defaultHandledValue;
- }
-
- public bool Handled {
- get { return handled; }
- set { handled = value; }
- }
-
- }
-
-}
-
+++ /dev/null
-// 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.
-//
-// Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
-//
-// Author:
-// Pedro MartÃnez Juliá <pedromj@gmail.com>
-//
-
-namespace System.ComponentModel {
-
- public delegate void HandledEventHandler (object sender, HandledEventArgs e);
-
-}
-
+++ /dev/null
-//
-// System.ComponentModel.IBindingList.cs
-//
-// Author:
-// Rodrigo Moya (rodrigo@ximian.com)
-//
-// (C) Ximian, Inc
-//
-
-//
-// 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.ComponentModel
-{
- /// <summary>
- /// Provides the features required to support both complex and simple scenarios when binding to a data source.
- /// </summary>
- public interface IBindingList : IList, ICollection, IEnumerable
- {
- void AddIndex (PropertyDescriptor property);
-
- object AddNew ();
-
- void ApplySort (PropertyDescriptor property, ListSortDirection direction);
-
- int Find (PropertyDescriptor property, object key);
-
- void RemoveIndex (PropertyDescriptor property);
-
- void RemoveSort ();
-
- bool AllowEdit {
- get;
- }
-
- bool AllowNew {
- get;
- }
-
- bool AllowRemove {
- get;
- }
-
- bool IsSorted {
- get;
- }
-
- ListSortDirection SortDirection {
- get;
- }
-
- PropertyDescriptor SortProperty {
- get;
- }
-
- bool SupportsChangeNotification {
- get;
- }
-
- bool SupportsSearching {
- get;
- }
-
- bool SupportsSorting {
- get;
- }
-
- event ListChangedEventHandler ListChanged;
- }
-}
+++ /dev/null
-// 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.
-//
-// Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
-//
-// Author:
-// Pedro MartÃnez Juliá <pedromj@gmail.com>
-//
-
-
-using System.Collections;
-
-namespace System.ComponentModel {
-
- public interface IBindingListView : IBindingList, IList, ICollection, IEnumerable {
-
- string Filter { get; set; }
-
- ListSortDescriptionCollection SortDescriptions { get; }
-
- bool SupportsAdvancedSorting { get; }
-
- bool SupportsFiltering { get; }
-
- void ApplySort (ListSortDescriptionCollection sorts);
-
- void RemoveFilter ();
-
- }
-
-}
-
+++ /dev/null
-//
-// System.ComponentModel.ICancelAddNew.cs
-//
-// Authors:
-// Raja R Harinath <rharinath@novell.com>
-//
-// (C) 2007 Novell, Inc.
-//
-
-//
-// 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.ComponentModel
-{
- public interface ICancelAddNew
- {
- void CancelNew (int itemIndex);
- void EndNew (int itemIndex);
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.IChangeTracking.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-// Copyright (C) 2004 Novell, Inc. http://www.novell.com
-//
-
-//
-// 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.ComponentModel {
-
- public interface IChangeTracking
- {
- bool IsChanged { get; }
-
- void AcceptChanges ();
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.IComNativeDescriptorHandler.cs
-//
-// Author:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- [Obsolete ("Use TypeDescriptionProvider and TypeDescriptor.ComObjectType instead")]
- public interface IComNativeDescriptorHandler
- {
- AttributeCollection GetAttributes(object component);
-
- string GetClassName(object component);
-
- TypeConverter GetConverter(object component);
-
- EventDescriptor GetDefaultEvent(object component);
-
- PropertyDescriptor GetDefaultProperty(object component);
-
- object GetEditor(object component, Type baseEditorType);
-
- EventDescriptorCollection GetEvents(object component);
-
- EventDescriptorCollection GetEvents(object component, Attribute[] attributes);
-
- string GetName(object component);
-
- PropertyDescriptorCollection GetProperties(object component, Attribute[] attributes);
-
- object GetPropertyValue(object component, int dispid, ref bool success);
-
- object GetPropertyValue(object component, string propertyName, ref bool success);
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.IComponent.cs
-//
-// Authors:
-// Miguel de Icaza (miguel@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Ximian, Inc. http://www.ximian.com
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-using System.Runtime.InteropServices;
-#if !NET_2_1
-using System.ComponentModel.Design;
-using System.ComponentModel.Design.Serialization;
-#endif
-
-namespace System.ComponentModel
-{
-#if !NET_2_1
- [ComVisible (true)]
- [TypeConverter (typeof (ComponentConverter))]
- [Designer ("System.ComponentModel.Design.ComponentDesigner, " + Consts.AssemblySystem_Design, typeof (IDesigner))]
- [Designer ("System.Windows.Forms.Design.ComponentDocumentDesigner, " + Consts.AssemblySystem_Design, typeof (IRootDesigner))]
- [RootDesignerSerializer ("System.ComponentModel.Design.Serialization.RootCodeDomSerializer, " + Consts.AssemblySystem_Design, "System.ComponentModel.Design.Serialization.CodeDomSerializer, " + Consts.AssemblySystem_Design, true)]
-#endif
- public interface IComponent : IDisposable
- {
- ISite Site { get; set; }
- event EventHandler Disposed;
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.IContainer.cs
-//
-// Author:
-// Miguel de Icaza (miguel@ximian.com)
-//
-// (C) Ximian, Inc. http://www.ximian.com
-//
-
-//
-// 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.Runtime.InteropServices;
-namespace System.ComponentModel {
-
- [ComVisible (true)]
- public interface IContainer : IDisposable
- {
-
- ComponentCollection Components {
- get;
- }
-
- void Add (IComponent component);
-
- void Add (IComponent component, string name);
-
- void Remove (IComponent component);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ICustomTypeDescriptor.cs
-//
-// (C) 2002 Ximian, Inc. http://www.ximian.com
-//
-// Authors:
-// Rodrigo Moya (rodrigo@ximian.com)
-//
-
-//
-// 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.ComponentModel
-{
- public interface ICustomTypeDescriptor
- {
- AttributeCollection GetAttributes();
-
- string GetClassName();
-
- string GetComponentName();
-
- TypeConverter GetConverter();
-
- EventDescriptor GetDefaultEvent();
-
- PropertyDescriptor GetDefaultProperty();
-
- object GetEditor(Type editorBaseType);
-
- EventDescriptorCollection GetEvents();
-
- EventDescriptorCollection GetEvents(Attribute[] arr);
-
- PropertyDescriptorCollection GetProperties();
-
- PropertyDescriptorCollection GetProperties(Attribute[] arr);
-
- object GetPropertyOwner(PropertyDescriptor pd);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.IDataErrorInfo.cs
-//
-// (C) 2002 Ximian, Inc. http://www.ximian.com
-//
-// Authors:
-// Rodrigo Moya (rodrigo@ximian.com)
-//
-
-//
-// 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.ComponentModel
-{
- public interface IDataErrorInfo
- {
- string Error { get; }
-
- string this[string columnName] { get; }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.IEditableObject.cs
-//
-// (C) 2002 Ximian, Inc. http://www.ximian.com
-//
-// Authors:
-// Rodrigo Moya (rodrigo@ximian.com)
-//
-
-//
-// 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.ComponentModel
-{
- public interface IEditableObject
- {
- void BeginEdit();
-
- void CancelEdit();
-
- void EndEdit();
- }
-}
+++ /dev/null
-//------------------------------------------------------------------------------
-//
-// System.ComponentModel.IExtenderProvider.
-//
-// Author: Asier Llano Palacios, asierllano@infonegocio.com
-//
-//------------------------------------------------------------------------------
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- public interface IExtenderProvider
- {
- bool CanExtend (object extendee);
- }
-}
-
-
+++ /dev/null
-//
-// System.ComponentModel.IIntellisenseBuilder.cs
-//
-// Authors:
-// Raja R Harinath <rharinath@novell.com>
-//
-// (C) 2007 Novell, Inc.
-//
-
-//
-// 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.ComponentModel
-{
- public interface IIntellisenseBuilder
- {
- string Name { get; }
- bool Show (string language, string value, ref string newValue);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.IListSource.cs
-//
-// Author:
-// Rodrigo Moya (rodrigo@ximian.com)
-//
-// (C) Ximian, Inc
-//
-
-//
-// 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.ComponentModel
-{
- /// <summary>
- /// Provides functionality to an object to return a list that can be bound to a data source.
- /// </summary>
- [MergableProperty (false)]
- [TypeConverter ("System.Windows.Forms.Design.DataSourceConverter, " + Consts.AssemblySystem_Design)]
- // disable it until winforms guys have this internal class or some alternatives implemented.
-// [Editor (EditorTypeName = "System.Windows.Forms.Design.DataSourceListEditor, " + AssemblySystem_Design,
-// EditorBaseTypeName = "System.Drawing.Design.UITypeEditor, " + AssemblySystem_Drawing)]
- public interface IListSource
- {
- IList GetList ();
-
- bool ContainsListCollection { get; }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.INestedContainer.cs
-//
-// Authors:
-// Raja R Harinath <rharinath@novell.com>
-//
-// (C) 2007 Novell, Inc.
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- public interface INestedContainer : IContainer, IDisposable
- {
- IComponent Owner { get; }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.INestedSite.cs
-//
-// Authors:
-// Raja R Harinath <rharinath@novell.com>
-//
-// (C) 2007 Novell, Inc.
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- public interface INestedSite : ISite, IServiceProvider
- {
- string FullName { get; }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.INotifyDataErrorInfo.cs: Provides an interface for
-// async and sync data validation.
-//
-// Author:
-// Kevin Daub (daub815@gmail.com)
-// (C) 2012 Kevin Daub
-//
-// 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.
-//
-
-#if NET_4_5
-
-using System.Collections;
-
-namespace System.ComponentModel {
- public interface INotifyDataErrorInfo {
- bool HasErrors { get; }
-
- IEnumerable GetErrors (string propertyName);
- event EventHandler<DataErrorsChangedEventArgs> ErrorsChanged;
- }
-}
-
-#endif
+++ /dev/null
-//
-// System.Web.UI.WebControls.INotifyPropertyChanged.cs
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// 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;
-
-namespace System.ComponentModel
-{
- public interface INotifyPropertyChanged
- {
- event PropertyChangedEventHandler PropertyChanged;
- }
-
-}
-
+++ /dev/null
-//
-// INotifyPropertyChanging.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- public interface INotifyPropertyChanging
- {
- event PropertyChangingEventHandler PropertyChanging;
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.IRaiseItemChangedEvents.cs
-//
-// Author:
-// Raja R Harinath <harinath@novell.com>
-//
-// (C) 2006 Novell Inc.
-//
-
-//
-// 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.ComponentModel
-{
- /// <summary>
- /// Provides the features required to support both complex and simple scenarios when binding to a data source.
- /// </summary>
- public interface IRaiseItemChangedEvents
- {
- bool RaisesItemChangedEvents { get; }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.IRevertibleChangeTracking.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-// Copyright (C) 2004 Novell, Inc. http://www.novell.com
-//
-
-//
-// 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.ComponentModel {
-
- public interface IRevertibleChangeTracking : IChangeTracking
- {
- void RejectChanges ();
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ISite.cs
-//
-// Author:
-// Miguel de Icaza (miguel@ximian.com)
-//
-// (C) Ximian, Inc. http://www.ximian.com
-//
-
-//
-// 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;
-using System.Runtime.InteropServices;
-
-namespace System.ComponentModel
-{
-
- [ComVisible (true)]
- public interface ISite : IServiceProvider
- {
- IComponent Component { get; }
-
- IContainer Container { get; }
-
- bool DesignMode { get; }
-
- string Name { get; set; }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ISupportInitialize.cs
-//
-// Author:
-// Rodrigo Moya (rodrigo@ximian.com)
-//
-// (C) Ximian, Inc
-//
-
-//
-// 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.ComponentModel
-{
- /// <summary>
- /// Specifies that this object supports a simple, transacted notification for batch initialization.
- /// </summary>
- public interface ISupportInitialize
- {
- void BeginInit ();
-
- void EndInit ();
- }
-
-}
-
+++ /dev/null
-//
-// System.ComponentModel.ISupportInitializeNotification.cs
-//
-// Author:
-// Nagappan A (anagappan@novell.com.com)
-//
-// (C) Novell, Inc
-//
-
-//
-// 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.ComponentModel
-{
- /// <summary>
- /// Specifies that this object supports a simple, transacted notification for batch initialization.
- /// </summary>
- public interface ISupportInitializeNotification : ISupportInitialize
- {
- bool IsInitialized { get; }
-
- event EventHandler Initialized;
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ISynchronizeInvoke.cs
-//
-// Authors:
-// Dick Porter (dick@ximian.com)
-//
-// (C) 2002 Ximian, Inc. http://www.ximian.com
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- public interface ISynchronizeInvoke
- {
- bool InvokeRequired {
- get;
- }
-
- IAsyncResult BeginInvoke(Delegate method, object[] args);
-
- object EndInvoke(IAsyncResult result);
-
- object Invoke(Delegate method, object[] args);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ITypeDescriptorContext.cs
-//
-// Authors:
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-//
-// (C) 2002 Ximian, Inc (http://www.ximian.com)
-//
-
-//
-// 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;
-using System.Runtime.InteropServices;
-
-namespace System.ComponentModel
-{
- [ComVisible (true)]
- public interface ITypeDescriptorContext : IServiceProvider
- {
- IContainer Container { get; }
-
- object Instance { get; }
-
- PropertyDescriptor PropertyDescriptor { get; }
-
- void OnComponentChanged ();
-
- bool OnComponentChanging ();
- }
-
-}
+++ /dev/null
-//
-// System.ComponentModel.ITypedList.cs
-//
-// Author:
-// Rodrigo Moya (rodrigo@ximian.com)
-//
-// (C) Ximian, Inc
-//
-
-//
-// 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.ComponentModel
-{
- /// <summary>
- /// Provides functionality to discover the schema for a bindable list, where the properties available for binding differ from the public properties of the object to bind to. For instance, using a DataView object that represents a customer table, you want to bind to the properties on the customer object that the DataView represents, not the properties of the DataView.
- /// </summary>
- public interface ITypedList
- {
- PropertyDescriptorCollection GetItemProperties (
- PropertyDescriptor[] listAccessors);
-
- string GetListName (PropertyDescriptor[] listAccessors);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ImmutableObjectAttribute
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel
-{
- [AttributeUsage(AttributeTargets.All)]
- public sealed class ImmutableObjectAttribute : Attribute
- {
-
- private bool immutable;
-
- public static readonly ImmutableObjectAttribute Default = new ImmutableObjectAttribute (false);
- public static readonly ImmutableObjectAttribute No = new ImmutableObjectAttribute (false);
- public static readonly ImmutableObjectAttribute Yes = new ImmutableObjectAttribute (true);
-
-
- public ImmutableObjectAttribute (bool immutable)
- {
- this.immutable=immutable;
- }
-
- public bool Immutable {
- get { return this.immutable; }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is ImmutableObjectAttribute))
- return false;
- if (obj == this)
- return true;
- return ((ImmutableObjectAttribute) obj).Immutable == immutable;
- }
-
- public override int GetHashCode()
- {
- return immutable.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute()
- {
- return immutable == ImmutableObjectAttribute.Default.Immutable;
- }
-
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.InheritanceAttribute
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel
-{
- [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event)]
- public sealed class InheritanceAttribute : Attribute
- {
- private InheritanceLevel level;
-
- public static readonly InheritanceAttribute Default = new InheritanceAttribute ();
- public static readonly InheritanceAttribute Inherited = new InheritanceAttribute (InheritanceLevel.Inherited);
- public static readonly InheritanceAttribute InheritedReadOnly = new InheritanceAttribute (InheritanceLevel.InheritedReadOnly);
- public static readonly InheritanceAttribute NotInherited = new InheritanceAttribute (InheritanceLevel.NotInherited);
-
-
- public InheritanceAttribute()
- {
- this.level = InheritanceLevel.NotInherited;
- }
-
-
- public InheritanceAttribute (InheritanceLevel inheritanceLevel)
- {
- this.level = inheritanceLevel;
- }
-
- public InheritanceLevel InheritanceLevel {
- get { return level; }
- }
-
-
- public override bool Equals (object obj)
- {
- if (!(obj is InheritanceAttribute))
- return false;
- if (obj == this)
- return true;
- return ((InheritanceAttribute) obj).InheritanceLevel == level;
- }
-
-
- public override int GetHashCode()
- {
- return level.GetHashCode ();
- }
-
-
- public override bool IsDefaultAttribute()
- {
- return level == InheritanceAttribute.Default.InheritanceLevel;
- }
-
-
- public override string ToString()
- {
- return this.level.ToString ();
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.InheritanceLevel.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel
-{
- public enum InheritanceLevel
- {
- Inherited = 1,
- InheritedReadOnly = 2,
- NotInherited = 3
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.InitializationEventAttribute
-//
-// Authors:
-// Raja R Harinath
-//
-// (C) 2006 Novell, Inc
-//
-
-//
-// 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.ComponentModel
-{
- [AttributeUsage (AttributeTargets.Class)]
- public sealed class InitializationEventAttribute : Attribute
- {
- public InitializationEventAttribute (string eventName)
- {
- this.eventName = eventName;
- }
-
- public string EventName {
- get { return eventName; }
- }
-
- string eventName;
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.InstallerTypeAttribute
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel
-{
- [AttributeUsage(AttributeTargets.Class)]
- public class InstallerTypeAttribute : Attribute
- {
- private Type installer;
-
- public InstallerTypeAttribute (string typeName)
- {
- // MS behavior
- this.installer = Type.GetType (typeName, false);
- }
-
- public InstallerTypeAttribute (Type installerType)
- {
- this.installer = installerType;
- }
-
- public virtual Type InstallerType {
- get { return installer; }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is InstallerTypeAttribute))
- return false;
- if (obj == this)
- return true;
- return ((InstallerTypeAttribute) obj).InstallerType == installer;
- }
-
- public override int GetHashCode()
- {
- return installer.GetHashCode ();
- }
- }
-}
-
+++ /dev/null
-//
-// InstanceCreationEditor.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-// Copyright (C) 2007 Novell, Inc. http://www.novell.com
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- public abstract class InstanceCreationEditor
- {
- public virtual string Text {
- get { return Locale.GetText ("(New ...)"); }
- }
-
- public abstract object CreateInstance (ITypeDescriptorContext context, Type type);
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.Int16Converter
-//
-// Authors:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-
-namespace System.ComponentModel
-{
- public class Int16Converter : BaseNumberConverter
- {
- public Int16Converter ()
- {
- InnerType = typeof (Int16);
- }
-
- internal override bool SupportHex {
- get { return true; }
- }
-
- internal override string ConvertToString (object value, NumberFormatInfo format)
- {
- return ((short) value).ToString ("G", format);
- }
-
- internal override object ConvertFromString (string value, NumberFormatInfo format)
- {
- return short.Parse (value, NumberStyles.Integer, format);
- }
-
- internal override object ConvertFromString (string value, int fromBase)
- {
- return Convert.ToInt16 (value, fromBase);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Int32Converter
-//
-// Authors:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-
-namespace System.ComponentModel
-{
- public class Int32Converter : BaseNumberConverter
- {
- public Int32Converter()
- {
- InnerType = typeof (Int32);
- }
-
- internal override bool SupportHex {
- get { return true; }
- }
-
- internal override string ConvertToString (object value, NumberFormatInfo format)
- {
- return ((int) value).ToString ("G", format);
- }
-
- internal override object ConvertFromString (string value, NumberFormatInfo format)
- {
- return int.Parse (value, NumberStyles.Integer, format);
- }
-
- internal override object ConvertFromString (string value, int fromBase)
- {
- return Convert.ToInt32 (value, fromBase);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Int64Converter
-//
-// Authors:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-
-namespace System.ComponentModel
-{
- public class Int64Converter : BaseNumberConverter
- {
- public Int64Converter()
- {
- InnerType = typeof (Int64);
- }
-
- internal override bool SupportHex {
- get { return true; }
- }
-
- internal override string ConvertToString (object value, NumberFormatInfo format)
- {
- return ((long) value).ToString ("G", format);
- }
-
- internal override object ConvertFromString (string value, NumberFormatInfo format)
- {
- return long.Parse (value, NumberStyles.Integer, format);
- }
-
- internal override object ConvertFromString (string value, int fromBase)
- {
- return Convert.ToInt64 (value, fromBase);
- }
- }
-}
+++ /dev/null
-//
-// InvalidAsynchronousStateException.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-// Copyright (C) 2007 Novell, Inc. http://www.novell.com
-//
-
-//
-// 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;
-using System.Runtime.Serialization;
-
-namespace System.ComponentModel
-{
- [Serializable]
- public class InvalidAsynchronousStateException : ArgumentException
- {
- public InvalidAsynchronousStateException ()
- : this ("Invalid asynchrinous state is occured")
- {
- }
-
- public InvalidAsynchronousStateException (string message)
- : this (message, null)
- {
- }
-
- public InvalidAsynchronousStateException (string message, Exception innerException)
- : base (message, innerException)
- {
- }
-
- protected InvalidAsynchronousStateException (SerializationInfo info, StreamingContext context)
- : base (info, context)
- {
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.InvalidEnumArgumentException.cs
-//
-// Authors:
-// Duncan Mak (duncan@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2002 Ximian, Inc. http://www.ximian.com
-// (C) 2003 Andreas Nahr
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// 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.Globalization;
-using System.Runtime.Serialization;
-using System.Security.Permissions;
-
-namespace System.ComponentModel
-{
- [Serializable]
- public class InvalidEnumArgumentException : ArgumentException
- {
-
- public InvalidEnumArgumentException () : this ((string) null)
- {
- }
-
- public InvalidEnumArgumentException (string message) : base (message)
- {
- }
-
- public InvalidEnumArgumentException (string argumentName, int invalidValue, Type enumClass) :
- base (string.Format (CultureInfo.CurrentCulture, "The value "
- + "of argument '{0}' ({1}) is invalid for "
- + "Enum type '{2}'.", argumentName, invalidValue,
- enumClass.Name), argumentName)
- {
- }
-
- public InvalidEnumArgumentException (string message, Exception innerException)
- : base (message, innerException)
- {
- }
-
- protected InvalidEnumArgumentException (SerializationInfo info, StreamingContext context)
- : base (info, context)
- {
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.LicFileLicenseProvider.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-// Lluis Sanchez Gual (lluis@ximian.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.IO;
-
-namespace System.ComponentModel
-{
- public class LicFileLicenseProvider : LicenseProvider
- {
-
- public LicFileLicenseProvider()
- {
- }
-
- public override License GetLicense (LicenseContext context,
- Type type,
- object instance,
- bool allowExceptions)
- {
- try
- {
- if (context == null || context.UsageMode != LicenseUsageMode.Designtime)
- return null;
-
- string path = Path.GetDirectoryName (type.Assembly.Location);
- path = Path.Combine (path, type.FullName + ".LIC");
-
- if (!File.Exists (path)) return null;
-
- StreamReader sr = new StreamReader (path);
- string key = sr.ReadLine ();
- sr.Close ();
-
- if (IsKeyValid (key, type))
- return new LicFileLicense (key);
- }
- catch
- {
- if (allowExceptions) throw;
- }
- return null;
- }
-
- protected virtual string GetKey (Type type)
- {
- return (type.FullName + " is a licensed component.");
- }
-
- protected virtual bool IsKeyValid (string key, Type type)
- {
- if (key == null)
- return false;
- return key.Equals (GetKey (type));
- }
- }
-
- internal class LicFileLicense: License
- {
- string _key;
-
- public LicFileLicense (string key)
- {
- _key = key;
- }
-
- public override string LicenseKey
- {
- get { return _key; }
- }
-
- public override void Dispose ()
- {
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.License.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel
-{
- public abstract class License : IDisposable
- {
-
- protected License()
- {
- // Intentionally empty
- }
-
- public abstract string LicenseKey { get; }
- public abstract void Dispose();
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.LicenseContext.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Reflection;
-
-namespace System.ComponentModel
-{
- // Serves as base class for RuntimeLicenseContext and DesignTimeLicenseContext
- // (no clue why this isn't abstract)
- public class LicenseContext : IServiceProvider
- {
-
- public LicenseContext()
- {
- }
-
- public virtual string GetSavedLicenseKey (Type type,
- Assembly resourceAssembly)
- {
- return null;
- }
-
- public virtual object GetService (Type type)
- {
- return null;
- }
-
- public virtual void SetSavedLicenseKey (Type type, string key)
- {
- // Intentionally empty
- }
-
- public virtual LicenseUsageMode UsageMode {
- get {
- return LicenseUsageMode.Runtime;
- }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.LicenseException.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// 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.Runtime.Serialization;
-using System.Security.Permissions;
-
-namespace System.ComponentModel {
-
- [Serializable]
- public class LicenseException : SystemException
- {
-
- private Type type;
-
- public LicenseException (Type type)
- : this (type, null)
- {
- }
-
- public LicenseException (Type type, object instance)
- {
- // LAMESPEC what should we do with instance?
- this.type = type;
- }
-
- public LicenseException (Type type, object instance,
- string message)
- : this (type, instance, message, null)
- {
- }
-
- public LicenseException (Type type, object instance,
- string message,
- Exception innerException)
- : base (message, innerException)
- {
- // LAMESPEC what should we do with instance?
- this.type = type;
- }
-
- protected LicenseException (SerializationInfo info, StreamingContext context)
- : base (info, context)
- {
- type = (Type) info.GetValue ("LicensedType", typeof (Type));
- }
-
- [SecurityPermission (SecurityAction.Demand, SerializationFormatter = true)]
- public override void GetObjectData (SerializationInfo info, StreamingContext context)
- {
- if (info == null)
- throw new ArgumentNullException ("info");
-
- info.AddValue ("LicensedType", type);
- base.GetObjectData (info, context);
- }
-
- public Type LicensedType {
- get { return type; }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.LicenseManager.cs
-//
-// Authors:
-// Ivan Hamilton (ivan@chimerical.com.au)
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2004 Ivan Hamilton
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel
-{
- public sealed class LicenseManager
- {
- static LicenseContext mycontext;
- static object contextLockUser;
-
- static object lockObject = new object ();
-
- private LicenseManager ()
- {
- }
-
- public static LicenseContext CurrentContext {
- get {
- lock (lockObject) {
- //Tests indicate a System.ComponentModel.Design.RuntimeLicenseContext should be returned.
- if (mycontext==null)
- mycontext = new Design.RuntimeLicenseContext();
- return mycontext;
- }
- }
- set {
- lock (lockObject) {
- if (contextLockUser==null) {
- mycontext = value;
- } else {
- throw new InvalidOperationException("The CurrentContext property of the LicenseManager is currently locked and cannot be changed.");
- }
- }
- }
- }
-
- public static LicenseUsageMode UsageMode {
- get {
- return CurrentContext.UsageMode;
- }
- }
-
- public static object CreateWithContext (Type type,
- LicenseContext creationContext)
- {
- return CreateWithContext (type, creationContext, new object [0]);
- }
-
- public static object CreateWithContext (Type type,
- LicenseContext creationContext,
- object[] args)
- {
- object newObject = null;
- lock (lockObject) {
- object contextUser = new object ();
- LicenseContext oldContext = CurrentContext;
- CurrentContext = creationContext;
- LockContext (contextUser);
- try {
- newObject = Activator.CreateInstance (type, args);
- } catch (Reflection.TargetInvocationException exception) {
- throw exception.InnerException;
- } finally {
- UnlockContext (contextUser);
- CurrentContext = oldContext;
- }
- }
- return newObject;
- }
-
- public static bool IsLicensed (Type type)
- {
- License license = null;
- if (!privateGetLicense (type, null, false, out license)) {
- return false;
- } else {
- if (license != null)
- license.Dispose ();
- return true;
- }
- }
-
- public static bool IsValid (Type type)
- //This method does not throw a LicenseException when it cannot grant a valid License
- {
- License license=null;
- if (!privateGetLicense (type, null, false, out license)) {
- return false;
- } else {
- if (license != null)
- license.Dispose ();
- return true;
- }
- }
-
- public static bool IsValid (Type type, object instance,
- out License license)
- //This method does not throw a LicenseException when it cannot grant a valid License
- {
- return privateGetLicense (type, null, false, out license);
- }
-
- public static void LockContext (object contextUser)
- {
- lock (lockObject) {
- contextLockUser = contextUser;
- }
- }
-
- public static void UnlockContext (object contextUser)
- {
- lock (lockObject) {
- //Ignore if we're not locked
- if (contextLockUser == null)
- return;
- //Don't unlock if not locking user
- if (contextLockUser != contextUser)
- throw new ArgumentException ("The CurrentContext property of the LicenseManager can only be unlocked with the same contextUser.");
- //Remove lock
- contextLockUser = null;
- }
- }
-
- public static void Validate (Type type)
- // Throws a LicenseException if the type is licensed, but a License could not be granted.
- {
- License license = null;
- if (!privateGetLicense (type, null, true, out license))
- throw new LicenseException (type, null);
- if (license != null)
- license.Dispose ();
- }
-
- public static License Validate (Type type, object instance)
- // Throws a LicenseException if the type is licensed, but a License could not be granted.
- {
- License license=null;
- if (!privateGetLicense(type, instance, true, out license))
- throw new LicenseException(type, instance);
- return license;
- }
-
- private static bool privateGetLicense (Type type, object instance, bool allowExceptions, out License license)
- //Returns if a component is licensed, and the license if provided
- {
- bool isLicensed = false;
- License foundLicense = null;
- //Get the LicProc Attrib for our type
- LicenseProviderAttribute licenseproviderattribute = (LicenseProviderAttribute) Attribute.GetCustomAttribute(type, typeof (LicenseProviderAttribute), true);
- //Check it's got an attrib
- if (licenseproviderattribute != null) {
- Type licenseprovidertype = licenseproviderattribute.LicenseProvider;
- //Check the attrib has a type
- if (licenseprovidertype != null) {
- //Create the provider
- LicenseProvider licenseprovider = (LicenseProvider) Activator.CreateInstance(licenseprovidertype);
- //Check we've got the provider
- if (licenseprovider != null) {
- //Call provider, throw an LicenseException if error.
- foundLicense = licenseprovider.GetLicense(CurrentContext, type, instance, allowExceptions);
- if (foundLicense != null)
- isLicensed = true;
- //licenseprovider.Dispose();
- } else {
- //There is was some problem creating the provider
- }
- //licenseprovidertype.Dispose();
- } else {
- //licenseprovidertype is null
- }
- //licenseproviderattribute.Dispose ();
- } else {
- //Didn't have a LicenseProviderAttribute, so it's licensed
- isLicensed = true;
- }
- license = foundLicense;
- return isLicensed;
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.LicenseProvider.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.ComponentModel
-{
- public abstract class LicenseProvider
- {
-
- protected LicenseProvider()
- {
- }
-
- public abstract License GetLicense (LicenseContext context,
- Type type,
- object instance,
- bool allowExceptions);
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.LicenseProviderAttribute.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel
-{
- [AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)]
- public sealed class LicenseProviderAttribute : Attribute
- {
- private Type Provider;
-
- public static readonly LicenseProviderAttribute Default = new LicenseProviderAttribute ();
-
- public LicenseProviderAttribute()
- {
- this.Provider = null;
- }
-
- public LicenseProviderAttribute (string typeName)
- {
- this.Provider = Type.GetType (typeName, false);
- }
-
- public LicenseProviderAttribute (Type type)
- {
- this.Provider = type;
- }
-
- public Type LicenseProvider {
- get { return Provider; }
- }
-
- public override object TypeId {
- get {
- // Seems to be MS implementation
- return (base.ToString() + (Provider != null ? Provider.ToString() : null));
- }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is LicenseProviderAttribute))
- return false;
- if (obj == this)
- return true;
- return ((LicenseProviderAttribute) obj).LicenseProvider.Equals (Provider);
- }
-
- public override int GetHashCode()
- {
- return Provider.GetHashCode ();
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.LicenseUsageMode.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.Reflection;
-
-namespace System.ComponentModel
-{
- [Serializable]
- public enum LicenseUsageMode
- {
- Designtime = 1,
- Runtime = 0,
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ListBindableAttribute.cs
-//
-// Authors:
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2002 Ximian, Inc (http://www.ximian.com)
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- [AttributeUsage(AttributeTargets.All, AllowMultiple = false, Inherited = true)]
- public sealed class ListBindableAttribute : Attribute
- {
- public static readonly ListBindableAttribute Default = new ListBindableAttribute (true);
- public static readonly ListBindableAttribute No = new ListBindableAttribute (false);
- public static readonly ListBindableAttribute Yes = new ListBindableAttribute (true);
-
- bool bindable;
-
- public ListBindableAttribute (bool listBindable)
- {
- bindable = listBindable;
- }
-
- public ListBindableAttribute (BindableSupport flags)
- {
- if (flags == BindableSupport.No)
- bindable = false;
- else
- bindable = true;
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is ListBindableAttribute))
- return false;
-
- return ((ListBindableAttribute) obj).ListBindable.Equals (bindable);
- }
-
- public override int GetHashCode ()
- {
- return bindable.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return Equals (Default);
- }
-
- public bool ListBindable {
- get {
- return bindable;
- }
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.ListChangedEventArgs.cs
-//
-// Author: Duncan Mak (duncan@ximian.com)
-//
-// (C) Ximian, Inc.
-//
-
-//
-// 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.ComponentModel;
-
-namespace System.ComponentModel {
- public class ListChangedEventArgs : EventArgs
- {
-
- ListChangedType changedType;
- int oldIndex;
- int newIndex;
- PropertyDescriptor propDesc;
-
- public ListChangedEventArgs (ListChangedType listChangedType,
- int newIndex)
- : this (listChangedType, newIndex, -1)
- {
- }
-
- public ListChangedEventArgs (ListChangedType listChangedType,
- PropertyDescriptor propDesc)
- {
- this.changedType = listChangedType;
- this.propDesc = propDesc;
- }
-
- public ListChangedEventArgs (ListChangedType listChangedType,
- int newIndex, int oldIndex)
- {
- this.changedType = listChangedType;
- this.newIndex = newIndex;
- this.oldIndex = oldIndex;
- }
-
- public ListChangedEventArgs (ListChangedType listChangedType,
- int newIndex,
- PropertyDescriptor propDesc)
- {
- this.changedType = listChangedType;
- this.newIndex = newIndex;
- this.oldIndex = newIndex;
- this.propDesc = propDesc;
- }
-
- public ListChangedType ListChangedType {
- get { return changedType; }
- }
-
- public int OldIndex {
- get { return oldIndex; }
- }
-
- public int NewIndex {
- get { return newIndex; }
- }
-
- public PropertyDescriptor PropertyDescriptor {
- get { return propDesc; }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ListChangedEventHandler.cs
-//
-// Author: Duncan Mak (duncan@ximian.com)
-//
-// (C) Ximian, Inc.
-//
-
-//
-// 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;
-
-namespace System.ComponentModel {
- public delegate void ListChangedEventHandler(object sender,
- ListChangedEventArgs e);
-}
+++ /dev/null
-//
-// System.ComponentModel.ListChangedType.cs
-//
-// Author: Duncan Mak (duncan@ximian.com)
-//
-// (C) Ximian, Inc.
-//
-
-//
-// 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.ComponentModel {
- public enum ListChangedType {
- Reset = 0,
- ItemAdded = 1,
- ItemDeleted = 2,
- ItemMoved = 3,
- ItemChanged = 4,
- PropertyDescriptorAdded = 5,
- PropertyDescriptorDeleted = 6,
- PropertyDescriptorChanged = 7
- }
-}
-
-
-
+++ /dev/null
-// 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.
-//
-// Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
-//
-// Author:
-// Pedro MartÃnez Juliá <pedromj@gmail.com>
-//
-
-
-namespace System.ComponentModel {
-
- public class ListSortDescription {
-
- private PropertyDescriptor propertyDescriptor;
- private ListSortDirection sortDirection;
-
- public ListSortDescription (PropertyDescriptor propertyDescriptor, ListSortDirection sortDirection) {
- this.propertyDescriptor = propertyDescriptor;
- this.sortDirection = sortDirection;
- }
-
- public PropertyDescriptor PropertyDescriptor {
- get { return propertyDescriptor; }
- set { propertyDescriptor = value; }
- }
-
- public ListSortDirection SortDirection {
- get { return sortDirection; }
- set { sortDirection = value; }
- }
-
- }
-
-}
-
+++ /dev/null
-// 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.
-//
-// Copyright (c) 2008 Novell, Inc. (http://www.novell.com)
-//
-// Author:
-// Pedro MartÃnez Juliá <pedromj@gmail.com>
-// Ivan N. Zlatev <contact@i-nz.net>
-//
-
-
-using System.Collections;
-
-namespace System.ComponentModel {
-
- public class ListSortDescriptionCollection : IList, ICollection, IEnumerable {
-
- ArrayList list;
-
- public ListSortDescriptionCollection () {
- list = new ArrayList();
- }
-
- public ListSortDescriptionCollection (ListSortDescription[] sorts) {
- list = new ArrayList();
- foreach (ListSortDescription item in sorts)
- list.Add (item);
- }
-
- public int Count {
- get { return list.Count; }
- }
-
- public ListSortDescription this [int index] {
- get { return list[index] as ListSortDescription; }
- set { throw new InvalidOperationException("ListSortDescriptorCollection is read only."); }
- }
-
- public bool Contains (object value) {
- return list.Contains(value);
- }
-
- public void CopyTo (Array array, int index) {
- list.CopyTo(array, index);
- }
-
- public int IndexOf (object value) {
- return list.IndexOf(value);
- }
-
- object IList.this [int index] {
- get { return this[index]; }
- set { throw new InvalidOperationException("ListSortDescriptorCollection is read only."); }
- }
-
- bool IList.IsFixedSize {
- get { return list.IsFixedSize; }
- }
-
- bool ICollection.IsSynchronized {
- get { return list.IsSynchronized; }
- }
-
- object ICollection.SyncRoot {
- get { return list.SyncRoot; }
- }
-
- bool IList.IsReadOnly {
- get { return list.IsReadOnly; }
- }
-
- IEnumerator IEnumerable.GetEnumerator () {
- return list.GetEnumerator();
- }
-
- int IList.Add (object value) {
- return list.Add(value);
- }
-
- void IList.Clear () {
- list.Clear();
- }
-
- void IList.Insert (int index, object value) {
- list.Insert(index, value);
- }
-
- void IList.Remove (object value) {
- list.Remove(value);
- }
-
- void IList.RemoveAt (int index) {
- list.RemoveAt(index);
- }
-
- }
-
-}
+++ /dev/null
-//
-// System.ComponentModel.ListSortDirection.cs
-//
-// Author:
-// Rodrigo Moya (rodrigo@ximian.com)
-//
-// (C) Rodrigo Moya, 2002
-//
-
-//
-// 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.ComponentModel
-{
- /// <summary>
- /// Specifies the direction of a sort operation.
- /// </summary>
- public enum ListSortDirection {
- Ascending = 0,
- Descending = 1
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.LocalizableAttribute.cs
-//
-// Author:
-// Miguel de Icaza (miguel@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Ximian, Inc. http://www.ximian.com
-// (C) 2003 Andreas Nahr
-//
-//
-
-//
-// 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;
-
-namespace System.ComponentModel {
-
- [AttributeUsage (AttributeTargets.All)]
- public sealed class LocalizableAttribute : Attribute
- {
-
- private bool localizable;
-
- public static readonly LocalizableAttribute Default = new LocalizableAttribute (false);
- public static readonly LocalizableAttribute No = new LocalizableAttribute (false);
- public static readonly LocalizableAttribute Yes = new LocalizableAttribute (true);
-
-
- public LocalizableAttribute (bool localizable)
- {
- this.localizable = localizable;
- }
-
- public bool IsLocalizable {
- get {
- return localizable;
- }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is LocalizableAttribute))
- return false;
- if (obj == this)
- return true;
- return ((LocalizableAttribute) obj).IsLocalizable == localizable;
- }
-
- public override int GetHashCode ()
- {
- return localizable.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return localizable == LocalizableAttribute.Default.IsLocalizable;
- }
- }
-}
-
+++ /dev/null
-//
-// System.Diagnostics.LookupBindingPropertiesAttribute.cs
-//
-// Authors:
-// Rolf Bjarne Kvinge (RKvinge@novell.com)
-//
-// (C) 2002
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- [AttributeUsage(AttributeTargets.Class)]
- public sealed class LookupBindingPropertiesAttribute : Attribute
- {
- private string data_source;
- private string display_member;
- private string value_member;
- private string lookup_member;
-
- public static readonly LookupBindingPropertiesAttribute Default;
-
- static LookupBindingPropertiesAttribute()
- {
- Default = new LookupBindingPropertiesAttribute ();
- }
-
- public LookupBindingPropertiesAttribute(string dataSource, string displayMember, string valueMember, string lookupMember)
- {
- data_source = dataSource;
- display_member = displayMember;
- value_member = valueMember;
- lookup_member = lookupMember;
- }
-
- public LookupBindingPropertiesAttribute()
- {
- }
-
- public override int GetHashCode()
- {
- return (data_source != null ? data_source.GetHashCode () : 1) << 24 +
- (display_member != null ? display_member.GetHashCode () : 1) << 16 +
- (lookup_member != null ? lookup_member.GetHashCode () : 1) << 8 +
- (value_member != null ? value_member.GetHashCode () : 1);
- }
-
- public override bool Equals(object obj)
- {
- LookupBindingPropertiesAttribute other = obj as LookupBindingPropertiesAttribute;
-
- if (other == null)
- return false;
-
- if (data_source != other.data_source || display_member != other.display_member)
- return false;
-
- if (value_member != other.value_member || lookup_member != other.lookup_member)
- return false;
-
- return true;
- }
-
- public string DataSource {
- get {
- return data_source;
- }
- }
-
- public string DisplayMember {
- get {
- return display_member;
- }
- }
-
- public string LookupMember {
- get {
- return lookup_member;
- }
- }
-
- public string ValueMember {
- get {
- return value_member;
- }
- }
-
- }
-}
\ No newline at end of file
+++ /dev/null
-//
-// System.ComponentModel.MarshalByValueComponent.cs
-//
-// Author:
-// Rodrigo Moya (rodrigo@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Ximian, Inc
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-using System.ComponentModel;
-using System.ComponentModel.Design;
-using System.Runtime.InteropServices;
-
-namespace System.ComponentModel
-{
- /// <summary>
- /// Implements IComponent and provides the base implementation for remotable components that are marshaled by value (a copy of the serialized object is passed).
- /// </summary>
- [DesignerCategory ("Component"), TypeConverter (typeof (ComponentConverter))]
- [Designer ("System.Windows.Forms.Design.ComponentDocumentDesigner, " + Consts.AssemblySystem_Design, typeof (IRootDesigner))]
- [ComVisible (true)]
- public class MarshalByValueComponent : IComponent, IDisposable, IServiceProvider
- {
- private EventHandlerList eventList;
- private ISite mySite;
- private object disposedEvent = new object ();
-
- public MarshalByValueComponent ()
- {
- }
-
- public void Dispose ()
- {
- Dispose (true);
- GC.SuppressFinalize (this);
- }
-
- [MonoTODO]
- protected virtual void Dispose (bool disposing)
- {
- if (disposing) {
- // free managed objects contained here
- }
-
- // Free unmanaged objects
- // Set fields to null
- }
-
- ~MarshalByValueComponent ()
- {
- Dispose (false);
- }
-
- public virtual object GetService (Type service)
- {
- if (mySite != null) {
- return mySite.GetService(service);
- }
- return null;
- }
-
- [Browsable (false), DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public virtual IContainer Container {
- get {
- if (mySite == null)
- return null;
- return mySite.Container;
- }
- }
-
- [Browsable (false), DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public virtual bool DesignMode {
- get {
- if (mySite == null)
- return false;
- return mySite.DesignMode;
- }
- }
-
- [Browsable (false), DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public virtual ISite Site {
- get { return mySite; }
- set { mySite = value; }
- }
-
- public override string ToString ()
- {
- if (mySite == null)
- return GetType ().ToString ();
- return String.Format ("{0} [{1}]", mySite.Name, GetType ().ToString ());
- }
-
- protected EventHandlerList Events {
- get {
- if (eventList == null)
- eventList = new EventHandlerList ();
-
- return eventList;
- }
- }
-
- public event EventHandler Disposed
- {
- add { Events.AddHandler (disposedEvent, value); }
- remove { Events.RemoveHandler (disposedEvent, value); }
- }
- }
-}
-
+++ /dev/null
-// 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.
-//
-// Copyright (c) 2007 Novell, Inc. (http://www.novell.com)
-//
-// Authors:
-// Rolf Bjarne Kvinge <RKvinge@novell.com>
-//
-//
-
-/*
-
-Mask language:
-
-0 Digit, required. This element will accept any single digit between 0 and 9.
-9 Digit or space, optional.
-# Digit or space, optional. If this position is blank in the mask, it will be rendered as a space in the Text property. Plus (+) and minus (-) signs are allowed.
-L Letter, required. Restricts input to the ASCII letters a-z and A-Z. This mask element is equivalent to [a-zA-Z] in regular expressions.
-? Letter, optional. Restricts input to the ASCII letters a-z and A-Z. This mask element is equivalent to [a-zA-Z]? in regular expressions.
-& Character, required. If the AsciiOnly property is set to true, this element behaves like the "L" element.
-C Character, optional. Any non-control character. If the AsciiOnly property is set to true, this element behaves like the "?" element.
- * LAMESPEC: A is REQUIRED, not optional.
-A Alphanumeric, optional. If the AsciiOnly property is set to true, the only characters it will accept are the ASCII letters a-z and A-Z.
-a Alphanumeric, optional. If the AsciiOnly property is set to true, the only characters it will accept are the ASCII letters a-z and A-Z.
-. Decimal placeholder. The actual display character used will be the decimal symbol appropriate to the format provider, as determined by the control's FormatProvider property.
-, Thousands placeholder. The actual display character used will be the thousands placeholder appropriate to the format provider, as determined by the control's FormatProvider property.
-: Time separator. The actual display character used will be the time symbol appropriate to the format provider, as determined by the control's FormatProvider property.
-/ Date separator. The actual display character used will be the date symbol appropriate to the format provider, as determined by the control's FormatProvider property.
-$ Currency symbol. The actual character displayed will be the currency symbol appropriate to the format provider, as determined by the control's FormatProvider property.
-< Shift down. Converts all characters that follow to lowercase.
-> Shift up. Converts all characters that follow to uppercase.
-| Disable a previous shift up or shift down.
-\ Escape. Escapes a mask character, turning it into a literal. "\\" is the escape sequence for a backslash.
-
- * */
-
-using System.Globalization;
-using System.Collections;
-using System.Diagnostics;
-using System.Text;
-
-namespace System.ComponentModel {
- public class MaskedTextProvider : ICloneable
- {
-#region Private fields
- private bool allow_prompt_as_input;
- private bool ascii_only;
- private CultureInfo culture;
- private bool include_literals;
- private bool include_prompt;
- private bool is_password;
- private string mask;
- private char password_char;
- private char prompt_char;
- private bool reset_on_prompt;
- private bool reset_on_space;
- private bool skip_literals;
-
- private EditPosition [] edit_positions;
-
- const char default_prompt_char = '_';
- const char default_password_char = char.MinValue;
-
-#endregion
-
-#region Private classes
- private enum EditState {
- None,
- UpperCase,
- LowerCase
- }
- private enum EditType {
- DigitRequired, // 0
- DigitOrSpaceOptional, // 9
- DigitOrSpaceOptional_Blank, // #
- LetterRequired, // L
- LetterOptional, // ?
- CharacterRequired, // &
- CharacterOptional, // C
- AlphanumericRequired, // A
- AlphanumericOptional, // a
- DecimalPlaceholder, // .
- ThousandsPlaceholder, // ,
- TimeSeparator, // :
- DateSeparator, // /
- CurrencySymbol, // $
- Literal
- }
-
- private class EditPosition {
- public MaskedTextProvider Parent;
- public EditType Type;
- public EditState State;
- public char MaskCharacter;
- public char input;
-
- public void Reset ()
- {
- input = char.MinValue;
- }
-
- internal EditPosition Clone () {
- EditPosition result = new EditPosition ();
- result.Parent = Parent;
- result.Type = Type;
- result.State = State;
- result.MaskCharacter = MaskCharacter;
- result.input = input;
- return result;
- }
-
- public char Input {
- get {
- return input;
- }
- set {
- switch (State) {
- case EditState.LowerCase:
- input = char.ToLower (value, Parent.Culture);
- break;
- case EditState.UpperCase:
- input = char.ToUpper (value, Parent.Culture);
- break;
- default:// case EditState.None:
- input = value;
- break;
- }
- }
- }
-
- public bool IsAscii (char c)
- {
- return ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z'));
- }
-
- public bool Match (char c, out MaskedTextResultHint resultHint, bool only_test)
- {
- if (!MaskedTextProvider.IsValidInputChar (c)) {
- resultHint = MaskedTextResultHint.InvalidInput;
- return false;
- }
-
- if (Parent.ResetOnSpace && c == ' ' && Editable) {
- resultHint = MaskedTextResultHint.CharacterEscaped;
- if (FilledIn) {
- resultHint = MaskedTextResultHint.Success;
- if (!only_test && input != ' ') {
- switch (Type) {
- case EditType.AlphanumericOptional:
- case EditType.AlphanumericRequired:
- case EditType.CharacterOptional:
- case EditType.CharacterRequired:
- Input = c;
- break;
- default:
- Input = char.MinValue;
- break;
- }
- }
- }
- return true;
- }
-
- if (Type == EditType.Literal && MaskCharacter == c && Parent.SkipLiterals) {
- resultHint = MaskedTextResultHint.Success;
- return true;
- }
-
- if (!Editable) {
- resultHint = MaskedTextResultHint.NonEditPosition;
- return false;
- }
-
- switch (Type) {
- case EditType.AlphanumericOptional:
- case EditType.AlphanumericRequired:
- if (char.IsLetterOrDigit (c)) {
- if (Parent.AsciiOnly && !IsAscii (c)) {
- resultHint = MaskedTextResultHint.AsciiCharacterExpected;
- return false;
- } else {
- if (!only_test) {
- Input = c;
- }
- resultHint = MaskedTextResultHint.Success;
- return true;
- }
- } else {
- resultHint = MaskedTextResultHint.AlphanumericCharacterExpected;
- return false;
- }
- case EditType.CharacterOptional:
- case EditType.CharacterRequired:
- if (Parent.AsciiOnly && !IsAscii (c)) {
- resultHint = MaskedTextResultHint.LetterExpected;
- return false;
- } else if (!char.IsControl (c)) {
- if (!only_test) {
- Input = c;
- }
- resultHint = MaskedTextResultHint.Success;
- return true;
- } else {
- resultHint = MaskedTextResultHint.LetterExpected;
- return false;
- }
- case EditType.DigitOrSpaceOptional:
- case EditType.DigitOrSpaceOptional_Blank:
- if (char.IsDigit (c) || c == ' ') {
- if (!only_test) {
- Input = c;
- }
- resultHint = MaskedTextResultHint.Success;
- return true;
- } else {
- resultHint = MaskedTextResultHint.DigitExpected;
- return false;
- }
- case EditType.DigitRequired:
- if (char.IsDigit (c)) {
- if (!only_test) {
- Input = c;
- }
- resultHint = MaskedTextResultHint.Success;
- return true;
- } else {
- resultHint = MaskedTextResultHint.DigitExpected;
- return false;
- }
- case EditType.LetterOptional:
- case EditType.LetterRequired:
- if (!char.IsLetter (c)) {
- resultHint = MaskedTextResultHint.LetterExpected;
- return false;
- } else if (Parent.AsciiOnly && !IsAscii (c)) {
- resultHint = MaskedTextResultHint.LetterExpected;
- return false;
- } else {
- if (!only_test) {
- Input = c;
- }
- resultHint = MaskedTextResultHint.Success;
- return true;
- }
- default:
- resultHint = MaskedTextResultHint.Unknown;
- return false;
- }
- }
-
- public bool FilledIn {
- get {
- return Input != char.MinValue;
- }
- }
-
- public bool Required {
- get {
- switch (MaskCharacter) {
- case '0':
- case 'L':
- case '&':
- case 'A':
- return true;
- default:
- return false;
- }
- }
- }
-
- public bool Editable {
- get {
- switch (MaskCharacter) {
- case '0':
- case '9':
- case '#':
- case 'L':
- case '?':
- case '&':
- case 'C':
- case 'A':
- case 'a':
- return true;
- default:
- return false;
- }
- }
- }
-
- public bool Visible {
- get {
- switch (MaskCharacter) {
- case '|':
- case '<':
- case '>':
- return false;
- default:
- return true;
- }
- }
- }
- public string Text {
- get {
- if (Type == EditType.Literal) {
- return MaskCharacter.ToString ();
- }
- switch (MaskCharacter) {
- case '.': return Parent.Culture.NumberFormat.NumberDecimalSeparator;
- case ',': return Parent.Culture.NumberFormat.NumberGroupSeparator;
- case ':': return Parent.Culture.DateTimeFormat.TimeSeparator;
- case '/': return Parent.Culture.DateTimeFormat.DateSeparator;
- case '$': return Parent.Culture.NumberFormat.CurrencySymbol;
- default:
- return FilledIn ? Input.ToString () : Parent.PromptChar.ToString ();
- }
- }
- }
-
- private EditPosition ()
- {
- }
-
- public EditPosition (MaskedTextProvider Parent, EditType Type, EditState State, char MaskCharacter)
- {
- this.Type = Type;
- this.Parent = Parent;
- this.State = State;
- this.MaskCharacter = MaskCharacter;
-
- }
- }
-#endregion
-
-#region Private methods & properties
- private void SetMask (string mask)
- {
- if (mask == null || mask == string.Empty)
- throw new ArgumentException ("The Mask value cannot be null or empty.\r\nParameter name: mask");
-
- this.mask = mask;
-
- System.Collections.Generic.List <EditPosition> list = new System.Collections.Generic.List<EditPosition> (mask.Length);
-
- EditState State = EditState.None;
- bool escaped = false;
- for (int i = 0; i < mask.Length; i++) {
- if (escaped) {
- list.Add (new EditPosition (this, EditType.Literal, State, mask [i]));
- escaped = false;
- continue;
- }
-
- switch (mask [i]) {
- case '\\':
- escaped = true;
- break;
- case '0':
- list.Add (new EditPosition (this, EditType.DigitRequired, State, mask [i]));
- break;
- case '9':
- list.Add (new EditPosition (this, EditType.DigitOrSpaceOptional, State, mask [i]));
- break;
- case '#':
- list.Add (new EditPosition (this, EditType.DigitOrSpaceOptional_Blank, State, mask [i]));
- break;
- case 'L':
- list.Add (new EditPosition (this, EditType.LetterRequired, State, mask [i]));
- break;
- case '?':
- list.Add (new EditPosition (this, EditType.LetterOptional, State, mask [i]));
- break;
- case '&':
- list.Add (new EditPosition (this, EditType.CharacterRequired, State, mask [i]));
- break;
- case 'C':
- list.Add (new EditPosition (this, EditType.CharacterOptional, State, mask [i]));
- break;
- case 'A':
- list.Add (new EditPosition (this, EditType.AlphanumericRequired, State, mask [i]));
- break;
- case 'a':
- list.Add (new EditPosition (this, EditType.AlphanumericOptional, State, mask [i]));
- break;
- case '.':
- list.Add (new EditPosition (this, EditType.DecimalPlaceholder, State, mask [i]));
- break;
- case ',':
- list.Add (new EditPosition (this, EditType.ThousandsPlaceholder, State, mask [i]));
- break;
- case ':':
- list.Add (new EditPosition (this, EditType.TimeSeparator, State, mask [i]));
- break;
- case '/':
- list.Add (new EditPosition (this, EditType.DateSeparator, State, mask [i]));
- break;
- case '$':
- list.Add (new EditPosition (this, EditType.CurrencySymbol, State, mask [i]));
- break;
- case '<':
- State = EditState.LowerCase;
- break;
- case '>':
- State = EditState.UpperCase;
- break;
- case '|':
- State = EditState.None;
- break;
- default:
- list.Add (new EditPosition (this, EditType.Literal, State, mask [i]));
- break;
- }
- }
- edit_positions = list.ToArray ();
- }
-
- private EditPosition [] ClonePositions ()
- {
- EditPosition [] result = new EditPosition [edit_positions.Length];
- for (int i = 0; i < result.Length; i++) {
- result [i] = edit_positions [i].Clone ();
- }
- return result;
- }
-
- private bool AddInternal (string str_input, out int testPosition, out MaskedTextResultHint resultHint, bool only_test)
- {
- EditPosition [] edit_positions;
-
- if (only_test) {
- edit_positions = ClonePositions ();
- } else {
- edit_positions = this.edit_positions;
- }
-
- if (str_input == null)
- throw new ArgumentNullException ("input");
-
- if (str_input.Length == 0) {
- resultHint = MaskedTextResultHint.NoEffect;
- testPosition = LastAssignedPosition + 1;
- return true;
- }
-
- resultHint = MaskedTextResultHint.Unknown;
- testPosition = 0;
-
- int next_position = LastAssignedPosition;
- MaskedTextResultHint tmpResult = MaskedTextResultHint.Unknown;
-
- if (next_position >= edit_positions.Length) {
- testPosition = next_position;
- resultHint = MaskedTextResultHint.UnavailableEditPosition;
- return false;
- }
-
- for (int i = 0; i < str_input.Length; i++) {
- char input = str_input [i];
- next_position++;
- testPosition = next_position;
-
- if (tmpResult > resultHint) {
- resultHint = tmpResult;
- }
-
- if (VerifyEscapeChar (input, next_position)) {
- tmpResult = MaskedTextResultHint.CharacterEscaped;
- continue;
- }
-
- next_position = FindEditPositionFrom (next_position, true);
- testPosition = next_position;
-
- if (next_position == InvalidIndex) {
- testPosition = edit_positions.Length;
- resultHint = MaskedTextResultHint.UnavailableEditPosition;
- return false;
- }
-
- if (!IsValidInputChar (input)) {
- testPosition = next_position;
- resultHint = MaskedTextResultHint.InvalidInput;
- return false;
- }
-
- if (!edit_positions [next_position].Match (input, out tmpResult, false)) {
- testPosition = next_position;
- resultHint = tmpResult;
- return false;
- }
- }
-
- if (tmpResult > resultHint) {
- resultHint = tmpResult;
- }
-
- return true;
- }
-
- private bool AddInternal (char input, out int testPosition, out MaskedTextResultHint resultHint, bool check_available_positions_first, bool check_escape_char_first)
- {
- /*
- * check_available_positions_first: when adding a char, MS first seems to check if there are any available edit positions, then if there are any
- * they will try to add the char (meaning that if you add a char matching a literal char in the mask with SkipLiterals and there are no
- * more available edit positions, it will fail).
- *
- * check_escape_char_first: When adding a char, MS doesn't check for escape char, they directly search for the first edit position.
- * When adding a string, they check first for escape char, then if not successful they find the first edit position.
- */
-
- int new_position;
- testPosition = 0;
-
- new_position = LastAssignedPosition + 1;
-
- if (check_available_positions_first) {
- int tmp = new_position;
- bool any_available = false;
- while (tmp < edit_positions.Length) {
- if (edit_positions [tmp].Editable) {
- any_available = true;
- break;
- }
- tmp++;
- }
- if (!any_available) {
- testPosition = tmp;
- resultHint = MaskedTextResultHint.UnavailableEditPosition;
- return GetOperationResultFromHint (resultHint);
- }
- }
-
- if (check_escape_char_first) {
- if (VerifyEscapeChar (input, new_position)) {
- testPosition = new_position;
- resultHint = MaskedTextResultHint.CharacterEscaped;
- return true;
- }
- }
-
- new_position = FindEditPositionFrom (new_position, true);
-
- if (new_position > edit_positions.Length - 1 ||new_position == InvalidIndex) {
- testPosition = new_position;
- resultHint = MaskedTextResultHint.UnavailableEditPosition;
- return GetOperationResultFromHint (resultHint);
- }
-
- if (!IsValidInputChar (input)) {
- testPosition = new_position;
- resultHint = MaskedTextResultHint.InvalidInput;
- return GetOperationResultFromHint (resultHint);
- }
-
- if (!edit_positions [new_position].Match (input, out resultHint, false)) {
- testPosition = new_position;
- return GetOperationResultFromHint (resultHint);
- }
-
- testPosition = new_position;
-
- return GetOperationResultFromHint (resultHint);
- }
-
- private bool VerifyStringInternal (string input, out int testPosition, out MaskedTextResultHint resultHint, int startIndex, bool only_test)
- {
- int previous_position = startIndex;
- int current_position;
- resultHint = MaskedTextResultHint.Unknown;
-
- // Replace existing characters
- for (int i = 0; i < input.Length; i++) {
- MaskedTextResultHint tmpResult;
- current_position = FindEditPositionFrom (previous_position, true);
- if (current_position == InvalidIndex) {
- testPosition = edit_positions.Length;
- resultHint = MaskedTextResultHint.UnavailableEditPosition;
- return false;
- }
-
- if (!VerifyCharInternal (input [i], current_position, out tmpResult, only_test)) {
- testPosition = current_position;
- resultHint = tmpResult;
- return false;
- }
- if (tmpResult > resultHint) {
- resultHint = tmpResult;
- }
- previous_position = current_position + 1;
-
- }
- // Remove characters not in the input.
- if (!only_test) {
- previous_position = FindEditPositionFrom (previous_position, true);
- while (previous_position != InvalidIndex) {
- if (edit_positions [previous_position].FilledIn) {
- edit_positions [previous_position].Reset ();
- if (resultHint != MaskedTextResultHint.NoEffect) {
- resultHint = MaskedTextResultHint.Success;
- }
- }
- previous_position = FindEditPositionFrom (previous_position + 1, true);
- }
- }
- if (input.Length > 0) {
- testPosition = startIndex + input.Length - 1;
- } else {
- testPosition = startIndex;
- if (resultHint < MaskedTextResultHint.NoEffect) {
- resultHint = MaskedTextResultHint.NoEffect;
- }
- }
-
- return true;
- }
-
- private bool VerifyCharInternal (char input, int position, out MaskedTextResultHint hint, bool only_test)
- {
- hint = MaskedTextResultHint.Unknown;
-
- if (position < 0 || position >= edit_positions.Length) {
- hint = MaskedTextResultHint.PositionOutOfRange;
- return false;
- }
-
- if (!IsValidInputChar (input)) {
- hint = MaskedTextResultHint.InvalidInput;
- return false;
- }
-
- if (input == ' ' && ResetOnSpace && edit_positions [position].Editable && edit_positions [position].FilledIn) {
- if (!only_test) {
- edit_positions [position].Reset ();
- }
- hint = MaskedTextResultHint.SideEffect;
- return true;
- }
-
- if (edit_positions [position].Editable && edit_positions [position].FilledIn && edit_positions [position].input == input) {
- hint = MaskedTextResultHint.NoEffect;
- return true;
- }
-
- if (SkipLiterals && !edit_positions [position].Editable && edit_positions [position].Text == input.ToString ()) {
- hint = MaskedTextResultHint.CharacterEscaped;
- return true;
- }
-
- return edit_positions [position].Match (input, out hint, only_test);
- }
-
- // Test to see if the input string can be inserted at the specified position.
- // Does not try to move characters.
- private bool IsInsertableString (string str_input, int position, out int testPosition, out MaskedTextResultHint resultHint)
- {
- int current_position = position;
- int test_position;
-
- resultHint = MaskedTextResultHint.UnavailableEditPosition;
- testPosition = InvalidIndex;
-
- for (int i = 0; i < str_input.Length; i++) {
- char ch = str_input [i];
-
- test_position = FindEditPositionFrom (current_position, true);
-
- if (test_position != InvalidIndex && VerifyEscapeChar (ch, test_position)) {
- current_position = test_position + 1;
- continue;
- }
-
- if (VerifyEscapeChar (ch, current_position)) {
- current_position = current_position + 1;
- continue;
- }
-
-
- if (test_position == InvalidIndex) {
- resultHint = MaskedTextResultHint.UnavailableEditPosition;
- testPosition = edit_positions.Length;
- return false;
- }
-
- testPosition = test_position;
-
- if (!edit_positions [test_position].Match (ch, out resultHint, true)) {
- return false;
- }
-
- current_position = test_position + 1;
- }
- resultHint = MaskedTextResultHint.Success;
-
- return true;
- }
-
- private bool ShiftPositionsRight (EditPosition [] edit_positions, int start, out int testPosition, out MaskedTextResultHint resultHint)
- {
- int index = start;
- int last_assigned_index = FindAssignedEditPositionFrom (edit_positions.Length, false);
- int endindex = FindUnassignedEditPositionFrom (last_assigned_index, true); // Find the first non-assigned edit position
-
- testPosition = start;
- resultHint = MaskedTextResultHint.Unknown;
-
- if (endindex == InvalidIndex) {
- // No more free edit positions.
- testPosition = edit_positions.Length;
- resultHint = MaskedTextResultHint.UnavailableEditPosition;
- return false;
- }
-
- while (endindex > index) {
- char char_to_assign;
- int index_to_move;
-
- index_to_move = FindEditPositionFrom (endindex - 1, false);
- char_to_assign = edit_positions [index_to_move].input;
-
- if (char_to_assign == char.MinValue) {
- edit_positions [endindex].input = char_to_assign;
- } else {
- if (!edit_positions [endindex].Match (char_to_assign, out resultHint, false)) {
- testPosition = endindex;
- return false;
- }
- }
- endindex = index_to_move;
- }
-
- if (endindex != InvalidIndex) {
- edit_positions [endindex].Reset ();
- }
-
- return true;
- }
-
- private bool ReplaceInternal (string input, int startPosition, int endPosition, out int testPosition, out MaskedTextResultHint resultHint, bool only_test, bool dont_remove_at_end)
- {
- EditPosition [] edit_positions;
- resultHint = MaskedTextResultHint.Unknown;
-
- if (only_test) {
- edit_positions = ClonePositions ();
- } else {
- edit_positions = this.edit_positions;
- }
-
- if (input == null)
- throw new ArgumentNullException ("input");
-
- if (endPosition >= edit_positions.Length) {
- testPosition = endPosition;
- resultHint = MaskedTextResultHint.PositionOutOfRange;
- return false;
- }
-
- if (startPosition < 0) {
- testPosition = startPosition;
- resultHint = MaskedTextResultHint.PositionOutOfRange;
- return false;
- }
-
- if (startPosition >= edit_positions.Length) {
- testPosition = startPosition;
- resultHint = MaskedTextResultHint.PositionOutOfRange;
- return false;
- }
-
- if (startPosition > endPosition) {
- testPosition = startPosition;
- resultHint = MaskedTextResultHint.PositionOutOfRange;
- return false;
- }
-
-
- if (input.Length == 0) {
- return RemoveAtInternal (startPosition, endPosition, out testPosition, out resultHint, only_test);
- }
-
- int previous_position = startPosition;
- int current_position = previous_position;
- MaskedTextResultHint tmpResult = MaskedTextResultHint.Unknown;
- testPosition = InvalidIndex;
-
- for (int i = 0; i < input.Length; i++) {
- char current_input = input [i];
-
- current_position = previous_position;
-
- if (VerifyEscapeChar (current_input, current_position)) {
- if (edit_positions [current_position].FilledIn &&
- edit_positions [current_position].Editable &&
- (current_input == ' ' && ResetOnSpace) || (current_input == PromptChar && ResetOnPrompt)) {
- edit_positions [current_position].Reset ();
- tmpResult = MaskedTextResultHint.SideEffect;
- } else {
- tmpResult = MaskedTextResultHint.CharacterEscaped;
- }
- } else if (current_position < edit_positions.Length && !edit_positions [current_position].Editable && FindAssignedEditPositionInRange (current_position, endPosition, true) == InvalidIndex) {
- // If replacing over a literal, the replacement character is INSERTED at the next
- // available edit position. Weird, huh?
- current_position = FindEditPositionFrom (current_position, true);
- if (current_position == InvalidIndex) {
- resultHint = MaskedTextResultHint.UnavailableEditPosition;
- testPosition = edit_positions.Length;
- return false;
- }
- if (!InsertAtInternal (current_input.ToString (), current_position, out testPosition, out tmpResult, only_test)) {
- resultHint = tmpResult;
- return false;
- }
- } else {
-
- current_position = FindEditPositionFrom (current_position, true);
-
- if (current_position == InvalidIndex) {
- testPosition = edit_positions.Length;
- resultHint = MaskedTextResultHint.UnavailableEditPosition;
- return false;
- }
-
- if (!IsValidInputChar (current_input)) {
- testPosition = current_position;
- resultHint = MaskedTextResultHint.InvalidInput;
- return false;
- }
-
- if (!ReplaceInternal (edit_positions, current_input, current_position, out testPosition, out tmpResult, false)) {
- resultHint = tmpResult;
- return false;
- }
- }
-
- if (tmpResult > resultHint) {
- resultHint = tmpResult;
- }
-
- previous_position = current_position + 1;
- }
-
- testPosition = current_position;
-
- int tmpPosition;
- if (!dont_remove_at_end && previous_position <= endPosition) {
- if (!RemoveAtInternal (previous_position, endPosition, out tmpPosition, out tmpResult, only_test)) {
- testPosition = tmpPosition;
- resultHint = tmpResult;
- return false;
- }
- }
- if (tmpResult == MaskedTextResultHint.Success && resultHint < MaskedTextResultHint.SideEffect) {
- resultHint = MaskedTextResultHint.SideEffect;
- }
-
- return true;
- }
-
- private bool ReplaceInternal (EditPosition [] edit_positions, char input, int position, out int testPosition, out MaskedTextResultHint resultHint, bool only_test)
- {
- testPosition = position;
-
- if (!IsValidInputChar (input)) {
- resultHint = MaskedTextResultHint.InvalidInput;
- return false;
- }
-
- if (VerifyEscapeChar (input, position)) {
- if (edit_positions [position].FilledIn && edit_positions [position].Editable && (input == ' ' && ResetOnSpace) || (input == PromptChar && ResetOnPrompt)) {
- edit_positions [position].Reset ();
- resultHint = MaskedTextResultHint.SideEffect;
- } else {
- resultHint = MaskedTextResultHint.CharacterEscaped;
- }
- testPosition = position;
- return true;
- }
-
- if (!edit_positions [position].Editable) {
- resultHint = MaskedTextResultHint.NonEditPosition;
- return false;
- }
-
- bool is_filled = edit_positions [position].FilledIn;
- if (is_filled && edit_positions [position].input == input) {
- if (VerifyEscapeChar (input, position)) {
- resultHint = MaskedTextResultHint.CharacterEscaped;
- } else {
- resultHint = MaskedTextResultHint.NoEffect;
- }
- } else if (input == ' ' && this.ResetOnSpace) {
- if (is_filled) {
- resultHint = MaskedTextResultHint.SideEffect;
- edit_positions [position].Reset ();
- } else {
- resultHint = MaskedTextResultHint.CharacterEscaped;
- }
- return true;
- } else if (VerifyEscapeChar (input, position)) {
- resultHint = MaskedTextResultHint.SideEffect;
- } else {
- resultHint = MaskedTextResultHint.Success;
- }
- MaskedTextResultHint tmpResult;
- if (!edit_positions [position].Match (input, out tmpResult, false)) {
- resultHint = tmpResult;
- return false;
- }
-
- return true;
- }
-
- private bool RemoveAtInternal (int startPosition, int endPosition, out int testPosition, out MaskedTextResultHint resultHint, bool only_testing)
- {
- EditPosition [] edit_positions;
- testPosition = -1;
- resultHint = MaskedTextResultHint.Unknown;
-
- if (only_testing) {
- edit_positions = ClonePositions ();
- } else {
- edit_positions = this.edit_positions;
- }
-
- if (endPosition < 0 || endPosition >= edit_positions.Length) {
- testPosition = endPosition;
- resultHint = MaskedTextResultHint.PositionOutOfRange;
- return false;
- }
-
- if (startPosition < 0 || startPosition >= edit_positions.Length) {
- testPosition = startPosition;
- resultHint = MaskedTextResultHint.PositionOutOfRange;
- return false;
- }
-
-
- if (startPosition > endPosition) {
- testPosition = startPosition;
- resultHint = MaskedTextResultHint.PositionOutOfRange;
- return false;
- }
- int edit_positions_in_range = 0;
- for (int i = startPosition; i <= endPosition; i++) {
- if (edit_positions [i].Editable) {
- edit_positions_in_range++;
- }
- }
-
- if (edit_positions_in_range == 0) {
- testPosition = startPosition;
- resultHint = MaskedTextResultHint.NoEffect;
- return true;
- }
-
- int current_edit_position = FindEditPositionFrom (startPosition, true);
- while (current_edit_position != InvalidIndex) {
- // Find the edit position that will reach the current position.
- int next_index = FindEditPositionFrom (current_edit_position + 1, true);
- for (int j = 1; j < edit_positions_in_range && next_index != InvalidIndex; j++) {
- next_index = FindEditPositionFrom (next_index + 1, true);
- }
-
- if (next_index == InvalidIndex) {
- if (edit_positions [current_edit_position].FilledIn) {
- edit_positions [current_edit_position].Reset ();
- resultHint = MaskedTextResultHint.Success;
- } else {
- if (resultHint < MaskedTextResultHint.NoEffect) {
- resultHint = MaskedTextResultHint.NoEffect;
- }
- }
- } else {
- if (!edit_positions [next_index].FilledIn) {
- if (edit_positions [current_edit_position].FilledIn) {
- edit_positions [current_edit_position].Reset ();
- resultHint = MaskedTextResultHint.Success;
- } else {
- if (resultHint < MaskedTextResultHint.NoEffect) {
- resultHint = MaskedTextResultHint.NoEffect;
- }
- }
- } else {
- MaskedTextResultHint tmpResult = MaskedTextResultHint.Unknown;
- if (edit_positions [current_edit_position].FilledIn) {
- resultHint = MaskedTextResultHint.Success;
- } else if (resultHint < MaskedTextResultHint.SideEffect) {
- resultHint = MaskedTextResultHint.SideEffect;
- }
- if (!edit_positions [current_edit_position].Match (edit_positions [next_index].input, out tmpResult, false)) {
- resultHint = tmpResult;
- testPosition = current_edit_position;
- return false;
- }
- }
- edit_positions [next_index].Reset ();
- }
- current_edit_position = FindEditPositionFrom (current_edit_position + 1, true);
- }
-
- if (resultHint == MaskedTextResultHint.Unknown) {
- resultHint = MaskedTextResultHint.NoEffect;
- }
-
- testPosition = startPosition;
-
- return true;
- }
-
- private bool InsertAtInternal (string str_input, int position, out int testPosition, out MaskedTextResultHint resultHint, bool only_testing)
- {
- EditPosition [] edit_positions;
- testPosition = -1;
- resultHint = MaskedTextResultHint.Unknown;
-
- if (only_testing) {
- edit_positions = ClonePositions ();
- } else {
- edit_positions = this.edit_positions;
- }
-
- if (position < 0 || position >= edit_positions.Length) {
- testPosition = 0;
- resultHint = MaskedTextResultHint.PositionOutOfRange;
- return false;
- }
-
- if (!IsInsertableString (str_input, position, out testPosition, out resultHint)) {
- return false;
- }
-
- resultHint = MaskedTextResultHint.Unknown;
-
- int next_position = position;
- for (int i = 0; i < str_input.Length; i++) {
- char input = str_input [i];
- int index = FindEditPositionFrom (next_position, true); // Find the first edit position (here the input will go)
- int endindex = FindUnassignedEditPositionFrom (next_position, true); // Find the first non-assigned edit position
- bool escaped = false;
-
- if (VerifyEscapeChar (input, next_position)) {
- escaped = true;
-
- if (input.ToString () == edit_positions [next_position].Text) {
- if (FindAssignedEditPositionInRange (0, next_position - 1, true) != InvalidIndex && endindex == InvalidIndex) {
- resultHint = MaskedTextResultHint.UnavailableEditPosition;
- testPosition = edit_positions.Length;
- return false;
- }
- resultHint = MaskedTextResultHint.CharacterEscaped;
- testPosition = next_position;
- next_position++;
- continue;
- }
- }
-
- if (!escaped && index == InvalidIndex) {
- // No edit positions left at all in the string
- testPosition = edit_positions.Length;
- resultHint = MaskedTextResultHint.UnavailableEditPosition;
- return false;
- }
-
- if (index == InvalidIndex) {
- index = next_position;
- }
-
- bool was_filled = edit_positions [index].FilledIn;
- bool shift = was_filled;
- if (shift) {
- if (!ShiftPositionsRight (edit_positions, index, out testPosition, out resultHint)) {
- return false;
- }
- }
-
- testPosition = index;
- if (escaped) {
- if (was_filled) {
- resultHint = MaskedTextResultHint.Success;
- } else if (!edit_positions [index].Editable && input.ToString () == edit_positions [index].Text) {
- resultHint = MaskedTextResultHint.CharacterEscaped;
- testPosition = next_position;
- } else {
- int first_edit_position = FindEditPositionFrom (index, true);
- if (first_edit_position == InvalidIndex) {
- resultHint = MaskedTextResultHint.UnavailableEditPosition;
- testPosition = edit_positions.Length;
- return false;
- }
-
- resultHint = MaskedTextResultHint.CharacterEscaped;
- if (input.ToString () == edit_positions [next_position].Text) {
- testPosition = next_position;
- }
- }
- } else {
- MaskedTextResultHint tmpResult;
- if (!edit_positions [index].Match (input, out tmpResult, false)) {
- resultHint = tmpResult;
- return false;
- }
- if (resultHint < tmpResult) {
- resultHint = tmpResult;
- }
- }
- next_position = index + 1;
-
- }
-
- return true;
- }
-#endregion
- #region Public constructors
- static MaskedTextProvider()
- {
- }
-
- public MaskedTextProvider(string mask)
- : this (mask, null, true, default_prompt_char, default_password_char, false)
- {
- }
-
- public MaskedTextProvider (string mask, bool restrictToAscii)
- : this (mask, null, true, default_prompt_char, default_password_char, restrictToAscii)
- {
- }
-
- public MaskedTextProvider (string mask, CultureInfo culture)
- : this (mask, culture, true, default_prompt_char, default_password_char, false)
- {
- }
-
- public MaskedTextProvider (string mask, char passwordChar, bool allowPromptAsInput)
- : this (mask, null, allowPromptAsInput, default_prompt_char, passwordChar, false)
- {
- }
-
- public MaskedTextProvider (string mask, CultureInfo culture, bool restrictToAscii)
- : this (mask, culture, true, default_prompt_char, default_password_char, restrictToAscii)
- {
- }
-
- public MaskedTextProvider(string mask, CultureInfo culture, char passwordChar, bool allowPromptAsInput)
- : this (mask, culture, allowPromptAsInput, default_prompt_char, passwordChar, false)
- {
- }
-
- public MaskedTextProvider(string mask, CultureInfo culture, bool allowPromptAsInput, char promptChar, char passwordChar, bool restrictToAscii)
- {
- SetMask (mask);
-
- if (culture == null)
- this.culture = Threading.Thread.CurrentThread.CurrentCulture;
- else
- this.culture = culture;
-
- this.allow_prompt_as_input = allowPromptAsInput;
-
- this.PromptChar = promptChar;
- this.PasswordChar = passwordChar;
- this.ascii_only = restrictToAscii;
-
- include_literals = true;
- reset_on_prompt = true;
- reset_on_space = true;
- skip_literals = true;
- }
-#endregion
-
-#region Public methods
- public bool Add(char input)
- {
- int testPosition;
- MaskedTextResultHint resultHint;
- return Add (input, out testPosition, out resultHint);
- }
-
- public bool Add (string input)
- {
- int testPosition;
- MaskedTextResultHint resultHint;
- return Add (input, out testPosition, out resultHint);
- }
-
- public bool Add (char input, out int testPosition, out MaskedTextResultHint resultHint)
- {
- return AddInternal (input, out testPosition, out resultHint, true, false);
- }
-
- public bool Add (string input, out int testPosition, out MaskedTextResultHint resultHint)
- {
- bool result;
-
- result = AddInternal (input, out testPosition, out resultHint, true);
-
- if (result) {
- result = AddInternal (input, out testPosition, out resultHint, false);
- }
-
- return result;
- }
-
- public void Clear ()
- {
- MaskedTextResultHint resultHint;
- Clear (out resultHint);
- }
-
- public void Clear (out MaskedTextResultHint resultHint)
- {
- resultHint = MaskedTextResultHint.NoEffect;
- for (int i = 0; i < edit_positions.Length; i++) {
- if (edit_positions [i].Editable && edit_positions [i].FilledIn) {
- edit_positions [i].Reset ();
- resultHint = MaskedTextResultHint.Success;
- }
- }
- }
-
- public object Clone ()
- {
- MaskedTextProvider result = new MaskedTextProvider (mask);
-
- result.allow_prompt_as_input = allow_prompt_as_input;
- result.ascii_only = ascii_only;
- result.culture = culture;
- result.edit_positions = ClonePositions ();
- result.include_literals = include_literals;
- result.include_prompt = include_prompt;
- result.is_password = is_password;
- result.mask = mask;
- result.password_char = password_char;
- result.prompt_char = prompt_char;
- result.reset_on_prompt = reset_on_prompt;
- result.reset_on_space = reset_on_space;
- result.skip_literals = skip_literals;
-
- return result;
- }
-
- public int FindAssignedEditPositionFrom (int position, bool direction)
- {
- if (direction) {
- return FindAssignedEditPositionInRange (position, edit_positions.Length - 1, direction);
- } else {
- return FindAssignedEditPositionInRange (0, position, direction);
- }
- }
-
- public int FindAssignedEditPositionInRange (int startPosition, int endPosition, bool direction)
- {
- int step;
- int start, end;
-
- if (startPosition < 0)
- startPosition = 0;
- if (endPosition >= edit_positions.Length)
- endPosition = edit_positions.Length - 1;
-
- if (startPosition > endPosition)
- return InvalidIndex;
-
- step = direction ? 1 : -1;
- start = direction ? startPosition : endPosition;
- end = (direction ? endPosition: startPosition) + step;
-
- for (int i = start; i != end; i+=step) {
- if (edit_positions [i].Editable && edit_positions [i].FilledIn)
- return i;
- }
- return InvalidIndex;
- }
-
- public int FindEditPositionFrom (int position, bool direction)
- {
- if (direction) {
- return FindEditPositionInRange (position, edit_positions.Length - 1, direction);
- } else {
- return FindEditPositionInRange (0, position, direction);
- }
- }
-
- public int FindEditPositionInRange (int startPosition, int endPosition, bool direction)
- {
- int step;
- int start, end;
-
- if (startPosition < 0)
- startPosition = 0;
- if (endPosition >= edit_positions.Length)
- endPosition = edit_positions.Length - 1;
-
- if (startPosition > endPosition)
- return InvalidIndex;
-
- step = direction ? 1 : -1;
- start = direction ? startPosition : endPosition;
- end = (direction ? endPosition : startPosition) + step;
-
- for (int i = start; i != end; i += step) {
- if (edit_positions [i].Editable)
- return i;
- }
- return InvalidIndex;
- }
-
- public int FindNonEditPositionFrom (int position, bool direction)
- {
- if (direction) {
- return FindNonEditPositionInRange (position, edit_positions.Length - 1, direction);
- } else {
- return FindNonEditPositionInRange (0, position, direction);
- }
- }
-
- public int FindNonEditPositionInRange (int startPosition, int endPosition, bool direction)
- {
- int step;
- int start, end;
-
- if (startPosition < 0)
- startPosition = 0;
- if (endPosition >= edit_positions.Length)
- endPosition = edit_positions.Length - 1;
-
- if (startPosition > endPosition)
- return InvalidIndex;
-
- step = direction ? 1 : -1;
- start = direction ? startPosition : endPosition;
- end = (direction ? endPosition : startPosition) + step;
-
- for (int i = start; i != end; i += step) {
- if (!edit_positions [i].Editable)
- return i;
- }
- return InvalidIndex;
- }
-
- public int FindUnassignedEditPositionFrom (int position, bool direction)
- {
- if (direction) {
- return FindUnassignedEditPositionInRange (position, edit_positions.Length - 1, direction);
- } else {
- return FindUnassignedEditPositionInRange (0, position, direction);
- }
- }
-
- public int FindUnassignedEditPositionInRange (int startPosition, int endPosition, bool direction)
- {
- int step;
- int start, end;
-
- if (startPosition < 0)
- startPosition = 0;
- if (endPosition >= edit_positions.Length)
- endPosition = edit_positions.Length - 1;
-
- if (startPosition > endPosition)
- return InvalidIndex;
-
- step = direction ? 1 : -1;
- start = direction ? startPosition : endPosition;
- end = (direction ? endPosition : startPosition) + step;
-
- for (int i = start; i != end; i += step) {
- if (edit_positions [i].Editable && !edit_positions [i].FilledIn)
- return i;
- }
- return InvalidIndex;
- }
-
- public static bool GetOperationResultFromHint (MaskedTextResultHint hint)
- {
- return (hint == MaskedTextResultHint.CharacterEscaped ||
- hint == MaskedTextResultHint.NoEffect ||
- hint == MaskedTextResultHint.SideEffect ||
- hint == MaskedTextResultHint.Success);
- }
-
- public bool InsertAt (char input, int position)
- {
- int testPosition;
- MaskedTextResultHint resultHint;
- return InsertAt (input, position, out testPosition, out resultHint);
- }
-
- public bool InsertAt (string input, int position)
- {
- int testPosition;
- MaskedTextResultHint resultHint;
- return InsertAt (input, position, out testPosition, out resultHint);
- }
-
- public bool InsertAt (char input, int position, out int testPosition, out MaskedTextResultHint resultHint)
- {
- return InsertAt (input.ToString (), position, out testPosition, out resultHint);
- }
-
- public bool InsertAt (string input, int position, out int testPosition, out MaskedTextResultHint resultHint)
- {
- if (input == null)
- throw new ArgumentNullException ("input");
-
- if (position >= edit_positions.Length) {
- testPosition = position;
- resultHint = MaskedTextResultHint.PositionOutOfRange;
- return false;
- }
-
- if (input == string.Empty) {
- testPosition = position;
- resultHint = MaskedTextResultHint.NoEffect;
- return true;
- }
-
- bool result;
-
- result = InsertAtInternal (input, position, out testPosition, out resultHint, true);
-
- if (result) {
- result = InsertAtInternal (input, position, out testPosition, out resultHint, false);
- }
-
- return result;
- }
-
- public bool IsAvailablePosition (int position)
- {
- if (position < 0 || position >= edit_positions.Length)
- return false;
-
- return edit_positions [position].Editable && !edit_positions [position].FilledIn;
- }
-
- public bool IsEditPosition (int position)
- {
- if (position < 0 || position >= edit_positions.Length)
- return false;
-
- return edit_positions [position].Editable;
- }
-
- public static bool IsValidInputChar (char c)
- {
- return char.IsLetterOrDigit (c) || char.IsPunctuation (c) || char.IsSymbol (c) || c == ' ';
- }
-
- public static bool IsValidMaskChar (char c)
- {
- return char.IsLetterOrDigit (c) || char.IsPunctuation (c) || char.IsSymbol (c) || c == ' ';
- }
-
- public static bool IsValidPasswordChar (char c)
- {
- return char.IsLetterOrDigit (c) || char.IsPunctuation (c) || char.IsSymbol (c) || c == ' ' || c == char.MinValue;
- }
-
- public bool Remove ()
- {
- int testPosition;
- MaskedTextResultHint resultHint;
- return Remove (out testPosition, out resultHint);
- }
-
- public bool Remove (out int testPosition, out MaskedTextResultHint resultHint)
- {
- if (LastAssignedPosition == InvalidIndex) {
- resultHint = MaskedTextResultHint.NoEffect;
- testPosition = 0;
- return true;
- }
-
- testPosition = LastAssignedPosition;
- resultHint = MaskedTextResultHint.Success;
- edit_positions [LastAssignedPosition].input = char.MinValue;
-
- return true;
- }
-
- public bool RemoveAt (int position)
- {
- return RemoveAt (position, position);
- }
-
- public bool RemoveAt (int startPosition, int endPosition)
- {
- int testPosition;
- MaskedTextResultHint resultHint;
- return RemoveAt (startPosition, endPosition, out testPosition, out resultHint);
- }
-
- public bool RemoveAt (int startPosition, int endPosition, out int testPosition, out MaskedTextResultHint resultHint)
- {
- bool result;
-
- result = RemoveAtInternal (startPosition, endPosition, out testPosition, out resultHint, true);
-
- if (result) {
- result = RemoveAtInternal (startPosition, endPosition, out testPosition, out resultHint, false);
- }
-
- return result;
- }
-
- public bool Replace (char input, int position)
- {
- int testPosition;
- MaskedTextResultHint resultHint;
- return Replace (input, position, out testPosition, out resultHint);
- }
-
- public bool Replace (string input, int position)
- {
- int testPosition;
- MaskedTextResultHint resultHint;
- return Replace (input, position, out testPosition, out resultHint);
- }
-
- public bool Replace (char input, int position, out int testPosition, out MaskedTextResultHint resultHint)
- {
- if (position < 0 || position >= edit_positions.Length) {
- testPosition = position;
- resultHint = MaskedTextResultHint.PositionOutOfRange;
- return false;
- }
-
- if (VerifyEscapeChar (input, position)) {
- if (edit_positions [position].FilledIn && edit_positions [position].Editable && (input == ' ' && ResetOnSpace) || (input == PromptChar && ResetOnPrompt)) {
- edit_positions [position].Reset ();
- resultHint = MaskedTextResultHint.SideEffect;
- } else {
- resultHint = MaskedTextResultHint.CharacterEscaped;
- }
- testPosition = position;
- return true;
- }
-
- int current_edit_position;
- current_edit_position = FindEditPositionFrom (position, true);
-
- if (current_edit_position == InvalidIndex) {
- testPosition = position;
- resultHint = MaskedTextResultHint.UnavailableEditPosition;
- return false;
- }
-
- if (!IsValidInputChar (input)) {
- testPosition = current_edit_position;
- resultHint = MaskedTextResultHint.InvalidInput;
- return false;
- }
-
- return ReplaceInternal (edit_positions, input, current_edit_position, out testPosition, out resultHint, false);
- }
-
- public bool Replace (string input, int position, out int testPosition, out MaskedTextResultHint resultHint)
- {
- if (input == null)
- throw new ArgumentNullException ("input");
-
- if (position < 0 || position >= edit_positions.Length) {
- testPosition = position;
- resultHint = MaskedTextResultHint.PositionOutOfRange;
- return false;
- }
-
- if (input.Length == 0) {
- return RemoveAt (position, position, out testPosition, out resultHint);
- }
-
- bool result;
-
- result = ReplaceInternal (input, position, edit_positions.Length - 1, out testPosition, out resultHint, true, true);
-
- if (result) {
- result = ReplaceInternal (input, position, edit_positions.Length - 1, out testPosition, out resultHint, false, true);
- }
-
- return result;
- }
-
- public bool Replace (char input, int startPosition, int endPosition, out int testPosition, out MaskedTextResultHint resultHint)
- {
-
- if (endPosition >= edit_positions.Length) {
- testPosition = endPosition;
- resultHint = MaskedTextResultHint.PositionOutOfRange;
- return false;
- }
-
- if (startPosition < 0) {
- testPosition = startPosition;
- resultHint = MaskedTextResultHint.PositionOutOfRange;
- return false;
- }
-
- if (startPosition > endPosition) {
- testPosition = startPosition;
- resultHint = MaskedTextResultHint.PositionOutOfRange;
- return false;
- }
-
- if (startPosition == endPosition) {
- return ReplaceInternal (edit_positions, input, startPosition, out testPosition, out resultHint, false);
- }
-
- return Replace (input.ToString (), startPosition, endPosition, out testPosition, out resultHint);
- }
-
- public bool Replace (string input, int startPosition, int endPosition, out int testPosition, out MaskedTextResultHint resultHint)
- {
- bool result;
-
- result = ReplaceInternal (input, startPosition, endPosition, out testPosition, out resultHint, true, false);
-
- if (result) {
- result = ReplaceInternal (input, startPosition, endPosition, out testPosition, out resultHint, false, false);
- }
- return result;
- }
-
- public bool Set (string input)
- {
- int testPosition;
- MaskedTextResultHint resultHint;
- return Set (input, out testPosition, out resultHint);
- }
-
- public bool Set (string input, out int testPosition, out MaskedTextResultHint resultHint)
- {
- bool result;
-
- if (input == null) {
- throw new ArgumentNullException ("input");
- }
-
- result = VerifyStringInternal (input, out testPosition, out resultHint, 0, true);
-
- if (result) {
- result = VerifyStringInternal (input, out testPosition, out resultHint, 0, false);
- }
-
- return result;
- }
-
- public string ToDisplayString ()
- {
- return ToString (false, true, true, 0, Length);
- }
-
- public override string ToString ()
- {
- return ToString (true, IncludePrompt, IncludeLiterals, 0, Length);
- }
-
- public string ToString (bool ignorePasswordChar)
- {
- return ToString (ignorePasswordChar, IncludePrompt, IncludeLiterals, 0, Length);
- }
-
- public string ToString (bool includePrompt, bool includeLiterals)
- {
- return ToString (true, includePrompt, includeLiterals, 0, Length);
- }
-
- public string ToString (int startPosition, int length)
- {
- return ToString (true, IncludePrompt, IncludeLiterals, startPosition, length);
- }
-
- public string ToString (bool ignorePasswordChar, int startPosition, int length)
- {
- return ToString (ignorePasswordChar, IncludePrompt, IncludeLiterals, startPosition, length);
- }
-
- public string ToString (bool includePrompt, bool includeLiterals, int startPosition, int length)
- {
- return ToString (true, includePrompt, includeLiterals, startPosition, length);
- }
-
- public string ToString (bool ignorePasswordChar, bool includePrompt, bool includeLiterals, int startPosition, int length)
- {
- if (startPosition < 0)
- startPosition = 0;
-
- if (length <= 0)
- return string.Empty;
-
- StringBuilder result = new StringBuilder ();
- int start = startPosition;
- int end = startPosition + length - 1;
-
- if (end >= edit_positions.Length) {
- end = edit_positions.Length - 1;
- }
- int last_assigned_position = FindAssignedEditPositionInRange (start, end, false);
-
- // Find the last position in the mask to check for
- if (!includePrompt) {
- int last_non_edit_position;
-
- last_non_edit_position = FindNonEditPositionInRange (start, end, false);
-
- if (includeLiterals) {
- end = last_assigned_position > last_non_edit_position ? last_assigned_position : last_non_edit_position;
- } else {
- end = last_assigned_position;
- }
- }
-
- for (int i = start; i <= end; i++) {
- EditPosition ed = edit_positions [i];
-
- if (ed.Type == EditType.Literal) {
- if (includeLiterals) {
- result.Append (ed.Text);
- }
- } else if (ed.Editable) {
- if (IsPassword) {
- if (!ed.FilledIn) { // Nothing to hide or show.
- if (includePrompt)
- result.Append (PromptChar);
- else
- result.Append (" ");
- } else if (ignorePasswordChar)
- result.Append (ed.Input);
- else
- result.Append (PasswordChar);
- } else if (!ed.FilledIn) {
- if (includePrompt) {
- result.Append (PromptChar);
- } else if (includeLiterals) {
- result.Append (" ");
- } else if (last_assigned_position != InvalidIndex && last_assigned_position > i) {
- result.Append (" ");
- }
- } else {
- result.Append (ed.Text);
- }
- } else {
- if (includeLiterals)
- result.Append (ed.Text);
- }
- }
-
- return result.ToString ();
- }
-
- public bool VerifyChar (char input, int position, out MaskedTextResultHint hint)
- {
- return VerifyCharInternal (input, position, out hint, true);
- }
-
- public bool VerifyEscapeChar (char input, int position)
- {
- if (position >= edit_positions.Length || position < 0) {
- return false;
- }
-
- if (!edit_positions [position].Editable) {
- if (SkipLiterals) {
- return input.ToString () == edit_positions [position].Text;
- } else {
- return false;
- }
- }
-
- if (ResetOnSpace && input == ' ') {
- return true;
- } else if (ResetOnPrompt && input == PromptChar) {
- return true;
- } else {
- return false;
- }
- }
-
- public bool VerifyString (string input)
- {
- int testPosition;
- MaskedTextResultHint resultHint;
- return VerifyString (input, out testPosition, out resultHint);
- }
-
- public bool VerifyString (string input, out int testPosition, out MaskedTextResultHint resultHint)
- {
- if (input == null || input.Length == 0) {
- testPosition = 0;
- resultHint = MaskedTextResultHint.NoEffect;
- return true;
- }
-
- return VerifyStringInternal (input, out testPosition, out resultHint, 0, true);
- }
-#endregion
-
-#region Public properties
- public bool AllowPromptAsInput {
- get {
- return allow_prompt_as_input;
- }
- }
-
- public bool AsciiOnly {
- get {
- return ascii_only;
- }
- }
-
- public int AssignedEditPositionCount {
- get {
- int result = 0;
- for (int i = 0; i < edit_positions.Length; i++) {
- if (edit_positions [i].FilledIn) {
- result++;
- }
- }
- return result;
- }
- }
-
- public int AvailableEditPositionCount {
- get {
- int result = 0;
- foreach (EditPosition edit in edit_positions) {
- if (!edit.FilledIn && edit.Editable) {
- result++;
- }
- }
- return result;
- }
- }
-
- public CultureInfo Culture {
- get {
- return culture;
- }
- }
-
- public static char DefaultPasswordChar {
- get {
- return '*';
- }
- }
-
- public int EditPositionCount {
- get {
- int result = 0;
- foreach (EditPosition edit in edit_positions) {
- if (edit.Editable) {
- result++;
- }
- }
-
- return result;
- }
- }
-
- public IEnumerator EditPositions {
- get {
- System.Collections.Generic.List <int> result = new System.Collections.Generic.List<int> ();
- for (int i = 0; i < edit_positions.Length; i++) {
- if (edit_positions [i].Editable) {
- result.Add (i);
- }
- }
- return result.GetEnumerator ();
- }
- }
-
- public bool IncludeLiterals {
- get {
- return include_literals;
- }
- set {
- include_literals = value;
- }
- }
-
- public bool IncludePrompt {
- get {
- return include_prompt;
- }
- set {
- include_prompt = value;
- }
- }
-
- public static int InvalidIndex {
- get {
- return -1;
- }
- }
-
- public bool IsPassword {
- get {
- return password_char != char.MinValue;
- }
- set {
- password_char = value ? DefaultPasswordChar : char.MinValue;
- }
- }
-
- public char this [int index] {
- get {
- if (index < 0 || index >= Length) {
- throw new IndexOutOfRangeException (index.ToString ());
- }
-
- return ToString (true, true, true, 0, edit_positions.Length) [index];
- }
- }
-
- public int LastAssignedPosition {
- get {
- return FindAssignedEditPositionFrom (edit_positions.Length - 1, false);
- }
- }
-
- public int Length {
- get {
- int result = 0;
- for (int i = 0; i < edit_positions.Length; i++) {
- if (edit_positions [i].Visible)
- result++;
- }
- return result;
- }
- }
-
- public string Mask {
- get {
- return mask;
- }
- }
-
- public bool MaskCompleted {
- get {
- for (int i = 0; i < edit_positions.Length; i++)
- if (edit_positions [i].Required && !edit_positions [i].FilledIn)
- return false;
- return true;
- }
- }
-
- public bool MaskFull {
- get {
- for (int i = 0; i < edit_positions.Length; i++)
- if (edit_positions [i].Editable && !edit_positions [i].FilledIn)
- return false;
- return true;
- }
- }
-
- public char PasswordChar {
- get {
- return password_char;
- }
- set {
- password_char = value;
- }
- }
-
- public char PromptChar {
- get {
- return prompt_char;
- }
- set {
- prompt_char = value;
- }
- }
-
- public bool ResetOnPrompt {
- get {
- return reset_on_prompt;
- }
- set {
- reset_on_prompt = value;
- }
- }
-
- public bool ResetOnSpace {
- get {
- return reset_on_space;
- }
- set {
- reset_on_space = value;
- }
- }
-
- public bool SkipLiterals {
- get {
- return skip_literals;
- }
- set {
- skip_literals = value;
- }
- }
-#endregion
-
- }
-}
+++ /dev/null
-// 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.
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Authors:
-// Peter Dennis Bartok (pbartok@novell.com)
-//
-//
-
-namespace System.ComponentModel {
- public enum MaskedTextResultHint {
- PositionOutOfRange = -55,
- NonEditPosition = -54,
- UnavailableEditPosition = -53,
- PromptCharNotAllowed = -52,
- InvalidInput = -51,
- SignedDigitExpected = -5,
- LetterExpected = -4,
- DigitExpected = -3,
- AlphanumericCharacterExpected = -2,
- AsciiCharacterExpected = -1,
- Unknown = 0,
- CharacterEscaped = 1,
- NoEffect = 2,
- SideEffect = 3,
- Success = 4
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.MemberDescriptor.cs
-//
-// Author:
-// Miguel de Icaza (miguel@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-// Ivan N. Zlatev <contact@i-nz.net>
-//
-// (C) Ximian, Inc. http://www.ximian.com
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-using System.Collections;
-using System.Reflection;
-using System.Runtime.InteropServices;
-using System.ComponentModel.Design;
-using System.Globalization;
-
-namespace System.ComponentModel
-{
- [ComVisible (true)]
- public abstract class MemberDescriptor
- {
- private string name;
- private Attribute [] attrs; // only the attributes supplied in the ctor
- private AttributeCollection attrCollection;
- private static IComparer default_comparer;
-
- protected MemberDescriptor (string name, Attribute [] attrs)
- {
- this.name = name;
- this.attrs = attrs;
- }
-
- protected MemberDescriptor (MemberDescriptor reference, Attribute [] attrs)
- {
- name = reference.name;
- this.attrs = attrs;
- }
-
- protected MemberDescriptor (string name)
- {
- this.name = name;
- }
-
- protected MemberDescriptor (MemberDescriptor reference)
- {
- name = reference.name;
- attrs = reference.AttributeArray;
- }
-
- protected virtual Attribute [] AttributeArray {
- get {
- ArrayList list = new ArrayList ();
- if (attrs != null)
- list.AddRange (attrs);
- FillAttributes (list);
- // For duplicate attributes, the last one added to the list is kept.
- Hashtable attributes = new Hashtable ();
- foreach (Attribute attribute in list)
- attributes[attribute.TypeId] = attribute;
- Attribute[] attributesArray = new Attribute[attributes.Values.Count];
- attributes.Values.CopyTo (attributesArray, 0);
- return attributesArray;
- }
- set {
- attrs = value;
- }
- }
-
- protected virtual void FillAttributes(System.Collections.IList attributeList)
- {
- // to be overriden
- }
-
- public virtual AttributeCollection Attributes {
- get {
- if (attrCollection == null)
- attrCollection = CreateAttributeCollection ();
- return attrCollection;
- }
- }
-
- protected virtual AttributeCollection CreateAttributeCollection ()
- {
- return new AttributeCollection (AttributeArray);
- }
-
- public virtual string Category {
- get {
- return ((CategoryAttribute) Attributes [typeof (CategoryAttribute)]).Category;
- }
- }
-
- public virtual string Description {
- get {
- foreach (Attribute attr in AttributeArray)
- if (attr is DescriptionAttribute)
- return ((DescriptionAttribute) attr).Description;
- return string.Empty;
- }
- }
-
- public virtual bool DesignTimeOnly {
- get {
- foreach (Attribute attr in AttributeArray)
- if (attr is DesignOnlyAttribute)
- return ((DesignOnlyAttribute) attr).IsDesignOnly;
- return false;
- }
- }
-
- public virtual string DisplayName {
- get {
- foreach (Attribute attr in AttributeArray)
- if (attr is DisplayNameAttribute)
- return ((DisplayNameAttribute) attr).DisplayName;
- return name;
- }
- }
-
- public virtual string Name {
- get {
- return name;
- }
- }
-
- public virtual bool IsBrowsable {
- get {
- foreach (Attribute attr in AttributeArray)
- if (attr is BrowsableAttribute)
- return ((BrowsableAttribute) attr).Browsable;
- return true;
- }
- }
-
- protected virtual int NameHashCode {
- get {
- return name.GetHashCode ();
- }
- }
-
- public override int GetHashCode ()
- {
- return base.GetHashCode ();
- }
-
- public override bool Equals (object obj)
- {
- MemberDescriptor other = obj as MemberDescriptor;
- if (other == null)
- return false;
- return other.name == name;
- }
-
- protected static ISite GetSite (object component)
- {
- if (component is Component)
- return ((Component) component).Site;
- else
- return null;
- }
-
- [Obsolete ("Use GetInvocationTarget")]
- protected static object GetInvokee (Type componentClass, object component)
- {
- if (component is IComponent) {
- ISite site = ((IComponent) component).Site;
- if (site != null && site.DesignMode) {
- IDesignerHost host = site.GetService (typeof (IDesignerHost)) as IDesignerHost;
- if (host != null) {
- IDesigner designer = host.GetDesigner ((IComponent) component);
- if (designer != null && componentClass.IsInstanceOfType (designer)) {
- component = designer;
- }
- }
- }
- }
- return component;
- }
-
- protected virtual object GetInvocationTarget (Type type, object instance)
- {
- if (type == null)
- throw new ArgumentNullException ("type");
- if (instance == null)
- throw new ArgumentNullException ("instance");
-
- return GetInvokee (type, instance);
- }
-
- protected static MethodInfo FindMethod(Type componentClass, string name, Type[] args, Type returnType)
- {
- return FindMethod (componentClass, name, args, returnType, true);
- }
-
- protected static MethodInfo FindMethod(Type componentClass, string name, Type[] args, Type returnType, bool publicOnly)
- {
- BindingFlags bf;
- if (publicOnly == true)
- bf = BindingFlags.Public;
- else
- bf = BindingFlags.NonPublic | BindingFlags.Public;
- // FIXME returnType is not taken into account. AFAIK methods are not allowed to only
- // differ by return type anyway
- return componentClass.GetMethod (name, bf, null, CallingConventions.Any, args, null);
- }
-
- internal static IComparer DefaultComparer {
- get {
- if (default_comparer == null)
- default_comparer = new MemberDescriptorComparer ();
- return default_comparer;
- }
- }
-
- private class MemberDescriptorComparer : IComparer
- {
- public int Compare (object x, object y)
- {
- return String.Compare (((MemberDescriptor)x).Name, ((MemberDescriptor)y).Name,
- false, CultureInfo.InvariantCulture);
- }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.MergablePropertyAttribute
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel
-{
- [AttributeUsage(AttributeTargets.All)]
- public sealed class MergablePropertyAttribute : Attribute
- {
-
- private bool mergable;
-
- public static readonly MergablePropertyAttribute Default = new MergablePropertyAttribute (true);
- public static readonly MergablePropertyAttribute No = new MergablePropertyAttribute (false);
- public static readonly MergablePropertyAttribute Yes = new MergablePropertyAttribute (true);
-
- public MergablePropertyAttribute (bool allowMerge)
- {
- this.mergable = allowMerge;
- }
-
- public bool AllowMerge {
- get { return mergable; }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is MergablePropertyAttribute))
- return false;
- if (obj == this)
- return true;
- return ((MergablePropertyAttribute) obj).AllowMerge == mergable;
- }
-
- public override int GetHashCode()
- {
- return mergable.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute()
- {
- return mergable == MergablePropertyAttribute.Default.AllowMerge;
- }
- }
-}
+++ /dev/null
-//
-// MultilineStringConverter.cs
-//
-// Authors:
-// Atsushi Enomoto <atsushi@ximian.com>
-// Marek Habersack <mhabersack@novell.com>
-//
-// Copyright (C) 2007-2010 Novell, Inc. http://www.novell.com
-//
-
-//
-// 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;
-using System.Globalization;
-
-namespace System.ComponentModel
-{
- public class MultilineStringConverter : TypeConverter
- {
- public override object ConvertTo (ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType)
- {
- if (destinationType == null)
- throw new ArgumentNullException ("destinationType");
-
- if (destinationType == typeof (string) && value is string)
- return "(Text)";
-
- return base.ConvertTo (context, culture, value, destinationType);
- }
-
- public override PropertyDescriptorCollection GetProperties (ITypeDescriptorContext context, object value, Attribute [] attributes)
- {
- return null;
- }
-
- public override bool GetPropertiesSupported (ITypeDescriptorContext context)
- {
- return false;
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.NestedContainer
-//
-// Authors:
-// Ivan N. Zlatev (contact i-nZ.net)
-//
-// (C) 2006-2007 Ivan N. Zlatev
-
-//
-// 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;
-using System.Collections;
-using System.ComponentModel;
-using System.ComponentModel.Design;
-
-namespace System.ComponentModel
-{
- // Differences compared to Container:
- // * Site's DesignMode property is routed through the owning component's site. Note that even though MSDN
- // says that GetService is routed as well, it actually isn't. The unit tests proof that.
- // * According to MSDN the site's Name property is a qualified name that includes the owning component's name followed by a
- // period (.) and the child component's name. It is not again according to the tests.
- // * GetService provides support for the INestedContainer as a service.
- // * When the owning component is disposed, the container is disposed as well.
-
- public class NestedContainer : Container, INestedContainer, IContainer, IDisposable
- {
-
-#region Site : INestedSite, ISite, IServiceProvider
-
- private class Site : INestedSite, ISite, IServiceProvider
- {
-
- private IComponent _component;
- private NestedContainer _nestedContainer;
- private string _siteName;
-
- public Site (IComponent component, NestedContainer container, string name)
- {
- _component = component;
- _nestedContainer = container;
- _siteName = name;
- }
-
- public IComponent Component {
- get { return _component; }
- }
-
- public IContainer Container {
- get { return _nestedContainer; }
- }
-
- public bool DesignMode {
- get {
- if (_nestedContainer.Owner != null
- && _nestedContainer.Owner.Site != null) {
-
- return _nestedContainer.Owner.Site.DesignMode;
- }
- else {
- return false;
- }
- }
- }
-
- public string Name {
- get { return _siteName; }
- set { _siteName = value; }
- }
-
- // [owner].[component]
- //
- public string FullName {
- get {
- if (_siteName == null) {
- return null;
- }
- if (_nestedContainer.OwnerName == null) {
- return _siteName;
- }
-
- return _nestedContainer.OwnerName + "." + _siteName;
- }
- }
-
- public virtual object GetService (Type service)
- {
- if (service == typeof (ISite)) {
- return this;
- }
-
- return _nestedContainer.GetService (service);
- }
- } // Site
-
-#endregion
-
-
-
- private IComponent _owner;
-
-
- public NestedContainer (IComponent owner)
- {
- if (owner == null)
- throw new ArgumentNullException ("owner");
-
- _owner = owner;
- _owner.Disposed += new EventHandler (OnOwnerDisposed);
- }
-
- public IComponent Owner {
- get { return _owner; }
- }
-
- protected virtual string OwnerName {
- get {
- if (_owner.Site is INestedSite)
- return ((INestedSite) _owner.Site).FullName;
- if (_owner == null || _owner.Site == null)
- return null;
-
- return _owner.Site.Name;
- }
- }
-
- protected override ISite CreateSite (IComponent component, string name)
- {
- if (component == null)
- throw new ArgumentNullException("component");
-
- return new NestedContainer.Site (component, this, name);
- }
-
- protected override object GetService (Type service)
- {
- if (service == typeof (INestedContainer))
- return this;
-
- return base.GetService (service);
- }
-
- protected override void Dispose (bool disposing)
- {
- if (disposing)
- _owner.Disposed -= new EventHandler (OnOwnerDisposed);
-
- base.Dispose (disposing);
- }
-
- private void OnOwnerDisposed (object sender, EventArgs e)
- {
- this.Dispose ();
- }
- }
-
-}
+++ /dev/null
-//
-// System.ComponentModel.NotifyParentPropertyAttribute.cs
-//
-// Author:
-// Tim Coleman (tim@timcoleman.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// Copyright (C) Tim Coleman, 2002
-// (C) 2003 Andreas Nahr
-//
-//
-
-//
-// 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.ComponentModel {
- [AttributeUsage (AttributeTargets.Property)]
- public sealed class NotifyParentPropertyAttribute : Attribute {
-
- #region Fields
-
- private bool notifyParent;
-
- #endregion // Fields
-
- public static readonly NotifyParentPropertyAttribute Default = new NotifyParentPropertyAttribute (false);
- public static readonly NotifyParentPropertyAttribute No = new NotifyParentPropertyAttribute (false);
- public static readonly NotifyParentPropertyAttribute Yes = new NotifyParentPropertyAttribute (true);
-
- #region Constructors
-
- public NotifyParentPropertyAttribute (bool notifyParent)
- {
- this.notifyParent = notifyParent;
- }
-
- #endregion // Constructors
-
- #region Properties
-
- public bool NotifyParent {
- get { return notifyParent; }
- }
-
- #endregion // Properties
-
- #region Methods
-
- public override bool Equals (object obj)
- {
- if (!(obj is NotifyParentPropertyAttribute))
- return false;
- if (obj == this)
- return true;
- return ((NotifyParentPropertyAttribute) obj).NotifyParent == notifyParent;
- }
-
- public override int GetHashCode ()
- {
- return notifyParent.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return notifyParent == NotifyParentPropertyAttribute.Default.NotifyParent;
- }
-
- #endregion // Methods
- }
-}
+++ /dev/null
-//
-// NullableConverter.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-// Ivan N. Zlatev <contact@i-nz.net>
-//
-// Copyright (C) 2007 Novell, Inc. http://www.novell.com
-//
-
-//
-// 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;
-using System.Collections;
-using System.Globalization;
-
-namespace System.ComponentModel
-{
- public class NullableConverter : TypeConverter
- {
- private Type nullableType;
- private Type underlyingType;
- private TypeConverter underlyingTypeConverter;
-
- public NullableConverter (Type nullableType)
- {
- if (nullableType == null)
- throw new ArgumentNullException ("nullableType");
-
- this.nullableType = nullableType;
- underlyingType = Nullable.GetUnderlyingType (nullableType);
- underlyingTypeConverter = TypeDescriptor.GetConverter (underlyingType);
- }
-
- public override bool CanConvertFrom (ITypeDescriptorContext context, Type sourceType)
- {
- if (sourceType == underlyingType)
- return true;
-
- if (underlyingTypeConverter != null)
- return underlyingTypeConverter.CanConvertFrom (context, sourceType);
-
- return base.CanConvertFrom (context, sourceType);
- }
-
- public override bool CanConvertTo (ITypeDescriptorContext context, Type destinationType)
- {
- if (destinationType == underlyingType)
- return true;
-
- if (underlyingTypeConverter != null)
- return underlyingTypeConverter.CanConvertTo (context, destinationType);
-
- return base.CanConvertFrom (context, destinationType);
- }
-
- public override object ConvertFrom (ITypeDescriptorContext context, CultureInfo culture, object value)
- {
- // Because:
- // 1) Nullable<> has an expliciit generic cast operator
- // 2) We are returning an "Object" type here
- // we don't have to bother creating the nullable instance,
- // since the user will have to explicitly cast anyway.
- //
- if (value == null || value.GetType() == underlyingType)
- return value;
-
- if (value is string && String.IsNullOrEmpty ((string)value))
- return null;
-
- if (underlyingTypeConverter != null)
- return underlyingTypeConverter.ConvertFrom (context, culture, value);
-
- return base.ConvertFrom (context, culture, value);
- }
-
- public override object ConvertTo (ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType)
- {
- if (destinationType == null)
- throw new ArgumentNullException ("destinationType");
-
- // Explicit cast operator in Nullable when the user casts will take care
- // of extracting the inner value.
- if (destinationType == underlyingType && value.GetType() == underlyingType)
- return value;
-
- if (underlyingTypeConverter != null && value != null)
- return underlyingTypeConverter.ConvertTo (context, culture, value, destinationType);
-
- return base.ConvertTo (context, culture, value, destinationType);
- }
-
- public override object CreateInstance (ITypeDescriptorContext context, IDictionary propertyValues)
- {
- if (underlyingTypeConverter != null)
- return underlyingTypeConverter.CreateInstance (context, propertyValues);
-
- return base.CreateInstance (context, propertyValues);
- }
-
- public override bool GetCreateInstanceSupported (ITypeDescriptorContext context)
- {
- if (underlyingTypeConverter != null)
- return underlyingTypeConverter.GetCreateInstanceSupported (context);
-
- return base.GetCreateInstanceSupported (context);
- }
-
- public override PropertyDescriptorCollection GetProperties (ITypeDescriptorContext context, object value, Attribute [] attributes)
- {
- if (underlyingTypeConverter != null)
- return underlyingTypeConverter.GetProperties (context, value, attributes);
-
- return base.GetProperties (context, value, attributes);
- }
-
- public override bool GetPropertiesSupported (ITypeDescriptorContext context)
- {
- if (underlyingTypeConverter != null)
- return underlyingTypeConverter.GetCreateInstanceSupported (context);
-
- return base.GetCreateInstanceSupported (context);
- }
-
- public override TypeConverter.StandardValuesCollection GetStandardValues (ITypeDescriptorContext context)
- {
- // Adds a "null" values to the standard values if supported and available
- //
- if (underlyingTypeConverter != null &&
- underlyingTypeConverter.GetStandardValuesSupported (context)) {
- TypeConverter.StandardValuesCollection values = underlyingTypeConverter.GetStandardValues (context);
- if (values != null) {
- ArrayList valuesWithNull = new ArrayList (values);
- valuesWithNull.Add (null);
- return new TypeConverter.StandardValuesCollection (valuesWithNull);
- }
- }
-
- return base.GetStandardValues (context);
- }
-
- public override bool GetStandardValuesExclusive (ITypeDescriptorContext context)
- {
-
- if (underlyingTypeConverter != null)
- return underlyingTypeConverter.GetStandardValuesExclusive (context);
-
- return base.GetStandardValuesExclusive (context);
- }
-
- public override bool GetStandardValuesSupported (ITypeDescriptorContext context)
- {
- if (underlyingTypeConverter != null)
- return underlyingTypeConverter.GetStandardValuesSupported (context);
-
- return base.GetStandardValuesSupported (context);
- }
-
- public override bool IsValid (ITypeDescriptorContext context, object value)
- {
- if (underlyingTypeConverter != null)
- return underlyingTypeConverter.IsValid (context, value);
-
- return base.IsValid (context, value);
- }
-
- public Type NullableType {
- get { return nullableType; }
- }
-
- public Type UnderlyingType {
- get { return underlyingType; }
- }
-
- public TypeConverter UnderlyingTypeConverter {
- get { return underlyingTypeConverter; }
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.ParenthesizePropertyNameAttribute
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel
-{
- [AttributeUsage(AttributeTargets.All)]
- public sealed class ParenthesizePropertyNameAttribute : Attribute
- {
-
- private bool parenthesis;
-
- public static readonly ParenthesizePropertyNameAttribute Default = new ParenthesizePropertyNameAttribute();
-
-
- public ParenthesizePropertyNameAttribute()
- {
- this.parenthesis = false;
- }
-
- public ParenthesizePropertyNameAttribute (bool needParenthesis)
- {
- this.parenthesis = needParenthesis;
- }
-
- public bool NeedParenthesis {
- get { return parenthesis; }
- }
-
- public override bool Equals (object o)
- {
- if (!(o is ParenthesizePropertyNameAttribute))
- return false;
- if (o == this)
- return true;
- return ((ParenthesizePropertyNameAttribute) o).NeedParenthesis == parenthesis;
- }
-
- public override int GetHashCode()
- {
- return parenthesis.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute()
- {
- return parenthesis == ParenthesizePropertyNameAttribute.Default.NeedParenthesis;
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.PasswordPropertyTextAttribute
-//
-// Authors:
-// Marek Habersack (grendello@gmail.com)
-//
-// (C) 2007 Marek Habersack
-//
-// 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.ComponentModel
-{
- [AttributeUsageAttribute(AttributeTargets.All)]
- public sealed class PasswordPropertyTextAttribute : Attribute
- {
- public static readonly PasswordPropertyTextAttribute Default;
- public static readonly PasswordPropertyTextAttribute No;
- public static readonly PasswordPropertyTextAttribute Yes;
-
- bool _password;
-
- public bool Password {
- get { return _password; }
- }
-
- static PasswordPropertyTextAttribute ()
- {
- No = new PasswordPropertyTextAttribute (false);
- Yes = new PasswordPropertyTextAttribute (true);
- Default = No;
- }
-
- public PasswordPropertyTextAttribute () : this (false)
- {
- }
-
- public PasswordPropertyTextAttribute (bool password)
- {
- this._password = password;
- }
-
- public override bool Equals (object o)
- {
- if (!(o is PasswordPropertyTextAttribute))
- return false;
- return ((PasswordPropertyTextAttribute) o).Password == Password;
- }
-
- public override int GetHashCode ()
- {
- return Password.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return Default.Equals (this);
- }
- }
-}
+++ /dev/null
-//
-// ProgressChangedEventArgs.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-// Copyright (C) 2006 Novell, Inc.
-//
-
-//
-// 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.ComponentModel
-{
- public class ProgressChangedEventArgs : EventArgs
- {
- public ProgressChangedEventArgs (int progressPercentage, object userState)
- {
- progress = progressPercentage;
- state = userState;
- }
-
- int progress;
- object state;
-
- public int ProgressPercentage {
- get { return progress; }
- }
-
- public object UserState {
- get { return state; }
- }
- }
-}
-
+++ /dev/null
-//
-// ProgressChangedEventHandler.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-
-//
-// 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.ComponentModel
-{
- public delegate void ProgressChangedEventHandler (object sender, ProgressChangedEventArgs e);
-}
-
+++ /dev/null
-//
-// System.ComponentModel.PropertyChangedEventArgs.cs
-//
-// Author:
-// Rodrigo Moya (rodrigo@ximian.com)
-//
-// (C) Ximian, Inc
-//
-
-//
-// 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.ComponentModel
-{
- /// <summary>
- /// Provides data for the PropertyChanged event.
- /// </summary>
- public class PropertyChangedEventArgs : EventArgs
- {
- private string propertyName;
-
- public PropertyChangedEventArgs (string propertyName)
- {
- this.propertyName = propertyName;
- }
-
-#if NET_2_1
- public string PropertyName {
-#else
- public virtual string PropertyName {
-#endif
- get {
- return propertyName;
- }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.PropertyChangedEventHandler.cs
-//
-// Author:
-// Asier Llano Palacios (asierllano@infonegocio.com)
-//
-
-//
-// 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;
-
-namespace System.ComponentModel {
-
- public delegate void PropertyChangedEventHandler( object sender, PropertyChangedEventArgs e );
-}
-
-
+++ /dev/null
-//
-// PropertyChangingEventArgs.cs
-//
-// Author:
-// Atsushi Enomoto (atsushi@ximian.com)
-//
-// Copyright (C) 2008 Novell, Inc
-//
-
-//
-// 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.ComponentModel
-{
- public class PropertyChangingEventArgs : EventArgs
- {
- string name;
-
- public PropertyChangingEventArgs (string propertyName)
- {
- name = propertyName;
- }
-
- public virtual string PropertyName {
- get { return name; }
- }
- }
-}
-
+++ /dev/null
-//
-// PropertyChangingEventHandler.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- public delegate void PropertyChangingEventHandler (object sender, PropertyChangingEventArgs e);
-}
+++ /dev/null
-//
-// System.ComponentModel.PropertyDescriptor.cs
-//
-// Author:
-// Miguel de Icaza (miguel@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-// Ivan N. Zlatev (contact@i-nz.net)
-//
-// (C) Ximian, Inc. http://www.ximian.com
-// (C) 2003 Andreas Nahr
-// (C) 2008 Novell, Inc. http://www.novell.com
-//
-
-//
-// 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;
-using System.Collections;
-using System.Reflection;
-using System.Runtime.InteropServices;
-
-namespace System.ComponentModel
-{
- [ComVisible (true)]
- public abstract class PropertyDescriptor : MemberDescriptor
- {
- TypeConverter converter;
-
- protected PropertyDescriptor (MemberDescriptor reference)
- : base (reference)
- {
- }
-
- protected PropertyDescriptor (MemberDescriptor reference, Attribute [] attrs)
- : base (reference, attrs)
- {
- }
-
- protected PropertyDescriptor (string name, Attribute [] attrs)
- : base (name, attrs)
- {
- }
-
- public abstract Type ComponentType { get; }
-
- public virtual TypeConverter Converter {
- get {
- if (converter == null && PropertyType != null) {
- TypeConverterAttribute at = (TypeConverterAttribute) Attributes [typeof(TypeConverterAttribute)];
- if (at != null && at != TypeConverterAttribute.Default) {
- Type converterType = GetTypeFromName (at.ConverterTypeName);
- if (converterType != null && typeof (TypeConverter).IsAssignableFrom (converterType))
- converter = (TypeConverter)CreateInstance (converterType);
- }
- if (converter == null)
- converter = TypeDescriptor.GetConverter (PropertyType);
- }
- return converter;
- }
- }
-
- public virtual bool IsLocalizable {
- get {
- foreach (Attribute attr in AttributeArray){
- if (attr is LocalizableAttribute)
- return ((LocalizableAttribute) attr).IsLocalizable;
- }
-
- return false;
- }
- }
-
- public abstract bool IsReadOnly { get; }
-
- public abstract Type PropertyType { get; }
-
- public virtual bool SupportsChangeEvents {
- get { return false; }
- }
-
- public DesignerSerializationVisibility SerializationVisibility {
- get {
- foreach (Attribute attr in AttributeArray) {
- if (attr is DesignerSerializationVisibilityAttribute){
- DesignerSerializationVisibilityAttribute a;
-
- a = (DesignerSerializationVisibilityAttribute) attr;
-
- return a.Visibility;
- }
- }
-
- return DesignerSerializationVisibility.Visible;
- }
- }
-
- Hashtable notifiers;
-
- public virtual void AddValueChanged (object component, EventHandler handler)
- {
- EventHandler component_notifiers;
-
- if (component == null)
- throw new ArgumentNullException ("component");
-
- if (handler == null)
- throw new ArgumentNullException ("handler");
-
- if (notifiers == null)
- notifiers = new Hashtable ();
-
- component_notifiers = (EventHandler) notifiers [component];
-
- if (component_notifiers != null) {
- component_notifiers += handler;
- notifiers [component] = component_notifiers;
- } else {
- notifiers [component] = handler;
- }
- }
-
- public virtual void RemoveValueChanged (object component, System.EventHandler handler)
- {
- EventHandler component_notifiers;
-
- if (component == null)
- throw new ArgumentNullException ("component");
-
- if (handler == null)
- throw new ArgumentNullException ("handler");
-
- if (notifiers == null) return;
-
- component_notifiers = (EventHandler) notifiers [component];
- component_notifiers -= handler;
-
- if (component_notifiers == null)
- notifiers.Remove (component);
- else
- notifiers [component] = component_notifiers;
- }
-
- protected override void FillAttributes (IList attributeList)
- {
- base.FillAttributes (attributeList);
- }
-
- protected override object GetInvocationTarget (Type type, object instance)
- {
- if (type == null)
- throw new ArgumentNullException ("type");
- if (instance == null)
- throw new ArgumentNullException ("instance");
-
- if (instance is CustomTypeDescriptor) {
- CustomTypeDescriptor ctd = (CustomTypeDescriptor) instance;
- return ctd.GetPropertyOwner (this);
- }
-
- return base.GetInvocationTarget (type, instance);
- }
-
- protected internal EventHandler GetValueChangedHandler (object component)
- {
- if (component == null || notifiers == null)
- return null;
-
- return (EventHandler) notifiers [component];
- }
-
- protected virtual void OnValueChanged (object component, EventArgs e)
- {
- if (notifiers == null)
- return;
-
- EventHandler component_notifiers = (EventHandler) notifiers [component];
-
- if (component_notifiers == null)
- return;
-
- component_notifiers (component, e);
- }
-
- public abstract object GetValue (object component);
-
- public abstract void SetValue (object component, object value);
-
- public abstract void ResetValue (object component);
-
- public abstract bool CanResetValue (object component);
-
- public abstract bool ShouldSerializeValue (object component);
-
- protected object CreateInstance (Type type)
- {
- if (type == null || PropertyType == null)
- return null;
-
- object instance = null;
- Type[] paramTypes = new Type[] { typeof (Type) };
- ConstructorInfo ctor = type.GetConstructor (paramTypes);
- if (ctor != null) {
- object[] parameters = new object[] { PropertyType };
- instance = TypeDescriptor.CreateInstance (null, type, paramTypes, parameters);
- } else {
- instance = TypeDescriptor.CreateInstance (null, type, null, null);
- }
- return instance;
- }
-
- public override bool Equals(object obj)
- {
- if (!base.Equals (obj)) return false;
- PropertyDescriptor other = obj as PropertyDescriptor;
- if (other == null) return false;
- return other.PropertyType == PropertyType;
- }
-
- public PropertyDescriptorCollection GetChildProperties()
- {
- return GetChildProperties (null, null);
- }
-
- public PropertyDescriptorCollection GetChildProperties(object instance)
- {
- return GetChildProperties (instance, null);
- }
-
- public PropertyDescriptorCollection GetChildProperties(Attribute[] filter)
- {
- return GetChildProperties (null, filter);
- }
-
- public override int GetHashCode()
- {
- return base.GetHashCode ();
- }
-
- public virtual PropertyDescriptorCollection GetChildProperties (object instance, Attribute[] filter)
- {
- return TypeDescriptor.GetProperties (instance, filter);
- }
-
- public virtual object GetEditor (Type editorBaseType)
- {
- Type t = null;
- Attribute [] atts = AttributeArray;
-
- if (atts != null && atts.Length != 0) {
- foreach (Attribute a in atts) {
- EditorAttribute ea = a as EditorAttribute;
-
- if (ea == null)
- continue;
-
- t = GetTypeFromName (ea.EditorTypeName);
- if (t != null && t.IsSubclassOf(editorBaseType))
- break;
- }
- }
-
- object editor = null;
- if (t != null)
- editor = CreateInstance (t);
- if (editor == null)
- editor = TypeDescriptor.GetEditor (PropertyType, editorBaseType);
- return editor;
- }
-
- protected Type GetTypeFromName (string typeName)
- {
- if (typeName == null || ComponentType == null || typeName.Trim ().Length == 0)
- return null;
-
- Type type = Type.GetType (typeName);
- if (type == null) {
- // Try to strip the type typeName only
- int index = typeName.IndexOf (",");
- if (index != -1)
- typeName = typeName.Substring (0, index);
- type = ComponentType.Assembly.GetType (typeName);
- }
- return type;
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.PropertyDescriptorCollection.cs
-//
-// Authors:
-// Rodrigo Moya (rodrigo@ximian.com)
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) Rodrigo Moya, 2002
-// (c) 2002 Ximian, Inc. (http://www.ximian.com)
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel
-{
- /// <summary>
- /// Represents a collection of PropertyDescriptor objects.
- /// </summary>
- public class PropertyDescriptorCollection : IList, ICollection, IEnumerable, IDictionary
- {
- public static readonly PropertyDescriptorCollection Empty = new PropertyDescriptorCollection (null, true);
- private ArrayList properties;
- private bool readOnly;
-
- public PropertyDescriptorCollection (PropertyDescriptor[] properties)
- {
- this.properties = new ArrayList ();
- if (properties == null)
- return;
-
- this.properties.AddRange (properties);
- }
-
- public PropertyDescriptorCollection (PropertyDescriptor[] properties, bool readOnly) : this (properties)
- {
- this.readOnly = readOnly;
- }
-
- private PropertyDescriptorCollection ()
- {
- }
-
- public int Add (PropertyDescriptor value)
- {
- if (readOnly) {
- throw new NotSupportedException ();
- }
- properties.Add (value);
- return properties.Count - 1;
- }
-
- int IList.Add (object value)
- {
- return Add ((PropertyDescriptor) value);
- }
-
- void IDictionary.Add (object key, object value)
- {
- if ((value as PropertyDescriptor) == null) {
- throw new ArgumentException ("value");
- }
-
- Add ((PropertyDescriptor) value);
- }
-
- public void Clear ()
- {
- if (readOnly) {
- throw new NotSupportedException ();
- }
- properties.Clear ();
- }
-
- void IList.Clear ()
- {
- Clear ();
- }
-
- void IDictionary.Clear ()
- {
- Clear ();
- }
-
- public bool Contains (PropertyDescriptor value)
- {
- return properties.Contains (value);
- }
-
-
- bool IList.Contains (object value)
- {
- return Contains ((PropertyDescriptor) value);
- }
-
- bool IDictionary.Contains (object value)
- {
- return Contains ((PropertyDescriptor) value);
- }
-
- public void CopyTo (Array array, int index)
- {
- properties.CopyTo (array, index);
- }
-
- public virtual PropertyDescriptor Find (string name, bool ignoreCase)
- {
- if (name == null)
- throw new ArgumentNullException ("name");
-
- for (int i = 0; i < properties.Count; ++i) {
- PropertyDescriptor p = (PropertyDescriptor)properties [i];
- if (ignoreCase) {
- if (0 == String.Compare (name, p.Name, StringComparison.OrdinalIgnoreCase))
- return p;
- }
- else {
- if (0 == String.Compare (name, p.Name, StringComparison.Ordinal))
- return p;
- }
- }
- return null;
- }
-
- public virtual IEnumerator GetEnumerator ()
- {
- return properties.GetEnumerator ();
- }
-
- IEnumerator IEnumerable.GetEnumerator ()
- {
- return GetEnumerator ();
- }
-
- [MonoTODO]
- IDictionaryEnumerator IDictionary.GetEnumerator ()
- {
- throw new NotImplementedException ();
- }
-
- public int IndexOf (PropertyDescriptor value)
- {
- return properties.IndexOf (value);
- }
-
- int IList.IndexOf (object value)
- {
- return IndexOf ((PropertyDescriptor) value);
- }
-
- public void Insert (int index, PropertyDescriptor value)
- {
- if (readOnly) {
- throw new NotSupportedException ();
- }
- properties.Insert (index, value);
- }
-
- void IList.Insert (int index, object value)
- {
- Insert (index, (PropertyDescriptor) value);
- }
-
- public void Remove (PropertyDescriptor value)
- {
- if (readOnly) {
- throw new NotSupportedException ();
- }
- properties.Remove (value);
- }
-
- void IDictionary.Remove (object value)
- {
- Remove ((PropertyDescriptor) value);
- }
-
- void IList.Remove (object value)
- {
- Remove ((PropertyDescriptor) value);
- }
- public void RemoveAt (int index)
- {
- if (readOnly) {
- throw new NotSupportedException ();
- }
- properties.RemoveAt (index);
- }
-
- void IList.RemoveAt (int index)
- {
- RemoveAt (index);
- }
-
- private PropertyDescriptorCollection CloneCollection ()
- {
- PropertyDescriptorCollection col = new PropertyDescriptorCollection ();
- col.properties = (ArrayList) properties.Clone ();
- return col;
- }
-
- public virtual PropertyDescriptorCollection Sort ()
- {
- PropertyDescriptorCollection col = CloneCollection ();
- col.InternalSort ((IComparer) null);
- return col;
- }
-
- public virtual PropertyDescriptorCollection Sort (IComparer comparer)
- {
- PropertyDescriptorCollection col = CloneCollection ();
- col.InternalSort (comparer);
- return col;
- }
-
- public virtual PropertyDescriptorCollection Sort (string[] order)
- {
- PropertyDescriptorCollection col = CloneCollection ();
- col.InternalSort (order);
- return col;
- }
-
- public virtual PropertyDescriptorCollection Sort (string[] order, IComparer comparer)
- {
- PropertyDescriptorCollection col = CloneCollection ();
- if (order != null) {
- ArrayList sorted = col.ExtractItems (order);
- col.InternalSort (comparer);
- sorted.AddRange (col.properties);
- col.properties = sorted;
- } else {
- col.InternalSort (comparer);
- }
- return col;
- }
-
- protected void InternalSort (IComparer ic)
- {
- if (ic == null)
- ic = MemberDescriptor.DefaultComparer;
- properties.Sort (ic);
- }
-
- protected void InternalSort (string [] order)
- {
- if (order != null) {
- ArrayList sorted = ExtractItems (order);
- InternalSort ((IComparer) null);
- sorted.AddRange (properties);
- properties = sorted;
- } else {
- InternalSort ((IComparer) null);
- }
- }
-
- ArrayList ExtractItems (string[] names)
- {
- ArrayList sorted = new ArrayList (properties.Count);
- object[] ext = new object [names.Length];
-
- for (int n=0; n<properties.Count; n++)
- {
- PropertyDescriptor ed = (PropertyDescriptor) properties[n];
- int i = Array.IndexOf (names, ed.Name);
- if (i != -1) {
- ext[i] = ed;
- properties.RemoveAt (n);
- n--;
- }
- }
- foreach (object ob in ext)
- if (ob != null) sorted.Add (ob);
-
- return sorted;
- }
-
- internal PropertyDescriptorCollection Filter (Attribute[] attributes)
- {
- ArrayList list = new ArrayList ();
- foreach (PropertyDescriptor pd in properties) {
- if (pd.Attributes.Contains (attributes)) {
- list.Add (pd);
- }
- }
- PropertyDescriptor[] descriptors = new PropertyDescriptor[list.Count];
- list.CopyTo (descriptors);
- return new PropertyDescriptorCollection (descriptors, true);
- }
-
- bool IDictionary.IsFixedSize
- {
- get {return ((IList)this).IsFixedSize;}
- }
- bool IList.IsFixedSize
- {
- get
- {
- return readOnly;
- }
- }
- bool IDictionary.IsReadOnly
- {
- get {return ((IList)this).IsReadOnly;}
- }
- bool IList.IsReadOnly
- {
- get
- {
- return readOnly;
- }
- }
-
- bool ICollection.IsSynchronized
- {
- get {
- return false;
- }
- }
-
- int ICollection.Count {
- get { return Count; }
- }
-
- public int Count
- {
- get {
- return properties.Count;
- }
- }
-
- object ICollection.SyncRoot
- {
- get {
- return null;
- }
- }
-
- ICollection IDictionary.Keys
- {
- get {
- string [] keys = new string [properties.Count];
- int i = 0;
- foreach (PropertyDescriptor p in properties)
- keys [i++] = p.Name;
- return keys;
- }
- }
-
- ICollection IDictionary.Values
- {
- get {
- return (ICollection) properties.Clone ();
- }
- }
-
- object IDictionary.this [object key]
- {
- get {
- if (!(key is string))
- return null;
- return this [(string) key];
- }
- set {
- if (readOnly) {
- throw new NotSupportedException ();
- }
-
- if (!(key is string) || (value as PropertyDescriptor) == null)
- throw new ArgumentException ();
- int idx = properties.IndexOf (value);
- if (idx == -1)
- Add ((PropertyDescriptor) value);
- else
- properties [idx] = value;
- }
- }
-
- public virtual PropertyDescriptor this [string s]
- {
- get {
- return Find (s, false);
- }
- }
-
- object IList.this [int index]
- {
- get {
- return properties [index];
- }
- set {
- if (readOnly) {
- throw new NotSupportedException ();
- }
- properties [index] = value;
- }
- }
-
- public virtual PropertyDescriptor this [int index]
- {
- get {
- return (PropertyDescriptor) properties [index];
- }
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.PropertyTabAttribute
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-// Ivan N. Zlatev (contact@i-nz.net)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-// (C) 2008 Novell, Inc
-//
-
-//
-// 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;
-using System.Reflection;
-
-namespace System.ComponentModel
-{
- [AttributeUsage(AttributeTargets.All)]
- public class PropertyTabAttribute : Attribute
- {
-
- private Type[] tabs;
- private PropertyTabScope[] scopes;
-
-
- public PropertyTabAttribute()
- {
- tabs = Type.EmptyTypes;
- scopes = new PropertyTabScope[0];
- }
-
- public PropertyTabAttribute (string tabClassName) : this (tabClassName, PropertyTabScope.Component)
- {
- }
-
- public PropertyTabAttribute (Type tabClass) : this (tabClass, PropertyTabScope.Component)
- {
- }
-
- public PropertyTabAttribute (string tabClassName, PropertyTabScope tabScope)
- {
- if (tabClassName == null)
- throw new ArgumentNullException ("tabClassName");
- this.InitializeArrays (new string[] { tabClassName }, new PropertyTabScope[] { tabScope });
- }
-
- public PropertyTabAttribute (Type tabClass, PropertyTabScope tabScope)
- {
- if (tabClass == null)
- throw new ArgumentNullException ("tabClass");
- this.InitializeArrays (new Type[] { tabClass }, new PropertyTabScope[] { tabScope });
- }
-
- public Type[] TabClasses {
- get { return tabs; }
- }
-
- public PropertyTabScope[] TabScopes {
- get { return scopes; }
- }
-
- protected string[] TabClassNames {
- get {
- string[] names = new string[tabs.Length];
- for (int i=0; i < tabs.Length; i++)
- names[i] = tabs[i].Name;
- return names;
- }
- }
-
- public override bool Equals (object other)
- {
- if (other is PropertyTabAttribute)
- return Equals ((PropertyTabAttribute)other);
- return false;
- }
-
- public bool Equals (PropertyTabAttribute other)
- {
- if (other != this) {
- if (other.TabClasses.Length != tabs.Length)
- return false;
-
- for (int i=0; i < tabs.Length; i++) {
- if (tabs[i] != other.TabClasses[i])
- return false;
- }
- }
- return true;
- }
-
- public override int GetHashCode()
- {
- return base.GetHashCode ();
- }
-
- protected void InitializeArrays (string[] tabClassNames, PropertyTabScope[] tabScopes)
- {
- if (tabScopes == null)
- throw new ArgumentNullException ("tabScopes");
- if (tabClassNames == null)
- throw new ArgumentNullException ("tabClassNames");
-
- scopes = tabScopes;
- tabs = new Type[tabClassNames.Length];
- for (int i = 0; i < tabClassNames.Length; i++)
- tabs[i] = GetTypeFromName (tabClassNames[i]);
- }
-
- protected void InitializeArrays (Type[] tabClasses, PropertyTabScope[] tabScopes)
- {
- if (tabScopes == null)
- throw new ArgumentNullException ("tabScopes");
- if (tabClasses == null)
- throw new ArgumentNullException ("tabClasses");
- if (tabClasses.Length != tabScopes.Length)
- throw new ArgumentException ("tabClasses.Length != tabScopes.Length");
-
- tabs = tabClasses;
- scopes = tabScopes;
- }
-
- private Type GetTypeFromName (string typeName)
- {
- if (typeName == null)
- throw new ArgumentNullException ("typeName");
-
- int index = typeName.IndexOf (",");
- if (index != -1) {
- string typeNameOnly = typeName.Substring (0, index);
- string assemblyName = typeName.Substring (index + 1);
- Assembly assembly = Assembly.Load (assemblyName);
- if (assembly != null)
- return assembly.GetType (typeNameOnly, true);
- }
- return Type.GetType (typeName, true);
- }
- }
-}
+++ /dev/null
-
-//
-// 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.ComponentModel {
-
- public enum PropertyTabScope {
- Static,
- Global,
- Document,
- Component
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ProvidePropertyAttribute.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel
-{
- [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = true)]
- public sealed class ProvidePropertyAttribute : Attribute
- {
-
- private string Property;
- private string Receiver;
-
- public ProvidePropertyAttribute (string propertyName, string receiverTypeName)
- {
- Property = propertyName;
- Receiver = receiverTypeName;
- }
-
- public ProvidePropertyAttribute (string propertyName, Type receiverType)
- {
- Property = propertyName;
- Receiver = receiverType.AssemblyQualifiedName;
- }
-
- public string PropertyName {
- get { return Property; }
- }
-
- public string ReceiverTypeName {
- get { return Receiver; }
- }
-
- public override object TypeId {
- get {
- // seems to be MS implementation
- return base.TypeId + Property;
- }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is ProvidePropertyAttribute))
- return false;
- if (obj == this)
- return true;
- return (((ProvidePropertyAttribute) obj).PropertyName == Property) &&
- (((ProvidePropertyAttribute) obj).ReceiverTypeName == Receiver);
- }
-
- public override int GetHashCode()
- {
- return (Property + Receiver).GetHashCode ();
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ReadOnlyAttribute.cs
-//
-// Author:
-// Chris J Breisch (cjbreisch@altavista.net)
-//
-// (C) 2002 Chris J Breisch
-//
-
-//
-// 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.ComponentModel {
- [AttributeUsage (AttributeTargets.All)]
- sealed public class ReadOnlyAttribute : Attribute {
- bool read_only;
-
- public static readonly ReadOnlyAttribute No;
- public static readonly ReadOnlyAttribute Yes;
- public static readonly ReadOnlyAttribute Default;
-
- static ReadOnlyAttribute ()
- {
- No = new ReadOnlyAttribute (false);
- Yes = new ReadOnlyAttribute (true);
- Default = new ReadOnlyAttribute (false);
- }
-
- public ReadOnlyAttribute (bool isReadOnly)
- {
- this.read_only = isReadOnly;
- }
-
- public bool IsReadOnly {
- get {
- return read_only;
- }
- }
-
- public override int GetHashCode ()
- {
- return read_only.GetHashCode ();
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is ReadOnlyAttribute))
- return false;
-
- return (((ReadOnlyAttribute) obj).IsReadOnly.Equals (read_only));
- }
-
- public override bool IsDefaultAttribute ()
- {
- return Equals (Default);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.RecommendedAsConfigurableAttribute
-//
-// Authors:
-// Tim Coleman (tim@timcoleman.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// Copyright (C) Tim Coleman, 2002
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-
-namespace System.ComponentModel {
-
- [AttributeUsage (AttributeTargets.Property)]
- [Obsolete ("Use SettingsBindableAttribute instead of RecommendedAsConfigurableAttribute")]
- public class RecommendedAsConfigurableAttribute : Attribute {
-
- #region Fields
-
- private bool recommendedAsConfigurable;
-
- public static readonly RecommendedAsConfigurableAttribute Default = new RecommendedAsConfigurableAttribute (false);
- public static readonly RecommendedAsConfigurableAttribute No = new RecommendedAsConfigurableAttribute (false);
- public static readonly RecommendedAsConfigurableAttribute Yes = new RecommendedAsConfigurableAttribute (true);
-
- #endregion // Fields
-
- #region Constructors
-
- public RecommendedAsConfigurableAttribute (bool recommendedAsConfigurable)
- {
- this.recommendedAsConfigurable = recommendedAsConfigurable;
- }
-
- #endregion // Constructors
-
- #region Properties
-
- public bool RecommendedAsConfigurable {
- get { return recommendedAsConfigurable; }
- }
-
- #endregion // Properties
-
- #region Methods
-
- public override bool Equals (object obj)
- {
- if (!(obj is RecommendedAsConfigurableAttribute))
- return false;
- return ((RecommendedAsConfigurableAttribute) obj).RecommendedAsConfigurable == recommendedAsConfigurable;
- }
-
- public override int GetHashCode ()
- {
- return recommendedAsConfigurable.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return recommendedAsConfigurable == RecommendedAsConfigurableAttribute.Default.RecommendedAsConfigurable;
- }
-
- #endregion // Methods
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ReferenceConverter.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-// Ivan N. Zlatev (contact@i-nz.net)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-
-//
-// 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.Globalization;
-using System.Collections;
-using System.ComponentModel.Design;
-
-namespace System.ComponentModel
-{
- public class ReferenceConverter : TypeConverter
- {
-
- private Type reference_type;
-
- public ReferenceConverter (Type type)
- {
- reference_type = type;
- }
-
- public override bool CanConvertFrom (ITypeDescriptorContext context,
- Type sourceType)
- {
- if (context != null && sourceType == typeof (string))
- return true;
- return base.CanConvertFrom (context, sourceType);
- }
-
- public override object ConvertFrom (ITypeDescriptorContext context,
- CultureInfo culture,
- object value)
- {
- if (!(value is string))
- return base.ConvertFrom(context, culture, value);
-
-
- if (context != null) {
- object reference = null;
- // try 1 - IReferenceService
- IReferenceService referenceService = context.GetService (typeof (IReferenceService)) as IReferenceService;
- if (referenceService != null)
- reference = referenceService.GetReference ((string)value);
-
- // try 2 - Component by name
- if (reference == null) {
- if (context.Container != null && context.Container.Components != null)
- reference = context.Container.Components[(string)value];
- }
-
- return reference;
- }
-
- return null;
- }
-
- public override object ConvertTo (ITypeDescriptorContext context,
- CultureInfo culture,
- object value,
- Type destinationType)
- {
- if (destinationType != typeof (string))
- return base.ConvertTo(context, culture, value, destinationType);
-
- if (value == null)
- return "(none)";
-
- string referenceName = String.Empty;
-
- if (context != null) {
- // try 1 - IReferenceService
- IReferenceService referenceService = context.GetService (typeof (IReferenceService)) as IReferenceService;
- if (referenceService != null)
- referenceName = referenceService.GetName (value);
-
- // try 2 - Component by name
- if ((referenceName == null || referenceName.Length == 0) && value is IComponent) {
- IComponent component = (IComponent) value;
- if (component.Site != null && component.Site.Name != null)
- referenceName = component.Site.Name;
- }
- }
-
- return referenceName;
- }
-
- public override StandardValuesCollection GetStandardValues (ITypeDescriptorContext context)
- {
- ArrayList values = new ArrayList ();
-
- if (context != null) {
- IReferenceService referenceService = context.GetService (typeof (IReferenceService)) as IReferenceService;
- if (referenceService != null) {
- foreach (object reference in referenceService.GetReferences (reference_type)) {
- if (IsValueAllowed (context, reference)) {
- values.Add (reference);
- }
- }
- } else {
- if (context.Container != null && context.Container.Components != null) {
- foreach (object component in context.Container.Components) {
- // avoid duplicate null values here
- if (component != null &&
- IsValueAllowed (context, component) &&
- reference_type.IsInstanceOfType (component))
- values.Add (component);
- }
- }
- }
-
- values.Add (null);
- }
-
- return new StandardValuesCollection (values);
- }
-
- public override bool GetStandardValuesExclusive (ITypeDescriptorContext context)
- {
- return true;
- }
-
- public override bool GetStandardValuesSupported (ITypeDescriptorContext context)
- {
- return true;
- }
-
- protected virtual bool IsValueAllowed (ITypeDescriptorContext context, object value)
- {
- return true;
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.EventDescriptor.cs
-//
-// Authors:
-// Lluis Sanchez Gual (lluis@ximian.com)
-//
-// (C) Novell, Inc. 2004, 2005
-//
-//
-// 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;
-using System.Runtime.InteropServices;
-using System.Collections;
-using System.Reflection;
-
-namespace System.ComponentModel
-{
- internal class ReflectionEventDescriptor: EventDescriptor
- {
- Type _eventType;
- Type _componentType;
- EventInfo _eventInfo;
-
- MethodInfo add_method;
- MethodInfo remove_method;
-
- public ReflectionEventDescriptor (EventInfo eventInfo) : base (eventInfo.Name, (Attribute[]) eventInfo.GetCustomAttributes (true))
- {
- _eventInfo = eventInfo;
- _componentType = eventInfo.DeclaringType;
- _eventType = eventInfo.EventHandlerType;
-
- add_method = eventInfo.GetAddMethod ();
- remove_method = eventInfo.GetRemoveMethod ();
- }
-
- public ReflectionEventDescriptor (Type componentType, EventDescriptor oldEventDescriptor, Attribute[] attrs) : base (oldEventDescriptor, attrs)
- {
- _componentType = componentType;
- _eventType = oldEventDescriptor.EventType;
-
- EventInfo event_info = componentType.GetEvent (oldEventDescriptor.Name);
- add_method = event_info.GetAddMethod ();
- remove_method = event_info.GetRemoveMethod ();
- }
-
- public ReflectionEventDescriptor (Type componentType, string name, Type type, Attribute[] attrs) : base (name, attrs)
- {
- _componentType = componentType;
- _eventType = type;
-
- EventInfo event_info = componentType.GetEvent (name);
- add_method = event_info.GetAddMethod ();
- remove_method = event_info.GetRemoveMethod ();
- }
-
- EventInfo GetEventInfo ()
- {
- if (_eventInfo == null) {
- _eventInfo = _componentType.GetEvent (Name);
- if (_eventInfo == null)
- throw new ArgumentException ("Accessor methods for the " + Name + " event are missing");
- }
- return _eventInfo;
- }
-
- public override void AddEventHandler (object component, System.Delegate value)
- {
- add_method.Invoke (component, new object [] { value });
- }
-
- public override void RemoveEventHandler (object component, System.Delegate value)
- {
- remove_method.Invoke (component, new object [] { value });
- }
-
- public override System.Type ComponentType
- {
- get { return _componentType; }
- }
-
- public override System.Type EventType
- {
- get { return _eventType; }
- }
-
- public override bool IsMulticast
- {
- get { return GetEventInfo().IsMulticast; }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.PropertyDescriptor.cs
-//
-// Author:
-// Lluis Sanchez Gual (lluis@ximian.com)
-// Ivan N. Zlatev (contact i-nZ.net)
-// (C) Novell, Inc.
-//
-
-//
-// 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;
-using System.Collections;
-using System.Reflection;
-using System.Runtime.InteropServices;
-using System.ComponentModel.Design;
-
-namespace System.ComponentModel
-{
- internal class ReflectionPropertyDescriptor : PropertyDescriptor
- {
- PropertyInfo _member;
- Type _componentType;
- Type _propertyType;
- PropertyInfo getter, setter;
- bool accessors_inited;
-
- public ReflectionPropertyDescriptor (Type componentType, PropertyDescriptor oldPropertyDescriptor, Attribute [] attributes)
- : base (oldPropertyDescriptor, attributes)
- {
- _componentType = componentType;
- _propertyType = oldPropertyDescriptor.PropertyType;
- }
-
- public ReflectionPropertyDescriptor (Type componentType, string name, Type type, Attribute [] attributes)
- : base (name, attributes)
- {
- _componentType = componentType;
- _propertyType = type;
- }
-
- public ReflectionPropertyDescriptor (PropertyInfo info)
- : base (info.Name, null)
- {
- _member = info;
- _componentType = _member.DeclaringType;
- _propertyType = info.PropertyType;
- }
-
- PropertyInfo GetPropertyInfo ()
- {
- if (_member == null) {
- _member = _componentType.GetProperty (Name, BindingFlags.GetProperty | BindingFlags.NonPublic |
- BindingFlags.Public | BindingFlags.Instance,
- null, this.PropertyType,
- new Type[0], new ParameterModifier[0]);
- if (_member == null)
- throw new ArgumentException ("Accessor methods for the " + Name + " property are missing");
- }
- return _member;
- }
-
- public override Type ComponentType {
- get { return _componentType; }
- }
-
- public override bool IsReadOnly {
- get {
- ReadOnlyAttribute attrib = ((ReadOnlyAttribute) Attributes[typeof (ReadOnlyAttribute)]);
- return !GetPropertyInfo ().CanWrite || attrib.IsReadOnly;
- }
- }
-
- public override Type PropertyType {
- get { return _propertyType; }
- }
-
- // The last added to the list attributes have higher precedence
- //
- protected override void FillAttributes (IList attributeList)
- {
- base.FillAttributes (attributeList);
-
- if (!GetPropertyInfo ().CanWrite)
- attributeList.Add (ReadOnlyAttribute.Yes);
-
- // PropertyDescriptor merges the attributes of both virtual and also "new" properties
- // in the the component type hierarchy.
- //
- int numberOfBaseTypes = 0;
- Type baseType = this.ComponentType;
- while (baseType != null && baseType != typeof (object)) {
- numberOfBaseTypes++;
- baseType = baseType.BaseType;
- }
-
- Attribute[][] hierarchyAttributes = new Attribute[numberOfBaseTypes][];
- baseType = this.ComponentType;
- while (baseType != null && baseType != typeof (object)) {
- PropertyInfo property = baseType.GetProperty (Name, BindingFlags.NonPublic |
- BindingFlags.Public | BindingFlags.Instance |
- BindingFlags.DeclaredOnly,
- null, this.PropertyType,
- new Type[0], new ParameterModifier[0]);
- if (property != null) {
- object[] attrObjects = property.GetCustomAttributes (false);
- Attribute[] attrsArray = new Attribute[attrObjects.Length];
- attrObjects.CopyTo (attrsArray, 0);
- // add in reverse order so that the base types have lower precedence
- hierarchyAttributes[--numberOfBaseTypes] = attrsArray;
- }
- baseType = baseType.BaseType;
- }
-
- foreach (Attribute[] attrArray in hierarchyAttributes) {
- if (attrArray != null) {
- foreach (Attribute attr in attrArray)
- attributeList.Add (attr);
- }
- }
-
- foreach (Attribute attribute in TypeDescriptor.GetAttributes (PropertyType))
- attributeList.Add (attribute);
- }
-
- public override object GetValue (object component)
- {
- component = MemberDescriptor.GetInvokee (_componentType, component);
- InitAccessors ();
- return getter.GetValue (component, null);
- }
-
- DesignerTransaction CreateTransaction (object obj, string description)
- {
- IComponent com = obj as IComponent;
- if (com == null || com.Site == null)
- return null;
-
- IDesignerHost dh = (IDesignerHost) com.Site.GetService (typeof(IDesignerHost));
- if (dh == null)
- return null;
-
- DesignerTransaction tran = dh.CreateTransaction (description);
- IComponentChangeService ccs = (IComponentChangeService) com.Site.GetService (typeof(IComponentChangeService));
- if (ccs != null)
- ccs.OnComponentChanging (com, this);
- return tran;
- }
-
- void EndTransaction (object obj, DesignerTransaction tran, object oldValue, object newValue, bool commit)
- {
- if (tran == null) {
- // FIXME: EventArgs might be differen type.
- OnValueChanged (obj, new PropertyChangedEventArgs (Name));
- return;
- }
-
- if (commit) {
- IComponent com = obj as IComponent;
- IComponentChangeService ccs = (IComponentChangeService) com.Site.GetService (typeof(IComponentChangeService));
- if (ccs != null)
- ccs.OnComponentChanged (com, this, oldValue, newValue);
- tran.Commit ();
- // FIXME: EventArgs might be differen type.
- OnValueChanged (obj, new PropertyChangedEventArgs (Name));
- } else
- tran.Cancel ();
- }
-
- /*
- This method exists because reflection is way too low level for what we need.
- A given virtual property that is partially overriden by a child won't show the
- non-overriden accessor in PropertyInfo. IOW:
- class Parent {
- public virtual string Prop { get; set; }
- }
- class Child : Parent {
- public override string Prop {
- get { return "child"; }
- }
- }
- PropertyInfo pi = typeof (Child).GetProperty ("Prop");
- pi.GetGetMethod (); //returns the MethodInfo for the overridden getter
- pi.GetSetMethod (); //returns null as no override exists
- */
- void InitAccessors () {
- if (accessors_inited)
- return;
- PropertyInfo prop = GetPropertyInfo ();
- MethodInfo setterMethod, getterMethod;
- setterMethod = prop.GetSetMethod (true);
- getterMethod = prop.GetGetMethod (true);
-
- if (getterMethod != null)
- getter = prop;
-
- if (setterMethod != null)
- setter = prop;
-
-
- if (setterMethod != null && getterMethod != null) {//both exist
- accessors_inited = true;
- return;
- }
- if (setterMethod == null && getterMethod == null) {//neither exist, this is a broken property
- accessors_inited = true;
- return;
- }
-
- //In order to detect that this is a virtual property with override, we check the non null accessor
- MethodInfo mi = getterMethod != null ? getterMethod : setterMethod;
-
- if (mi == null || !mi.IsVirtual || (mi.Attributes & MethodAttributes.NewSlot) == MethodAttributes.NewSlot) {
- accessors_inited = true;
- return;
- }
-
- Type type = _componentType.BaseType;
- while (type != null && type != typeof (object)) {
- prop = type.GetProperty (Name, BindingFlags.GetProperty | BindingFlags.NonPublic |
- BindingFlags.Public | BindingFlags.Instance,
- null, this.PropertyType,
- new Type[0], new ParameterModifier[0]);
- if (prop == null) //nothing left to search
- break;
- if (setterMethod == null)
- setterMethod = mi = prop.GetSetMethod ();
- else
- getterMethod = mi = prop.GetGetMethod ();
-
- if (getterMethod != null && getter == null)
- getter = prop;
-
- if (setterMethod != null && setter == null)
- setter = prop;
-
- if (mi != null)
- break;
- type = type.BaseType;
- }
- accessors_inited = true;
- }
-
- public override void SetValue (object component, object value)
- {
- DesignerTransaction tran = CreateTransaction (component, "Set Property '" + Name + "'");
-
- object propertyHolder = MemberDescriptor.GetInvokee (_componentType, component);
- object old = GetValue (propertyHolder);
-
- try {
- InitAccessors ();
- setter.SetValue (propertyHolder, value, null);
- EndTransaction (component, tran, old, value, true);
- } catch {
- EndTransaction (component, tran, old, value, false);
- throw;
- }
- }
-
- MethodInfo FindPropertyMethod (object o, string method_name)
- {
- MethodInfo mi = null;
- string name = method_name + Name;
-
- foreach (MethodInfo m in o.GetType().GetMethods (BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public)) {
- // XXX should we really not check the return type of the method?
- if (m.Name == name && m.GetParameters().Length == 0) {
- mi = m;
- break;
- }
- }
-
- return mi;
- }
-
- public override void ResetValue (object component)
- {
- object propertyHolder = MemberDescriptor.GetInvokee (_componentType, component);
-
- DefaultValueAttribute attrib = ((DefaultValueAttribute) Attributes[typeof (DefaultValueAttribute)]);
- if (attrib != null)
- SetValue (propertyHolder, attrib.Value);
-
- DesignerTransaction tran = CreateTransaction (component, "Reset Property '" + Name + "'");
- object old = GetValue (propertyHolder);
-
- try {
- MethodInfo mi = FindPropertyMethod (propertyHolder, "Reset");
- if (mi != null)
- mi.Invoke (propertyHolder, null);
- EndTransaction (component, tran, old, GetValue (propertyHolder), true);
- } catch {
- EndTransaction (component, tran, old, GetValue (propertyHolder), false);
- throw;
- }
- }
-
- public override bool CanResetValue (object component)
- {
- component = MemberDescriptor.GetInvokee (_componentType, component);
-
- DefaultValueAttribute attrib = ((DefaultValueAttribute) Attributes[typeof (DefaultValueAttribute)]);
- if (attrib != null) {
- object current = GetValue (component);
- if (attrib.Value == null || current == null){
- if (attrib.Value != current)
- return true;
- if (attrib.Value == null && current == null)
- return false;
- }
-
- return !attrib.Value.Equals (current);
- } else {
- if (!_member.CanWrite)
- return false;
-
- MethodInfo mi = FindPropertyMethod (component, "ShouldPersist");
- if (mi != null)
- return (bool) mi.Invoke (component, null);
-
- mi = FindPropertyMethod (component, "ShouldSerialize");
- if (mi != null && !((bool) mi.Invoke (component, null)))
- return false;
-
- mi = FindPropertyMethod (component, "Reset");
- return mi != null;
- }
- }
-
- public override bool ShouldSerializeValue (object component)
- {
- component = MemberDescriptor.GetInvokee (_componentType, component);
-
- if (IsReadOnly) {
- MethodInfo mi = FindPropertyMethod (component, "ShouldSerialize");
- if (mi != null)
- return (bool) mi.Invoke (component, null);
- return Attributes.Contains (DesignerSerializationVisibilityAttribute.Content);
- }
-
- DefaultValueAttribute attrib = ((DefaultValueAttribute) Attributes[typeof (DefaultValueAttribute)]);
- if (attrib != null) {
- object current = GetValue (component);
- if (attrib.Value == null || current == null)
- return attrib.Value != current;
- return !attrib.Value.Equals (current);
- }
- else {
- MethodInfo mi = FindPropertyMethod (component, "ShouldSerialize");
- if (mi != null)
- return (bool) mi.Invoke (component, null);
- // MSDN: If this method cannot find a DefaultValueAttribute or a ShouldSerializeMyProperty method,
- // it cannot create optimizations and it returns true.
- return true;
- }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.RefreshEventArgs.cs
-//
-// Author:
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-//
-// (C) 2002 Ximian, Inc (http://www.ximian.com)
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- public class RefreshEventArgs : EventArgs
- {
- private object component;
- private Type type;
-
- public RefreshEventArgs (object componentChanged)
- {
- if (componentChanged == null)
- throw new ArgumentNullException ("componentChanged");
-
- component = componentChanged;
- type = component.GetType ();
- }
-
- public RefreshEventArgs (Type typeChanged)
- {
- type = typeChanged;
- }
-
- public object ComponentChanged
- {
- get { return component; }
- }
-
- public Type TypeChanged
- {
- get { return type; }
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.RefreshEventHandler
-//
-// Author:
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-//
-// (C) 2002 Ximian, Inc (http://www.ximian.com)
-//
-
-//
-// 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.ComponentModel
-{
- public delegate void RefreshEventHandler (RefreshEventArgs e);
-}
-
+++ /dev/null
-//
-// System.ComponentModel.RefreshProperties.cs
-//
-// Author:
-// Tim Coleman (tim@timcoleman.com)
-//
-// Copyright (C) Tim Coleman, 2002
-//
-
-//
-// 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.ComponentModel
-{
- public enum RefreshProperties {
- All = 1,
- None = 0,
- Repaint = 2
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.RefreshPropertiesAttribute.cs
-//
-// Author:
-// Tim Coleman (tim@timcoleman.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// Copyright (C) Tim Coleman, 2002
-// (C) 2003 Andreas Nahr
-//
-//
-
-//
-// 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.ComponentModel {
- [AttributeUsage (AttributeTargets.All)]
- public sealed class RefreshPropertiesAttribute : Attribute {
-
- #region Fields
-
- RefreshProperties refresh;
-
- #endregion // Fields
-
- public static readonly RefreshPropertiesAttribute All = new RefreshPropertiesAttribute (RefreshProperties.All);
- public static readonly RefreshPropertiesAttribute Default = new RefreshPropertiesAttribute (RefreshProperties.None);
- public static readonly RefreshPropertiesAttribute Repaint = new RefreshPropertiesAttribute (RefreshProperties.Repaint);
-
- #region Constructors
-
- public RefreshPropertiesAttribute (RefreshProperties refresh)
- {
- this.refresh = refresh;
- }
-
- #endregion // Constructors
-
- #region Properties
-
- public RefreshProperties RefreshProperties {
- get { return refresh; }
- }
-
- #endregion // Properties
-
- #region Methods
-
- public override bool Equals (object obj)
- {
- if (!(obj is RefreshPropertiesAttribute))
- return false;
- if (obj == this)
- return true;
- return ((RefreshPropertiesAttribute) obj).RefreshProperties == refresh;
- }
-
- public override int GetHashCode ()
- {
- return refresh.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return (this == RefreshPropertiesAttribute.Default);
- }
-
- #endregion // Methods
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.RunInstallerAttribute.cs
-//
-// Authors:
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Ximian, Inc (http://www.ximian.com)
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- [AttributeUsageAttribute(AttributeTargets.Class)]
- public class RunInstallerAttribute : Attribute
- {
- public static readonly RunInstallerAttribute Yes = new RunInstallerAttribute (true);
- public static readonly RunInstallerAttribute No = new RunInstallerAttribute (false);
- public static readonly RunInstallerAttribute Default = new RunInstallerAttribute (false);
-
- private bool runInstaller;
-
- public RunInstallerAttribute (bool runInstaller)
- {
- this.runInstaller = runInstaller;
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is RunInstallerAttribute))
- return false;
-
- return ((RunInstallerAttribute) obj).RunInstaller.Equals (runInstaller);
- }
-
- public override int GetHashCode ()
- {
- return runInstaller.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return Equals (Default);
- }
-
- public bool RunInstaller
- {
- get { return runInstaller; }
- }
- }
-}
-
+++ /dev/null
-//
-// RunWorkerCompletedEventArgs.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-// Copyright (C) 2006 Novell, Inc.
-//
-
-//
-// 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.ComponentModel
-{
- public class RunWorkerCompletedEventArgs : AsyncCompletedEventArgs
- {
- // LAMESPEC: there is no way to provide UserState. See also:
- // http://pluralsight.com/blogs/mike/archive/2005/10/21/15783.aspx
- public RunWorkerCompletedEventArgs (
- object result, Exception error, bool cancelled)
- : base (error, cancelled, null)
- {
- this.result = result;
- }
-
- object result;
-
- public object Result {
- get {
- RaiseExceptionIfNecessary ();
- return result;
- }
- }
-
- // It is always null. See .ctor() for details.
-#if !NET_2_1
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Never)]
-#endif
- public new object UserState {
- get { return null; }
- }
- }
-}
-
+++ /dev/null
-//
-// RunWorkerCompletedEventHandler.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-
-//
-// 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.ComponentModel
-{
- public delegate void RunWorkerCompletedEventHandler (
- object sender, RunWorkerCompletedEventArgs e);
-}
-
+++ /dev/null
-//
-// System.ComponentModel.SByteConverter
-//
-// Authors:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-
-namespace System.ComponentModel
-{
- public class SByteConverter : BaseNumberConverter
- {
- public SByteConverter()
- {
- InnerType = typeof (SByte);
- }
-
- internal override bool SupportHex
- {
- get { return true; }
- }
-
- internal override string ConvertToString (object value, NumberFormatInfo format)
- {
- return ((sbyte) value).ToString ("G", format);
- }
-
- internal override object ConvertFromString (string value, NumberFormatInfo format)
- {
- return sbyte.Parse (value, NumberStyles.Integer, format);
- }
-
- internal override object ConvertFromString (string value, int fromBase)
- {
- return Convert.ToSByte (value, fromBase);
- }
- }
-}
+++ /dev/null
-//
-// SettingsBindableAttribute.cs
-//
-// Author:
-// Atsushi Enomoto <atsushi@ximian.com>
-//
-// Copyright (C) 2006 Novell, Inc.
-//
-
-//
-// 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.ComponentModel
-{
- [AttributeUsage (AttributeTargets.Property, AllowMultiple = false, Inherited = true)]
- public sealed class SettingsBindableAttribute : Attribute
- {
- public static readonly SettingsBindableAttribute Yes = new SettingsBindableAttribute (true);
- public static readonly SettingsBindableAttribute No = new SettingsBindableAttribute (false);
-
- public SettingsBindableAttribute (bool bindable)
- {
- this.bindable = bindable;
- }
-
- bool bindable;
-
- public bool Bindable {
- get { return bindable; }
- }
-
- public override int GetHashCode ()
- {
- return bindable ? 1 : -1;
- }
-
- public override bool Equals (object obj)
- {
- SettingsBindableAttribute other =
- obj as SettingsBindableAttribute;
- return other != null && bindable == other.bindable;
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.SingleConverter
-//
-// Authors:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-
-namespace System.ComponentModel
-{
- public class SingleConverter : BaseNumberConverter
- {
- public SingleConverter()
- {
- InnerType = typeof (Single);
- }
-
- internal override bool SupportHex {
- get { return false; }
- }
-
- internal override string ConvertToString (object value, NumberFormatInfo format)
- {
- return ((float) value).ToString ("R", format);
- }
-
- internal override object ConvertFromString (string value, NumberFormatInfo format)
- {
- return float.Parse (value, NumberStyles.Float, format);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.StringConverter.cs
-//
-// Authors:
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-//
-// (C) 2002 Ximian, Inc (http://www.ximian.com)
-//
-
-//
-// 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;
-using System.Globalization;
-
-namespace System.ComponentModel {
-
- public class StringConverter : TypeConverter
- {
- public StringConverter ()
- {
- }
-
- public override bool CanConvertFrom (ITypeDescriptorContext context, Type sourceType)
- {
- if (sourceType == typeof(String))
- return true;
-
- return base.CanConvertFrom (context, sourceType);
- }
-
- public override object ConvertFrom (ITypeDescriptorContext context, CultureInfo culture, object value)
- {
- if (value == null)
- return String.Empty;
-
- if (value is string)
- return (string) value;
-
- return base.ConvertFrom (context, culture, value);
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.SyntaxCheck.cs
-//
-// Author:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.IO;
-
-namespace System.ComponentModel
-{
- static public class SyntaxCheck
- {
- public static bool CheckMachineName (string value)
- {
- if (value == null || value.Trim ().Length == 0)
- return false;
-
- return value.IndexOf ('\\') == -1;
- }
-
- public static bool CheckPath (string value)
- {
- if (value == null || value.Trim ().Length == 0)
- return false;
-
- return value.StartsWith (@"\\");
- }
-
- public static bool CheckRootedPath (string value)
- {
- if (value == null || value.Trim ().Length == 0)
- return false;
-
- return Path.IsPathRooted (value);
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.TimeSpanConverter
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-using System.Reflection;
-using System.ComponentModel.Design.Serialization;
-
-namespace System.ComponentModel
-{
- public class TimeSpanConverter : TypeConverter
- {
-
- public TimeSpanConverter()
- {
- }
-
- public override bool CanConvertFrom (ITypeDescriptorContext context, Type sourceType)
- {
- if (sourceType == typeof (string))
- return true;
- return base.CanConvertFrom (context, sourceType);
- }
-
- public override bool CanConvertTo (ITypeDescriptorContext context, Type destinationType)
- {
- if (destinationType == typeof (string))
- return true;
- if (destinationType == typeof (InstanceDescriptor))
- return true;
- return base.CanConvertTo (context, destinationType);
- }
-
- public override object ConvertFrom (ITypeDescriptorContext context, CultureInfo culture, object value)
- {
- if (value.GetType() == typeof (string)) {
- string TimeSpanString = (string) value;
- try {
- // LAMESPEC Doc says TimeSpan uses Ticks, but MS uses time format:
- // [ws][-][d.]hh:mm:ss[.ff][ws]
- return TimeSpan.Parse (TimeSpanString);
- } catch {
- throw new FormatException (TimeSpanString + "is not valid for a TimeSpan.");
- }
- }
- return base.ConvertFrom (context, culture, value);
- }
-
- public override object ConvertTo (ITypeDescriptorContext context, CultureInfo culture, object value,
- Type destinationType)
- {
- if (value is TimeSpan) {
- TimeSpan timespan = (TimeSpan) value;
- if (destinationType == typeof (string) && value != null) {
- // LAMESPEC Doc says TimeSpan uses Ticks, but MS uses time format
- // [ws][-][d.]hh:mm:ss[.ff][ws]
- return timespan.ToString ();
- }
- if (destinationType == typeof (InstanceDescriptor)) {
- ConstructorInfo ctor = typeof(TimeSpan).GetConstructor (new Type[] {typeof(long)});
- return new InstanceDescriptor (ctor, new object[] { timespan.Ticks });
- }
- }
- return base.ConvertTo (context, culture, value, destinationType);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ToolboxItemAttribute
-//
-// Authors:
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-//
-// (C) 2002 Ximian, Inc (http://www.ximian.com)
-//
-
-//
-// 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;
-
-namespace System.ComponentModel
-{
- [AttributeUsage(AttributeTargets.All)]
- public class ToolboxItemAttribute : Attribute
- {
- private const string defaultItemType = "System.Drawing.Design.ToolboxItem, " + Consts.AssemblySystem_Drawing;
- public static readonly ToolboxItemAttribute Default = new ToolboxItemAttribute (defaultItemType);
- public static readonly ToolboxItemAttribute None = new ToolboxItemAttribute (false);
-
- private Type itemType;
- private string itemTypeName;
-
- public ToolboxItemAttribute (bool defaultType)
- {
- if (defaultType)
- itemTypeName = defaultItemType;
- }
-
- public ToolboxItemAttribute (string toolboxItemName)
- {
- itemTypeName = toolboxItemName;
- }
-
- public ToolboxItemAttribute (Type toolboxItemType)
- {
- itemType = toolboxItemType;
- }
-
- public Type ToolboxItemType
- {
- get {
- if (itemType == null && itemTypeName != null)
- try {
- itemType = Type.GetType (itemTypeName, true);
- } catch (Exception ex) {
- throw new ArgumentException ("Failed to create ToolboxItem of type: "
- + itemTypeName, ex);
- }
- return itemType;
- }
- }
-
- public string ToolboxItemTypeName
- {
- get {
- if (itemTypeName == null) {
- if (itemType == null)
- return string.Empty;
- itemTypeName = itemType.AssemblyQualifiedName;
- }
-
- return itemTypeName;
- }
- }
-
- public override bool Equals (object o)
- {
- ToolboxItemAttribute item = o as ToolboxItemAttribute;
-
- if (item == null)
- return false;
-
- return (item.ToolboxItemTypeName == ToolboxItemTypeName);
- }
-
- public override int GetHashCode ()
- {
- if (itemTypeName != null) {
- return itemTypeName.GetHashCode ();
- }
-
- return base.GetHashCode ();
- }
-
- public override bool IsDefaultAttribute ()
- {
- return Equals (Default);
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.ToolboxItemFilterAttribute.cs
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.ComponentModel
-{
- [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = true)]
- [Serializable]
- public sealed class ToolboxItemFilterAttribute : Attribute
- {
- private string Filter;
- private ToolboxItemFilterType ItemFilterType;
-
- public ToolboxItemFilterAttribute (string filterString)
- {
- Filter = filterString;
- ItemFilterType = ToolboxItemFilterType.Allow;
- }
-
- public ToolboxItemFilterAttribute (string filterString, ToolboxItemFilterType filterType)
- {
- Filter = filterString;
- ItemFilterType = filterType;
- }
-
- public string FilterString {
- get { return Filter; }
- }
-
- public ToolboxItemFilterType FilterType {
- get { return ItemFilterType; }
- }
-
- public override object TypeId {
- get { return base.TypeId + Filter; }
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is ToolboxItemFilterAttribute))
- return false;
- if (obj == this)
- return true;
- return (((ToolboxItemFilterAttribute) obj).FilterString == Filter) &&
- (((ToolboxItemFilterAttribute) obj).FilterType == ItemFilterType);
- }
-
- public override int GetHashCode()
- {
- return ToString ().GetHashCode ();
- }
-
- public override bool Match (object obj)
- {
- if (!(obj is ToolboxItemFilterAttribute))
- return false;
- return ((ToolboxItemFilterAttribute) obj).FilterString == Filter;
- }
-
- public override string ToString ()
- {
- return String.Format ("{0},{1}", Filter, ItemFilterType);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.ToolboxItemFilterType
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-//
-// 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.ComponentModel
-{
- public enum ToolboxItemFilterType
- {
- Allow,
- Custom,
- Prevent,
- Require,
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.TypeConverter.cs
-//
-// Authors:
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2002/2003 Ximian, Inc (http://www.ximian.com)
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-using System.Collections;
-using System.ComponentModel.Design.Serialization;
-using System.Globalization;
-using System.Runtime.InteropServices;
-
-namespace System.ComponentModel
-{
- [ComVisible (true)]
- public class TypeConverter
- {
- public bool CanConvertFrom (Type sourceType)
- {
- return CanConvertFrom (null, sourceType);
- }
-
- public virtual bool CanConvertFrom (ITypeDescriptorContext context, Type sourceType)
- {
- return sourceType == typeof (InstanceDescriptor);
- }
-
- public bool CanConvertTo (Type destinationType)
- {
- return CanConvertTo (null, destinationType);
- }
-
- public virtual bool CanConvertTo (ITypeDescriptorContext context, Type destinationType)
- {
- return (destinationType == typeof (string));
- }
-
- public object ConvertFrom (object o)
- {
- return ConvertFrom (null, CultureInfo.CurrentCulture, o);
- }
-
- public virtual object ConvertFrom (ITypeDescriptorContext context, CultureInfo culture, object value)
- {
- if (value is InstanceDescriptor) {
- return ((InstanceDescriptor) value).Invoke ();
- }
-
- return GetConvertFromException (value);
- }
-
- public object ConvertFromInvariantString (string text)
- {
- return ConvertFromInvariantString (null, text);
- }
-
- public object ConvertFromInvariantString (ITypeDescriptorContext context, string text)
- {
- return ConvertFromString (context, CultureInfo.InvariantCulture, text);
- }
-
- public object ConvertFromString (string text)
- {
- return ConvertFrom (text);
- }
-
- public object ConvertFromString (ITypeDescriptorContext context, string text)
- {
- return ConvertFromString (context, CultureInfo.CurrentCulture, text);
- }
-
- public object ConvertFromString (ITypeDescriptorContext context, CultureInfo culture, string text)
- {
- return ConvertFrom (context, culture, text);
- }
-
- public object ConvertTo (object value, Type destinationType)
- {
- return ConvertTo (null, null, value, destinationType);
- }
-
- public virtual object ConvertTo (ITypeDescriptorContext context, CultureInfo culture, object value,
- Type destinationType)
- {
- // context?
- if (destinationType == null)
- throw new ArgumentNullException ("destinationType");
-
- if (destinationType == typeof (string)) {
- if (value == null)
- return String.Empty;
-
- if (culture != null)
- return Convert.ToString (value, culture);
-
- return value.ToString();
- }
-
- return GetConvertToException (value, destinationType);
- }
-
- public string ConvertToInvariantString (object value)
- {
- return ConvertToInvariantString (null, value);
- }
-
- public string ConvertToInvariantString (ITypeDescriptorContext context, object value)
- {
- return (string) ConvertTo (context, CultureInfo.InvariantCulture, value, typeof (string));
- }
-
- public string ConvertToString (object value)
- {
- return (string) ConvertTo (null, CultureInfo.CurrentCulture, value, typeof (string));
- }
-
- public string ConvertToString (ITypeDescriptorContext context, object value)
- {
- return (string) ConvertTo (context, CultureInfo.CurrentCulture, value, typeof (string));
- }
-
- public string ConvertToString (ITypeDescriptorContext context, CultureInfo culture, object value)
- {
- return (string) ConvertTo (context, culture, value, typeof (string));
- }
-
- protected Exception GetConvertFromException (object value)
- {
- string destinationType;
- if (value == null)
- destinationType = "(null)";
- else
- destinationType = value.GetType ().FullName;
-
- throw new NotSupportedException (string.Format (CultureInfo.InvariantCulture,
- "{0} cannot convert from {1}.", this.GetType ().Name,
- destinationType));
- }
-
- protected Exception GetConvertToException (object value, Type destinationType)
- {
- string sourceType;
- if (value == null)
- sourceType = "(null)";
- else
- sourceType = value.GetType ().FullName;
-
- throw new NotSupportedException (string.Format (CultureInfo.InvariantCulture,
- "'{0}' is unable to convert '{1}' to '{2}'.", this.GetType ().Name,
- sourceType, destinationType.FullName));
- }
-
- public object CreateInstance (IDictionary propertyValues)
- {
- return CreateInstance (null, propertyValues);
- }
-
- public virtual object CreateInstance (ITypeDescriptorContext context, IDictionary propertyValues)
- {
- return null;
- }
-
- public bool GetCreateInstanceSupported ()
- {
- return GetCreateInstanceSupported (null);
- }
-
- public virtual bool GetCreateInstanceSupported (ITypeDescriptorContext context)
- {
- return false;
- }
-
- public PropertyDescriptorCollection GetProperties (object value)
- {
- return GetProperties (null, value);
- }
-
- public PropertyDescriptorCollection GetProperties (ITypeDescriptorContext context, object value)
- {
- return GetProperties (context, value, new Attribute[1] { BrowsableAttribute.Yes });
- }
-
- public virtual PropertyDescriptorCollection GetProperties (ITypeDescriptorContext context,
- object value, Attribute[] attributes)
- {
- return null;
- }
-
- public bool GetPropertiesSupported ()
- {
- return GetPropertiesSupported (null);
- }
-
- public virtual bool GetPropertiesSupported (ITypeDescriptorContext context)
- {
- return false;
- }
-
- public ICollection GetStandardValues ()
- {
- return GetStandardValues (null);
- }
-
- public virtual StandardValuesCollection GetStandardValues (ITypeDescriptorContext context)
- {
- return null;
- }
-
- public bool GetStandardValuesExclusive ()
- {
- return GetStandardValuesExclusive (null);
- }
-
- public virtual bool GetStandardValuesExclusive (ITypeDescriptorContext context)
- {
- return false;
- }
-
- public bool GetStandardValuesSupported ()
- {
- return GetStandardValuesSupported (null);
- }
-
- public virtual bool GetStandardValuesSupported (ITypeDescriptorContext context)
- {
- return false;
- }
-
- public bool IsValid (object value)
- {
- return IsValid (null, value);
- }
-
- public virtual bool IsValid (ITypeDescriptorContext context, object value)
- {
- if (value == null)
- return false;
-
- if (!this.CanConvertFrom(context, value.GetType()))
- return false;
-
- try {
- this.ConvertFrom(context, CultureInfo.InvariantCulture, value);
- return true;
- } catch {
- return false;
- }
- }
-
- protected PropertyDescriptorCollection SortProperties (PropertyDescriptorCollection props, string[] names)
- {
- props.Sort (names);
- return props;
- }
-
- public class StandardValuesCollection : ICollection, IEnumerable
- {
- private ICollection values;
-
- public StandardValuesCollection (ICollection values)
- {
- this.values = values;
- }
-
- void ICollection.CopyTo (Array array, int index) {
- CopyTo (array, index);
- }
-
- public void CopyTo (Array array, int index)
- {
- values.CopyTo (array, index);
- }
-
- IEnumerator IEnumerable.GetEnumerator () {
- return GetEnumerator ();
- }
-
- public IEnumerator GetEnumerator ()
- {
- return values.GetEnumerator ();
- }
-
- bool ICollection.IsSynchronized {
- get { return false; }
- }
-
- object ICollection.SyncRoot {
- get { return null; }
- }
-
- int ICollection.Count {
- get { return this.Count; }
- }
-
- public int Count {
- get { return values.Count; }
- }
-
- public object this [int index] {
- get { return ((IList) values) [index]; }
- }
- }
-
- protected abstract class SimplePropertyDescriptor : PropertyDescriptor
- {
- private Type componentType;
- private Type propertyType;
-
-#if NET_4_0
- protected
-#else
- public
-#endif
- SimplePropertyDescriptor (Type componentType,
- string name,
- Type propertyType) :
- this (componentType, name, propertyType, null)
- {
- }
-
-#if NET_4_0
- protected
-#else
- public
-#endif
- SimplePropertyDescriptor (Type componentType,
- string name,
- Type propertyType,
- Attribute [] attributes) : base (name, attributes)
- {
- this.componentType = componentType;
- this.propertyType = propertyType;
- }
-
- public override Type ComponentType {
- get { return componentType; }
- }
-
- public override Type PropertyType {
- get { return propertyType; }
- }
-
- public override bool IsReadOnly {
- get { return Attributes.Contains (ReadOnlyAttribute.Yes); }
- }
-
- public override bool ShouldSerializeValue (object component)
- {
- return false;
- }
-
- public override bool CanResetValue (object component)
- {
- DefaultValueAttribute Attrib = ((DefaultValueAttribute) Attributes[typeof (DefaultValueAttribute)]);
- if (Attrib == null) {
- return false;
- }
- return (Attrib.Value == GetValue (component));
- }
-
- public override void ResetValue (object component)
- {
- DefaultValueAttribute Attrib = ((DefaultValueAttribute) Attributes[typeof (DefaultValueAttribute)]);
- if (Attrib != null) {
- SetValue (component, Attrib.Value);
- }
-
- }
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.TypeConverterAttribute
-//
-// Authors:
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2002 Ximian, Inc (http://www.ximian.com)
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Runtime.InteropServices;
-
-namespace System.ComponentModel {
-#if NET_2_1
- [ComVisible (true)]
-#endif
- [AttributeUsage(AttributeTargets.All)]
- public sealed class TypeConverterAttribute : Attribute
- {
- public static readonly TypeConverterAttribute Default = new TypeConverterAttribute ();
-
- private string converter_type;
-
- public TypeConverterAttribute ()
- {
- converter_type = "";
- }
-
- public TypeConverterAttribute (string typeName)
- {
- converter_type = typeName;
- }
-
- public TypeConverterAttribute (Type type)
- {
- converter_type = type.AssemblyQualifiedName;
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is TypeConverterAttribute))
- return false;
-
- return ((TypeConverterAttribute) obj).ConverterTypeName == converter_type;
- }
-
- public override int GetHashCode ()
- {
- return converter_type.GetHashCode ();
- }
-
- public string ConverterTypeName {
- get { return converter_type; }
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.TypeDescriptionProvider
-//
-// Authors:
-// Ivan N. Zlatev (contact i-nZ.net)
-//
-// (C) 2007 Ivan N. Zlatev
-
-//
-// 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;
-using System.Collections;
-
-namespace System.ComponentModel
-{
-
- public abstract class TypeDescriptionProvider
- {
-
- private sealed class EmptyCustomTypeDescriptor : CustomTypeDescriptor
- {
- }
-
- private EmptyCustomTypeDescriptor _emptyCustomTypeDescriptor;
- private TypeDescriptionProvider _parent;
-
- protected TypeDescriptionProvider ()
- {
- }
-
- protected TypeDescriptionProvider (TypeDescriptionProvider parent)
- {
- _parent = parent;
- }
-
- public virtual object CreateInstance (IServiceProvider provider, Type objectType, Type[] argTypes, object[] args)
- {
- if (_parent != null)
- return _parent.CreateInstance (provider, objectType, argTypes, args);
-
- return System.Activator.CreateInstance (objectType, args);
- }
-
-
- public virtual IDictionary GetCache (object instance)
- {
- if (_parent != null)
- return _parent.GetCache (instance);
-
- return null;
- }
-
-
- public virtual ICustomTypeDescriptor GetExtendedTypeDescriptor (object instance)
- {
- if (_parent != null)
- return _parent.GetExtendedTypeDescriptor (instance);
-
- if (_emptyCustomTypeDescriptor == null)
- _emptyCustomTypeDescriptor = new EmptyCustomTypeDescriptor ();
-
- return _emptyCustomTypeDescriptor;
- }
-
-
- public virtual string GetFullComponentName (object component)
- {
- if (_parent != null)
- return _parent.GetFullComponentName (component);
-
- return GetTypeDescriptor (component).GetComponentName ();
- }
-
-
- public Type GetReflectionType (object instance)
- {
- if (instance == null)
- throw new ArgumentNullException ("instance");
-
- return GetReflectionType (instance.GetType (), instance);
- }
-
-
- public Type GetReflectionType (Type objectType)
- {
- return GetReflectionType (objectType, null);
- }
-
-
- public virtual Type GetReflectionType (Type objectType, object instance)
- {
- if (_parent != null)
- return _parent.GetReflectionType (objectType, instance);
-
- return objectType;
- }
-
-
- public ICustomTypeDescriptor GetTypeDescriptor (object instance)
- {
- if (instance == null)
- throw new ArgumentNullException ("instance");
-
- return GetTypeDescriptor (instance.GetType (), instance);
- }
-
-
- public ICustomTypeDescriptor GetTypeDescriptor (Type objectType)
- {
- return GetTypeDescriptor (objectType, null);
- }
-
-
- public virtual ICustomTypeDescriptor GetTypeDescriptor (Type objectType, object instance)
- {
- if (_parent != null)
- return _parent.GetTypeDescriptor (objectType, instance);
-
- if (_emptyCustomTypeDescriptor == null)
- _emptyCustomTypeDescriptor = new EmptyCustomTypeDescriptor ();
-
- return _emptyCustomTypeDescriptor;
- }
-
-#if NET_4_0
- public virtual bool IsSupportedType (Type type)
- {
- if (type == null)
- throw new ArgumentNullException ("type");
-
- if (_parent != null)
- return _parent.IsSupportedType (type);
-
- return true;
- }
-
- public virtual Type GetRuntimeType (Type reflectionType)
- {
- if (reflectionType == null)
- throw new ArgumentNullException ("reflectionType");
-
- if (_parent != null)
- return _parent.GetRuntimeType (reflectionType);
-
- return reflectionType;
- }
-
- protected internal virtual IExtenderProvider[] GetExtenderProviders (object instance)
- {
- if (instance == null)
- throw new ArgumentNullException ("instance");
-
- if (_parent != null)
- return _parent.GetExtenderProviders (instance);
-
- return new IExtenderProvider [] { };
- }
-#endif
-
- }
-
-}
-
+++ /dev/null
-//
-// System.ComponentModel.TypeDescriptionProviderAttribute
-//
-// Authors:
-// Ivan N. Zlatev (contact i-nZ.net)
-//
-// (C) 2007 Ivan N. Zlatev
-
-//
-// 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.ComponentModel
-{
- [AttributeUsage(AttributeTargets.Class, Inherited=true)]
- public sealed class TypeDescriptionProviderAttribute : Attribute
- {
- private string typeName;
-
- public string TypeName {
- get { return this.typeName; }
- }
-
- public TypeDescriptionProviderAttribute (string typeName)
- {
- if (typeName == null)
- throw new System.ArgumentNullException ("typeName");
-
- this.typeName = typeName;
- }
-
- public TypeDescriptionProviderAttribute (Type type)
- {
- if (type == null)
- throw new System.ArgumentNullException ("type");
-
- this.typeName = type.AssemblyQualifiedName;
- }
-
- }
-
-}
+++ /dev/null
-//
-// System.ComponentModel.TypeDescriptor.cs
-//
-// Authors:
-// Gonzalo Paniagua Javier (gonzalo@ximian.com)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-// Ivan N. Zlatev (contact@i-nz.net)
-//
-//
-// (C) 2002 Ximian, Inc (http://www.ximian.com)
-// (C) 2003 Andreas Nahr
-// (C) 2008 Novell, Inc (http://www.novell.com)
-//
-
-//
-// 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;
-using System.Reflection;
-using System.Globalization;
-using System.ComponentModel.Design;
-using System.Security.Permissions;
-
-using System.Collections.Generic;
-
-namespace System.ComponentModel
-{
-
-public sealed class TypeDescriptor
-{
- private static readonly object creatingDefaultConverters = new object ();
- private static ArrayList defaultConverters;
- private static IComNativeDescriptorHandler descriptorHandler;
- private static Hashtable componentTable = new Hashtable ();
- private static Hashtable typeTable = new Hashtable ();
- private static Hashtable editors;
-
- static object typeDescriptionProvidersLock = new object ();
- static Dictionary <Type, LinkedList <TypeDescriptionProvider>> typeDescriptionProviders;
-
- static object componentDescriptionProvidersLock = new object ();
- static Dictionary <WeakObjectWrapper, LinkedList <TypeDescriptionProvider>> componentDescriptionProviders;
-
- static TypeDescriptor ()
- {
- typeDescriptionProviders = new Dictionary <Type, LinkedList <TypeDescriptionProvider>> ();
- componentDescriptionProviders = new Dictionary <WeakObjectWrapper, LinkedList <TypeDescriptionProvider>> (new WeakObjectWrapperComparer ());
- }
-
- private TypeDescriptor ()
- {
- }
-
- [MonoNotSupported ("Mono does not support COM")]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static Type ComObjectType {
- get { throw new NotImplementedException (); }
- }
-
-#if NET_4_0
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static Type InterfaceType {
- get {
- return typeof (TypeDescriptorInterface);
- }
- }
-#endif
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static TypeDescriptionProvider AddAttributes (object instance, params Attribute [] attributes)
- {
- if (instance == null)
- throw new ArgumentNullException ("instance");
- if (attributes == null)
- throw new ArgumentNullException ("attributes");
-
- var ret = new AttributeProvider (attributes, GetProvider (instance));
- AddProvider (ret, instance);
-
- return ret;
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static TypeDescriptionProvider AddAttributes (Type type, params Attribute [] attributes)
- {
- if (type == null)
- throw new ArgumentNullException ("type");
- if (attributes == null)
- throw new ArgumentNullException ("attributes");
-
- var ret = new AttributeProvider (attributes, GetProvider (type));
- AddProvider (ret, type);
-
- return ret;
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static void AddProvider (TypeDescriptionProvider provider, object instance)
- {
- if (provider == null)
- throw new ArgumentNullException ("provider");
- if (instance == null)
- throw new ArgumentNullException ("instance");
-
- lock (componentDescriptionProvidersLock) {
- LinkedList <TypeDescriptionProvider> plist;
- WeakObjectWrapper instanceWrapper = new WeakObjectWrapper (instance);
-
- if (!componentDescriptionProviders.TryGetValue (instanceWrapper, out plist)) {
- plist = new LinkedList <TypeDescriptionProvider> ();
- componentDescriptionProviders.Add (new WeakObjectWrapper (instance), plist);
- }
-
- plist.AddLast (provider);
- instanceWrapper = null;
- Refresh (instance);
- }
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static void AddProvider (TypeDescriptionProvider provider, Type type)
- {
- if (provider == null)
- throw new ArgumentNullException ("provider");
- if (type == null)
- throw new ArgumentNullException ("type");
-
- lock (typeDescriptionProvidersLock) {
- LinkedList <TypeDescriptionProvider> plist;
-
- if (!typeDescriptionProviders.TryGetValue (type, out plist)) {
- plist = new LinkedList <TypeDescriptionProvider> ();
- typeDescriptionProviders.Add (type, plist);
- }
-
- plist.AddLast (provider);
- Refresh (type);
- }
- }
-
-#if NET_4_0
- [MonoLimitation ("Security not applied.")]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static void AddProviderTransparent (TypeDescriptionProvider provider, object instance)
- {
- AddProvider (provider, instance);
- }
-
- [MonoLimitation ("Security not applied.")]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static void AddProviderTransparent (TypeDescriptionProvider provider, Type type)
- {
- AddProvider (provider, type);
- }
-#endif
-
- [MonoTODO]
- public static object CreateInstance (IServiceProvider provider, Type objectType, Type [] argTypes, object [] args)
- {
- if (objectType == null)
- throw new ArgumentNullException ("objectType");
-
- object instance = null;
-
- if (provider != null) {
- TypeDescriptionProvider typeDescrProvider = provider.GetService (typeof (TypeDescriptionProvider)) as TypeDescriptionProvider;
- if (typeDescrProvider != null)
- instance = typeDescrProvider.CreateInstance (provider, objectType, argTypes, args);
- }
-
- // TODO: also search and use the internal providers table once Add/RemoveProvider have been implemented
-
- if (instance == null)
- instance = Activator.CreateInstance (objectType, args);
-
- return instance;
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
-#if !NET_2_1
- public
-#else
- internal
-#endif
- static void AddEditorTable (Type editorBaseType, Hashtable table)
- {
- if (editorBaseType == null)
- throw new ArgumentNullException ("editorBaseType");
-
- if (editors == null)
- editors = new Hashtable ();
-
- if (!editors.ContainsKey (editorBaseType))
- editors [editorBaseType] = table;
- }
-
- public static IDesigner CreateDesigner(IComponent component, Type designerBaseType)
- {
- string tn = designerBaseType.AssemblyQualifiedName;
- AttributeCollection col = GetAttributes (component);
-
- foreach (Attribute at in col) {
- DesignerAttribute dat = at as DesignerAttribute;
- if (dat != null && tn == dat.DesignerBaseTypeName) {
- Type designerType = GetTypeFromName (component, dat.DesignerTypeName);
- if (designerType != null)
- return (IDesigner) Activator.CreateInstance (designerType);
- }
- }
-
- return null;
- }
-
- [ReflectionPermission (SecurityAction.LinkDemand, TypeInformation = true, MemberAccess = true)]
- public static EventDescriptor CreateEvent (Type componentType,
- string name,
- Type type,
- params Attribute [] attributes)
- {
- return new ReflectionEventDescriptor (componentType, name, type, attributes);
- }
-
- [ReflectionPermission (SecurityAction.LinkDemand, TypeInformation = true, MemberAccess = true)]
- public static EventDescriptor CreateEvent (Type componentType,
- EventDescriptor oldEventDescriptor,
- params Attribute [] attributes)
- {
- return new ReflectionEventDescriptor (componentType, oldEventDescriptor, attributes);
- }
-
- [ReflectionPermission (SecurityAction.LinkDemand, TypeInformation = true, MemberAccess = true)]
- public static PropertyDescriptor CreateProperty (Type componentType,
- string name,
- Type type,
- params Attribute [] attributes)
- {
- return new ReflectionPropertyDescriptor (componentType, name, type, attributes);
- }
-
- [ReflectionPermission (SecurityAction.LinkDemand, TypeInformation = true, MemberAccess = true)]
- public static PropertyDescriptor CreateProperty (Type componentType,
- PropertyDescriptor oldPropertyDescriptor,
- params Attribute [] attributes)
- {
- return new ReflectionPropertyDescriptor (componentType, oldPropertyDescriptor, attributes);
- }
-
- public static AttributeCollection GetAttributes (Type componentType)
- {
- if (componentType == null)
- return AttributeCollection.Empty;
-
- return GetTypeInfo (componentType).GetAttributes ();
- }
-
- public static AttributeCollection GetAttributes (object component)
- {
- return GetAttributes (component, false);
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static AttributeCollection GetAttributes (object component, bool noCustomTypeDesc)
- {
- if (component == null)
- return AttributeCollection.Empty;
-
- if (noCustomTypeDesc == false && component is ICustomTypeDescriptor) {
- return ((ICustomTypeDescriptor) component).GetAttributes ();
- } else {
- IComponent com = component as IComponent;
- if (com != null && com.Site != null)
- return GetComponentInfo (com).GetAttributes ();
- else
- return GetTypeInfo (component.GetType()).GetAttributes ();
- }
- }
-
- public static string GetClassName (object component)
- {
- return GetClassName (component, false);
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static string GetClassName (object component, bool noCustomTypeDesc)
- {
- if (component == null)
- throw new ArgumentNullException ("component", "component cannot be null");
-
- if (noCustomTypeDesc == false && component is ICustomTypeDescriptor) {
- String res = ((ICustomTypeDescriptor) component).GetClassName ();
- if (res == null)
- res = ((ICustomTypeDescriptor) component).GetComponentName ();
- if (res == null)
- res = component.GetType ().FullName;
- return res;
- } else {
- return component.GetType ().FullName;
- }
- }
-
- public static string GetComponentName (object component)
- {
- return GetComponentName (component, false);
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static string GetComponentName (object component, bool noCustomTypeDesc)
- {
- if (component == null)
- throw new ArgumentNullException ("component", "component cannot be null");
-
- if (noCustomTypeDesc == false && component is ICustomTypeDescriptor) {
- return ((ICustomTypeDescriptor) component).GetComponentName ();
- } else {
- IComponent c = component as IComponent;
- if (c != null && c.Site != null)
- return c.Site.Name;
- return null;
- }
- }
-
- [MonoNotSupported("")]
- public static string GetFullComponentName (object component)
- {
- throw new NotImplementedException ();
- }
-
- [MonoNotSupported("")]
- public static string GetClassName (Type componentType)
- {
- throw new NotImplementedException ();
- }
-
- public static TypeConverter GetConverter (object component)
- {
- return GetConverter (component, false);
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static TypeConverter GetConverter (object component, bool noCustomTypeDesc)
- {
- if (component == null)
- throw new ArgumentNullException ("component", "component cannot be null");
-
- if (noCustomTypeDesc == false && component is ICustomTypeDescriptor) {
- return ((ICustomTypeDescriptor) component).GetConverter ();
- }
- else {
- Type converterType = null;
- AttributeCollection atts = GetAttributes (component, false);
- TypeConverterAttribute tca = (TypeConverterAttribute) atts[typeof(TypeConverterAttribute)];
- if (tca != null && tca.ConverterTypeName.Length > 0)
- converterType = GetTypeFromName (component as IComponent, tca.ConverterTypeName);
- if (converterType == null)
- converterType = FindDefaultConverterType (component.GetType ());
-
- if (converterType != null) {
- ConstructorInfo ci = converterType.GetConstructor (new Type[] { typeof(Type) });
- if (ci != null)
- return (TypeConverter) ci.Invoke (new object[] { component.GetType () });
- else
- return (TypeConverter) Activator.CreateInstance (converterType);
- } else
- return null;
- }
- }
-
- private static ArrayList DefaultConverters
- {
- get {
- lock (creatingDefaultConverters) {
- if (defaultConverters != null)
- return defaultConverters;
-
- defaultConverters = new ArrayList ();
- defaultConverters.Add (new DictionaryEntry (typeof (bool), typeof (BooleanConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (byte), typeof (ByteConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (sbyte), typeof (SByteConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (string), typeof (StringConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (char), typeof (CharConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (short), typeof (Int16Converter)));
- defaultConverters.Add (new DictionaryEntry (typeof (int), typeof (Int32Converter)));
- defaultConverters.Add (new DictionaryEntry (typeof (long), typeof (Int64Converter)));
- defaultConverters.Add (new DictionaryEntry (typeof (ushort), typeof (UInt16Converter)));
- defaultConverters.Add (new DictionaryEntry (typeof (uint), typeof (UInt32Converter)));
- defaultConverters.Add (new DictionaryEntry (typeof (ulong), typeof (UInt64Converter)));
- defaultConverters.Add (new DictionaryEntry (typeof (float), typeof (SingleConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (double), typeof (DoubleConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (decimal), typeof (DecimalConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (void), typeof (TypeConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (Array), typeof (ArrayConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (CultureInfo), typeof (CultureInfoConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (DateTime), typeof (DateTimeConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (DateTimeOffset), typeof (DateTimeOffsetConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (Guid), typeof (GuidConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (TimeSpan), typeof (TimeSpanConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (ICollection), typeof (CollectionConverter)));
- defaultConverters.Add (new DictionaryEntry (typeof (Enum), typeof (EnumConverter)));
- }
- return defaultConverters;
- }
- }
-
- public static TypeConverter GetConverter (Type type)
- {
- if (type == null)
- throw new ArgumentNullException ("type");
-
- Type converterType = null;
- AttributeCollection atts = GetAttributes (type);
- TypeConverterAttribute tca = (TypeConverterAttribute) atts[typeof(TypeConverterAttribute)];
- if (tca != null && tca.ConverterTypeName.Length > 0)
- converterType = GetTypeFromName (null, tca.ConverterTypeName);
- if (converterType == null)
- converterType = FindDefaultConverterType (type);
-
- if (converterType != null) {
- ConstructorInfo ci = converterType.GetConstructor (new Type[] { typeof(Type) });
- if (ci != null)
- return (TypeConverter) ci.Invoke (new object[] { type });
- else
- return (TypeConverter) Activator.CreateInstance (converterType);
- }
- else
- return null;
- }
-
- private static Type FindDefaultConverterType (Type type)
- {
- Type converterType = null;
- if (type != null) {
- if (type.IsGenericType && type.GetGenericTypeDefinition() == typeof(Nullable<>))
- return typeof(NullableConverter);
- // Is there a default converter
- foreach (DictionaryEntry entry in DefaultConverters) {
- if ((Type)entry.Key == type)
- return (Type)entry.Value;
- }
- }
-
- // Find default converter with a baseType this baseType is assignable to
- Type baseType = type;
- while (baseType != null && baseType != typeof (object)) {
- foreach (DictionaryEntry entry in DefaultConverters) {
- Type defType = (Type)entry.Key;
- if (defType.IsAssignableFrom (baseType)) {
- converterType = (Type)entry.Value;
- break;
- }
- }
- baseType = baseType.BaseType;
- }
-
- if (converterType == null) {
- if (type != null && type.IsInterface)
- converterType = typeof (ReferenceConverter);
- else
- converterType = typeof (TypeConverter);
- }
-
- return converterType;
- }
-
- public static EventDescriptor GetDefaultEvent (Type componentType)
- {
- return GetTypeInfo (componentType).GetDefaultEvent ();
- }
-
- public static EventDescriptor GetDefaultEvent (object component)
- {
- return GetDefaultEvent (component, false);
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static EventDescriptor GetDefaultEvent (object component, bool noCustomTypeDesc)
- {
- if (!noCustomTypeDesc && (component is ICustomTypeDescriptor))
- return ((ICustomTypeDescriptor) component).GetDefaultEvent ();
- else {
- IComponent com = component as IComponent;
- if (com != null && com.Site != null)
- return GetComponentInfo (com).GetDefaultEvent ();
- else
- return GetTypeInfo (component.GetType()).GetDefaultEvent ();
- }
- }
-
- public static PropertyDescriptor GetDefaultProperty (Type componentType)
- {
- return GetTypeInfo (componentType).GetDefaultProperty ();
- }
-
- public static PropertyDescriptor GetDefaultProperty (object component)
- {
- return GetDefaultProperty (component, false);
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static PropertyDescriptor GetDefaultProperty (object component, bool noCustomTypeDesc)
- {
- if (!noCustomTypeDesc && (component is ICustomTypeDescriptor))
- return ((ICustomTypeDescriptor) component).GetDefaultProperty ();
- else {
- IComponent com = component as IComponent;
- if (com != null && com.Site != null)
- return GetComponentInfo (com).GetDefaultProperty ();
- else
- return GetTypeInfo (component.GetType()).GetDefaultProperty ();
- }
- }
-
- internal static object CreateEditor (Type t, Type componentType)
- {
- if (t == null)
- return null;
-
- try {
- return Activator.CreateInstance (t);
- } catch {}
-
- try {
- return Activator.CreateInstance (t, new object [] {componentType});
- } catch {}
-
- return null;
- }
-
- private static object FindEditorInTable (Type componentType, Type editorBaseType, Hashtable table)
- {
- object editorReference = null;
- object editor = null;
-
- if (componentType == null || editorBaseType == null || table == null)
- return null;
-
- Type ct = componentType;
- while (ct != null) {
- editorReference = table [ct];
- if (editorReference != null)
- break;
- ct = ct.BaseType;
- }
-
- if (editorReference == null) {
- foreach (Type iface in componentType.GetInterfaces ()) {
- editorReference = table [iface];
- if (editorReference != null)
- break;
- }
- }
-
- if (editorReference == null)
- return null;
-
- if (editorReference is string)
- editor = CreateEditor (Type.GetType ((string) editorReference), componentType);
- else if (editorReference is Type)
- editor = CreateEditor ((Type) editorReference, componentType);
- else if (editorReference.GetType ().IsSubclassOf (editorBaseType))
- editor = editorReference;
-
- if (editor != null)
- table [componentType] = editor;
-
- return editor;
- }
-
- public static object GetEditor (Type componentType, Type editorBaseType)
- {
- Type editorType = null;
- object editor = null;
- object [] atts = componentType.GetCustomAttributes (typeof(EditorAttribute), true);
-
- if (atts != null && atts.Length != 0) {
- foreach (EditorAttribute ea in atts) {
- editorType = GetTypeFromName (null, ea.EditorTypeName);
- if (editorType != null && editorType.IsSubclassOf(editorBaseType))
- break;
- }
- }
-
- if (editorType != null)
- editor = CreateEditor (editorType, componentType);
-
- if (editorType == null || editor == null) {
- // Make sure the editorBaseType's static constructor has been called,
- // since that's where we're putting the initialization of its editor table.
-
- System.Runtime.CompilerServices.RuntimeHelpers.RunClassConstructor (editorBaseType.TypeHandle);
- if (editors != null)
- editor = FindEditorInTable (componentType, editorBaseType, editors [editorBaseType] as Hashtable);
- }
-
- return editor;
- }
-
- public static object GetEditor (object component, Type editorBaseType)
- {
- return GetEditor (component, editorBaseType, false);
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static object GetEditor (object component, Type editorBaseType, bool noCustomTypeDesc)
- {
- if (component == null)
- throw new ArgumentNullException ("component");
- if (editorBaseType == null)
- throw new ArgumentNullException ("editorBaseType");
-
- if (!noCustomTypeDesc && (component is ICustomTypeDescriptor))
- return ((ICustomTypeDescriptor) component).GetEditor (editorBaseType);
-
- object [] atts = component.GetType ().GetCustomAttributes (typeof (EditorAttribute), true);
- if (atts.Length == 0)
- return null;
- string target = editorBaseType.AssemblyQualifiedName;
-
- foreach (EditorAttribute ea in atts){
- if (ea.EditorBaseTypeName == target){
- Type t = Type.GetType (ea.EditorTypeName, true);
-
- return Activator.CreateInstance (t);
- }
- }
- return null;
- }
-
- public static EventDescriptorCollection GetEvents (object component)
- {
- return GetEvents (component, false);
- }
-
- public static EventDescriptorCollection GetEvents (Type componentType)
- {
- return GetEvents (componentType, null);
- }
-
- public static EventDescriptorCollection GetEvents (object component, Attribute [] attributes)
- {
- return GetEvents (component, attributes, false);
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static EventDescriptorCollection GetEvents (object component, bool noCustomTypeDesc)
- {
- if (!noCustomTypeDesc && (component is ICustomTypeDescriptor))
- return ((ICustomTypeDescriptor) component).GetEvents ();
- else {
- IComponent com = component as IComponent;
- if (com != null && com.Site != null)
- return GetComponentInfo (com).GetEvents ();
- else
- return GetTypeInfo (component.GetType()).GetEvents ();
- }
- }
-
- public static EventDescriptorCollection GetEvents (Type componentType, Attribute [] attributes)
- {
- return GetTypeInfo (componentType).GetEvents (attributes);
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static EventDescriptorCollection GetEvents (object component, Attribute [] attributes, bool noCustomTypeDesc)
- {
- if (!noCustomTypeDesc && (component is ICustomTypeDescriptor))
- return ((ICustomTypeDescriptor) component).GetEvents (attributes);
- else {
- IComponent com = component as IComponent;
- if (com != null && com.Site != null)
- return GetComponentInfo (com).GetEvents (attributes);
- else
- return GetTypeInfo (component.GetType()).GetEvents (attributes);
- }
- }
-
- public static PropertyDescriptorCollection GetProperties (object component)
- {
- return GetProperties (component, false);
- }
-
- public static PropertyDescriptorCollection GetProperties (Type componentType)
- {
- return GetProperties (componentType, null);
- }
-
- public static PropertyDescriptorCollection GetProperties (object component, Attribute [] attributes)
- {
- return GetProperties (component, attributes, false);
- }
-
- public static PropertyDescriptorCollection GetProperties (object component, Attribute [] attributes, bool noCustomTypeDesc)
- {
- if (component == null)
- return PropertyDescriptorCollection.Empty;
-
- if (!noCustomTypeDesc && (component is ICustomTypeDescriptor))
- return ((ICustomTypeDescriptor) component).GetProperties (attributes);
- else {
- IComponent com = component as IComponent;
- if (com != null && com.Site != null)
- return GetComponentInfo (com).GetProperties (attributes);
- else
- return GetTypeInfo (component.GetType()).GetProperties (attributes);
- }
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static PropertyDescriptorCollection GetProperties (object component, bool noCustomTypeDesc)
- {
- if (component == null)
- return PropertyDescriptorCollection.Empty;
-
- if (!noCustomTypeDesc && (component is ICustomTypeDescriptor))
- return ((ICustomTypeDescriptor) component).GetProperties ();
- else {
- IComponent com = component as IComponent;
- if (com != null && com.Site != null)
- return GetComponentInfo (com).GetProperties ();
- else
- return GetTypeInfo (component.GetType()).GetProperties ();
- }
- }
-
- public static PropertyDescriptorCollection GetProperties (Type componentType, Attribute [] attributes)
- {
- return GetTypeInfo (componentType).GetProperties (attributes);
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static TypeDescriptionProvider GetProvider (object instance)
- {
- if (instance == null)
- throw new ArgumentNullException ("instance");
-
- TypeDescriptionProvider ret = null;
- lock (componentDescriptionProvidersLock) {
- LinkedList <TypeDescriptionProvider> plist;
- WeakObjectWrapper instanceWrapper = new WeakObjectWrapper (instance);
-
- if (componentDescriptionProviders.TryGetValue (instanceWrapper, out plist) && plist.Count > 0)
- ret = plist.Last.Value;
-
- instanceWrapper = null;
- }
-
- if (ret == null)
- ret = GetProvider (instance.GetType ());
-
- if (ret == null)
- return new DefaultTypeDescriptionProvider ();
- else
- return new WrappedTypeDescriptionProvider (ret);
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static TypeDescriptionProvider GetProvider (Type type)
- {
- if (type == null)
- throw new ArgumentNullException ("type");
-
- TypeDescriptionProvider ret = null;
- lock (typeDescriptionProvidersLock) {
- LinkedList <TypeDescriptionProvider> plist;
-
- while (!typeDescriptionProviders.TryGetValue (type, out plist)) {
- plist = null;
- type = type.BaseType;
- if (type == null)
- break;
- }
-
- if (plist != null && plist.Count > 0)
- ret = plist.Last.Value;
- }
-
- if (ret == null)
- return new DefaultTypeDescriptionProvider ();
- else
- return new WrappedTypeDescriptionProvider (ret);
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static Type GetReflectionType (object instance)
- {
- if (instance == null)
- throw new ArgumentNullException ("instance");
-
- return instance.GetType ();
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static Type GetReflectionType (Type type)
- {
- if (type == null)
- throw new ArgumentNullException ("type");
-
- return type;
- }
-
- [MonoNotSupported("Associations not supported")]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static void CreateAssociation (object primary, object secondary)
- {
- throw new NotImplementedException ();
- }
-
- [MonoNotSupported ("Associations not supported")]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static object GetAssociation (Type type, object primary)
- {
- throw new NotImplementedException ();
- }
-
- [MonoNotSupported ("Associations not supported")]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static void RemoveAssociation (object primary, object secondary)
- {
- throw new NotImplementedException ();
- }
-
- [MonoNotSupported ("Associations not supported")]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static void RemoveAssociations (object primary)
- {
- throw new NotImplementedException ();
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static void RemoveProvider (TypeDescriptionProvider provider, object instance)
- {
- if (provider == null)
- throw new ArgumentNullException ("provider");
- if (instance == null)
- throw new ArgumentNullException ("instance");
-
- //bool removed = false;
- lock (componentDescriptionProvidersLock) {
- LinkedList <TypeDescriptionProvider> plist;
- WeakObjectWrapper instanceWrapper = new WeakObjectWrapper (instance);
-
- if (componentDescriptionProviders.TryGetValue (instanceWrapper, out plist) && plist.Count > 0) {
- RemoveProvider (provider, plist);
- //removed = true;
- }
-
- instanceWrapper = null;
- }
-
- var refreshed = Refreshed;
- if (refreshed != null)
- refreshed (new RefreshEventArgs (instance));
- }
-
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static void RemoveProvider (TypeDescriptionProvider provider, Type type)
- {
- if (provider == null)
- throw new ArgumentNullException ("provider");
- if (type == null)
- throw new ArgumentNullException ("type");
-
- lock (typeDescriptionProvidersLock) {
- LinkedList <TypeDescriptionProvider> plist;
-
- if (typeDescriptionProviders.TryGetValue (type, out plist) && plist.Count > 0) {
- RemoveProvider (provider, plist);
- }
- }
-
- var refreshed = Refreshed;
- if (refreshed != null)
- refreshed (new RefreshEventArgs (type));
- }
-
-#if NET_4_0
- [MonoLimitation ("Security not applied.")]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static void RemoveProviderTransparent (TypeDescriptionProvider provider, object instance)
- {
- RemoveProvider (provider, instance);
- }
-
- [MonoLimitation ("Security not applied.")]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public static void RemoveProviderTransparent (TypeDescriptionProvider provider, Type type)
- {
- RemoveProvider (provider, type);
- }
-#endif
-
- static void RemoveProvider (TypeDescriptionProvider provider, LinkedList <TypeDescriptionProvider> plist)
- {
- LinkedListNode <TypeDescriptionProvider> node = plist.Last;
- LinkedListNode <TypeDescriptionProvider> first = plist.First;
- TypeDescriptionProvider p;
-
- do {
- p = node.Value;
- if (p == provider) {
- plist.Remove (node);
- break;
- }
- if (node == first)
- break;
-
- node = node.Previous;
-
- } while (true);
- }
-
- public static void SortDescriptorArray (IList infos)
- {
- string[] names = new string [infos.Count];
- object[] values = new object [infos.Count];
- for (int n=0; n<names.Length; n++) {
- names[n] = ((MemberDescriptor)infos[n]).Name;
- values[n] = infos[n];
- }
- Array.Sort (names, values);
- infos.Clear();
- foreach (object ob in values)
- infos.Add (ob);
- }
-
- // well, ComObjectType is not implemented, but we don't support COM anyways ...
- [Obsolete ("Use ComObjectType")]
- public static IComNativeDescriptorHandler ComNativeDescriptorHandler {
- [PermissionSet (SecurityAction.LinkDemand, Unrestricted = true)]
- get { return descriptorHandler; }
- [PermissionSet (SecurityAction.LinkDemand, Unrestricted = true)]
- set { descriptorHandler = value; }
- }
-
- public static void Refresh (Assembly assembly)
- {
- foreach (Type type in assembly.GetTypes())
- Refresh (type);
- }
-
- public static void Refresh (Module module)
- {
- foreach (Type type in module.GetTypes())
- Refresh (type);
- }
-
- public static void Refresh (object component)
- {
- lock (componentTable)
- {
- componentTable.Remove (component);
- }
- if (Refreshed != null) Refreshed (new RefreshEventArgs (component));
- }
-
- public static void Refresh (Type type)
- {
- lock (typeTable)
- {
- typeTable.Remove (type);
- }
- if (Refreshed != null) Refreshed (new RefreshEventArgs (type));
- }
-
- static EventHandler onDispose;
-
- static void OnComponentDisposed (object sender, EventArgs args)
- {
- lock (componentTable) {
- componentTable.Remove (sender);
- }
- }
-
- public static event RefreshEventHandler Refreshed;
-
- internal static ComponentInfo GetComponentInfo (IComponent com)
- {
- lock (componentTable)
- {
- ComponentInfo ci = (ComponentInfo) componentTable [com];
- if (ci == null) {
- if (onDispose == null)
- onDispose = new EventHandler (OnComponentDisposed);
-
- com.Disposed += onDispose;
- ci = new ComponentInfo (com);
- componentTable [com] = ci;
- }
- return ci;
- }
- }
-
- internal static TypeInfo GetTypeInfo (Type type)
- {
- lock (typeTable)
- {
- TypeInfo ci = (TypeInfo) typeTable [type];
- if (ci == null) {
- ci = new TypeInfo (type);
- typeTable [type] = ci;
- }
- return ci;
- }
- }
-
- private static Type GetTypeFromName (IComponent component, string typeName)
- {
- Type type = null;
- if (component != null && component.Site != null) {
- ITypeResolutionService resver = (ITypeResolutionService) component.Site.GetService (typeof(ITypeResolutionService));
- if (resver != null)
- type = resver.GetType (typeName);
- }
- if (type == null)
- type = Type.GetType (typeName);
- return type;
- }
-
- sealed class AttributeProvider : TypeDescriptionProvider
- {
- Attribute[] attributes;
-
- public AttributeProvider (Attribute[] attributes, TypeDescriptionProvider parent)
- : base (parent)
- {
- this.attributes = attributes;
- }
-
- public override ICustomTypeDescriptor GetTypeDescriptor (Type type, object instance)
- {
- return new AttributeTypeDescriptor (base.GetTypeDescriptor (type, instance), attributes);
- }
-
- sealed class AttributeTypeDescriptor : CustomTypeDescriptor
- {
- Attribute[] attributes;
-
- public AttributeTypeDescriptor (ICustomTypeDescriptor parent, Attribute[] attributes)
- : base (parent)
- {
- this.attributes = attributes;
- }
-
- public override AttributeCollection GetAttributes ()
- {
- AttributeCollection attrs = base.GetAttributes ();
-
- if (attrs != null && attrs.Count > 0)
- return AttributeCollection.FromExisting (attrs, attributes);
- else
- return new AttributeCollection (attributes);
- }
- }
- }
-
- sealed class WrappedTypeDescriptionProvider : TypeDescriptionProvider
- {
- public TypeDescriptionProvider Wrapped { get; private set; }
-
- public WrappedTypeDescriptionProvider (TypeDescriptionProvider wrapped)
- {
- Wrapped = wrapped;
- }
-
- public override object CreateInstance (IServiceProvider provider, Type objectType, Type[] argTypes, object[] args)
- {
- TypeDescriptionProvider wrapped = Wrapped;
-
- if (wrapped == null)
- return base.CreateInstance (provider, objectType, argTypes, args);
-
- return wrapped.CreateInstance (provider, objectType, argTypes, args);
- }
-
- public override IDictionary GetCache (object instance)
- {
- TypeDescriptionProvider wrapped = Wrapped;
-
- if (wrapped == null)
- return base.GetCache (instance);
-
- return wrapped.GetCache (instance);
- }
-
- public override ICustomTypeDescriptor GetExtendedTypeDescriptor (object instance)
- {
- return new DefaultTypeDescriptor (this, null, instance);
- }
-
- public override string GetFullComponentName (object component)
- {
- TypeDescriptionProvider wrapped = Wrapped;
-
- if (wrapped == null)
- return base.GetFullComponentName (component);
-
- return wrapped.GetFullComponentName (component);
- }
-
- public override Type GetReflectionType (Type type, object instance)
- {
- TypeDescriptionProvider wrapped = Wrapped;
-
- if (wrapped == null)
- return base.GetReflectionType (type, instance);
-
- return wrapped.GetReflectionType (type, instance);
- }
-
- public override ICustomTypeDescriptor GetTypeDescriptor (Type objectType, object instance)
- {
- TypeDescriptionProvider wrapped = Wrapped;
-
- if (wrapped == null)
- return new DefaultTypeDescriptor (this, objectType, instance);
-
- return wrapped.GetTypeDescriptor (objectType, instance);
- }
- }
-
- // TODO: this needs more work
- sealed class DefaultTypeDescriptor : CustomTypeDescriptor
- {
- TypeDescriptionProvider owner;
- Type objectType;
- object instance;
-
- public DefaultTypeDescriptor (TypeDescriptionProvider owner, Type objectType, object instance)
- {
- this.owner = owner;
- this.objectType = objectType;
- this.instance = instance;
- }
-
- public override AttributeCollection GetAttributes ()
- {
- var wrapped = owner as WrappedTypeDescriptionProvider;
-
- if (wrapped != null)
- return wrapped.Wrapped.GetTypeDescriptor (objectType, instance).GetAttributes ();
-
- if (instance != null)
- return TypeDescriptor.GetAttributes (instance, false);
-
- if (objectType != null)
- return TypeDescriptor.GetTypeInfo (objectType).GetAttributes ();
-
- return base.GetAttributes ();
- }
-
- public override string GetClassName ()
- {
- var wrapped = owner as WrappedTypeDescriptionProvider;
-
- if (wrapped != null)
- return wrapped.Wrapped.GetTypeDescriptor (objectType, instance).GetClassName ();
-
- return base.GetClassName ();
- }
-
- public override PropertyDescriptor GetDefaultProperty ()
- {
- var wrapped = owner as WrappedTypeDescriptionProvider;
-
- if (wrapped != null)
- return wrapped.Wrapped.GetTypeDescriptor (objectType, instance).GetDefaultProperty ();
-
- PropertyDescriptor ret;
- if (objectType != null)
- ret = TypeDescriptor.GetTypeInfo (objectType).GetDefaultProperty ();
- else if (instance != null)
- ret = TypeDescriptor.GetTypeInfo (instance.GetType ()).GetDefaultProperty ();
- else
- ret = base.GetDefaultProperty ();
-
- return ret;
- }
-
- public override PropertyDescriptorCollection GetProperties ()
- {
- var wrapped = owner as WrappedTypeDescriptionProvider;
-
- if (wrapped != null)
- return wrapped.Wrapped.GetTypeDescriptor (objectType, instance).GetProperties ();
-
- if (instance != null)
- return TypeDescriptor.GetProperties (instance, null, false);
-
- if (objectType != null)
- return TypeDescriptor.GetTypeInfo (objectType).GetProperties (null);
-
- return base.GetProperties ();
- }
- }
-
- sealed class DefaultTypeDescriptionProvider : TypeDescriptionProvider
- {
- public DefaultTypeDescriptionProvider ()
- {
- }
-
- public override ICustomTypeDescriptor GetExtendedTypeDescriptor (object instance)
- {
- return new DefaultTypeDescriptor (this, null, instance);
- }
-
- public override ICustomTypeDescriptor GetTypeDescriptor (Type objectType, object instance)
- {
- return new DefaultTypeDescriptor (this, objectType, instance);
- }
- }
-}
-
- internal abstract class Info
- {
- Type _infoType;
- EventDescriptor _defaultEvent;
- bool _gotDefaultEvent;
- PropertyDescriptor _defaultProperty;
- bool _gotDefaultProperty;
- AttributeCollection _attributes;
-
- public Info (Type infoType)
- {
- _infoType = infoType;
- }
-
- public abstract AttributeCollection GetAttributes ();
- public abstract EventDescriptorCollection GetEvents ();
- public abstract PropertyDescriptorCollection GetProperties ();
-
- public Type InfoType
- {
- get { return _infoType; }
- }
-
- public EventDescriptorCollection GetEvents (Attribute[] attributes)
- {
- EventDescriptorCollection evs = GetEvents ();
- if (attributes == null)
- return evs;
- else
- return evs.Filter (attributes);
- }
-
- public PropertyDescriptorCollection GetProperties (Attribute[] attributes)
- {
- PropertyDescriptorCollection props = GetProperties ();
- if (attributes == null)
- return props;
- else
- return props.Filter (attributes);
- }
-
- public EventDescriptor GetDefaultEvent ()
- {
- if (_gotDefaultEvent)
- return _defaultEvent;
-
- DefaultEventAttribute attr = (DefaultEventAttribute) GetAttributes()[typeof(DefaultEventAttribute)];
- if (attr == null || attr.Name == null)
- _defaultEvent = null;
- else {
- EventDescriptorCollection events = GetEvents ();
- _defaultEvent = events [attr.Name];
- }
- _gotDefaultEvent = true;
- return _defaultEvent;
- }
-
- public PropertyDescriptor GetDefaultProperty ()
- {
- if (_gotDefaultProperty)
- return _defaultProperty;
-
- DefaultPropertyAttribute attr = (DefaultPropertyAttribute) GetAttributes()[typeof(DefaultPropertyAttribute)];
- if (attr == null || attr.Name == null)
- _defaultProperty = null;
- else {
- PropertyDescriptorCollection properties = GetProperties ();
- _defaultProperty = properties[attr.Name];
- }
- _gotDefaultProperty = true;
- return _defaultProperty;
- }
-
- protected AttributeCollection GetAttributes (IComponent comp)
- {
- if (_attributes != null)
- return _attributes;
-
- bool cache = true;
- ArrayList attributesList = new ArrayList ();
-
- // 1) Attributes of the type
- foreach (Attribute attribute in _infoType.GetCustomAttributes (false))
- attributesList.Add (attribute);
-
- // 2) Attributes of the base types
- Type baseType = _infoType.BaseType;
- while (baseType != null && baseType != typeof (object)) {
- foreach (Attribute attribute in baseType.GetCustomAttributes (false))
- attributesList.Add (attribute);
- baseType = baseType.BaseType;
- }
-
- // 3) Attributes of the type's implemented interfaces and their interfaces as well
- foreach (Type inface in _infoType.GetInterfaces ())
- foreach (Attribute attribute in TypeDescriptor.GetAttributes (inface))
- attributesList.Add (attribute);
-
- // Filter out duplicate attributes, so that the base types have higher precedence
- // than the interfaces and the type higher than both.
- Hashtable attributesTable = new Hashtable ();
- for (int i = attributesList.Count - 1; i >= 0; i--) {
- Attribute attribute = (Attribute)attributesList[i];
- attributesTable[attribute.TypeId] = attribute;
- }
-
- if (comp != null && comp.Site != null)
- {
- ITypeDescriptorFilterService filter = (ITypeDescriptorFilterService) comp.Site.GetService (typeof(ITypeDescriptorFilterService));
- if (filter != null)
- cache = filter.FilterAttributes (comp, attributesTable);
- }
-
- Attribute[] attributes = new Attribute[attributesTable.Values.Count];
- attributesTable.Values.CopyTo (attributes, 0);
- AttributeCollection attCol = new AttributeCollection (attributes);
- if (cache)
- _attributes = attCol;
- return attCol;
- }
- }
-
- internal class ComponentInfo : Info
- {
- IComponent _component;
- EventDescriptorCollection _events;
- PropertyDescriptorCollection _properties;
-
- public ComponentInfo (IComponent component): base (component.GetType())
- {
- _component = component;
- }
-
- public override AttributeCollection GetAttributes ()
- {
- return base.GetAttributes (_component);
- }
-
- public override EventDescriptorCollection GetEvents ()
- {
- if (_events != null)
- return _events;
-
- bool cache = true;
- EventInfo[] events = _component.GetType().GetEvents ();
- Hashtable t = new Hashtable ();
- foreach (EventInfo ev in events)
- t [ev.Name] = new ReflectionEventDescriptor (ev);
-
- if (_component.Site != null)
- {
- ITypeDescriptorFilterService filter = (ITypeDescriptorFilterService) _component.Site.GetService (typeof(ITypeDescriptorFilterService));
- if (filter != null)
- cache = filter.FilterEvents (_component, t);
- }
-
- ArrayList atts = new ArrayList ();
- atts.AddRange (t.Values);
- EventDescriptorCollection attCol = new EventDescriptorCollection (atts);
- if (cache) _events = attCol;
- return attCol;
- }
-
- public override PropertyDescriptorCollection GetProperties ()
- {
- if (_properties != null)
- return _properties;
-
- bool cache = true;
- PropertyInfo[] props = _component.GetType().GetProperties (BindingFlags.Instance | BindingFlags.Public);
- Hashtable t = new Hashtable ();
- for (int i = props.Length-1; i >= 0; i--)
- t [props[i].Name] = new ReflectionPropertyDescriptor (props[i]);
-
- if (_component.Site != null)
- {
- ITypeDescriptorFilterService filter = (ITypeDescriptorFilterService) _component.Site.GetService (typeof(ITypeDescriptorFilterService));
- if (filter != null)
- cache = filter.FilterProperties (_component, t);
- }
-
- PropertyDescriptor[] descriptors = new PropertyDescriptor[t.Values.Count];
- t.Values.CopyTo (descriptors, 0);
- PropertyDescriptorCollection attCol = new PropertyDescriptorCollection (descriptors, true);
- if (cache)
- _properties = attCol;
- return attCol;
- }
- }
-
- internal class TypeInfo : Info
- {
- EventDescriptorCollection _events;
- PropertyDescriptorCollection _properties;
-
- public TypeInfo (Type t): base (t)
- {
- }
-
- public override AttributeCollection GetAttributes ()
- {
- return base.GetAttributes (null);
- }
-
- public override EventDescriptorCollection GetEvents ()
- {
- if (_events != null)
- return _events;
-
- EventInfo[] events = InfoType.GetEvents ();
- EventDescriptor[] descs = new EventDescriptor [events.Length];
- for (int n=0; n<events.Length; n++)
- descs [n] = new ReflectionEventDescriptor (events[n]);
-
- _events = new EventDescriptorCollection (descs);
- return _events;
- }
-
- public override PropertyDescriptorCollection GetProperties ()
- {
- if (_properties != null)
- return _properties;
-
- Hashtable propertiesHash = new Hashtable (); // name - null
- ArrayList propertiesList = new ArrayList (); // propertydescriptors
- Type currentType = InfoType;
- // Getting properties type by type, because in the case of a property in the child type, where
- // the "new" keyword is used and also the return type is changed Type.GetProperties returns
- // also the parent property.
- //
- // Note that we also have to preserve the properties order here.
- //
- while (currentType != null && currentType != typeof (object)) {
- PropertyInfo[] props = currentType.GetProperties (BindingFlags.Instance | BindingFlags.Public | BindingFlags.DeclaredOnly);
- foreach (PropertyInfo property in props) {
- if (property.GetIndexParameters ().Length == 0 &&
- property.CanRead &&
- !propertiesHash.ContainsKey (property.Name)) {
- propertiesList.Add (new ReflectionPropertyDescriptor (property));
- propertiesHash.Add (property.Name, null);
- }
- }
- currentType = currentType.BaseType;
- }
-
- _properties = new PropertyDescriptorCollection ((PropertyDescriptor[]) propertiesList.ToArray (typeof (PropertyDescriptor)), true);
- return _properties;
- }
- }
-
-#if NET_4_0
- // In .net this class seems to be a dummy and empty class
- // used to represent internally any extender provider associated with
- // all the interfaces.
- sealed class TypeDescriptorInterface
- {
- }
-#endif
-}
+++ /dev/null
-//
-// System.ComponentModel.TypeListConverter
-//
-// Authors:
-// Martin Willemoes Hansen (mwh@sysrq.dk)
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Martin Willemoes Hansen
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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;
-using System.Globalization;
-
-namespace System.ComponentModel
-{
- public abstract class TypeListConverter : TypeConverter
- {
- private Type[] types;
-
- protected TypeListConverter (Type[] types)
- {
- this.types = types;
- }
-
- public override bool CanConvertFrom (ITypeDescriptorContext context, Type sourceType)
- {
- if (sourceType == typeof (string))
- return true;
- return base.CanConvertFrom (context, sourceType);
- }
-
- public override bool CanConvertTo (ITypeDescriptorContext context, Type destinationType)
- {
- if (destinationType == typeof (string))
- return true;
- return base.CanConvertTo (context, destinationType);
- }
-
- public override object ConvertFrom (ITypeDescriptorContext context, CultureInfo culture, object value)
- {
- // LAMESPEC also it delivers true for CanConvertFrom (string)
- // it fails in the actual conversion (MS implementation)
- return base.ConvertFrom (context, culture, value);
- }
-
- public override object ConvertTo (ITypeDescriptorContext context, CultureInfo culture,
- object value, Type destinationType)
- {
- if (destinationType == typeof (string) && value != null && value.GetType() == typeof (Type)) {
- return ((Type) value).ToString();
- }
- // LAMESPEC MS throws InvalidCastException here
- throw new InvalidCastException("Cannot cast to System.Type");
- }
-
- public override StandardValuesCollection GetStandardValues (ITypeDescriptorContext context)
- {
- return new StandardValuesCollection (types);
- }
-
- public override bool GetStandardValuesExclusive (ITypeDescriptorContext context)
- {
- return true;
- }
-
- public override bool GetStandardValuesSupported (ITypeDescriptorContext context)
- {
- return true;
- }
- }
-}
-
+++ /dev/null
-//
-// System.ComponentModel.UInt16Converter
-//
-// Authors:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-
-namespace System.ComponentModel
-{
- public class UInt16Converter : BaseNumberConverter
- {
- public UInt16Converter()
- {
- InnerType = typeof (UInt16);
- }
-
- internal override bool SupportHex {
- get { return true; }
- }
-
- internal override string ConvertToString (object value, NumberFormatInfo format)
- {
- return ((ushort) value).ToString ("G", format);
- }
-
- internal override object ConvertFromString (string value, NumberFormatInfo format)
- {
- return ushort.Parse (value, NumberStyles.Integer, format);
- }
-
- internal override object ConvertFromString (string value, int fromBase)
- {
- return Convert.ToUInt16 (value, fromBase);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.UInt32Converter
-//
-// Authors:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-
-namespace System.ComponentModel
-{
- public class UInt32Converter : BaseNumberConverter
- {
- public UInt32Converter()
- {
- InnerType = typeof (UInt32);
- }
-
- internal override bool SupportHex {
- get { return true; }
- }
-
- internal override string ConvertToString (object value, NumberFormatInfo format)
- {
- return ((uint) value).ToString ("G", format);
- }
-
- internal override object ConvertFromString (string value, NumberFormatInfo format)
- {
- return uint.Parse (value, NumberStyles.Integer, format);
- }
-
- internal override object ConvertFromString (string value, int fromBase)
- {
- return Convert.ToUInt32 (value, fromBase);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.UInt64Converter
-//
-// Authors:
-// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-// (C) 2003 Andreas Nahr
-//
-
-//
-// 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.Globalization;
-
-namespace System.ComponentModel
-{
- public class UInt64Converter : BaseNumberConverter
- {
- public UInt64Converter()
- {
- InnerType = typeof (UInt64);
- }
-
- internal override bool SupportHex {
- get { return true; }
- }
-
- internal override string ConvertToString (object value, NumberFormatInfo format)
- {
- return ((ulong) value).ToString ("G", format);
- }
-
- internal override object ConvertFromString (string value, NumberFormatInfo format)
- {
- return ulong.Parse (value, NumberStyles.Integer, format);
- }
-
- internal override object ConvertFromString (string value, int fromBase)
- {
- return Convert.ToUInt64 (value, fromBase);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.WarningException.cs
-//
-// Authors:
-// Asier Llano Palacios (asierllano@infonegocio.com)
-// Sebastien Pouliot <sebastien@ximian.com>
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// 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.Runtime.Serialization;
-using System.Security.Permissions;
-
-namespace System.ComponentModel {
-
- [Serializable]
- public class WarningException : SystemException
- {
- private string helpUrl;
- private string helpTopic;
-
- public WarningException (string message)
- : base (message)
- {
- }
-
- public WarningException (string message, string helpUrl)
- : base (message)
- {
- this.helpUrl = helpUrl;
- }
-
- public WarningException (string message, string helpUrl, string helpTopic)
- : base (message)
- {
- this.helpUrl = helpUrl;
- this.helpTopic = helpTopic;
- }
-
- public WarningException ()
- : base (Locale.GetText ("Warning"))
- {
- }
-
- public WarningException (string message, Exception innerException)
- : base (message, innerException)
- {
- }
-
- protected WarningException (SerializationInfo info, StreamingContext context)
- : base (info, context)
- {
- try {
- helpTopic = info.GetString ("helpTopic");
- helpUrl = info.GetString ("helpUrl");
- }
- catch (SerializationException) {
- //For compliance with previously serialized version:
- helpTopic = info.GetString ("HelpTopic");
- helpUrl = info.GetString ("HelpUrl");
- }
- }
-
- [SecurityPermission (SecurityAction.Demand, SerializationFormatter = true)]
- public override void GetObjectData (SerializationInfo info, StreamingContext context)
- {
- if (info == null)
- throw new ArgumentNullException ("info");
-
- base.GetObjectData (info, context);
- info.AddValue ("helpTopic", helpTopic);
- info.AddValue ("helpUrl", helpUrl);
- }
-
- public string HelpTopic {
- get {
- return helpTopic;
- }
- }
-
- public string HelpUrl {
- get {
- return helpUrl;
- }
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.WeakObjectWrapper.cs
-//
-// Authors:
-// Marek Habersack <mhabersack@novell.com>
-//
-//
-// (C) 2009 Novell, Inc (http://novell.com)
-//
-
-//
-// 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;
-using System.Collections;
-using System.Collections.Generic;
-
-namespace System.ComponentModel
-{
- sealed class WeakObjectWrapper
- {
- public int TargetHashCode { get; private set; }
- public WeakReference Weak { get; private set; }
-
- public WeakObjectWrapper (object target)
- {
- TargetHashCode = target.GetHashCode ();
- Weak = new WeakReference (target);
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.WeakObjectWrapperComparer.cs
-//
-// Authors:
-// Marek Habersack <mhabersack@novell.com>
-//
-//
-// (C) 2009 Novell, Inc (http://novell.com)
-//
-
-//
-// 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;
-using System.Collections;
-using System.Collections.Generic;
-
-namespace System.ComponentModel
-{
- sealed class WeakObjectWrapperComparer : EqualityComparer <WeakObjectWrapper>
- {
- public override bool Equals (WeakObjectWrapper x, WeakObjectWrapper y)
- {
- if (x == null && y == null)
- return false;
-
- if (x == null || y == null)
- return false;
-
- WeakReference xWeak = x.Weak;
- WeakReference yWeak = y.Weak;
-
- if (!xWeak.IsAlive && !yWeak.IsAlive)
- return false;
-
- return xWeak.Target == yWeak.Target;
- }
-
- public override int GetHashCode (WeakObjectWrapper obj)
- {
- if (obj == null)
- return 0;
-
- return obj.TargetHashCode;
- }
- }
-}
+++ /dev/null
-//
-// System.ComponentModel.Win32Exception.cs
-//
-// Author:
-// Dick Porter (dick@ximian.com)
-//
-// (C) 2002 Ximian, Inc. http://www.ximian.com
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// 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.Security;
-using System.Security.Permissions;
-using System.Runtime.InteropServices;
-using System.Runtime.Serialization;
-using System.Collections;
-using System.Globalization;
-using System.Runtime.CompilerServices;
-
-namespace System.ComponentModel
-{
- [Serializable, SuppressUnmanagedCodeSecurity]
- public class Win32Exception : ExternalException
- {
- private int native_error_code;
-
-// [SecurityPermission (SecurityAction.LinkDemand, UnmanagedCode = true)]
- public Win32Exception ()
- : base (W32ErrorMessage (Marshal.GetLastWin32Error ()))
- {
- native_error_code = Marshal.GetLastWin32Error ();
- }
-
-// [SecurityPermission (SecurityAction.LinkDemand, UnmanagedCode = true)]
- public Win32Exception (int error)
- : base (W32ErrorMessage (error))
- {
- native_error_code = error;
- }
-
-// [SecurityPermission (SecurityAction.LinkDemand, UnmanagedCode = true)]
- public Win32Exception (int error, string message)
- : base (message)
- {
- native_error_code = error;
- }
- [SecurityPermission (SecurityAction.LinkDemand, UnmanagedCode = true)]
- public Win32Exception (string message)
- : base (message)
- {
- native_error_code = Marshal.GetLastWin32Error ();
- }
-
- [SecurityPermission (SecurityAction.LinkDemand, UnmanagedCode = true)]
- public Win32Exception (string message, Exception innerException)
- : base (message, innerException)
- {
- native_error_code = Marshal.GetLastWin32Error ();
- }
-
- protected Win32Exception(SerializationInfo info,
- StreamingContext context)
- : base (info, context) {
-
- native_error_code = info.GetInt32 ("NativeErrorCode");
- }
-
- public int NativeErrorCode {
- get {
- return(native_error_code);
- }
- }
-
- [SecurityPermission (SecurityAction.Demand, SerializationFormatter = true)]
- public override void GetObjectData(SerializationInfo info, StreamingContext context)
- {
- if (info == null)
- throw new ArgumentNullException ("info");
-
- info.AddValue ("NativeErrorCode", native_error_code);
- base.GetObjectData (info, context);
- }
-
- [MethodImplAttribute (MethodImplOptions.InternalCall)]
- internal static extern string W32ErrorMessage (int error_code);
- }
-}
-SR.cs
../../build/common/SR.cs
Assembly/AssemblyInfo.cs
Microsoft.CSharp/CSharpCodeCompiler.cs
System.Collections.Specialized/StringCollection.cs
System.Collections.Specialized/StringDictionary.cs
System.Collections.Specialized/StringEnumerator.cs
-System.ComponentModel/AddingNewEventArgs.cs
-System.ComponentModel/AddingNewEventHandler.cs
-System.ComponentModel/AmbientValueAttribute.cs
-System.ComponentModel/ArrayConverter.cs
-System.ComponentModel/AsyncCompletedEventArgs.cs
-System.ComponentModel/AsyncCompletedEventHandler.cs
-System.ComponentModel/AsyncOperation.cs
-System.ComponentModel/AsyncOperationManager.cs
-System.ComponentModel/AttributeProviderAttribute.cs
-System.ComponentModel/AttributeCollection.cs
-System.ComponentModel/BackgroundWorker.cs
-System.ComponentModel/BaseNumberConverter.cs
-System.ComponentModel/BindableAttribute.cs
-System.ComponentModel/BindableSupport.cs
-System.ComponentModel/BindingDirection.cs
-System.ComponentModel/BindingList.cs
-System.ComponentModel/BooleanConverter.cs
-System.ComponentModel/BrowsableAttribute.cs
-System.ComponentModel/ByteConverter.cs
-System.ComponentModel/CancelEventArgs.cs
-System.ComponentModel/CancelEventHandler.cs
-System.ComponentModel/CategoryAttribute.cs
-System.ComponentModel/CharConverter.cs
-System.ComponentModel/CollectionChangeAction.cs
-System.ComponentModel/CollectionChangeEventArgs.cs
-System.ComponentModel/CollectionChangeEventHandler.cs
-System.ComponentModel/CollectionConverter.cs
-System.ComponentModel/ComplexBindingPropertiesAttribute.cs
-System.ComponentModel/ComponentCollection.cs
-System.ComponentModel/ComponentConverter.cs
-System.ComponentModel/Component.cs
-System.ComponentModel/ComponentEditor.cs
-System.ComponentModel/ComponentResourceManager.cs
-System.ComponentModel/Container.cs
-System.ComponentModel/ContainerFilterService.cs
-System.ComponentModel/CultureInfoConverter.cs
-System.ComponentModel/CustomTypeDescriptor.cs
-System.ComponentModel/DataErrorsChangedEventArgs.cs
-System.ComponentModel/DataObjectAttribute.cs
-System.ComponentModel/DataObjectFieldAttribute.cs
-System.ComponentModel/DataObjectMethodAttribute.cs
-System.ComponentModel/DataObjectMethodType.cs
-System.ComponentModel/DateTimeConverter.cs
-System.ComponentModel/DateTimeOffsetConverter.cs
-System.ComponentModel/DecimalConverter.cs
-System.ComponentModel/DefaultBindingPropertyAttribute.cs
-System.ComponentModel/DefaultEventAttribute.cs
-System.ComponentModel/DefaultPropertyAttribute.cs
-System.ComponentModel/DefaultValueAttribute.cs
-System.ComponentModel/DerivedPropertyDescriptor.cs
-System.ComponentModel/DescriptionAttribute.cs
-System.ComponentModel.Design/ActiveDesignerEventArgs.cs
-System.ComponentModel.Design/ActiveDesignerEventHandler.cs
-System.ComponentModel.Design/CheckoutException.cs
-System.ComponentModel.Design/CommandID.cs
-System.ComponentModel.Design/ComponentChangedEventArgs.cs
-System.ComponentModel.Design/ComponentChangedEventHandler.cs
-System.ComponentModel.Design/ComponentChangingEventArgs.cs
-System.ComponentModel.Design/ComponentChangingEventHandler.cs
-System.ComponentModel.Design/ComponentEventArgs.cs
-System.ComponentModel.Design/ComponentEventHandler.cs
-System.ComponentModel.Design/ComponentRenameEventArgs.cs
-System.ComponentModel.Design/ComponentRenameEventHandler.cs
-System.ComponentModel.Design/DesignerCollection.cs
-System.ComponentModel.Design/DesignerOptionService.cs
-System.ComponentModel.Design/DesignerEventArgs.cs
-System.ComponentModel.Design/DesignerEventHandler.cs
-System.ComponentModel.Design/DesignerTransactionCloseEventArgs.cs
-System.ComponentModel.Design/DesignerTransactionCloseEventHandler.cs
-System.ComponentModel.Design/DesignerTransaction.cs
-System.ComponentModel.Design/DesignerVerbCollection.cs
-System.ComponentModel.Design/DesignerVerb.cs
-System.ComponentModel.Design/DesigntimeLicenseContext.cs
-System.ComponentModel.Design/DesigntimeLicenseContextSerializer.cs
-System.ComponentModel.Design/IDesignerHostTransactionState.cs
-System.ComponentModel.Design/TypeDescriptionProviderService.cs
-System.ComponentModel/DesignerAttribute.cs
-System.ComponentModel/DesignerCategoryAttribute.cs
-System.ComponentModel/DesignerSerializationVisibilityAttribute.cs
-System.ComponentModel/DesignerSerializationVisibility.cs
-System.ComponentModel.Design/HelpContextType.cs
-System.ComponentModel.Design/HelpKeywordAttribute.cs
-System.ComponentModel.Design/HelpKeywordType.cs
-System.ComponentModel.Design/IComponentChangeService.cs
-System.ComponentModel.Design/IComponentDiscoveryService.cs
-System.ComponentModel.Design/IComponentInitializer.cs
-System.ComponentModel.Design/IDesigner.cs
-System.ComponentModel.Design/IDesignerEventService.cs
-System.ComponentModel.Design/IDesignerFilter.cs
-System.ComponentModel.Design/IDesignerHost.cs
-System.ComponentModel.Design/IDesignerOptionService.cs
-System.ComponentModel.Design/IDictionaryService.cs
-System.ComponentModel.Design/IEventBindingService.cs
-System.ComponentModel.Design/IExtenderListService.cs
-System.ComponentModel.Design/IExtenderProviderService.cs
-System.ComponentModel.Design/IHelpService.cs
-System.ComponentModel.Design/IInheritanceService.cs
-System.ComponentModel.Design/IMenuCommandService.cs
-System.ComponentModel.Design/IReferenceService.cs
-System.ComponentModel.Design/IResourceService.cs
-System.ComponentModel.Design/IRootDesigner.cs
-System.ComponentModel.Design/ISelectionService.cs
-System.ComponentModel.Design/IServiceContainer.cs
-System.ComponentModel.Design/ITreeDesigner.cs
-System.ComponentModel.Design/ITypeDescriptorFilterService.cs
-System.ComponentModel.Design/ITypeDiscoveryService.cs
-System.ComponentModel.Design/ITypeResolutionService.cs
-System.ComponentModel.Design/MenuCommand.cs
-System.ComponentModel/DesignOnlyAttribute.cs
-System.ComponentModel.Design/RuntimeLicenseContext.cs
-System.ComponentModel.Design/SelectionTypes.cs
-System.ComponentModel.Design.Serialization/ComponentSerializationService.cs
-System.ComponentModel.Design.Serialization/ContextStack.cs
-System.ComponentModel.Design.Serialization/DesignerLoader.cs
-System.ComponentModel.Design.Serialization/DesignerSerializerAttribute.cs
-System.ComponentModel.Design.Serialization/IDesignerLoaderHost.cs
-System.ComponentModel.Design.Serialization/IDesignerLoaderHost2.cs
-System.ComponentModel.Design.Serialization/IDesignerLoaderService.cs
-System.ComponentModel.Design.Serialization/IDesignerSerializationManager.cs
-System.ComponentModel.Design.Serialization/IDesignerSerializationProvider.cs
-System.ComponentModel.Design.Serialization/IDesignerSerializationService.cs
-System.ComponentModel.Design.Serialization/INameCreationService.cs
-System.ComponentModel.Design.Serialization/InstanceDescriptor.cs
-System.ComponentModel.Design.Serialization/MemberRelationship.cs
-System.ComponentModel.Design.Serialization/MemberRelationshipService.cs
-System.ComponentModel.Design.Serialization/ResolveNameEventArgs.cs
-System.ComponentModel.Design.Serialization/ResolveNameEventHandler.cs
-System.ComponentModel.Design.Serialization/RootDesignerSerializerAttribute.cs
-System.ComponentModel.Design.Serialization/SerializationStore.cs
-System.ComponentModel.Design.Serialization/DefaultSerializationProviderAttribute.cs
-System.ComponentModel.Design/ServiceContainer.cs
-System.ComponentModel.Design/ServiceCreatorCallback.cs
-System.ComponentModel.Design/StandardCommands.cs
-System.ComponentModel.Design/StandardToolWindows.cs
-System.ComponentModel/DesignTimeVisibleAttribute.cs
-System.ComponentModel.Design/ViewTechnology.cs
-System.ComponentModel/DisplayNameAttribute.cs
-System.ComponentModel/DoubleConverter.cs
-System.ComponentModel/DoWorkEventHandler.cs
-System.ComponentModel/DoWorkEventArgs.cs
-System.ComponentModel/EditorAttribute.cs
-System.ComponentModel/EditorBrowsableAttribute.cs
-System.ComponentModel/EditorBrowsableState.cs
-System.ComponentModel/EnumConverter.cs
-System.ComponentModel/EventDescriptorCollection.cs
-System.ComponentModel/EventDescriptor.cs
-System.ComponentModel/EventHandlerList.cs
-System.ComponentModel/ExpandableObjectConverter.cs
-System.ComponentModel/ExtenderProvidedPropertyAttribute.cs
-System.ComponentModel/GuidConverter.cs
-System.ComponentModel/HandledEventArgs.cs
-System.ComponentModel/HandledEventHandler.cs
-System.ComponentModel/IBindingList.cs
-System.ComponentModel/IBindingListView.cs
-System.ComponentModel/ICancelAddNew.cs
-System.ComponentModel/IChangeTracking.cs
-System.ComponentModel/IComNativeDescriptorHandler.cs
-System.ComponentModel/IComponent.cs
-System.ComponentModel/IContainer.cs
-System.ComponentModel/ICustomTypeDescriptor.cs
-System.ComponentModel/IDataErrorInfo.cs
-System.ComponentModel/IEditableObject.cs
-System.ComponentModel/IExtenderProvider.cs
-System.ComponentModel/IIntellisenseBuilder.cs
-System.ComponentModel/IListSource.cs
-System.ComponentModel/ImmutableObjectAttribute.cs
-System.ComponentModel/INestedContainer.cs
-System.ComponentModel/INestedSite.cs
-System.ComponentModel/InheritanceAttribute.cs
-System.ComponentModel/InheritanceLevel.cs
-System.ComponentModel/InitializationEventAttribute.cs
-System.ComponentModel/INotifyDataErrorInfo.cs
-System.ComponentModel/INotifyPropertyChanged.cs
-System.ComponentModel/INotifyPropertyChanging.cs
-System.ComponentModel/InstallerTypeAttribute.cs
-System.ComponentModel/InstanceCreationEditor.cs
-System.ComponentModel/InvalidAsynchronousStateException.cs
-System.ComponentModel/Int16Converter.cs
-System.ComponentModel/Int32Converter.cs
-System.ComponentModel/Int64Converter.cs
-System.ComponentModel/InvalidEnumArgumentException.cs
-System.ComponentModel/IRevertibleChangeTracking.cs
-System.ComponentModel/IRaiseItemChangedEvents.cs
-System.ComponentModel/ISite.cs
-System.ComponentModel/ISupportInitialize.cs
-System.ComponentModel/ISupportInitializeNotification.cs
-System.ComponentModel/ISynchronizeInvoke.cs
-System.ComponentModel/ITypeDescriptorContext.cs
-System.ComponentModel/ITypedList.cs
-System.ComponentModel/LicenseContext.cs
-System.ComponentModel/License.cs
-System.ComponentModel/LicenseException.cs
-System.ComponentModel/LicenseManager.cs
-System.ComponentModel/LicenseProviderAttribute.cs
-System.ComponentModel/LicenseProvider.cs
-System.ComponentModel/LicenseUsageMode.cs
-System.ComponentModel/LicFileLicenseProvider.cs
-System.ComponentModel/ListBindableAttribute.cs
-System.ComponentModel/ListChangedEventArgs.cs
-System.ComponentModel/ListChangedEventHandler.cs
-System.ComponentModel/ListChangedType.cs
-System.ComponentModel/ListSortDescriptionCollection.cs
-System.ComponentModel/ListSortDescription.cs
-System.ComponentModel/ListSortDirection.cs
-System.ComponentModel/LocalizableAttribute.cs
-System.ComponentModel/LookupBindingPropertiesAttribute.cs
-System.ComponentModel/MarshalByValueComponent.cs
-System.ComponentModel/MaskedTextProvider.cs
-System.ComponentModel/MaskedTextResultHint.cs
-System.ComponentModel/MemberDescriptor.cs
-System.ComponentModel/MergablePropertyAttribute.cs
-System.ComponentModel/MultilineStringConverter.cs
-System.ComponentModel/NestedContainer.cs
-System.ComponentModel/NotifyParentPropertyAttribute.cs
-System.ComponentModel/NullableConverter.cs
-System.ComponentModel/ParenthesizePropertyNameAttribute.cs
-System.ComponentModel/PasswordPropertyTextAttribute.cs
-System.ComponentModel/PropertyChangedEventArgs.cs
-System.ComponentModel/PropertyChangedEventHandler.cs
-System.ComponentModel/PropertyChangingEventArgs.cs
-System.ComponentModel/PropertyChangingEventHandler.cs
-System.ComponentModel/PropertyDescriptorCollection.cs
-System.ComponentModel/PropertyDescriptor.cs
-System.ComponentModel/PropertyTabAttribute.cs
-System.ComponentModel/PropertyTabScope.cs
-System.ComponentModel/ProvidePropertyAttribute.cs
-System.ComponentModel/ReadOnlyAttribute.cs
-System.ComponentModel/RecommendedAsConfigurableAttribute.cs
-System.ComponentModel/ReferenceConverter.cs
-System.ComponentModel/ReflectionEventDescriptor.cs
-System.ComponentModel/ReflectionPropertyDescriptor.cs
-System.ComponentModel/RefreshEventArgs.cs
-System.ComponentModel/RefreshEventHandler.cs
-System.ComponentModel/RefreshPropertiesAttribute.cs
-System.ComponentModel/RefreshProperties.cs
-System.ComponentModel/RunInstallerAttribute.cs
-System.ComponentModel/RunWorkerCompletedEventArgs.cs
-System.ComponentModel/RunWorkerCompletedEventHandler.cs
-System.ComponentModel/SByteConverter.cs
-System.ComponentModel/SettingsBindableAttribute.cs
-System.ComponentModel/SingleConverter.cs
-System.ComponentModel/StringConverter.cs
-System.ComponentModel/SyntaxCheck.cs
-System.ComponentModel/TimeSpanConverter.cs
-System.ComponentModel/ToolboxItemAttribute.cs
-System.ComponentModel/ToolboxItemFilterAttribute.cs
-System.ComponentModel/ToolboxItemFilterType.cs
-System.ComponentModel/TypeConverterAttribute.cs
-System.ComponentModel/TypeConverter.cs
-System.ComponentModel/TypeDescriptionProvider.cs
-System.ComponentModel/TypeDescriptionProviderAttribute.cs
-System.ComponentModel/TypeDescriptor.cs
-System.ComponentModel/TypeListConverter.cs
-System.ComponentModel/UInt16Converter.cs
-System.ComponentModel/UInt32Converter.cs
-System.ComponentModel/UInt64Converter.cs
-System.ComponentModel/WarningException.cs
-System.ComponentModel/WeakObjectWrapper.cs
-System.ComponentModel/WeakObjectWrapperComparer.cs
-System.ComponentModel/Win32Exception.cs
System.Configuration/ApplicationScopedSettingAttribute.cs
System.Configuration/ApplicationSettingsBase.cs
System.Configuration/ApplicationSettingsGroup.cs
System.Web/AspNetHostingPermissionAttribute.cs
System.Web/AspNetHostingPermission.cs
System.Web/AspNetHostingPermissionLevel.cs
-System.ComponentModel/ProgressChangedEventHandler.cs
-System.ComponentModel/ProgressChangedEventArgs.cs
System.Net/UploadDataCompletedEventArgs.cs
System.Net/UploadFileCompletedEventArgs.cs
System.Net/UploadFileCompletedEventHandler.cs
Mono.Net.Dns/SimpleResolverEventArgs.cs
System.Net/DnsAsyncResult.cs
System.Windows.Input/ICommand.cs
+
+ReferenceSources/NativeMethods.cs
+ReferenceSources/SR.cs
+ReferenceSources/SRCategoryAttribute.cs
+ReferenceSources/Win32Exception.cs
+
../../../external/referencesource/System/regex/system/text/regularexpressions/Regex.cs
../../../external/referencesource/System/regex/system/text/regularexpressions/RegexBoyerMoore.cs
../../../external/referencesource/System/regex/system/text/regularexpressions/RegexCapture.cs
../../../external/referencesource/System/compmod/system/collections/generic/sortedsetdebugview.cs
../../../external/referencesource/System/compmod/system/collections/generic/stack.cs
../../../external/referencesource/System/compmod/system/collections/generic/throwhelper.cs
+
+
+../../../external/referencesource/System/compmod/system/componentmodel/AddingNewEventArgs.cs
+../../../external/referencesource/System/compmod/system/componentmodel/AddingNewEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/AmbientValueAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ArrayConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ArraySubsetEnumerator.cs
+../../../external/referencesource/System/compmod/system/componentmodel/AsyncCompletedEventArgs.cs
+../../../external/referencesource/System/compmod/system/componentmodel/AsyncCompletedEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/AsyncOperation.cs
+../../../external/referencesource/System/compmod/system/componentmodel/AsyncOperationManager.cs
+../../../external/referencesource/System/compmod/system/componentmodel/AttributeCollection.cs
+../../../external/referencesource/System/compmod/system/componentmodel/AttributeProviderAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/BackgroundWorker.cs
+../../../external/referencesource/System/compmod/system/componentmodel/BaseComponentEditor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/basenumberconverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/BindableAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/BindableSupport.cs
+../../../external/referencesource/System/compmod/system/componentmodel/BindingDirection.cs
+../../../external/referencesource/System/compmod/system/componentmodel/BindingList.cs
+../../../external/referencesource/System/compmod/system/componentmodel/BooleanConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/BrowsableAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ByteConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/CancelEventArgs.cs
+../../../external/referencesource/System/compmod/system/componentmodel/CancelEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/CategoryAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/CharConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/CollectionChangeAction.cs
+../../../external/referencesource/System/compmod/system/componentmodel/CollectionChangeEventArgs.cs
+../../../external/referencesource/System/compmod/system/componentmodel/CollectionChangeEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/CollectionConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ComplexBindingPropertiesAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/CompModSwitches.cs
+../../../external/referencesource/System/compmod/system/componentmodel/Component.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ComponentCollection.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ComponentConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ComponentResourceManager.cs
+../../../external/referencesource/System/compmod/system/componentmodel/Container.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ContainerFilterService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/CultureInfoConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/CustomTypeDescriptor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DataErrorsChangedEventArgs.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DataObjectAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DataObjectFieldAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DataObjectMethodAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DataObjectMethodType.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DateTimeConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DateTimeOffsetConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DebugExtendedPropertyDescriptor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DebugReflectEventDescriptor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DebugReflectPropertyDescriptor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DebugTypeDescriptor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DecimalConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DefaultBindingPropertyAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DefaultEventAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DefaultPropertyAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DefaultValueAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DelegatingTypeDescriptionProvider.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DescriptionAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ActiveDocumentEvent.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ActiveDocumentEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/CheckoutException.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/CommandID.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ComponentChangedEvent.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ComponentChangedEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ComponentChangingEvent.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ComponentChangingEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ComponentEvent.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ComponentEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ComponentRenameEvent.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ComponentRenameEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/DesignerOptionService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/DesignerTransaction.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/DesignerTransactionCloseEvent.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/DesignerTransactionCloseEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/DesignerVerb.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/DesignerVerbCollection.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/DesigntimeLicenseContext.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/DesigntimeLicenseContextSerializer.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/DocumentCollection.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/DocumentEventArgs.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/DocumentEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/HelpContextType.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/HelpKeywordAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/HelpKeywordType.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IComponentChangeService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IComponentDiscoveryService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IComponentInitializer.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IDesigner.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IDesignerEventService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IDesignerFilter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IDesignerHost.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IDesignerHostTransactionState.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IDesignerOptionService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IDictionaryService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IEventPropertyService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IExtenderListService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IExtenderProviderService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IHelpService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IInheritanceService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IMenuCommandService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/InheritanceAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/InheritanceLevel.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IReferenceService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IResourceService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IRootDesigner.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ISelectionService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/IServiceObjectContainer.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ITreeDesigner.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ITypeDescriptorFilterService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ITypeDiscoveryService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ITypeResolutionService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/MenuCommand.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/NotifyParentPropertyAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ParenthesizePropertyNameAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/PropertyTabAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/PropertyTabScope.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/RefreshProperties.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/RefreshPropertiesAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/SelectionTypes.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/ComponentSerializationService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/ContextStack.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/DefaultSerializationProviderAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/DesignerLoader.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/DesignerSerializerAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/IDesignerLoaderHost.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/IDesignerLoaderService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/IDesignerSerializationManager.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/IDesignerSerializationProvider.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/IDesignerSerializationService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/INameCreationService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/InstanceDescriptor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/MemberRelationshipService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/ResolveNameEventArgs.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/ResolveNameEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/RootDesignerSerializerAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/serialization/SerializationStore.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ServiceCreatorCallback.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ServiceObjectContainer.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/StandardCommands.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/StandardToolWindows.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ToolboxItemAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/design/ViewTechnology.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DesignerAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DesignerCategoryAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DesignerSerializationVisibility.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DesignerSerializationVisibilityAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DesignOnlyAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DesignTimeVisibleAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DisplayNameAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DoubleConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DoWorkEventArgs.cs
+../../../external/referencesource/System/compmod/system/componentmodel/DoWorkEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/EditorAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/EditorBrowsableAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/EnumConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/EventDescriptor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/EventDescriptorCollection.cs
+../../../external/referencesource/System/compmod/system/componentmodel/EventHandlerList.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ExpandableObjectConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ExtendedPropertyDescriptor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ExtenderProvidedPropertyAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/FxCopSuppression.cs
+../../../external/referencesource/System/compmod/system/componentmodel/GuidConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/HandledEventArgs.cs
+../../../external/referencesource/System/compmod/system/componentmodel/HandledEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/IBindingList.cs
+../../../external/referencesource/System/compmod/system/componentmodel/IBindingListView.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ICancelAddNew.cs
+../../../external/referencesource/System/compmod/system/componentmodel/IChangeTracking.cs
+../../../external/referencesource/System/compmod/system/componentmodel/IComNativeDescriptorHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/IComponent.cs
+../../../external/referencesource/System/compmod/system/componentmodel/IContainer.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ICustomTypeDescriptor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/IDataErrorInfo.cs
+../../../external/referencesource/System/compmod/system/componentmodel/IEditableObject.cs
+../../../external/referencesource/System/compmod/system/componentmodel/IExtenderProvider.cs
+../../../external/referencesource/System/compmod/system/componentmodel/IIntellisenseBuilder.cs
+../../../external/referencesource/System/compmod/system/componentmodel/IListSource.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ImmutableObjectAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/INestedContainer.cs
+../../../external/referencesource/System/compmod/system/componentmodel/INestedSite.cs
+../../../external/referencesource/System/compmod/system/componentmodel/InitializationEventAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/INotifyDataErrorInfo.cs
+../../../external/referencesource/System/compmod/system/componentmodel/INotifyPropertyChanged.cs
+../../../external/referencesource/System/compmod/system/componentmodel/INotifyPropertyChanging.cs
+../../../external/referencesource/System/compmod/system/componentmodel/InstallerTypeAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/InstanceCreationEditor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/Int16Converter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/Int32Converter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/Int64Converter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/IntSecurity.cs
+../../../external/referencesource/System/compmod/system/componentmodel/InvalidAsynchronousStateException.cs
+../../../external/referencesource/System/compmod/system/componentmodel/InvalidEnumArgumentException.cs
+../../../external/referencesource/System/compmod/system/componentmodel/IRaiseItemChangedEvents.cs
+../../../external/referencesource/System/compmod/system/componentmodel/IRevertibleChangeTracking.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ISite.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ISupportInitialize.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ISupportInitializeNotification.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ISynchronizeInvoke.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ITypeDescriptorContext.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ITypedList.cs
+../../../external/referencesource/System/compmod/system/componentmodel/License.cs
+../../../external/referencesource/System/compmod/system/componentmodel/LicenseContext.cs
+../../../external/referencesource/System/compmod/system/componentmodel/LicenseException.cs
+../../../external/referencesource/System/compmod/system/componentmodel/LicenseManager.cs
+../../../external/referencesource/System/compmod/system/componentmodel/LicenseProvider.cs
+../../../external/referencesource/System/compmod/system/componentmodel/LicenseProviderAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/LicenseUsageMode.cs
+../../../external/referencesource/System/compmod/system/componentmodel/LicFileLicenseProvider.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ListBindableAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ListChangedEventArgs.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ListChangedEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ListChangedType.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ListSortDescription.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ListSortDescriptionCollection.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ListSortDirection.cs
+../../../external/referencesource/System/compmod/system/componentmodel/LocalizableAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/LookupBindingPropertiesAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/MarshalByValueComponent.cs
+../../../external/referencesource/System/compmod/system/componentmodel/MaskedTextProvider.cs
+../../../external/referencesource/System/compmod/system/componentmodel/MaskedTextResultHint.cs
+../../../external/referencesource/System/compmod/system/componentmodel/MemberDescriptor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/MergablePropertyAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/MultilineStringConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/NestedContainer.cs
+../../../external/referencesource/System/compmod/system/componentmodel/NullableConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/PasswordPropertyTextAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ProgressChangedEventArgs.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ProgressChangedEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/PropertyChangedEventArgs.cs
+../../../external/referencesource/System/compmod/system/componentmodel/PropertyChangedEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/PropertyChangingEventArgs.cs
+../../../external/referencesource/System/compmod/system/componentmodel/PropertyChangingEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/PropertyDescriptor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/PropertyDescriptorCollection.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ProvidePropertyAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ReadOnlyAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/RecommendedAsConfigurableAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ReferenceConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ReflectEventDescriptor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ReflectPropertyDescriptor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ReflectTypeDescriptionProvider.cs
+../../../external/referencesource/System/compmod/system/componentmodel/RefreshEventArgs.cs
+../../../external/referencesource/System/compmod/system/componentmodel/RefreshEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/RunInstallerAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/RunWorkerCompletedEventArgs.cs
+../../../external/referencesource/System/compmod/system/componentmodel/RunWorkerCompletedEventHandler.cs
+../../../external/referencesource/System/compmod/system/componentmodel/SByteConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/SettingsBindableAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/SingleConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/StringConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/SyntaxCheck.cs
+../../../external/referencesource/System/compmod/system/componentmodel/TimeSpanConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ToolboxItemFilterAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/ToolboxItemFilterType.cs
+../../../external/referencesource/System/compmod/system/componentmodel/TypeConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/TypeConverterAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/TypeDescriptionProvider.cs
+../../../external/referencesource/System/compmod/system/componentmodel/TypeDescriptionProviderAttribute.cs
+../../../external/referencesource/System/compmod/system/componentmodel/TypeDescriptionProviderService.cs
+../../../external/referencesource/System/compmod/system/componentmodel/TypeDescriptor.cs
+../../../external/referencesource/System/compmod/system/componentmodel/TypeListConverter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/UInt16Converter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/UInt32Converter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/UInt64Converter.cs
+../../../external/referencesource/System/compmod/system/componentmodel/WarningException.cs
+../../../external/referencesource/System/compmod/system/componentmodel/Win32Exception.cs
+
+../../../external/referencesource/System/security/system/security/permissions/typedescriptorpermission.cs
+
+../../../external/referencesource/System/misc/hresults.cs
+../../../external/referencesource/System/misc/invariantcomparer.cs
+../../../external/referencesource/System/misc/SecurityUtils.cs
+../../../external/referencesource/System/misc/WeakHashtable.cs
"nl-BE");
Assert.AreEqual (new CultureInfo ("nl-BE"), c, "#2");
- c = (CultureInfo) converter.ConvertFrom (null, CultureInfo.InvariantCulture,
- "Dut");
- Assert.AreEqual (new CultureInfo ("nl"), c, "#3");
+ try {
+ c = (CultureInfo) converter.ConvertFrom (null, CultureInfo.InvariantCulture,
+ "Dut");
+ Assert.Fail ("#3");
+ } catch (ArgumentException) {
+ }
- c = (CultureInfo) converter.ConvertFrom (null, CultureInfo.InvariantCulture,
- "Dutch (Bel");
- Assert.AreEqual (new CultureInfo ("nl-BE"), c, "#4");
+ try {
+ c = (CultureInfo) converter.ConvertFrom (null, CultureInfo.InvariantCulture,
+ "Dutch (Bel");
+ Assert.Fail ("#4");
+ } catch (ArgumentException) {
+ }
- c = (CultureInfo) converter.ConvertFrom (null, CultureInfo.InvariantCulture,
- "duTcH (Bel");
- Assert.AreEqual (new CultureInfo ("nl-BE"), c, "#5");
+ try {
+ c = (CultureInfo) converter.ConvertFrom (null, CultureInfo.InvariantCulture,
+ "duTcH (Bel");
+ Assert.Fail ("#5");
+ } catch (ArgumentException) {
+ }
c = (CultureInfo) converter.ConvertFrom (null, CultureInfo.InvariantCulture,
"(Default)");
Assert.AreEqual (CultureInfo.InvariantCulture, c, "#6");
-
-#if ONLY_1_1
- c = (CultureInfo) converter.ConvertFrom (null, CultureInfo.InvariantCulture,
- "(defAuLt)");
- Assert.AreEqual (CultureInfo.InvariantCulture, c, "#6");
-#endif
}
[Test]
public void ConvertFrom_String_IncompleteName ()
{
- try {
- converter.ConvertFrom (null, CultureInfo.InvariantCulture,
- "nl-B");
- Assert.Fail ("#1");
- } catch (ArgumentException ex) {
- // The nl-B culture cannot be converted to a
- // CultureInfo object on this computer
- Assert.AreEqual (typeof (ArgumentException), ex.GetType (), "#2");
- Assert.IsNull (ex.InnerException, "#3");
- Assert.IsNotNull (ex.Message, "#4");
- Assert.IsTrue (ex.Message.IndexOf (typeof (CultureInfo).Name) != -1, "#5");
- Assert.IsTrue (ex.Message.IndexOf ("nl-B") != -1, "#6");
- Assert.IsNull (ex.ParamName, "#7");
- }
+ converter.ConvertFrom (null, CultureInfo.InvariantCulture,
+ "nl-B");
}
[Test]
result = converter.ConvertToString (null, CultureInfo.InvariantCulture,
new MyCultureInfo ());
- Assert.AreEqual ("display", result, "#1");
+ Assert.AreEqual ("nl-BE", result, "#1");
result = converter.ConvertToString (null, CultureInfo.InvariantCulture,
null);
result = converter.ConvertToString (null, CultureInfo.InvariantCulture,
new CultureInfo ("nl-BE"));
- Assert.AreEqual ("Dutch (Belgium)", result, "#4");
+ Assert.AreEqual ("nl-BE", result, "#4");
}
[Serializable]
CultureInfo ciDE = new CultureInfo("de-DE");
//
date = new DateTime(2008, 12, 31, 23, 59, 58, 5);
- DoTestToString("12/31/2008 11:59 PM", date, ciUS);
+ DoTestToString("12/31/2008 11:59 pm", date, ciUS);
DoTestToString("31/12/2008 23:59", date, ciGB);
DoTestToString("31.12.2008 23:59", date, ciDE);
DoTestToString("12/31/2008 23:59:58", date, CultureInfo.InvariantCulture);
Assert.IsFalse (dvat.Equals (true), "Equals(true)");
Assert.IsTrue (dvat.Equals (new DefaultValueAttribute (true)), "Equals(new)");
- Assert.AreEqual (true.GetHashCode (), dvat.GetHashCode (), "GetHashCode");
+ Assert.AreNotEqual (1, dvat.GetHashCode (), "GetHashCode");
}
}
}
test.ResetMethodsCalled ();
prop = TypeDescriptor.GetDefaultProperty (test);
- Assert.AreEqual ("6", test.methods_called, "#5");
+ Assert.AreEqual ("63", test.methods_called, "#5");
test.ResetMethodsCalled ();
events = TypeDescriptor.GetEvents (test);
- Assert.AreEqual ("2", test.methods_called, "#6");
+ Assert.AreEqual ("1", test.methods_called, "#6");
test.ResetMethodsCalled ();
events = TypeDescriptor.GetEvents (test, new Attribute[0]);
test.ResetMethodsCalled ();
events = TypeDescriptor.GetEvents (test, false);
- Assert.AreEqual ("2", test.methods_called, "#8");
+ Assert.AreEqual ("1", test.methods_called, "#8");
}
[Test]