Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / CommonUI / System / Drawing / Advanced / ColorPalette.cs / 1305376 / ColorPalette.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Drawing.Imaging { using System.Runtime.InteropServices; using System.Diagnostics; using System; using System.Drawing; ////// /// Defines an array of colors that make up a /// color palette. /// public sealed class ColorPalette { /// Note (From VSWhidbey#444618): We don't provide a public constructor for ColorPalette because if we allow /// arbitrary creation of color palettes you could in theroy not only change the color entries, but the size /// of the palette and that is not valid for an image (meaning you cannot change the palette size for an image). /// ColorPalettes are only valid for "indexed" images like GIFs. private int flags; private Color[] entries; ////// /// public int Flags { get { return flags; } } ////// Specifies how to interpret the color /// information in the array of colors. /// ////// /// Specifies an array of public Color[] Entries { get { return entries; } } internal ColorPalette(int count) { entries = new Color[count]; } internal ColorPalette() { entries = new Color[1]; } internal void ConvertFromMemory(IntPtr memory) { // Memory layout is: // UINT Flags // UINT Count // ARGB Entries[size] flags = Marshal.ReadInt32(memory); int size; size = Marshal.ReadInt32((IntPtr)((long)memory + 4)); // Marshal.SizeOf(size.GetType()) entries = new Color[size]; for (int i=0; iobjects. /// // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Drawing.Imaging { using System.Runtime.InteropServices; using System.Diagnostics; using System; using System.Drawing; /// /// /// Defines an array of colors that make up a /// color palette. /// public sealed class ColorPalette { /// Note (From VSWhidbey#444618): We don't provide a public constructor for ColorPalette because if we allow /// arbitrary creation of color palettes you could in theroy not only change the color entries, but the size /// of the palette and that is not valid for an image (meaning you cannot change the palette size for an image). /// ColorPalettes are only valid for "indexed" images like GIFs. private int flags; private Color[] entries; ////// /// public int Flags { get { return flags; } } ////// Specifies how to interpret the color /// information in the array of colors. /// ////// /// Specifies an array of public Color[] Entries { get { return entries; } } internal ColorPalette(int count) { entries = new Color[count]; } internal ColorPalette() { entries = new Color[1]; } internal void ConvertFromMemory(IntPtr memory) { // Memory layout is: // UINT Flags // UINT Count // ARGB Entries[size] flags = Marshal.ReadInt32(memory); int size; size = Marshal.ReadInt32((IntPtr)((long)memory + 4)); // Marshal.SizeOf(size.GetType()) entries = new Color[size]; for (int i=0; iobjects. ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- __TransparentProxy.cs
- TextEditorContextMenu.cs
- SmtpNetworkElement.cs
- RelationshipConstraintValidator.cs
- UnitySerializationHolder.cs
- ReflectPropertyDescriptor.cs
- StrongNamePublicKeyBlob.cs
- Font.cs
- AsnEncodedData.cs
- ExpandSegmentCollection.cs
- SamlDoNotCacheCondition.cs
- FileUpload.cs
- SafeViewOfFileHandle.cs
- XmlSignificantWhitespace.cs
- DbConnectionPoolCounters.cs
- PeerToPeerException.cs
- ImageMapEventArgs.cs
- mediapermission.cs
- TextWriterTraceListener.cs
- DataServiceCollectionOfT.cs
- SqlConnection.cs
- NaturalLanguageHyphenator.cs
- Buffer.cs
- CompressedStack.cs
- HashRepartitionEnumerator.cs
- CodeFieldReferenceExpression.cs
- ImmComposition.cs
- ScrollViewer.cs
- SqlXmlStorage.cs
- FlowDocumentView.cs
- OpCodes.cs
- TdsParserStaticMethods.cs
- SmiGettersStream.cs
- DbModificationCommandTree.cs
- WebEventCodes.cs
- QueryCacheManager.cs
- StaticSiteMapProvider.cs
- StrokeRenderer.cs
- Propagator.JoinPropagator.JoinPredicateVisitor.cs
- IgnoreFlushAndCloseStream.cs
- ListControlDesigner.cs
- LongAverageAggregationOperator.cs
- BuildProviderCollection.cs
- ZipIOExtraFieldElement.cs
- ClusterRegistryConfigurationProvider.cs
- XmlSchemaIdentityConstraint.cs
- SynchronizedDispatch.cs
- TypedReference.cs
- XmlSchemas.cs
- ByteStack.cs
- NameValueCollection.cs
- QuerySubExprEliminator.cs
- XPathSelfQuery.cs
- DataComponentGenerator.cs
- FormViewDeleteEventArgs.cs
- Figure.cs
- CreatingCookieEventArgs.cs
- PositiveTimeSpanValidator.cs
- HttpHeaderCollection.cs
- PhysicalOps.cs
- DbMetaDataFactory.cs
- UInt64.cs
- MdImport.cs
- AuthorizationSection.cs
- XmlConverter.cs
- EntityCommandExecutionException.cs
- WebBrowserProgressChangedEventHandler.cs
- NullReferenceException.cs
- PeerNameResolver.cs
- HttpException.cs
- EntityException.cs
- CodeAttributeArgumentCollection.cs
- UpdatePanel.cs
- MethodBody.cs
- XmlComplianceUtil.cs
- SessionStateSection.cs
- SegmentInfo.cs
- TemplatePagerField.cs
- XmlAtomicValue.cs
- SiteMapNodeItem.cs
- LinqExpressionNormalizer.cs
- RegexCharClass.cs
- SignatureDescription.cs
- DoubleAnimation.cs
- WinEventWrap.cs
- LogEntryDeserializer.cs
- CheckableControlBaseAdapter.cs
- XamlFigureLengthSerializer.cs
- TransformValueSerializer.cs
- BufferedReadStream.cs
- PropertyDescriptor.cs
- UnknownBitmapEncoder.cs
- ProfileService.cs
- MenuStrip.cs
- LayoutExceptionEventArgs.cs
- UdpDiscoveryMessageFilter.cs
- InstanceNotFoundException.cs
- AddInProcess.cs
- CustomAttributeFormatException.cs
- ViewEvent.cs