Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Media / GeometryGroup.cs / 1305600 / GeometryGroup.cs
//---------------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // Description: Implementation of GeometryGroup // // History: // 2004/11/11-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.Text; using System.Globalization; using System.Windows.Media; using System.Windows; using System.Windows.Media.Composition; using System.Text.RegularExpressions; using System.Windows.Media.Animation; using System.Windows.Markup; using System.Runtime.InteropServices; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; namespace System.Windows.Media { #region GeometryGroup ////// GeometryGroup /// [ContentProperty("Children")] public sealed partial class GeometryGroup : Geometry { #region Constructors ////// Default constructor /// public GeometryGroup() { } #endregion #region Overrides ////// GetPathGeometryData - returns a struct which contains this Geometry represented /// as a path geometry's serialized format. /// internal override PathGeometryData GetPathGeometryData() { PathGeometry pathGeometry = GetAsPathGeometry(); return pathGeometry.GetPathGeometryData(); } internal override PathGeometry GetAsPathGeometry() { PathGeometry pg = new PathGeometry(); pg.AddGeometry(this); pg.FillRule = FillRule; Debug.Assert(pg.CanFreeze); return pg; } #endregion #region GetPathFigureCollection internal override PathFigureCollection GetTransformedFigureCollection(Transform transform) { // Combine the transform argument with the internal transform Transform combined = new MatrixTransform(GetCombinedMatrix(transform)); PathFigureCollection result = new PathFigureCollection(); GeometryCollection children = Children; if (children != null) { for (int i = 0; i < children.Count; i++) { PathFigureCollection pathFigures = children.Internal_GetItem(i).GetTransformedFigureCollection(combined); if (pathFigures != null) { int count = pathFigures.Count; for (int j = 0; j < count; ++j) { result.Add(pathFigures[j]); } } } } return result; } #endregion #region IsEmpty ////// Returns true if this geometry is empty /// public override bool IsEmpty() { GeometryCollection children = Children; if (children == null) { return true; } for (int i=0; i/// Returns true if this geometry may have curved segments /// public override bool MayHaveCurves() { GeometryCollection children = Children; if (children == null) { return false; } for (int i = 0; i < children.Count; i++) { if (((Geometry)children[i]).MayHaveCurves()) { return true; } } return false; } } #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
- RsaSecurityToken.cs
- UnmanagedMarshal.cs
- CryptoApi.cs
- GridViewUpdatedEventArgs.cs
- DelegateOutArgument.cs
- Int32Storage.cs
- CursorEditor.cs
- PersianCalendar.cs
- ResolveResponseInfo.cs
- CompositeFontParser.cs
- SudsParser.cs
- RelationshipEndCollection.cs
- wmiprovider.cs
- TdsEnums.cs
- XslException.cs
- SafeFileMapViewHandle.cs
- Control.cs
- KnownTypesProvider.cs
- WhitespaceRuleLookup.cs
- SelectionUIHandler.cs
- PopupRoot.cs
- ClientFormsIdentity.cs
- PropertyContainer.cs
- AmbiguousMatchException.cs
- TransformerConfigurationWizardBase.cs
- MachineKeyValidationConverter.cs
- CompressStream.cs
- MatchAllMessageFilter.cs
- EpmHelper.cs
- RowVisual.cs
- Identifier.cs
- MappedMetaModel.cs
- DataGridPagerStyle.cs
- SortedSet.cs
- XPathDocument.cs
- ObjectFullSpanRewriter.cs
- AllMembershipCondition.cs
- EntityViewContainer.cs
- Part.cs
- SqlConnectionString.cs
- ButtonDesigner.cs
- AuthorizationSection.cs
- CollectionEditVerbManager.cs
- ImportOptions.cs
- Int16.cs
- RelationshipSet.cs
- AttachmentService.cs
- EnumDataContract.cs
- ProtectedProviderSettings.cs
- RequiredAttributeAttribute.cs
- UIntPtr.cs
- XpsInterleavingPolicy.cs
- TextLineBreak.cs
- DomNameTable.cs
- HttpListenerRequest.cs
- ConfigurationValues.cs
- ServiceOperationUIEditor.cs
- XPathDocumentNavigator.cs
- WebException.cs
- Cell.cs
- BroadcastEventHelper.cs
- DaylightTime.cs
- SmiXetterAccessMap.cs
- PersistNameAttribute.cs
- LoadItemsEventArgs.cs
- DiffuseMaterial.cs
- FullTextLine.cs
- Line.cs
- RawMouseInputReport.cs
- ConfigurationPropertyCollection.cs
- Operator.cs
- BitmapMetadataBlob.cs
- NGCSerializerAsync.cs
- HttpCacheParams.cs
- FixedSOMImage.cs
- AssemblyBuilder.cs
- XmlSchemaComplexContentRestriction.cs
- XPathNodeIterator.cs
- ScalarType.cs
- AncillaryOps.cs
- HtmlControl.cs
- MetadataItemSerializer.cs
- Latin1Encoding.cs
- ProfileSection.cs
- NTAccount.cs
- Polygon.cs
- DefaultValueTypeConverter.cs
- AuthorizationPolicyTypeElementCollection.cs
- MarkupProperty.cs
- IdentifierCreationService.cs
- EditorAttribute.cs
- DataGridItemCollection.cs
- TemplatedWizardStep.cs
- ToolboxItemCollection.cs
- IPPacketInformation.cs
- DrawingGroup.cs
- WebPartUtil.cs
- DynamicResourceExtension.cs
- DebuggerAttributes.cs
- LayoutDump.cs