Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / CommonUI / System / Drawing / Advanced / HatchBrush.cs / 1 / HatchBrush.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
/*************************************************************************\
*
* Copyright (c) 1998-1999, Microsoft Corp. All Rights Reserved.
*
* Module Name:
*
* HatchBrush.cs
*
* Abstract:
*
* COM+ wrapper for GDI+ HatchBrush objects
*
* Revision History:
*
* 12/15/1998 [....]
* Created it.
*
\**************************************************************************/
namespace System.Drawing.Drawing2D {
using System.Runtime.InteropServices;
using System.Diagnostics;
using System;
using System.Drawing;
using System.ComponentModel;
using Microsoft.Win32;
using System.Drawing.Internal;
/**
* Represent a HatchBrush brush object
*/
///
///
/// Defines a rectangular brush with a hatch
/// style, a foreground color, and a background color.
///
public sealed class HatchBrush : Brush
{
/**
* Create a new hatch brush object
*/
///
///
///
/// Initializes a new instance of the class with the specified and foreground color.
///
///
public HatchBrush(HatchStyle hatchstyle, Color foreColor) :
this(hatchstyle, foreColor, Color.FromArgb( (int) unchecked( (int) 0xff000000) ) )
{
}
///
///
///
/// Initializes a new instance of the class with the specified ,
/// foreground color, and background color.
///
///
public HatchBrush(HatchStyle hatchstyle, Color foreColor, Color backColor)
{
IntPtr brush = IntPtr.Zero;
int status = SafeNativeMethods.Gdip.GdipCreateHatchBrush((int) hatchstyle, foreColor.ToArgb(), backColor.ToArgb(), out brush);
if (status != SafeNativeMethods.Gdip.Ok)
throw SafeNativeMethods.Gdip.StatusException(status);
SetNativeBrush(brush);
}
///
/// Constructor to initialize this object from a GDI+ native reference.
///
internal HatchBrush(IntPtr nativeBrush )
{
Debug.Assert( nativeBrush != IntPtr.Zero, "Initializing native brush with null." );
SetNativeBrush( nativeBrush );
}
///
///
/// Creates an exact copy of this .
///
public override object Clone()
{
IntPtr cloneBrush = IntPtr.Zero;
int status = SafeNativeMethods.Gdip.GdipCloneBrush(new HandleRef(this, this.NativeBrush), out cloneBrush);
if (status != SafeNativeMethods.Gdip.Ok)
throw SafeNativeMethods.Gdip.StatusException(status);
return new HatchBrush(cloneBrush);
}
/**
* Get hatch brush object attributes
*/
///
///
/// Gets the hatch style of this .
///
public HatchStyle HatchStyle
{
get {
int hatchStyle = 0;
int status = SafeNativeMethods.Gdip.GdipGetHatchStyle(new HandleRef(this, this.NativeBrush), out hatchStyle);
if (status != SafeNativeMethods.Gdip.Ok)
throw SafeNativeMethods.Gdip.StatusException(status);
return (HatchStyle) hatchStyle;
}
}
///
///
/// Gets the color of hatch lines drawn by this
/// .
///
public Color ForegroundColor
{
get {
int forecol;
int status = SafeNativeMethods.Gdip.GdipGetHatchForegroundColor(new HandleRef(this, this.NativeBrush), out forecol);
if (status != SafeNativeMethods.Gdip.Ok)
throw SafeNativeMethods.Gdip.StatusException(status);
return Color.FromArgb(forecol);
}
}
///
///
///
/// Gets the color of spaces between the hatch
/// lines drawn by this .
///
///
public Color BackgroundColor
{
get {
int backcol;
int status = SafeNativeMethods.Gdip.GdipGetHatchBackgroundColor(new HandleRef(this, this.NativeBrush), out backcol);
if (status != SafeNativeMethods.Gdip.Ok)
throw SafeNativeMethods.Gdip.StatusException(status);
return Color.FromArgb(backcol);
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ZipIOLocalFileDataDescriptor.cs
- Encoding.cs
- PolyQuadraticBezierSegment.cs
- EndpointAddress.cs
- SrgsDocumentParser.cs
- SmiContextFactory.cs
- AsymmetricSignatureFormatter.cs
- KeyboardInputProviderAcquireFocusEventArgs.cs
- followingsibling.cs
- MailAddress.cs
- Attribute.cs
- SimpleWorkerRequest.cs
- ApplyTemplatesAction.cs
- InvalidPrinterException.cs
- PageCatalogPart.cs
- ZoneLinkButton.cs
- FileUpload.cs
- CodeTryCatchFinallyStatement.cs
- DynamicRendererThreadManager.cs
- Tablet.cs
- DesignerForm.cs
- DelegatingTypeDescriptionProvider.cs
- DictationGrammar.cs
- WebBrowsableAttribute.cs
- ValueUnavailableException.cs
- ReadOnlyDataSourceView.cs
- CodeAssignStatement.cs
- WebContext.cs
- TCPClient.cs
- RegionData.cs
- Evaluator.cs
- ContentTextAutomationPeer.cs
- SchemaInfo.cs
- ServerIdentity.cs
- RbTree.cs
- CriticalFinalizerObject.cs
- DataTableMappingCollection.cs
- SEHException.cs
- WindowsSecurityTokenAuthenticator.cs
- QilStrConcat.cs
- sqlnorm.cs
- References.cs
- MsmqOutputSessionChannel.cs
- TextLineBreak.cs
- ContainerUIElement3D.cs
- AssemblyNameProxy.cs
- XmlSchemaObjectTable.cs
- x509utils.cs
- UserNamePasswordValidator.cs
- SpellerStatusTable.cs
- RangeExpression.cs
- TypeInitializationException.cs
- StreamSecurityUpgradeProvider.cs
- SqlTriggerAttribute.cs
- Label.cs
- InvalidCastException.cs
- SplashScreen.cs
- XmlKeywords.cs
- HierarchicalDataSourceControl.cs
- DataListComponentEditor.cs
- GroupDescription.cs
- MultipartIdentifier.cs
- GridViewCancelEditEventArgs.cs
- ExtensionDataObject.cs
- BinaryObjectReader.cs
- TextBox.cs
- FixedHyperLink.cs
- LeaseManager.cs
- SubtreeProcessor.cs
- DependencyPropertyChangedEventArgs.cs
- HttpWebRequest.cs
- WebBrowserNavigatingEventHandler.cs
- VectorCollection.cs
- SortKey.cs
- GeneratedView.cs
- Header.cs
- TypeDependencyAttribute.cs
- PolygonHotSpot.cs
- CoreSwitches.cs
- IntegerValidator.cs
- RotateTransform.cs
- UpDownEvent.cs
- RedistVersionInfo.cs
- WebRequest.cs
- WebPartChrome.cs
- MouseDevice.cs
- StylusEventArgs.cs
- IncrementalReadDecoders.cs
- Model3D.cs
- BamlRecordHelper.cs
- EventLogPermissionEntryCollection.cs
- ErrorStyle.cs
- IteratorFilter.cs
- WebPartAuthorizationEventArgs.cs
- OleDbRowUpdatedEvent.cs
- PrintDialog.cs
- COM2FontConverter.cs
- DrawTreeNodeEventArgs.cs
- FileDialog_Vista.cs
- ParentControlDesigner.cs