Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Core / System / Windows / Media / GeometryGroup.cs / 1 / GeometryGroup.cs
//---------------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // Description: Implementation of GeometryGroup // // History: // 2004/11/11-[....] // 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- UiaCoreProviderApi.cs
- MinimizableAttributeTypeConverter.cs
- altserialization.cs
- SectionVisual.cs
- ExtensionDataObject.cs
- VectorCollectionConverter.cs
- PrintPreviewDialog.cs
- DateTimeFormatInfo.cs
- ADMembershipUser.cs
- HtmlSelect.cs
- TextEndOfParagraph.cs
- HttpWrapper.cs
- ClientRuntimeConfig.cs
- SafeEventLogWriteHandle.cs
- XmlMtomWriter.cs
- AutomationPropertyInfo.cs
- CurrentChangingEventManager.cs
- TextEditorCharacters.cs
- DynamicScriptObject.cs
- InternalConfigSettingsFactory.cs
- DataList.cs
- AnimatedTypeHelpers.cs
- IndicShape.cs
- XD.cs
- XmlBaseReader.cs
- ListCommandEventArgs.cs
- SpanIndex.cs
- RulePatternOps.cs
- SessionPageStateSection.cs
- CodeIdentifiers.cs
- Accessible.cs
- Substitution.cs
- ByteConverter.cs
- XomlCompiler.cs
- ResourceDescriptionAttribute.cs
- ScriptingJsonSerializationSection.cs
- ValueUnavailableException.cs
- ToolStripProfessionalLowResolutionRenderer.cs
- InitializerFacet.cs
- SchemaType.cs
- FixedHyperLink.cs
- ClickablePoint.cs
- FlowDocumentPageViewerAutomationPeer.cs
- DataContext.cs
- AspProxy.cs
- WindowsProgressbar.cs
- InstanceHandleReference.cs
- ContractMapping.cs
- CollectionChangeEventArgs.cs
- GridViewUpdatedEventArgs.cs
- ParsedAttributeCollection.cs
- ColorPalette.cs
- WizardForm.cs
- validationstate.cs
- ExtensionFile.cs
- ColumnHeaderCollectionEditor.cs
- DNS.cs
- OleDbWrapper.cs
- XmlComplianceUtil.cs
- Helpers.cs
- ControlEvent.cs
- Renderer.cs
- ValidationVisibilityAttribute.cs
- ServiceHttpModule.cs
- TextViewSelectionProcessor.cs
- SoapSchemaMember.cs
- smtpconnection.cs
- CompilationUtil.cs
- ContextProperty.cs
- DataGridViewCellStyleChangedEventArgs.cs
- StructuredTypeEmitter.cs
- Latin1Encoding.cs
- VerbConverter.cs
- ParameterModifier.cs
- ConsoleKeyInfo.cs
- HtmlTableCell.cs
- XmlBoundElement.cs
- DataServiceConfiguration.cs
- PartManifestEntry.cs
- HitTestWithGeometryDrawingContextWalker.cs
- CodeGotoStatement.cs
- Style.cs
- TrackingProfileSerializer.cs
- mansign.cs
- DelegatingTypeDescriptionProvider.cs
- RefreshEventArgs.cs
- CompoundFileDeflateTransform.cs
- HttpDictionary.cs
- mediaeventshelper.cs
- ExpressionNormalizer.cs
- OleTxTransactionInfo.cs
- _NativeSSPI.cs
- InvalidProgramException.cs
- ToolStripPanelCell.cs
- RenderDataDrawingContext.cs
- UnregisterInfo.cs
- MenuItemCollection.cs
- GuidelineSet.cs
- UserNameSecurityTokenAuthenticator.cs
- IndexerNameAttribute.cs