Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Core / CSharp / System / Windows / MeasureData.cs / 1 / MeasureData.cs
//---------------------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: // This file defines a class intended to be passed as a parameter to Measure. It contains // available size and viewport information. // //------------------------------------------------------------------------------------- using MS.Internal; using System; using System.Windows.Media; namespace System.Windows { ////// Provides all the data we need during the Measure pass (most notably viewport information). Because of backwards /// compat we can't pass it in as a parameter to Measure so it's set as a property on UIElement directly before the call /// instead. /// internal class MeasureData { public MeasureData(Size availableSize, Rect viewport) { _availableSize = availableSize; _viewport = viewport; } public MeasureData(MeasureData data) : this (data.AvailableSize, data.Viewport) { } public bool HasViewport { get { return Viewport != Rect.Empty; } } public bool IsCloseTo(MeasureData other) { if (other == null) { return false; } bool isClose = DoubleUtil.AreClose(AvailableSize, other.AvailableSize); isClose &= DoubleUtil.AreClose(Viewport, other.Viewport); return isClose; } public Size AvailableSize { get { return _availableSize; } set { _availableSize = value; } } public Rect Viewport { get { return _viewport; } set { _viewport = value; } } private Size _availableSize; private Rect _viewport; } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: // This file defines a class intended to be passed as a parameter to Measure. It contains // available size and viewport information. // //------------------------------------------------------------------------------------- using MS.Internal; using System; using System.Windows.Media; namespace System.Windows { ////// Provides all the data we need during the Measure pass (most notably viewport information). Because of backwards /// compat we can't pass it in as a parameter to Measure so it's set as a property on UIElement directly before the call /// instead. /// internal class MeasureData { public MeasureData(Size availableSize, Rect viewport) { _availableSize = availableSize; _viewport = viewport; } public MeasureData(MeasureData data) : this (data.AvailableSize, data.Viewport) { } public bool HasViewport { get { return Viewport != Rect.Empty; } } public bool IsCloseTo(MeasureData other) { if (other == null) { return false; } bool isClose = DoubleUtil.AreClose(AvailableSize, other.AvailableSize); isClose &= DoubleUtil.AreClose(Viewport, other.Viewport); return isClose; } public Size AvailableSize { get { return _availableSize; } set { _availableSize = value; } } public Rect Viewport { get { return _viewport; } set { _viewport = value; } } private Size _availableSize; private Rect _viewport; } } // 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
- Splitter.cs
- SqlCacheDependencyDatabase.cs
- VersionedStreamOwner.cs
- CoTaskMemHandle.cs
- DBCSCodePageEncoding.cs
- StorageModelBuildProvider.cs
- EventsTab.cs
- SiteOfOriginPart.cs
- RectangleGeometry.cs
- WeakReferenceKey.cs
- BamlTreeMap.cs
- DesignerProperties.cs
- WebPartHelpVerb.cs
- InheritanceContextChangedEventManager.cs
- SerializableTypeCodeDomSerializer.cs
- ModelItemCollection.cs
- ThreadExceptionDialog.cs
- XmlReflectionMember.cs
- elementinformation.cs
- TreeBuilder.cs
- GeometryConverter.cs
- WebBrowserEvent.cs
- WorkItem.cs
- StagingAreaInputItem.cs
- ActivityCodeDomSerializationManager.cs
- Scalars.cs
- ProfileServiceManager.cs
- FixedSOMTextRun.cs
- XamlPoint3DCollectionSerializer.cs
- SizeConverter.cs
- MultilineStringEditor.cs
- SetStoryboardSpeedRatio.cs
- followingsibling.cs
- ExtensionQuery.cs
- Int32EqualityComparer.cs
- ExecutionEngineException.cs
- XmlC14NWriter.cs
- XmlSignatureProperties.cs
- ToolConsole.cs
- CharStorage.cs
- WebPartDisplayModeEventArgs.cs
- BamlRecordReader.cs
- AnnotationResource.cs
- BrushMappingModeValidation.cs
- NavigationPropertyEmitter.cs
- Matrix.cs
- ExceptionHandlersDesigner.cs
- ToolStripRenderer.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- WebConfigurationHost.cs
- MdiWindowListItemConverter.cs
- LookupBindingPropertiesAttribute.cs
- ArraySegment.cs
- WmlCommandAdapter.cs
- ComponentEditorPage.cs
- DockAndAnchorLayout.cs
- NativeCompoundFileAPIs.cs
- TimelineGroup.cs
- SafeProcessHandle.cs
- ObjectParameter.cs
- regiisutil.cs
- DoubleAnimationClockResource.cs
- ObjectDataSource.cs
- DataSetUtil.cs
- WindowsContainer.cs
- ProcessHostFactoryHelper.cs
- DataMisalignedException.cs
- DataStreams.cs
- ListDictionary.cs
- HttpGetProtocolImporter.cs
- AndAlso.cs
- CqlBlock.cs
- CompilerResults.cs
- StringFreezingAttribute.cs
- ColorTranslator.cs
- RtfNavigator.cs
- SqlDataSourceFilteringEventArgs.cs
- cookiecontainer.cs
- MetafileHeaderWmf.cs
- BitmapData.cs
- SubqueryRules.cs
- NameValueConfigurationElement.cs
- WaitForChangedResult.cs
- TablePattern.cs
- PatternMatcher.cs
- InvalidPropValue.cs
- MailAddressCollection.cs
- Monitor.cs
- UnionExpr.cs
- GridViewRowEventArgs.cs
- CompareValidator.cs
- LoginName.cs
- FunctionCommandText.cs
- XmlParser.cs
- X509Utils.cs
- DefaultObjectMappingItemCollection.cs
- Int32AnimationUsingKeyFrames.cs
- UnmanagedMemoryStream.cs
- ValidatorCompatibilityHelper.cs
- _HelperAsyncResults.cs