diff options
author | Martin Willemoes Hansen <mwh@mono-cvs.ximian.com> | 2003-03-27 23:26:34 +0300 |
---|---|---|
committer | Martin Willemoes Hansen <mwh@mono-cvs.ximian.com> | 2003-03-27 23:26:34 +0300 |
commit | 2c0f542975b11e0defab57f4bdc611da787c39f4 (patch) | |
tree | 5a1ca2827b1a4634cd9141cba845f426fa2bbd30 /mcs/class/System/System.ComponentModel.Design.Serialization | |
parent | db024539d9c997babbbfb1a1b7673a9dd531b8d9 (diff) |
* Made initial stubing of System.ComponentModel.Design.Serialization
svn path=/trunk/mcs/; revision=12872
Diffstat (limited to 'mcs/class/System/System.ComponentModel.Design.Serialization')
13 files changed, 315 insertions, 0 deletions
diff --git a/mcs/class/System/System.ComponentModel.Design.Serialization/ContextStack.cs b/mcs/class/System/System.ComponentModel.Design.Serialization/ContextStack.cs new file mode 100644 index 00000000000..291123969e9 --- /dev/null +++ b/mcs/class/System/System.ComponentModel.Design.Serialization/ContextStack.cs @@ -0,0 +1,45 @@ +// System.ComponentModel.Design.Serialization.ContextStack.cs +// +// Author: +// Alejandro Sánchez Acosta <raciel@gnome.org> +// +// (C) Alejandro Sánchez Acosta +// + +using System.Collections; +using System.Web.UI.Design; + +namespace System.ComponentModel.Design.Serialization +{ + public sealed class ContextStack + { + public ArrayList list; + + public ContextStack () { + list = new ArrayList (); + } + + public object Current { + get { + if (list.Count == 0) return null; + return list [list.Count - 1]; + } + + set { + list.Add (value); + } + } + + [MonoTODO] + public object this[Type type] { + get { throw new NotImplementedException ();} + set { throw new NotImplementedException ();} + } + + [MonoTODO] + public object this[int level] { + get { throw new NotImplementedException ();} + set { throw new NotImplementedException ();} + } + } +} diff --git a/mcs/class/System/System.ComponentModel.Design.Serialization/DesignerLoader.cs b/mcs/class/System/System.ComponentModel.Design.Serialization/DesignerLoader.cs new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/mcs/class/System/System.ComponentModel.Design.Serialization/DesignerLoader.cs diff --git a/mcs/class/System/System.ComponentModel.Design.Serialization/DesignerSerializerAttribute.cs b/mcs/class/System/System.ComponentModel.Design.Serialization/DesignerSerializerAttribute.cs new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/mcs/class/System/System.ComponentModel.Design.Serialization/DesignerSerializerAttribute.cs diff --git a/mcs/class/System/System.ComponentModel.Design.Serialization/IDesignerLoaderHost.cs b/mcs/class/System/System.ComponentModel.Design.Serialization/IDesignerLoaderHost.cs new file mode 100644 index 00000000000..148f4be1ab8 --- /dev/null +++ b/mcs/class/System/System.ComponentModel.Design.Serialization/IDesignerLoaderHost.cs @@ -0,0 +1,20 @@ +// System.ComponentModel.Design.Serialization.IDesignerLoaderHost.cs +// +// Author: +// Alejandro Sánchez Acosta <raciel@gnome.org> +// +// (C) Alejandro Sánchez Acosta +// + +using System.Collections; +using System.Web.UI.Design; + +namespace System.ComponentModel.Design.Serialization +{ + public interface IDesignerLoaderHost : IDesignerHost, IServiceContainer, IServiceProvider + { + void EndLoad (string baseClassName, bool successful, ICollection errorCollection); + + void Reload(); + } +} diff --git a/mcs/class/System/System.ComponentModel.Design.Serialization/IDesignerLoaderService.cs b/mcs/class/System/System.ComponentModel.Design.Serialization/IDesignerLoaderService.cs new file mode 100644 index 00000000000..907c0db563a --- /dev/null +++ b/mcs/class/System/System.ComponentModel.Design.Serialization/IDesignerLoaderService.cs @@ -0,0 +1,22 @@ +// System.ComponentModel.Design.Serialization.IDesignerLoaderService.cs +// +// Author: +// Alejandro Sánchez Acosta <raciel@gnome.org> +// +// (C) Alejandro Sánchez Acosta +// + +using System.Collections; +using System.Web.UI.Design; + +namespace System.ComponentModel.Design.Serialization +{ + public interface IDesignerLoaderService + { + void AddLoadDependency(); + + void DependentLoadComplete (bool successful, ICollection errorCollection); + + bool Reload(); + } +} diff --git a/mcs/class/System/System.ComponentModel.Design.Serialization/IDesignerSerializationManager.cs b/mcs/class/System/System.ComponentModel.Design.Serialization/IDesignerSerializationManager.cs new file mode 100644 index 00000000000..3244a2e234a --- /dev/null +++ b/mcs/class/System/System.ComponentModel.Design.Serialization/IDesignerSerializationManager.cs @@ -0,0 +1,42 @@ +// System.ComponentModel.Design.Serialization.IDesignerSerializationManager.cs +// +// Author: +// Alejandro Sánchez Acosta <raciel@gnome.org> +// +// (C) Alejandro Sánchez Acosta +// + +using System.Collections; +using System.Web.UI.Design; + +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; + } +} diff --git a/mcs/class/System/System.ComponentModel.Design.Serialization/IDesignerSerializationProvider.cs b/mcs/class/System/System.ComponentModel.Design.Serialization/IDesignerSerializationProvider.cs new file mode 100644 index 00000000000..c793424a607 --- /dev/null +++ b/mcs/class/System/System.ComponentModel.Design.Serialization/IDesignerSerializationProvider.cs @@ -0,0 +1,17 @@ +// System.ComponentModel.Design.Serialization.IDesignerSerializationProvider.cs +// +// Author: +// Alejandro Sánchez Acosta <raciel@gnome.org> +// +// (C) Alejandro Sánchez Acosta +// + +using System.Web.UI.Design; + +namespace System.ComponentModel.Design.Serialization +{ + public interface IDesignerSerializationProvider + { + object GetSerializer (IDesignerSerializationManager manager, object currentSerializer, Type objectType, Type serializerType); + } +} diff --git a/mcs/class/System/System.ComponentModel.Design.Serialization/IDesignerSerializationService.cs b/mcs/class/System/System.ComponentModel.Design.Serialization/IDesignerSerializationService.cs new file mode 100644 index 00000000000..de6b25c7264 --- /dev/null +++ b/mcs/class/System/System.ComponentModel.Design.Serialization/IDesignerSerializationService.cs @@ -0,0 +1,20 @@ +// System.ComponentModel.Design.Serialization.IDesignerSerializationService.cs +// +// Author: +// Alejandro Sánchez Acosta <raciel@gnome.org> +// +// (C) Alejandro Sánchez Acosta +// + +using System.Collections; +using System.Web.UI.Design; + +namespace System.ComponentModel.Design.Serialization +{ + public interface IDesignerSerializationService + { + ICollection Deserialize (object serializationData); + + object Serialize (ICollection objects); + } +} diff --git a/mcs/class/System/System.ComponentModel.Design.Serialization/INameCreationService.cs b/mcs/class/System/System.ComponentModel.Design.Serialization/INameCreationService.cs new file mode 100644 index 00000000000..6463d480c16 --- /dev/null +++ b/mcs/class/System/System.ComponentModel.Design.Serialization/INameCreationService.cs @@ -0,0 +1,22 @@ +// System.ComponentModel.Design.Serialization.INameCreationService.cs +// +// Author: +// Alejandro Sánchez Acosta <raciel@gnome.org> +// +// (C) Alejandro Sánchez Acosta +// + +using System.Collections; +using System.Web.UI.Design; + +namespace System.ComponentModel.Design.Serialization +{ + public interface INameCreationService + { + string CreateName (IContainer container, Type dataType); + + bool IsValidName (string name); + + void ValidateName (string name); + } +} diff --git a/mcs/class/System/System.ComponentModel.Design.Serialization/InstanceDescriptor.cs b/mcs/class/System/System.ComponentModel.Design.Serialization/InstanceDescriptor.cs new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/mcs/class/System/System.ComponentModel.Design.Serialization/InstanceDescriptor.cs diff --git a/mcs/class/System/System.ComponentModel.Design.Serialization/ResolveNameEventArgs.cs b/mcs/class/System/System.ComponentModel.Design.Serialization/ResolveNameEventArgs.cs new file mode 100644 index 00000000000..587787aa703 --- /dev/null +++ b/mcs/class/System/System.ComponentModel.Design.Serialization/ResolveNameEventArgs.cs @@ -0,0 +1,37 @@ +// System.ComponentModel.Design.Serialization.ResolveNameEventArgs.cs +// +// Author: +// Alejandro Sánchez Acosta <raciel@gnome.org> +// +// (C) Alejandro Sánchez Acosta +// + +using System.Web.UI.Design; + +namespace System.ComponentModel.Design.Serialization +{ + public class ResolveNameEventArgs : EventArgs + { + public string name; + + public ResolveNameEventArgs (string name) { + this.name = name; + } + + public string Name { + get { + return this.name; + } + } + + public object Value { + get { + return this.name; + } + + set { + name = (string) value; + } + } + } +} diff --git a/mcs/class/System/System.ComponentModel.Design.Serialization/ResolveNameEventHandler.cs b/mcs/class/System/System.ComponentModel.Design.Serialization/ResolveNameEventHandler.cs new file mode 100644 index 00000000000..c4f45283bee --- /dev/null +++ b/mcs/class/System/System.ComponentModel.Design.Serialization/ResolveNameEventHandler.cs @@ -0,0 +1,15 @@ +// System.ComponentModel.Design.Serialization.ResolvedNameEventHandler.cs +// +// Author: +// Alejandro Sánchez Acosta <raciel@gnome.org> +// +// (C) Alejandro Sánchez Acosta +// + +using System.Web.UI.Design; + +namespace System.ComponentModel.Design.Serialization +{ + [Serializable] + public delegate void ResolveNameEventHandler (object sender, ResolveNameEventArgs e); +} diff --git a/mcs/class/System/System.ComponentModel.Design.Serialization/RootDesignerSerializerAttribute.cs b/mcs/class/System/System.ComponentModel.Design.Serialization/RootDesignerSerializerAttribute.cs new file mode 100644 index 00000000000..eef6ade5b0c --- /dev/null +++ b/mcs/class/System/System.ComponentModel.Design.Serialization/RootDesignerSerializerAttribute.cs @@ -0,0 +1,75 @@ +// System.ComponentModel.Design.Serialization.RootDesignerSerializerAttribute.cs +// +// Author: +// Alejandro Sánchez Acosta <raciel@gnome.org> +// +// (C) Alejandro Sánchez Acosta +// + +using System.Web.UI.Design; + +namespace System.ComponentModel.Design.Serialization +{ + [AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface)] + public sealed class RootDesignerSerializerAttribute : Attribute + { + private string serializer; + private string baseserializer; + private Type basetypeserializer; + private Type serializertype; + 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.serializer = serializerTypeName; + this.basetypeserializer = baseSerializerType; + this.reload = reloadable; + } + + public RootDesignerSerializerAttribute (Type serializerType, Type baseSerializerType, bool reloadable) { + this.serializertype = serializerType; + this.basetypeserializer = baseSerializerType; + this.reload = reloadable; + } + + public bool Reloadable { + get { + return this.reload; + } + + set { + this.reload = value; + } + } + + public string SerializerBaseTypeName { + get { + return this.baseserializer; + } + + set { + this.baseserializer = value; + } + } + + public string SerializerTypeName { + get { + return this.serializer; + } + + set { + serializer = value; + } + } + + [MonoTODO] + public override object TypeId { + get { throw new NotImplementedException ();} + } + } +} |