Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / CommonUI / System / Drawing / Advanced / ColorPalette.cs / 1 / 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
- RepeatButtonAutomationPeer.cs
- RadioButton.cs
- XmlStreamNodeWriter.cs
- TypeSchema.cs
- CacheDependency.cs
- ContextStaticAttribute.cs
- HttpListenerException.cs
- DataGridViewCellCancelEventArgs.cs
- ToolStripScrollButton.cs
- WsatServiceCertificate.cs
- QuaternionAnimation.cs
- XmlSchemaException.cs
- StagingAreaInputItem.cs
- FlowDocumentReader.cs
- ResXResourceSet.cs
- EncodingNLS.cs
- TableAutomationPeer.cs
- MsmqIntegrationElement.cs
- RuntimeConfig.cs
- NativeMethods.cs
- StatusStrip.cs
- XmlSerializationReader.cs
- ThreadPool.cs
- FileDialog.cs
- SecurityManager.cs
- UserMapPath.cs
- IssuedTokensHeader.cs
- DrawListViewColumnHeaderEventArgs.cs
- GetMemberBinder.cs
- VirtualDirectoryMappingCollection.cs
- ValidatingPropertiesEventArgs.cs
- BitmapEffectrendercontext.cs
- EventLogEntryCollection.cs
- IChannel.cs
- InvalidAsynchronousStateException.cs
- ResourceDescriptionAttribute.cs
- FaultPropagationRecord.cs
- ConsoleTraceListener.cs
- ListItemConverter.cs
- Style.cs
- ResponseBodyWriter.cs
- TextSpanModifier.cs
- Point3DCollection.cs
- StylusPointProperty.cs
- RoutedUICommand.cs
- PagesSection.cs
- SingleTagSectionHandler.cs
- assemblycache.cs
- ComponentSerializationService.cs
- ACE.cs
- RegionIterator.cs
- MessageEventSubscriptionService.cs
- XmlDownloadManager.cs
- TemplateContainer.cs
- ContentFileHelper.cs
- DirectoryObjectSecurity.cs
- JournalEntryStack.cs
- ApplicationException.cs
- TdsParser.cs
- ScaleTransform3D.cs
- ImageSource.cs
- ConnectivityStatus.cs
- RemoteHelper.cs
- UnknownBitmapEncoder.cs
- KeyConverter.cs
- AsymmetricAlgorithm.cs
- ItemCheckEvent.cs
- XmlSchemaComplexContent.cs
- x509store.cs
- GeometryDrawing.cs
- AmbientLight.cs
- AccessibleObject.cs
- SequenceDesigner.cs
- ConfigViewGenerator.cs
- InputQueueChannelAcceptor.cs
- SafeArrayTypeMismatchException.cs
- LabelEditEvent.cs
- _RequestLifetimeSetter.cs
- XmlException.cs
- AesCryptoServiceProvider.cs
- ComMethodElement.cs
- XPathChildIterator.cs
- MetadataSection.cs
- RegisteredArrayDeclaration.cs
- RotateTransform.cs
- GridViewUpdateEventArgs.cs
- FlowPosition.cs
- PinProtectionHelper.cs
- Point.cs
- XmlIgnoreAttribute.cs
- sqlinternaltransaction.cs
- MergeLocalizationDirectives.cs
- PassportAuthenticationModule.cs
- NodeLabelEditEvent.cs
- SessionViewState.cs
- MimeBasePart.cs
- ValidatedControlConverter.cs
- BindToObject.cs
- ObjectDataSourceView.cs
- TdsValueSetter.cs