Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Media / DashStyle.cs / 1305600 / DashStyle.cs
//---------------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // Description: Implementation of the class DashStyle // // History: 11\15\2004: Michka - Created it // //--------------------------------------------------------------------------- using System; using MS.Internal; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Diagnostics; using System.Reflection; using System.Collections; using System.Collections.Generic; using System.Globalization; using System.Windows.Media; using System.Windows.Media.Composition; using System.Windows; using System.Text.RegularExpressions; using System.Windows.Media.Animation; using System.Runtime.InteropServices; using System.Security; using System.Security.Permissions; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; namespace System.Windows.Media { #region DashStyle ////// This class captures the array of dashe and gap lengths and the dash offset. /// [Localizability(LocalizationCategory.None, Readability = Readability.Unreadable)] public partial class DashStyle : Animatable, DUCE.IResource { #region Constructors ////// Default constructor /// public DashStyle() { } ////// Constructor from an array and offset /// /// The array of lengths of dashes and gaps, measured in Thickness units. /// If the value of dashes is null then the style will be solid /// /// /// Determines where in the dash sequence the stroke will start /// /// public DashStyle(IEnumerabledashes, Double offset) { Offset = offset; if (dashes != null) { Dashes = new DoubleCollection(dashes); } } #endregion Constructors #region Internal Methods /// /// Returns the dashes information. /// ////// Critical: Returns a pointer and manipulates unsafe code.This data /// is safe to expose, it is the pointer manipulation that makes it risky. /// [SecurityCritical] internal unsafe void GetDashData(MIL_PEN_DATA* pData, out double[] dashArray) { DoubleCollection vDashes = Dashes; int count = 0; if (vDashes != null) { count = vDashes.Count; } unsafe { pData->DashArraySize = (UInt32)count * sizeof(double); pData->DashOffset = Offset; } if (count > 0) { dashArray = vDashes._collection.ToArray(); } else { dashArray = null; } } #endregion Internal Methods } #endregion } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ItemCollection.cs
- ActivityExecutorOperation.cs
- WorkerRequest.cs
- HandleCollector.cs
- MachineKeySection.cs
- LateBoundBitmapDecoder.cs
- ToolStripSettings.cs
- TextLineResult.cs
- PersonalizationStateInfoCollection.cs
- ToolStripControlHost.cs
- DynamicResourceExtension.cs
- Blend.cs
- LateBoundBitmapDecoder.cs
- SQLRoleProvider.cs
- LeaseManager.cs
- DataTableNewRowEvent.cs
- FamilyCollection.cs
- DataStreamFromComStream.cs
- DockingAttribute.cs
- EditingCommands.cs
- ColorConvertedBitmapExtension.cs
- DataGridViewComboBoxEditingControl.cs
- DefaultProxySection.cs
- Typeface.cs
- FixedSOMGroup.cs
- SecondaryIndexDefinition.cs
- SiteMapNodeItemEventArgs.cs
- SafeBuffer.cs
- EventManager.cs
- SignatureGenerator.cs
- BinaryVersion.cs
- XmlSchemaComplexContentRestriction.cs
- SqlResolver.cs
- SafeIUnknown.cs
- StyleCollection.cs
- ToolboxService.cs
- XslCompiledTransform.cs
- StringResourceManager.cs
- RowSpanVector.cs
- SignatureGenerator.cs
- Cloud.cs
- SizeValueSerializer.cs
- QueryContinueDragEvent.cs
- LambdaCompiler.Statements.cs
- XmlDataSourceDesigner.cs
- TypeDescriptor.cs
- ConnectivityStatus.cs
- ChooseAction.cs
- RemotingServices.cs
- OleDbMetaDataFactory.cs
- CircleHotSpot.cs
- WebPartsPersonalizationAuthorization.cs
- GeneralTransform3DGroup.cs
- URLBuilder.cs
- TextBox.cs
- UseLicense.cs
- XmlSchemaInfo.cs
- PrtCap_Reader.cs
- MatrixStack.cs
- XmlCustomFormatter.cs
- ElementAction.cs
- PropertyEntry.cs
- ToolStripItemTextRenderEventArgs.cs
- HierarchicalDataSourceControl.cs
- SmtpTransport.cs
- DataGridViewCellStyleBuilderDialog.cs
- BitmapInitialize.cs
- AssemblyInfo.cs
- XhtmlBasicLiteralTextAdapter.cs
- TagPrefixCollection.cs
- ObjectContextServiceProvider.cs
- HandlerBase.cs
- ImportContext.cs
- BamlRecordHelper.cs
- CheckBoxRenderer.cs
- RegexRunner.cs
- TableCell.cs
- TdsParameterSetter.cs
- UpdateCompiler.cs
- ApplicationActivator.cs
- TraceContextEventArgs.cs
- HostExecutionContextManager.cs
- ParserHooks.cs
- ConstructorArgumentAttribute.cs
- ByteAnimationUsingKeyFrames.cs
- SqlServices.cs
- RunWorkerCompletedEventArgs.cs
- VSWCFServiceContractGenerator.cs
- Label.cs
- ChameleonKey.cs
- NodeLabelEditEvent.cs
- Metafile.cs
- Assert.cs
- StorageSetMapping.cs
- TableProviderWrapper.cs
- TextTreeFixupNode.cs
- ElementNotAvailableException.cs
- DataSvcMapFile.cs
- WindowsGraphics2.cs
- CalculatedColumn.cs