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
- CommunicationObjectAbortedException.cs
- SafeLibraryHandle.cs
- MatrixKeyFrameCollection.cs
- CFGGrammar.cs
- _UriSyntax.cs
- CodeCommentStatement.cs
- StreamUpgradeInitiator.cs
- DataGridTable.cs
- HierarchicalDataBoundControl.cs
- Timer.cs
- EncoderParameters.cs
- ValidatorUtils.cs
- DrawingCollection.cs
- CodeVariableReferenceExpression.cs
- WithParamAction.cs
- StaticExtension.cs
- PreProcessInputEventArgs.cs
- EdmMember.cs
- DynamicQueryableWrapper.cs
- HttpRawResponse.cs
- WorkflowOperationBehavior.cs
- ScrollItemProviderWrapper.cs
- SocketException.cs
- MsmqOutputSessionChannel.cs
- BaseCodeDomTreeGenerator.cs
- SafeNativeMethods.cs
- BaseAppDomainProtocolHandler.cs
- DataPagerField.cs
- MobileRedirect.cs
- BamlStream.cs
- _HelperAsyncResults.cs
- XComponentModel.cs
- SizeF.cs
- PropertyEntry.cs
- WizardForm.cs
- EraserBehavior.cs
- X509CertificateChain.cs
- ProviderIncompatibleException.cs
- BasicHttpMessageCredentialType.cs
- validation.cs
- XmlNamespaceDeclarationsAttribute.cs
- ParallelTimeline.cs
- TakeOrSkipQueryOperator.cs
- WebSysDisplayNameAttribute.cs
- SettingsPropertyValueCollection.cs
- AccessDataSourceView.cs
- ProfileProvider.cs
- CodeDelegateInvokeExpression.cs
- AtlasWeb.Designer.cs
- RadioButtonPopupAdapter.cs
- IWorkflowDebuggerService.cs
- ContentDisposition.cs
- ButtonChrome.cs
- ListBoxItemWrapperAutomationPeer.cs
- Activity.cs
- FrameworkElement.cs
- XPathAxisIterator.cs
- ProviderConnectionPointCollection.cs
- UtilityExtension.cs
- StringSorter.cs
- ListMarkerSourceInfo.cs
- StackBuilderSink.cs
- ListViewPagedDataSource.cs
- DataRowExtensions.cs
- commandenforcer.cs
- GeneralTransform3D.cs
- FreezableOperations.cs
- WebPartConnectionsCancelEventArgs.cs
- ObjectHandle.cs
- DigitShape.cs
- SafeBitVector32.cs
- UpWmlMobileTextWriter.cs
- SiteMapDataSourceView.cs
- DataGridViewTopLeftHeaderCell.cs
- TableCellCollection.cs
- PasswordTextNavigator.cs
- ProfileService.cs
- OneOfTypeConst.cs
- TeredoHelper.cs
- StylusPointPropertyUnit.cs
- Utils.cs
- DesignerAutoFormat.cs
- OwnerDrawPropertyBag.cs
- TextEditorSpelling.cs
- ListViewItemMouseHoverEvent.cs
- ConfigurationManager.cs
- RankException.cs
- QueryContinueDragEventArgs.cs
- EditorServiceContext.cs
- TrackingStringDictionary.cs
- CodeAccessPermission.cs
- ApplicationSecurityInfo.cs
- HtmlImage.cs
- EntityDataSourceState.cs
- TemplateNameScope.cs
- RequiredFieldValidator.cs
- DataKeyPropertyAttribute.cs
- Label.cs
- BevelBitmapEffect.cs
- SafeNativeMethodsMilCoreApi.cs