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
- BamlRecordHelper.cs
- GenericNameHandler.cs
- Sql8ExpressionRewriter.cs
- RootBrowserWindowProxy.cs
- MembershipSection.cs
- PlainXmlWriter.cs
- XmlSignificantWhitespace.cs
- ItemContainerGenerator.cs
- BamlLocalizationDictionary.cs
- ParameterCollection.cs
- WebPartRestoreVerb.cs
- MetadataArtifactLoaderComposite.cs
- Opcode.cs
- TrailingSpaceComparer.cs
- XMLDiffLoader.cs
- Padding.cs
- HtmlElementCollection.cs
- EntityDataSourceContainerNameItem.cs
- ProcessHostFactoryHelper.cs
- regiisutil.cs
- KeyToListMap.cs
- DataGridViewColumnEventArgs.cs
- ConfigurationHelpers.cs
- DbConnectionPool.cs
- AppPool.cs
- XmlProcessingInstruction.cs
- EmptyImpersonationContext.cs
- ConstructorExpr.cs
- AutomationPatternInfo.cs
- ObjectDataSourceWizardForm.cs
- XmlSerializerOperationFormatter.cs
- ModuleElement.cs
- EventLogException.cs
- SpAudioStreamWrapper.cs
- _Events.cs
- ToolStripDesignerUtils.cs
- UniformGrid.cs
- OperandQuery.cs
- TemplateParser.cs
- OverrideMode.cs
- Container.cs
- TreeNodeClickEventArgs.cs
- ObjectNotFoundException.cs
- ActionMessageFilter.cs
- ApplicationInfo.cs
- LabelEditEvent.cs
- RemoteWebConfigurationHostServer.cs
- CommonRemoteMemoryBlock.cs
- MenuAdapter.cs
- TextCharacters.cs
- Marshal.cs
- SqlConnection.cs
- InvalidProgramException.cs
- ArrayElementGridEntry.cs
- HttpWrapper.cs
- DecoderReplacementFallback.cs
- SecurityPermission.cs
- SizeAnimation.cs
- ControlBuilder.cs
- FrameworkEventSource.cs
- InputGestureCollection.cs
- DataServicePagingProviderWrapper.cs
- ContextMarshalException.cs
- RevocationPoint.cs
- COM2Properties.cs
- designeractionbehavior.cs
- CommonDialog.cs
- ExpressionNormalizer.cs
- Lasso.cs
- PerfCounters.cs
- RoutedEventConverter.cs
- PolyLineSegment.cs
- TreeViewCancelEvent.cs
- GeometryDrawing.cs
- FontUnit.cs
- Permission.cs
- FileFormatException.cs
- ListItemCollection.cs
- BindingContext.cs
- ActivityCodeGenerator.cs
- TextBounds.cs
- OperationContractGenerationContext.cs
- KerberosTicketHashIdentifierClause.cs
- Duration.cs
- PrintPreviewControl.cs
- CompatibleComparer.cs
- PointLight.cs
- ToolboxItemAttribute.cs
- GlyphingCache.cs
- DataListCommandEventArgs.cs
- HashAlgorithm.cs
- AudioStateChangedEventArgs.cs
- ObjectListDataBindEventArgs.cs
- PolicyLevel.cs
- BitmapPalettes.cs
- SoapUnknownHeader.cs
- ConnectionManagementSection.cs
- ProfileService.cs
- PerformanceCounterLib.cs
- ElementMarkupObject.cs