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
- Animatable.cs
- UrlPropertyAttribute.cs
- CustomAttributeSerializer.cs
- ViewBase.cs
- DbConvert.cs
- DecimalAverageAggregationOperator.cs
- AuthenticationConfig.cs
- DataContractSerializerServiceBehavior.cs
- CultureSpecificCharacterBufferRange.cs
- DrawingGroup.cs
- EventLogSession.cs
- ConfigXmlAttribute.cs
- TextEditorSelection.cs
- SmiEventSink.cs
- ObjectQuery_EntitySqlExtensions.cs
- SymbolDocumentGenerator.cs
- UnsafeNativeMethods.cs
- DetailsViewDeletedEventArgs.cs
- StringFunctions.cs
- MessageContractExporter.cs
- TextTrailingWordEllipsis.cs
- ViewValidator.cs
- HttpContext.cs
- TabletCollection.cs
- TreeSet.cs
- EdmToObjectNamespaceMap.cs
- WebUtil.cs
- RedBlackList.cs
- ActiveDocumentEvent.cs
- ToolStripPanelRow.cs
- DataSourceCacheDurationConverter.cs
- Quaternion.cs
- PenThreadPool.cs
- ManipulationDevice.cs
- SiteMapSection.cs
- Propagator.Evaluator.cs
- WebConfigurationHostFileChange.cs
- ToolStripPanelRow.cs
- RawStylusSystemGestureInputReport.cs
- TemplateField.cs
- KerberosTicketHashIdentifierClause.cs
- TextBoxRenderer.cs
- DrawItemEvent.cs
- HashStream.cs
- InfiniteIntConverter.cs
- ParamArrayAttribute.cs
- EdmItemCollection.OcAssemblyCache.cs
- Completion.cs
- CoTaskMemHandle.cs
- PopupControlService.cs
- SelectorItemAutomationPeer.cs
- FileDataSource.cs
- ContactManager.cs
- DataViewManagerListItemTypeDescriptor.cs
- MethodResolver.cs
- ResourceIDHelper.cs
- FlowDocumentFormatter.cs
- CompositionTarget.cs
- smtppermission.cs
- UriTemplateTable.cs
- WebPartDisplayModeEventArgs.cs
- MimePart.cs
- CodeDirectiveCollection.cs
- CellConstant.cs
- IndependentAnimationStorage.cs
- EventHandlersStore.cs
- MessageSmuggler.cs
- PreservationFileWriter.cs
- SettingsContext.cs
- RevocationPoint.cs
- DBConnectionString.cs
- DrawListViewItemEventArgs.cs
- HotCommands.cs
- ProcessModelSection.cs
- DataGridViewSortCompareEventArgs.cs
- ResourceAssociationType.cs
- BamlBinaryReader.cs
- HttpListenerPrefixCollection.cs
- ValidationService.cs
- PlainXmlDeserializer.cs
- DtrList.cs
- CSharpCodeProvider.cs
- TemplateBindingExpression.cs
- DataTableMapping.cs
- MemoryFailPoint.cs
- BrowserCapabilitiesCodeGenerator.cs
- _SingleItemRequestCache.cs
- StringResourceManager.cs
- ScriptComponentDescriptor.cs
- CharacterString.cs
- _DisconnectOverlappedAsyncResult.cs
- NoClickablePointException.cs
- CloseCollectionAsyncResult.cs
- DataObjectPastingEventArgs.cs
- MaterialCollection.cs
- _CacheStreams.cs
- OleCmdHelper.cs
- ByteFacetDescriptionElement.cs
- UnsafeNativeMethods.cs
- WorkflowEnvironment.cs