StaticTextPointer.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / System / Windows / Documents / StaticTextPointer.cs / 1 / StaticTextPointer.cs

                            //---------------------------------------------------------------------------- 
//
// File: StaticTextPointer.cs
//
// Copyright (C) Microsoft Corporation.  All rights reserved. 
//
// Description: 
// 
//---------------------------------------------------------------------------
 
namespace System.Windows.Documents
{
    using System;
    using MS.Internal; 
    using System.Threading;
    using System.Windows; 
    using System.Collections; 

    internal struct StaticTextPointer 
    {
        //-----------------------------------------------------
        //
        //  Constructors 
        //
        //----------------------------------------------------- 
 
        #region Constructors
 
        internal StaticTextPointer(ITextContainer textContainer, object handle0) : this(textContainer, handle0, 0)
        {
        }
 
        internal StaticTextPointer(ITextContainer textContainer, object handle0, int handle1)
        { 
            _textContainer = textContainer; 
            _handle0 = handle0;
            _handle1 = handle1; 
        }

        #endregion Constructors
 
        //------------------------------------------------------
        // 
        //  Internal Methods 
        //
        //----------------------------------------------------- 

        #region Internal Methods

        internal ITextPointer CreateDynamicTextPointer(LogicalDirection direction) 
        {
            return _textContainer.CreateDynamicTextPointer(this, direction); 
        } 

        internal TextPointerContext GetPointerContext(LogicalDirection direction) 
        {
            return _textContainer.GetPointerContext(this, direction);
        }
 
        internal int GetOffsetToPosition(StaticTextPointer position)
        { 
            return _textContainer.GetOffsetToPosition(this, position); 
        }
 
        internal int GetTextInRun(LogicalDirection direction, char[] textBuffer, int startIndex, int count)
        {
            return _textContainer.GetTextInRun(this, direction, textBuffer, startIndex, count);
        } 

        internal object GetAdjacentElement(LogicalDirection direction) 
        { 
            return _textContainer.GetAdjacentElement(this, direction);
        } 

        internal StaticTextPointer CreatePointer(int offset)
        {
            return _textContainer.CreatePointer(this, offset); 
        }
 
        internal StaticTextPointer GetNextContextPosition(LogicalDirection direction) 
        {
            return _textContainer.GetNextContextPosition(this, direction); 
        }

        internal int CompareTo(StaticTextPointer position)
        { 
            return _textContainer.CompareTo(this, position);
        } 
 
        internal int CompareTo(ITextPointer position)
        { 
            return _textContainer.CompareTo(this, position);
        }

        internal object GetValue(DependencyProperty formattingProperty) 
        {
            return _textContainer.GetValue(this, formattingProperty); 
        } 

 
        internal static StaticTextPointer Min(StaticTextPointer position1, StaticTextPointer position2)
        {
            return position1.CompareTo(position2) <= 0 ? position1 : position2;
        } 

        internal static StaticTextPointer Max(StaticTextPointer position1, StaticTextPointer position2) 
        { 
            return position1.CompareTo(position2) >= 0 ? position1 : position2;
        } 

        #endregion Internal Methods

        //------------------------------------------------------ 
        //
        //  Internal Properties 
        // 
        //------------------------------------------------------
 
        #region Internal Properties

        internal ITextContainer TextContainer
        { 
            get
            { 
                return _textContainer; 
            }
        } 

        internal DependencyObject Parent
        {
            get 
            {
                return _textContainer.GetParent(this); 
            } 
        }
 
        internal bool IsNull
        {
            get
            { 
                return (_textContainer == null);
            } 
        } 

        internal object Handle0 
        {
            get
            {
                return _handle0; 
            }
        } 
 
        internal int Handle1
        { 
            get
            {
                return _handle1;
            } 
        }
 
        #endregion Internal Properties 

        //----------------------------------------------------- 
        //
        //  Internal Fields
        //
        //------------------------------------------------------ 

        #region Internal Fields 
 
        internal static StaticTextPointer Null = new StaticTextPointer(null, null, 0);
 
        #endregion Internal Fields

        //-----------------------------------------------------
        // 
        //  Private Fields
        // 
        //----------------------------------------------------- 

        #region Private Fields 

        private readonly ITextContainer _textContainer;

        private readonly object _handle0; 
        private readonly int _handle1;
 
        #endregion Private Fields 
    }
} 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK