Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / CommonUI / System / Drawing / Advanced / AdjustableArrowCap.cs / 1 / AdjustableArrowCap.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /*************************************************************************\ * * Copyright (c) 1998-2000, Microsoft Corp. All Rights Reserved. * * Module Name: * * AdjustableArrowCap.cs * * Abstract: * * Native GDI+ AdjustableArrowCap structure. * * Revision History: * * 3/14/2k [....] * Created it. * \**************************************************************************/ namespace System.Drawing.Drawing2D { using Microsoft.Win32; using System; using System.ComponentModel; using System.Diagnostics; using System.Drawing; using System.Drawing.Internal; using System.Runtime.InteropServices; ////// /// Represents an adjustable arrow-shaped line /// cap. /// public sealed class AdjustableArrowCap : CustomLineCap { internal AdjustableArrowCap(IntPtr nativeCap) : base(nativeCap) {} ////// /// Initializes a new instance of the public AdjustableArrowCap(float width, float height) : this(width, height, true) {} ///class with the specified width and /// height. /// /// /// public AdjustableArrowCap(float width, float height, bool isFilled) { IntPtr nativeCap = IntPtr.Zero; int status = SafeNativeMethods.Gdip.GdipCreateAdjustableArrowCap( height, width, isFilled, out nativeCap); if (status != SafeNativeMethods.Gdip.Ok) throw SafeNativeMethods.Gdip.StatusException(status); SetNativeLineCap(nativeCap); } private void _SetHeight(float height) { int status = SafeNativeMethods.Gdip.GdipSetAdjustableArrowCapHeight(new HandleRef(this, nativeCap), height); if (status != SafeNativeMethods.Gdip.Ok) throw SafeNativeMethods.Gdip.StatusException(status); } private float _GetHeight() { float height; int status = SafeNativeMethods.Gdip.GdipGetAdjustableArrowCapHeight(new HandleRef(this, nativeCap), out height); if (status != SafeNativeMethods.Gdip.Ok) throw SafeNativeMethods.Gdip.StatusException(status); return height; } ////// Initializes a new instance of the ///class with the specified width, /// height, and fill property. /// /// /// Gets or sets the height of the arrow cap. /// public float Height { get { return _GetHeight(); } set { _SetHeight(value); } } private void _SetWidth(float width) { int status = SafeNativeMethods.Gdip.GdipSetAdjustableArrowCapWidth(new HandleRef(this, nativeCap), width); if (status != SafeNativeMethods.Gdip.Ok) throw SafeNativeMethods.Gdip.StatusException(status); } private float _GetWidth() { float width; int status = SafeNativeMethods.Gdip.GdipGetAdjustableArrowCapWidth(new HandleRef(this, nativeCap), out width); if (status != SafeNativeMethods.Gdip.Ok) throw SafeNativeMethods.Gdip.StatusException(status); return width; } ////// /// Gets or sets the width of the arrow cap. /// public float Width { get { return _GetWidth(); } set { _SetWidth(value); } } private void _SetMiddleInset(float middleInset) { int status = SafeNativeMethods.Gdip.GdipSetAdjustableArrowCapMiddleInset(new HandleRef(this, nativeCap), middleInset); if (status != SafeNativeMethods.Gdip.Ok) throw SafeNativeMethods.Gdip.StatusException(status); } private float _GetMiddleInset() { float middleInset; int status = SafeNativeMethods.Gdip.GdipGetAdjustableArrowCapMiddleInset(new HandleRef(this, nativeCap), out middleInset); if (status != SafeNativeMethods.Gdip.Ok) throw SafeNativeMethods.Gdip.StatusException(status); return middleInset; } ////// /// public float MiddleInset { get { return _GetMiddleInset(); } set { _SetMiddleInset(value); } } private void _SetFillState(bool isFilled) { int status = SafeNativeMethods.Gdip.GdipSetAdjustableArrowCapFillState(new HandleRef(this, nativeCap), isFilled); if (status != SafeNativeMethods.Gdip.Ok) throw SafeNativeMethods.Gdip.StatusException(status); } private bool _IsFilled() { bool isFilled = false; int status = SafeNativeMethods.Gdip.GdipGetAdjustableArrowCapFillState(new HandleRef(this, nativeCap), out isFilled); if (status != SafeNativeMethods.Gdip.Ok) throw SafeNativeMethods.Gdip.StatusException(status); return isFilled; } ////// Gets or set the number of pixels between the outline of the arrow cap and the fill. /// ////// /// Gets or sets a value indicating whether the /// arrow cap is filled. /// public bool Filled { get { return _IsFilled(); } set { _SetFillState(value); } } } } // 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
- BuildProviderUtils.cs
- HostingEnvironmentSection.cs
- Operator.cs
- GraphicsPathIterator.cs
- MemoryStream.cs
- ProviderUtil.cs
- RowVisual.cs
- FamilyMap.cs
- PriorityItem.cs
- BaseComponentEditor.cs
- CachedCompositeFamily.cs
- BoundPropertyEntry.cs
- XmlAttributeCache.cs
- StreamResourceInfo.cs
- TcpDuplicateContext.cs
- Double.cs
- SimpleFieldTemplateFactory.cs
- WindowAutomationPeer.cs
- RowSpanVector.cs
- RoutedEventArgs.cs
- XmlNodeWriter.cs
- oledbmetadatacollectionnames.cs
- GorillaCodec.cs
- XmlTextReaderImpl.cs
- DataGridViewColumnHeaderCell.cs
- CreateUserWizardStep.cs
- InlineCollection.cs
- FixedStringLookup.cs
- PostBackOptions.cs
- EventLogEntryCollection.cs
- ConnectionsZone.cs
- DecimalAnimationUsingKeyFrames.cs
- NumberFunctions.cs
- CoTaskMemHandle.cs
- CombinedGeometry.cs
- entitydatasourceentitysetnameconverter.cs
- IgnoreSectionHandler.cs
- BamlTreeNode.cs
- ObfuscationAttribute.cs
- MetadataImporter.cs
- PerspectiveCamera.cs
- ColorConverter.cs
- Dispatcher.cs
- TextEndOfSegment.cs
- EmptyEnumerator.cs
- Intellisense.cs
- IpcPort.cs
- CustomCredentialPolicy.cs
- EditorZoneBase.cs
- TypePropertyEditor.cs
- ProxyWebPartConnectionCollection.cs
- AlphabetConverter.cs
- ProcessHostConfigUtils.cs
- StreamWriter.cs
- SortKey.cs
- DataGridCheckBoxColumn.cs
- ArrayElementGridEntry.cs
- TrustManager.cs
- VisualStyleInformation.cs
- TableLayoutPanel.cs
- StorageComplexPropertyMapping.cs
- NamespaceInfo.cs
- ISFClipboardData.cs
- SiteMapNodeCollection.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- StringReader.cs
- PreviewKeyDownEventArgs.cs
- Line.cs
- UnsignedPublishLicense.cs
- DataGridViewRowHeightInfoNeededEventArgs.cs
- XmlIgnoreAttribute.cs
- UInt32Storage.cs
- HelpInfo.cs
- ComponentDispatcherThread.cs
- ContainerUIElement3D.cs
- SendMailErrorEventArgs.cs
- FixedDocument.cs
- ProcessInfo.cs
- AttachInfo.cs
- FixedFindEngine.cs
- SqlException.cs
- TreeViewEvent.cs
- CustomError.cs
- CodeAttachEventStatement.cs
- SmtpMail.cs
- DataColumnMappingCollection.cs
- RunInstallerAttribute.cs
- HostedBindingBehavior.cs
- SemaphoreSlim.cs
- CharacterBufferReference.cs
- DataColumnChangeEvent.cs
- EnumUnknown.cs
- BuildProviderUtils.cs
- KeyInstance.cs
- Empty.cs
- EndpointDiscoveryMetadataCD1.cs
- CalendarDay.cs
- TextDecorationCollectionConverter.cs
- ConfigXmlCDataSection.cs
- SqlFactory.cs