Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- PropertyToken.cs
- CreateUserErrorEventArgs.cs
- TemplateControlParser.cs
- ColorAnimation.cs
- VisualStyleTypesAndProperties.cs
- ScriptBehaviorDescriptor.cs
- ObjectStateManager.cs
- QuaternionAnimationBase.cs
- AnnouncementEndpointElement.cs
- GZipDecoder.cs
- CaseCqlBlock.cs
- UnsafeNativeMethods.cs
- SrgsGrammarCompiler.cs
- SiteMapPathDesigner.cs
- Binding.cs
- ConstrainedDataObject.cs
- Win32.cs
- MessageSmuggler.cs
- TouchEventArgs.cs
- MouseActionValueSerializer.cs
- _ConnectStream.cs
- GridViewRow.cs
- ItemMap.cs
- WebRequestModulesSection.cs
- Container.cs
- ProxyFragment.cs
- ItemType.cs
- WebPartDisplayModeCollection.cs
- Events.cs
- tooltip.cs
- Menu.cs
- Query.cs
- ClientBuildManagerCallback.cs
- XPathPatternParser.cs
- AppendHelper.cs
- StdValidatorsAndConverters.cs
- ImageMapEventArgs.cs
- ListViewItemEventArgs.cs
- ThreadAbortException.cs
- WindowsStatic.cs
- ProfileInfo.cs
- AsymmetricKeyExchangeDeformatter.cs
- ObjectStateEntry.cs
- DataViewManagerListItemTypeDescriptor.cs
- TypeLoadException.cs
- TaskScheduler.cs
- DataGridViewRowConverter.cs
- PropertyGrid.cs
- CodeArrayIndexerExpression.cs
- ResourceReader.cs
- ContextBase.cs
- MultipartContentParser.cs
- TypeExtensionConverter.cs
- DesignObjectWrapper.cs
- ForEachDesigner.xaml.cs
- AddInStore.cs
- BinaryObjectInfo.cs
- EntitySet.cs
- ComponentChangedEvent.cs
- WebCategoryAttribute.cs
- PaperSize.cs
- EntityTransaction.cs
- TrackBar.cs
- Vector3DCollectionConverter.cs
- ToolStripItemEventArgs.cs
- ExtendedProperty.cs
- PassportPrincipal.cs
- ChtmlTextWriter.cs
- IntPtr.cs
- DispatcherHooks.cs
- WriteableBitmap.cs
- DataSetMappper.cs
- SqlDataSourceView.cs
- DbConnectionFactory.cs
- Vector3DValueSerializer.cs
- TextEndOfParagraph.cs
- TextEffect.cs
- ElementProxy.cs
- UIPropertyMetadata.cs
- Literal.cs
- AuthenticationModuleElement.cs
- QuaternionAnimation.cs
- prompt.cs
- InputMethodStateTypeInfo.cs
- CaseInsensitiveHashCodeProvider.cs
- AttributeCollection.cs
- ConfigXmlSignificantWhitespace.cs
- PersonalizationStateQuery.cs
- FixedSOMLineCollection.cs
- LinkButton.cs
- MemoryStream.cs
- Point3DCollection.cs
- DataServiceExpressionVisitor.cs
- CollectionViewSource.cs
- Win32.cs
- _HeaderInfoTable.cs
- StorageEndPropertyMapping.cs
- FlatButtonAppearance.cs
- ContentIterators.cs
- PasswordTextContainer.cs