Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Documents / FixedLineResult.cs / 1305600 / FixedLineResult.cs
//---------------------------------------------------------------------------- //// Copyright (C) 2004 by Microsoft Corporation. All rights reserved. // // // Description: // FixedLineResult represents a per-line layout info for a fixe page // // History: // 11/23/2004 - Zhenbin Xu (ZhenbinX) - Created. // //--------------------------------------------------------------------------- namespace System.Windows.Documents { using MS.Internal.Documents; using System; using System.Collections; using System.Diagnostics; using System.Globalization; //===================================================================== ////// FixedLineResult represents a per-line layout info for a fixe page /// internal sealed class FixedLineResult : IComparable { //------------------------------------------------------------------- // // Connstructors // //---------------------------------------------------------------------- #region Constructors internal FixedLineResult(FixedNode[] nodes, Rect layoutBox) { _nodes = nodes; _layoutBox = layoutBox; } #endregion Constructors //------------------------------------------------------------------- // // Public Methods // //---------------------------------------------------------------------- // IComparable Override public int CompareTo(object o) { if (o == null) { throw new ArgumentNullException("o"); } if (o.GetType() != typeof(FixedLineResult)) { throw new ArgumentException(SR.Get(SRID.UnexpectedParameterType, o.GetType(), typeof(FixedLineResult)), "o"); } FixedLineResult lineResult = (FixedLineResult)o; return this.BaseLine.CompareTo(lineResult.BaseLine); } #if DEBUG ////// Create a string representation of this object /// ///string - A string representation of this object public override string ToString() { return String.Format(CultureInfo.InvariantCulture, "FLR[{0}:{1}][{2}][{3}]", Start.ToString(), End.ToString(), BaseLine, _layoutBox); } #endif //-------------------------------------------------------------------- // // Public Properties // //--------------------------------------------------------------------- //-------------------------------------------------------------------- // // Public Events // //--------------------------------------------------------------------- //------------------------------------------------------------------- // // Internal Methods // //--------------------------------------------------------------------- //-------------------------------------------------------------------- // // Internal Properties // //--------------------------------------------------------------------- #region Internal Properties // internal FixedNode Start { get { return _nodes[0]; } } internal FixedNode End { get { return _nodes[_nodes.Length - 1]; } } internal FixedNode[] Nodes { get { return _nodes; } } internal double BaseLine { get { return _layoutBox.Bottom; } } internal Rect LayoutBox { get { return _layoutBox; } } #endregion Internal Properties //-------------------------------------------------------------------- // // Private Methods // //---------------------------------------------------------------------- #region Private Properties #endregion Private Properties //------------------------------------------------------------------- // // Private Fields // //---------------------------------------------------------------------- #region Private Fields private readonly FixedNode[] _nodes; private readonly Rect _layoutBox; // relative to page #endregion Private Fields } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- //// Copyright (C) 2004 by Microsoft Corporation. All rights reserved. // // // Description: // FixedLineResult represents a per-line layout info for a fixe page // // History: // 11/23/2004 - Zhenbin Xu (ZhenbinX) - Created. // //--------------------------------------------------------------------------- namespace System.Windows.Documents { using MS.Internal.Documents; using System; using System.Collections; using System.Diagnostics; using System.Globalization; //===================================================================== ////// FixedLineResult represents a per-line layout info for a fixe page /// internal sealed class FixedLineResult : IComparable { //------------------------------------------------------------------- // // Connstructors // //---------------------------------------------------------------------- #region Constructors internal FixedLineResult(FixedNode[] nodes, Rect layoutBox) { _nodes = nodes; _layoutBox = layoutBox; } #endregion Constructors //------------------------------------------------------------------- // // Public Methods // //---------------------------------------------------------------------- // IComparable Override public int CompareTo(object o) { if (o == null) { throw new ArgumentNullException("o"); } if (o.GetType() != typeof(FixedLineResult)) { throw new ArgumentException(SR.Get(SRID.UnexpectedParameterType, o.GetType(), typeof(FixedLineResult)), "o"); } FixedLineResult lineResult = (FixedLineResult)o; return this.BaseLine.CompareTo(lineResult.BaseLine); } #if DEBUG ////// Create a string representation of this object /// ///string - A string representation of this object public override string ToString() { return String.Format(CultureInfo.InvariantCulture, "FLR[{0}:{1}][{2}][{3}]", Start.ToString(), End.ToString(), BaseLine, _layoutBox); } #endif //-------------------------------------------------------------------- // // Public Properties // //--------------------------------------------------------------------- //-------------------------------------------------------------------- // // Public Events // //--------------------------------------------------------------------- //------------------------------------------------------------------- // // Internal Methods // //--------------------------------------------------------------------- //-------------------------------------------------------------------- // // Internal Properties // //--------------------------------------------------------------------- #region Internal Properties // internal FixedNode Start { get { return _nodes[0]; } } internal FixedNode End { get { return _nodes[_nodes.Length - 1]; } } internal FixedNode[] Nodes { get { return _nodes; } } internal double BaseLine { get { return _layoutBox.Bottom; } } internal Rect LayoutBox { get { return _layoutBox; } } #endregion Internal Properties //-------------------------------------------------------------------- // // Private Methods // //---------------------------------------------------------------------- #region Private Properties #endregion Private Properties //------------------------------------------------------------------- // // Private Fields // //---------------------------------------------------------------------- #region Private Fields private readonly FixedNode[] _nodes; private readonly Rect _layoutBox; // relative to page #endregion Private Fields } } // 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
- IsolatedStorageFileStream.cs
- ConnectionStringsSection.cs
- DataGridViewEditingControlShowingEventArgs.cs
- Size.cs
- MasterPage.cs
- GradientStopCollection.cs
- SslStream.cs
- PartBasedPackageProperties.cs
- DataGridViewAdvancedBorderStyle.cs
- ComponentRenameEvent.cs
- MexHttpBindingCollectionElement.cs
- CollectionBuilder.cs
- PolicyLevel.cs
- XamlBrushSerializer.cs
- Style.cs
- CompilationRelaxations.cs
- SafeNativeMethods.cs
- Point3DAnimation.cs
- MailSettingsSection.cs
- SingleConverter.cs
- BinaryKeyIdentifierClause.cs
- WinCategoryAttribute.cs
- Merger.cs
- ISAPIApplicationHost.cs
- SourceElementsCollection.cs
- PartialTrustVisibleAssembly.cs
- CodeVariableReferenceExpression.cs
- Subtract.cs
- Point4D.cs
- SetterBaseCollection.cs
- ExternalCalls.cs
- Config.cs
- CollectionBuilder.cs
- TypeUtil.cs
- XmlChildEnumerator.cs
- XmlComplianceUtil.cs
- Number.cs
- ValueTable.cs
- XmlObjectSerializerContext.cs
- BindMarkupExtensionSerializer.cs
- DecimalAnimation.cs
- LateBoundBitmapDecoder.cs
- RandomNumberGenerator.cs
- RadioButtonStandardAdapter.cs
- mediapermission.cs
- KnownTypesHelper.cs
- DescriptionAttribute.cs
- XhtmlTextWriter.cs
- CommandEventArgs.cs
- CommandHelper.cs
- HexParser.cs
- StringSource.cs
- LifetimeServices.cs
- TrackingStringDictionary.cs
- NotifyCollectionChangedEventArgs.cs
- NavigationEventArgs.cs
- Int64KeyFrameCollection.cs
- RtType.cs
- HotSpot.cs
- FileDataSource.cs
- NativeMethods.cs
- RelatedView.cs
- RepeaterItem.cs
- MasterPageBuildProvider.cs
- TextTreeTextBlock.cs
- SmiSettersStream.cs
- SemanticTag.cs
- SamlConstants.cs
- DesignerSerializationOptionsAttribute.cs
- GenerateScriptTypeAttribute.cs
- SyndicationContent.cs
- IPEndPointCollection.cs
- ToolStripContentPanelRenderEventArgs.cs
- DirectionalLight.cs
- WebPartUtil.cs
- HttpContext.cs
- VisualStyleRenderer.cs
- _FixedSizeReader.cs
- WarningException.cs
- MetadataPropertyAttribute.cs
- RoutedEventConverter.cs
- XamlTypeMapperSchemaContext.cs
- ConsumerConnectionPointCollection.cs
- OleDbConnection.cs
- InheritanceUI.cs
- FilteredXmlReader.cs
- SecurityKeyType.cs
- TimeSpanOrInfiniteConverter.cs
- ContentFileHelper.cs
- SingleSelectRootGridEntry.cs
- KeyedCollection.cs
- Slider.cs
- GridViewColumn.cs
- InstanceHandleReference.cs
- CatalogPartChrome.cs
- COAUTHIDENTITY.cs
- OutputScope.cs
- Graphics.cs
- HttpModuleActionCollection.cs
- StreamReader.cs