Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Core / CSharp / System / Windows / Media / GeometryGroup.cs / 1 / 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. //---------------------------------------------------------------------------- // // 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
- URI.cs
- NetStream.cs
- KnownAssembliesSet.cs
- WebHttpSecurity.cs
- ServiceHost.cs
- OracleInternalConnection.cs
- BrowserCapabilitiesCompiler.cs
- COM2EnumConverter.cs
- ReceiveMessageRecord.cs
- ConstraintStruct.cs
- JsonWriter.cs
- IndexedGlyphRun.cs
- StringOutput.cs
- ScriptIgnoreAttribute.cs
- TranslateTransform.cs
- IndexOutOfRangeException.cs
- XPathNavigatorReader.cs
- ScrollPatternIdentifiers.cs
- AbstractDataSvcMapFileLoader.cs
- DiscoveryDocumentSerializer.cs
- ResourceAssociationTypeEnd.cs
- Int32.cs
- LocalizabilityAttribute.cs
- CustomExpression.cs
- X509RawDataKeyIdentifierClause.cs
- PropertyDescriptors.cs
- ButtonAutomationPeer.cs
- SetterTriggerConditionValueConverter.cs
- Enlistment.cs
- BinaryNode.cs
- UInt64Converter.cs
- COM2IPerPropertyBrowsingHandler.cs
- ProgressiveCrcCalculatingStream.cs
- HttpModulesSection.cs
- MaterialGroup.cs
- BitmapEffectvisualstate.cs
- Closure.cs
- MemoryMappedFile.cs
- FileDialog_Vista_Interop.cs
- DataSetFieldSchema.cs
- AnchoredBlock.cs
- SingleResultAttribute.cs
- QueryStringParameter.cs
- DataSourceView.cs
- WindowsPen.cs
- LongValidator.cs
- DictionaryKeyPropertyAttribute.cs
- NonSerializedAttribute.cs
- BitSet.cs
- HyperLink.cs
- MouseOverProperty.cs
- ContextDataSourceView.cs
- ConcurrentDictionary.cs
- JsonDataContract.cs
- EntityDesignerBuildProvider.cs
- AuthorizationRule.cs
- login.cs
- MaskedTextProvider.cs
- RequestCacheValidator.cs
- DataGridBoolColumn.cs
- SectionVisual.cs
- NodeLabelEditEvent.cs
- TextSchema.cs
- Panel.cs
- GeneralTransform2DTo3DTo2D.cs
- SelectorAutomationPeer.cs
- SqlMethodAttribute.cs
- ToolStripOverflow.cs
- RawStylusInputCustomData.cs
- WebChannelFactory.cs
- UnhandledExceptionEventArgs.cs
- SiteOfOriginContainer.cs
- WebPartTransformer.cs
- ProjectionCamera.cs
- WebPartCollection.cs
- Msec.cs
- HtmlEmptyTagControlBuilder.cs
- XmlQueryTypeFactory.cs
- TemplateManager.cs
- SqlParameter.cs
- DataView.cs
- XamlPoint3DCollectionSerializer.cs
- DBConnection.cs
- ItemCheckedEvent.cs
- VectorAnimation.cs
- ElementHost.cs
- XPathArrayIterator.cs
- streamingZipPartStream.cs
- BufferedGraphicsContext.cs
- Unit.cs
- Visual.cs
- HtmlElementErrorEventArgs.cs
- WebServiceHandlerFactory.cs
- EdmType.cs
- AuthenticatedStream.cs
- EnterpriseServicesHelper.cs
- _IPv6Address.cs
- HtmlAnchor.cs
- TdsParser.cs
- CollectionDataContractAttribute.cs