diff options
Diffstat (limited to 'src')
13 files changed, 93 insertions, 18 deletions
diff --git a/src/System.Drawing.Common/ref/System.Drawing.Common.cs b/src/System.Drawing.Common/ref/System.Drawing.Common.cs index 95dc5c6b7e..2d6b0ae7da 100644 --- a/src/System.Drawing.Common/ref/System.Drawing.Common.cs +++ b/src/System.Drawing.Common/ref/System.Drawing.Common.cs @@ -1,3 +1,10 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. +// ------------------------------------------------------------------------------ +// Changes to this file must follow the http://aka.ms/api-review process +// ------------------------------------------------------------------------------ + namespace System.Drawing { [System.Runtime.InteropServices.ComVisibleAttribute(true)] @@ -283,7 +290,7 @@ namespace System.Drawing Whiteness = 16711778, } [System.Runtime.InteropServices.ComVisibleAttribute(true)] - public sealed partial class Font : System.MarshalByRefObject, System.ICloneable, System.IDisposable + public sealed partial class Font : System.MarshalByRefObject, System.ICloneable, System.IDisposable, Runtime.Serialization.ISerializable { public Font(System.Drawing.Font prototype, System.Drawing.FontStyle newStyle) { } public Font(System.Drawing.FontFamily family, float emSize) { } @@ -340,6 +347,7 @@ namespace System.Drawing public float GetHeight() { throw null; } public float GetHeight(System.Drawing.Graphics graphics) { throw null; } public float GetHeight(float dpi) { throw null; } + void Runtime.Serialization.ISerializable.GetObjectData(Runtime.Serialization.SerializationInfo info, Runtime.Serialization.StreamingContext context) { } public System.IntPtr ToHfont() { throw null; } public void ToLogFont(object logFont) { } public void ToLogFont(object logFont, System.Drawing.Graphics graphics) { } @@ -645,7 +653,7 @@ namespace System.Drawing Point = 3, World = 0, } - public sealed partial class Icon : System.MarshalByRefObject, System.ICloneable, System.IDisposable + public sealed partial class Icon : System.MarshalByRefObject, System.ICloneable, System.IDisposable, Runtime.Serialization.ISerializable { public Icon(System.Drawing.Icon original, System.Drawing.Size size) { } public Icon(System.Drawing.Icon original, int width, int height) { } @@ -668,6 +676,7 @@ namespace System.Drawing public static System.Drawing.Icon ExtractAssociatedIcon(string filePath) { throw null; } ~Icon() { } public static System.Drawing.Icon FromHandle(System.IntPtr handle) { throw null; } + void Runtime.Serialization.ISerializable.GetObjectData(Runtime.Serialization.SerializationInfo info, Runtime.Serialization.StreamingContext context) { } public void Save(System.IO.Stream outputStream) { } [System.Security.Permissions.SecurityPermissionAttribute(System.Security.Permissions.SecurityAction.LinkDemand, Flags=(System.Security.Permissions.SecurityPermissionFlag)(128))] public System.Drawing.Bitmap ToBitmap() { throw null; } @@ -684,7 +693,7 @@ namespace System.Drawing } [System.ComponentModel.ImmutableObjectAttribute(true)] [System.Runtime.InteropServices.ComVisibleAttribute(true)] - public abstract partial class Image : System.MarshalByRefObject, System.ICloneable, System.IDisposable + public abstract partial class Image : System.MarshalByRefObject, System.ICloneable, System.IDisposable, Runtime.Serialization.ISerializable { internal Image() { } [System.ComponentModel.BrowsableAttribute(false)] @@ -728,6 +737,7 @@ namespace System.Drawing public System.Drawing.RectangleF GetBounds(ref System.Drawing.GraphicsUnit pageUnit) { throw null; } public System.Drawing.Imaging.EncoderParameters GetEncoderParameterList(System.Guid encoder) { throw null; } public int GetFrameCount(System.Drawing.Imaging.FrameDimension dimension) { throw null; } + void Runtime.Serialization.ISerializable.GetObjectData(Runtime.Serialization.SerializationInfo info, Runtime.Serialization.StreamingContext context) { } public static int GetPixelFormatSize(System.Drawing.Imaging.PixelFormat pixfmt) { throw null; } public System.Drawing.Imaging.PropertyItem GetPropertyItem(int propid) { throw null; } public System.Drawing.Image GetThumbnailImage(int thumbWidth, int thumbHeight, System.Drawing.Image.GetThumbnailImageAbort callback, System.IntPtr callbackData) { throw null; } @@ -2530,6 +2540,7 @@ namespace System.Drawing.Printing } public partial class InvalidPrinterException : System.SystemException { + protected InvalidPrinterException(Runtime.Serialization.SerializationInfo info, Runtime.Serialization.StreamingContext context) { } public InvalidPrinterException(System.Drawing.Printing.PrinterSettings settings) { } } public partial class Margins : System.ICloneable @@ -3157,4 +3168,4 @@ namespace System.Drawing.Design } -*/
\ No newline at end of file +*/ diff --git a/src/System.Drawing.Common/src/System.Drawing.Common.csproj b/src/System.Drawing.Common/src/System.Drawing.Common.csproj index a03880ae68..478295c46e 100644 --- a/src/System.Drawing.Common/src/System.Drawing.Common.csproj +++ b/src/System.Drawing.Common/src/System.Drawing.Common.csproj @@ -138,6 +138,7 @@ <Compile Include="System\Drawing\PropertyItemInternal.cs" /> <Compile Include="System\Drawing\Printing\Duplex.cs" /> <Compile Include="System\Drawing\Printing\InvalidPrinterException.cs" /> + <Compile Include="System\Drawing\Printing\InvalidPrinterException.NotSerializable.cs" /> <Compile Include="System\Drawing\Printing\Margins.cs" /> <Compile Include="System\Drawing\Printing\PaperKinds.cs" /> <Compile Include="System\Drawing\Printing\PaperSize.cs" /> @@ -199,12 +200,15 @@ <Compile Include="System\Drawing\Drawing2D\Matrix.cs" /> <Compile Include="System\Drawing\Drawing2D\PathGradientBrush.cs" /> <Compile Include="System\Drawing\Font.cs" /> + <Compile Include="System\Drawing\Font.NotSerializable.cs" /> <Compile Include="System\Drawing\FontFamily.cs" /> <Compile Include="System\Drawing\GdiplusNative.Windows.cs" /> <Compile Include="System\Drawing\Graphics.cs" /> <Compile Include="System\Drawing\GraphicsContext.cs" /> <Compile Include="System\Drawing\Icon.cs" /> + <Compile Include="System\Drawing\Icon.NotSerializable.cs" /> <Compile Include="System\Drawing\Image.cs" /> + <Compile Include="System\Drawing\Image.NotSerializable.cs" /> <Compile Include="System\Drawing\ImageAnimator.cs" /> <Compile Include="System\Drawing\ImageInfo.cs" /> <Compile Include="System\Drawing\Imaging\BitmapData.cs" /> diff --git a/src/System.Drawing.Common/src/System/Drawing/Font.NotSerializable.cs b/src/System.Drawing.Common/src/System/Drawing/Font.NotSerializable.cs new file mode 100644 index 0000000000..d4bf27db71 --- /dev/null +++ b/src/System.Drawing.Common/src/System/Drawing/Font.NotSerializable.cs @@ -0,0 +1,16 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System.Runtime.Serialization; + +namespace System.Drawing +{ + partial class Font + { + void ISerializable.GetObjectData(SerializationInfo si, StreamingContext context) + { + throw new PlatformNotSupportedException(); + } + } +} diff --git a/src/System.Drawing.Common/src/System/Drawing/Font.Serializable.cs b/src/System.Drawing.Common/src/System/Drawing/Font.Serializable.cs index 8e42433fc4..b0f3e4ccde 100644 --- a/src/System.Drawing.Common/src/System/Drawing/Font.Serializable.cs +++ b/src/System.Drawing.Common/src/System/Drawing/Font.Serializable.cs @@ -10,7 +10,7 @@ using System.Security.Permissions; namespace System.Drawing { [Serializable] - partial class Font : ISerializable + partial class Font { private Font(SerializationInfo info, StreamingContext context) { diff --git a/src/System.Drawing.Common/src/System/Drawing/Font.cs b/src/System.Drawing.Common/src/System/Drawing/Font.cs index 763165287d..ea88cbfda6 100644 --- a/src/System.Drawing.Common/src/System/Drawing/Font.cs +++ b/src/System.Drawing.Common/src/System/Drawing/Font.cs @@ -7,6 +7,7 @@ using System.Diagnostics; using System.Drawing.Internal; using System.Globalization; using System.Runtime.InteropServices; +using System.Runtime.Serialization; namespace System.Drawing { @@ -14,7 +15,7 @@ namespace System.Drawing /// Defines a particular format for text, including font face, size, and style attributes. /// </summary> [ComVisible(true)] - public sealed partial class Font : MarshalByRefObject, ICloneable, IDisposable + public sealed partial class Font : MarshalByRefObject, ICloneable, IDisposable, ISerializable { private const int LogFontCharSetOffset = 23; private const int LogFontNameOffset = 28; diff --git a/src/System.Drawing.Common/src/System/Drawing/Icon.NotSerializable.cs b/src/System.Drawing.Common/src/System/Drawing/Icon.NotSerializable.cs new file mode 100644 index 0000000000..544342ec38 --- /dev/null +++ b/src/System.Drawing.Common/src/System/Drawing/Icon.NotSerializable.cs @@ -0,0 +1,16 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System.Runtime.Serialization; + +namespace System.Drawing +{ + partial class Icon + { + void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context) + { + throw new PlatformNotSupportedException(); + } + } +} diff --git a/src/System.Drawing.Common/src/System/Drawing/Icon.Serializable.cs b/src/System.Drawing.Common/src/System/Drawing/Icon.Serializable.cs index a71b23153b..8cd871c9b8 100644 --- a/src/System.Drawing.Common/src/System/Drawing/Icon.Serializable.cs +++ b/src/System.Drawing.Common/src/System/Drawing/Icon.Serializable.cs @@ -9,7 +9,7 @@ using System.Security.Permissions; namespace System.Drawing { [Serializable] - partial class Icon : ISerializable + partial class Icon { private Icon(SerializationInfo info, StreamingContext context) { diff --git a/src/System.Drawing.Common/src/System/Drawing/Icon.cs b/src/System.Drawing.Common/src/System/Drawing/Icon.cs index 598e25922e..0d38d257e5 100644 --- a/src/System.Drawing.Common/src/System/Drawing/Icon.cs +++ b/src/System.Drawing.Common/src/System/Drawing/Icon.cs @@ -8,11 +8,12 @@ using System.Drawing.Imaging; using System.Drawing.Internal; using System.IO; using System.Runtime.InteropServices; +using System.Runtime.Serialization; using System.Text; namespace System.Drawing { - public sealed partial class Icon : MarshalByRefObject, ICloneable, IDisposable + public sealed partial class Icon : MarshalByRefObject, ICloneable, IDisposable, ISerializable { #if FINALIZATION_WATCH private string allocationSite = Graphics.GetAllocationStack(); diff --git a/src/System.Drawing.Common/src/System/Drawing/Image.NotSerializable.cs b/src/System.Drawing.Common/src/System/Drawing/Image.NotSerializable.cs new file mode 100644 index 0000000000..a08ca4d9f0 --- /dev/null +++ b/src/System.Drawing.Common/src/System/Drawing/Image.NotSerializable.cs @@ -0,0 +1,16 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System.Runtime.Serialization; + +namespace System.Drawing +{ + partial class Image + { + void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context) + { + throw new PlatformNotSupportedException(); + } + } +} diff --git a/src/System.Drawing.Common/src/System/Drawing/Image.Serializable.cs b/src/System.Drawing.Common/src/System/Drawing/Image.Serializable.cs index 1d690657e0..ffb5f9d14d 100644 --- a/src/System.Drawing.Common/src/System/Drawing/Image.Serializable.cs +++ b/src/System.Drawing.Common/src/System/Drawing/Image.Serializable.cs @@ -11,7 +11,7 @@ using System.Security.Permissions; namespace System.Drawing { [Serializable] - partial class Image : ISerializable + partial class Image { #pragma warning disable CA2229 internal Image(SerializationInfo info, StreamingContext context) diff --git a/src/System.Drawing.Common/src/System/Drawing/Image.cs b/src/System.Drawing.Common/src/System/Drawing/Image.cs index 450e474fba..f827c4c2de 100644 --- a/src/System.Drawing.Common/src/System/Drawing/Image.cs +++ b/src/System.Drawing.Common/src/System/Drawing/Image.cs @@ -9,6 +9,7 @@ using System.Drawing.Internal; using System.Globalization; using System.IO; using System.Runtime.InteropServices; +using System.Runtime.Serialization; namespace System.Drawing { @@ -17,7 +18,7 @@ namespace System.Drawing /// </summary> [ImmutableObject(true)] [ComVisible(true)] - public abstract partial class Image : MarshalByRefObject, ICloneable, IDisposable + public abstract partial class Image : MarshalByRefObject, ICloneable, IDisposable, ISerializable { #if FINALIZATION_WATCH private string allocationSite = Graphics.GetAllocationStack(); diff --git a/src/System.Drawing.Common/src/System/Drawing/Printing/InvalidPrinterException.NotSerializable.cs b/src/System.Drawing.Common/src/System/Drawing/Printing/InvalidPrinterException.NotSerializable.cs new file mode 100644 index 0000000000..3df9fff78d --- /dev/null +++ b/src/System.Drawing.Common/src/System/Drawing/Printing/InvalidPrinterException.NotSerializable.cs @@ -0,0 +1,16 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System.Runtime.Serialization; + +namespace System.Drawing.Printing +{ + partial class InvalidPrinterException + { + protected InvalidPrinterException(SerializationInfo info, StreamingContext context) : base(info, context) + { + throw new PlatformNotSupportedException(); + } + } +} diff --git a/src/shims/ApiCompatBaseline.netcoreapp.netfx461.txt b/src/shims/ApiCompatBaseline.netcoreapp.netfx461.txt index a251a6bbf3..2820a54b9e 100644 --- a/src/shims/ApiCompatBaseline.netcoreapp.netfx461.txt +++ b/src/shims/ApiCompatBaseline.netcoreapp.netfx461.txt @@ -106,13 +106,6 @@ MembersMustExist : Member 'System.DirectoryServices.Protocols.ModifyDNRequest.To MembersMustExist : Member 'System.DirectoryServices.Protocols.ModifyRequest.ToXmlNode(System.Xml.XmlDocument)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'System.DirectoryServices.Protocols.SearchRequest..ctor(System.String, System.Xml.XmlDocument, System.DirectoryServices.Protocols.SearchScope, System.String[])' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'System.DirectoryServices.Protocols.SearchRequest.ToXmlNode(System.Xml.XmlDocument)' does not exist in the implementation but it does exist in the contract. -Compat issues with assembly System.Drawing: -CannotRemoveBaseTypeOrInterface : Type 'System.Drawing.Bitmap' does not implement interface 'System.Runtime.Serialization.ISerializable' in the implementation but it does in the contract. -CannotRemoveBaseTypeOrInterface : Type 'System.Drawing.Font' does not implement interface 'System.Runtime.Serialization.ISerializable' in the implementation but it does in the contract. -CannotRemoveBaseTypeOrInterface : Type 'System.Drawing.Icon' does not implement interface 'System.Runtime.Serialization.ISerializable' in the implementation but it does in the contract. -CannotRemoveBaseTypeOrInterface : Type 'System.Drawing.Image' does not implement interface 'System.Runtime.Serialization.ISerializable' in the implementation but it does in the contract. -CannotRemoveBaseTypeOrInterface : Type 'System.Drawing.Imaging.Metafile' does not implement interface 'System.Runtime.Serialization.ISerializable' in the implementation but it does in the contract. -MembersMustExist : Member 'System.Drawing.Printing.InvalidPrinterException..ctor(System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)' does not exist in the implementation but it does exist in the contract. Compat issues with assembly System.Security: MembersMustExist : Member 'System.Security.Cryptography.CryptographicAttributeObjectCollection.IsSynchronized.get()' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'System.Security.Cryptography.CryptographicAttributeObjectCollection.SyncRoot.get()' does not exist in the implementation but it does exist in the contract. @@ -319,4 +312,4 @@ TypesMustExist : Type 'System.Windows.Threading.DispatcherUnhandledExceptionEven TypesMustExist : Type 'System.Windows.Threading.DispatcherUnhandledExceptionEventHandler' does not exist in the implementation but it does exist in the contract. TypesMustExist : Type 'System.Windows.Threading.DispatcherUnhandledExceptionFilterEventArgs' does not exist in the implementation but it does exist in the contract. TypesMustExist : Type 'System.Windows.Threading.DispatcherUnhandledExceptionFilterEventHandler' does not exist in the implementation but it does exist in the contract. -Total Issues: 306 +Total Issues: 300 |