2005-07-01  Lluis Sanchez Gual  <lluis@novell.com>

	* ProviderSettings.cs: Implemented properties using property attributes.
	* ConfigurationElement.cs: Implemented ElementInformation property and
	moved there all value management.
	* ProtectedConfigurationProvider.cs: Set the correct base class.
	* SectionInformation.cs: Added missing AllowExeDefinition property.
	* TimeSpanValidatorAttribute.cs: Implemented.
	* StringValidator.cs: Implemented.
	* ProviderSettingsCollection.cs: Added missing class attribute.
	* ConfigurationSaveMode.cs: Fix enum values.
	* ConfigurationElementCollection.cs: Added Init method for initializing
	elements from properties.
	* StringValidatorAttribute.cs: Implemented.
	* ConfigurationLocation.cs: Added support for allowOverride flag.
	* TimeSpanMinutesOrInfiniteConverter.cs: Created skeleton class.
	* PositiveTimeSpanValidator.cs: Implemented.
	* TimeSpanMinutesConverter.cs: Created skeleton class.
	* SectionInfo.cs: Properly read, store and check the values of AllowLocation,
	AllowDefinition and AllowExeDefinition.
	* TimeSpanValidator.cs: Implemented.
	* ConfigurationConverterBase.cs: Created skeleton class.
	* InternalConfigurationHost.cs: Implemented IsDefinitionAllowed and
	VerifyDefinitionAllowed.
	* ConfigurationManager.cs: That class must be static.
	* PropertyInformationCollection.cs: Implemented.
	* Configuration.cs: Added some checks for AllowLocation, AllowDefinition and
	so on. In Save(), don't forget to save location elements.
	* ConfigurationProperty.cs: Keep track of collection attributes.
	* ConfigInfo.cs: Support overrideAllowed flag.
	* KeyValueConfigurationElement.cs: Define properties using attributes.
	* PropertyValueOrigin.cs: implemented.
	* PropertyInformation.cs: Mostly implemented.
	* SectionGroupInfo.cs: Properly propagate the overrideAllowed flag.
	* ElementInformation.cs: Mostly implemented.
	* ConfigurationPropertyAttribute.cs: Set the correct default value.
	* ConfigurationCollectionAttribute.cs: Implemented.

2005-06-23  Lluis Sanchez Gual <lluis@novell.com>

	* SectionInfo.cs: Set the config host when loading the section.
	* InternalConfigurationHost.cs: Implemented some basic methods.
	* Configuration.cs: Find the correct parent for the configuration,
	taking into accound locations and such. Use Host functions to get
	types from names.
	* ConfigurationLocationCollection.cs: Added find method.
	* ConfigInfo.cs: Added Host property.
	* InternalConfigurationFactory.cs: The InitForConfiguration calls
	are now done in each correspoding configuration.
	* SectionGroupInfo.cs: When reading a location element, create
	a Configuration object for each path specified in the location.
	* ConfigurationElementCollection.cs: Added the CreateNewElementInternal
	method, which properly initializes the created element.
	* ConfigurationLocation.cs: OpenConfiguration now has to read the
	xml contents. It also has to find the correct parent configuration,
	if it has not been specified.

2005-06-17  Lluis Sanchez Gual <lluis@novell.com>

	* SectionInfo.cs, ConfigInfo.cs, SectionGroupInfo.cs: Minor api fixes.
	* ConfigurationPropertyCollection.cs: Added Clear method.
	* ContextInformation.cs: Implemented.
	* ConfigurationManager.cs: Implemented some missing methods.
	Configuration objects are now created through the ConfigurationFactory.
	* InternalConfigurationHost.cs: Implementation of IInternalConfigHost
	to be used for exe files and machine.config.
	* ConfigurationFileMap.cs: Implemented.
	* Configuration.cs: Read and write config files using the methods that
	  IInternalConfigHost provides.
	* InternalConfigurationRoot.cs: IInternalConfigRoot stub.
	* ExeContext.cs: Implemented.
	* AppSettingsSection.cs: Use the KeyValueConfigurationCollection
	collection to store values.
	* KeyValueConfigurationElement.cs: Implemented.
	* KeyValueConfigurationCollection.cs: Implemented.
	* InternalConfigurationFactory.cs: An implementation of 
	IInternalConfigConfigurationFactory.
	* ConfigurationPropertyAttribute.cs: Added missing attributes.
	* ExeConfigurationFileMap.cs: Implemented.

2005-06-15  Lluis Sanchez Gual <lluis@novell.com>

	* ConfigurationElement.cs, ConfigurationErrorsException.cs
	SectionInfo.cs, ConnectionStringSettingsCollection.cs,
	ConfigurationPropertyCollection.cs, ProtectedConfigurationProvider.cs,
	ConfigurationSection.cs, NonEmptyStringConfigurationProperty.cs,
	ConfigurationElementCollectionType.cs, Configuration.cs, 
	ConnectionStringSettings.cs, ConfigurationProperty.cs,
	ConfigurationLocationCollection.cs, TimeSpanConfigurationProperty.cs,
	ConfigurationAllowDefinition.cs, ConfigInfo.cs,
	ConfigurationSectionGroupCollection.cs, AppSettingsSection.cs,
	ProviderSettingsCollection.cs, IntegerConfigurationProperty.cs,
	SectionGroupInfo.cs, ConfigurationUserLevel.cs,
	ConnectionStringsSection.cs, ConfigurationPropertyAttribute.cs,
	ConfigurationLocation.cs, ConfigurationSectionCollection.cs,
	ConfigurationSectionGroup.cs, RuntimeOnlySection.cs,
	ProviderSettings.cs: 
		Track API changes.
	
	* ConfigurationElementCollection.cs: Implemented support for Basic
	collection type. Other fixes.
	
	* ConfigurationPropertyFlags.cs: Renamed to ConfigurationPropertyOptions.
	* ConfigurationUpdateMode.cs: Renamed to ConfigurationSaveMode.
	
	* SectionInformation.cs, ConfigurationAllowExeDefinition.cs
	ConfigurationManager.cs, ConfigurationSaveMode.cs,
	ConfigurationValidatorAttribute.cs, ProtectedConfigurationSection.cs,
	ConfigurationValidatorBase.cs, ConfigurationPropertyOptions.cs:
		New files.
	
	* ConfigurationValidationAttribute.cs: Removed.
	
	* ProviderBase.cs: Moved to System.dll.

2005-06-14  Lluis Sanchez Gual <lluis@novell.com>

	* AppSettingsSection.cs, ConfigInfo.cs, Configuration.cs
	ConfigurationAllowDefinition.cs, ConfigurationElement.cs
	ConfigurationElementCollection.cs, ConfigurationElementCollectionType.cs
	ConfigurationLocation.cs, ConfigurationLocationCollection.cs
	ConfigurationProperty.cs, ConfigurationPropertyAttribute.cs
	ConfigurationPropertyCollection.cs, ConfigurationPropertyFlags.cs
	ConfigurationSection.cs, ConfigurationSectionCollection.cs
	ConfigurationSectionGroup.cs, ConfigurationSectionGroupCollection.cs
	ConfigurationUpdateMode.cs, ConfigurationUserLevel.cs
	ConfigurationValidationAttribute.cs, ConnectionStringsSection.cs
	ConnectionStringSettingsCollection.cs, ConnectionStringSettings.cs
	IntegerConfigurationProperty.cs, NonEmptyStringConfigurationProperty.cs
	NonEmptyStringFlags.cs, PathLevel.cs, ProtectedConfigurationProvider.cs
	ProviderBase.cs, ProviderSettings.cs, ProviderSettingsCollection.cs
	RuntimeOnlySection.cs, SectionInfo.cs, SectionGroupInfo.cs
	TimeSpanConfigurationProperty.cs, TimeSpanPropertyFlags.cs
	TimeSpanSerializedFormat.cs:

	Moved from the System assembly.