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
- EventProviderWriter.cs
- ListDictionaryInternal.cs
- Int32Converter.cs
- TraceSection.cs
- QuotedPrintableStream.cs
- CommandEventArgs.cs
- PassportAuthenticationEventArgs.cs
- InfoCardBaseException.cs
- TranslateTransform3D.cs
- columnmapkeybuilder.cs
- Executor.cs
- TTSEngineTypes.cs
- FileUtil.cs
- PrincipalPermission.cs
- FilterQuery.cs
- FunctionDescription.cs
- RightNameExpirationInfoPair.cs
- HostingEnvironment.cs
- HideDisabledControlAdapter.cs
- NameSpaceExtractor.cs
- EventsTab.cs
- SamlDelegatingWriter.cs
- ListControl.cs
- UnionCodeGroup.cs
- SqlExpander.cs
- StatusBarItemAutomationPeer.cs
- NotifyInputEventArgs.cs
- ResourceExpressionBuilder.cs
- MainMenu.cs
- ParameterToken.cs
- BoundPropertyEntry.cs
- ClusterRegistryConfigurationProvider.cs
- ADConnectionHelper.cs
- METAHEADER.cs
- SafeHandles.cs
- ActivationArguments.cs
- LZCodec.cs
- Convert.cs
- RadioButtonRenderer.cs
- LogSwitch.cs
- OdbcException.cs
- SessionEndingCancelEventArgs.cs
- PointLight.cs
- NonceToken.cs
- AssociativeAggregationOperator.cs
- RubberbandSelector.cs
- JavaScriptObjectDeserializer.cs
- XmlSecureResolver.cs
- AttributeCollection.cs
- PlanCompiler.cs
- GridViewColumnHeaderAutomationPeer.cs
- FormatterServices.cs
- Column.cs
- WindowClosedEventArgs.cs
- DataGridCaption.cs
- Path.cs
- TreeViewAutomationPeer.cs
- CodeDirectoryCompiler.cs
- JsonCollectionDataContract.cs
- RawStylusInputCustomDataList.cs
- _Semaphore.cs
- ModelUIElement3D.cs
- ClientBuildManager.cs
- PropertyConverter.cs
- DynamicRenderer.cs
- BrowserDefinition.cs
- MimeTypeAttribute.cs
- XmlWellformedWriter.cs
- XmlSchemaInclude.cs
- SecurityDocument.cs
- SettingsAttributeDictionary.cs
- SingleStorage.cs
- FontFamilyConverter.cs
- DefaultValueTypeConverter.cs
- Vector3DAnimationUsingKeyFrames.cs
- VariableDesigner.xaml.cs
- Vector.cs
- XPathChildIterator.cs
- XmlElementAttribute.cs
- RenamedEventArgs.cs
- SecurityTokenSpecification.cs
- CheckBoxFlatAdapter.cs
- ImageSourceConverter.cs
- CopyNamespacesAction.cs
- SweepDirectionValidation.cs
- SplayTreeNode.cs
- Endpoint.cs
- InputLanguageSource.cs
- XPathNode.cs
- ObjRef.cs
- TextContainerChangeEventArgs.cs
- InputLangChangeEvent.cs
- DesignerSerializationOptionsAttribute.cs
- ToolStripContentPanel.cs
- CompiledQueryCacheEntry.cs
- DiagnosticStrings.cs
- ObsoleteAttribute.cs
- Button.cs
- CornerRadiusConverter.cs
- MarkupCompilePass2.cs