Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Framework / System / Windows / Documents / TextTreeRootTextBlock.cs / 1 / TextTreeRootTextBlock.cs
//----------------------------------------------------------------------------
//
// File: TextTreeRootTextBlock.cs
//
// Description: The root node of a TextBlock splay tree.
//
//---------------------------------------------------------------------------
using System;
using MS.Internal;
using System.Collections;
namespace System.Windows.Documents
{
// The root node of a TextBlock splay tree.
internal class TextTreeRootTextBlock : SplayTreeNode
{
//-----------------------------------------------------
//
// Constructors
//
//-----------------------------------------------------
#region Constructors
// Creates a TextTreeRootTextBlock instance.
internal TextTreeRootTextBlock()
{
TextTreeTextBlock block;
// Allocate an initial block with just two characters -- one for
// each edge of the root node. The block will grow when/if
// additional content is added.
block = new TextTreeTextBlock(2);
block.InsertAtNode(this, ElementEdge.AfterStart);
}
#endregion Constructors
//------------------------------------------------------
//
// Public Methods
//
//-----------------------------------------------------
#region Public Methods
#if DEBUG
// Debug-only ToString override.
public override string ToString()
{
return ("RootTextBlock Id=" + this.DebugId);
}
#endif // DEBUG
#endregion Public Methods
//------------------------------------------------------
//
// Internal Properties
//
//------------------------------------------------------
#region Internal Properties
// The root node never has a parent node.
internal override SplayTreeNode ParentNode
{
get
{
return null;
}
set
{
Invariant.Assert(false, "Can't set ParentNode on TextBlock root!");
}
}
// Root node of a contained tree, if any.
internal override SplayTreeNode ContainedNode
{
get
{
return _containedNode;
}
set
{
_containedNode = (TextTreeTextBlock)value;
}
}
// The root node never has sibling nodes, so the LeftSymbolCount is a
// constant zero.
internal override int LeftSymbolCount
{
get
{
return 0;
}
set
{
Invariant.Assert(false, "TextContainer root is never a sibling!");
}
}
// Count of unicode chars of all siblings preceding this node.
// This property is only used by TextTreeNodes.
internal override int LeftCharCount
{
get
{
return 0;
}
set
{
Invariant.Assert(value == 0);
}
}
// The root node never has siblings, so it never has child nodes.
internal override SplayTreeNode LeftChildNode
{
get
{
return null;
}
set
{
Invariant.Assert(false, "TextBlock root never has sibling nodes!");
}
}
// The root node never has siblings, so it never has child nodes.
internal override SplayTreeNode RightChildNode
{
get
{
return null;
}
set
{
Invariant.Assert(false, "TextBlock root never has sibling nodes!");
}
}
// The tree generation. Not used for TextTreeRootTextBlock.
internal override uint Generation
{
get
{
return 0;
}
set
{
Invariant.Assert(false, "TextTreeRootTextBlock does not track Generation!");
}
}
// Cached symbol offset. The root node is always at offset zero.
internal override int SymbolOffsetCache
{
get
{
return 0;
}
set
{
Invariant.Assert(false, "TextTreeRootTextBlock does not track SymbolOffsetCache!");
}
}
// Not used for TextTreeRootTextBlock.
internal override int SymbolCount
{
get
{
return -1;
}
set
{
Invariant.Assert(false, "TextTreeRootTextBlock does not track symbol count!");
}
}
// Count of unicode chars covered by this node and any contained nodes.
// This property is only used by TextTreeNodes.
internal override int IMECharCount
{
get
{
return 0;
}
set
{
Invariant.Assert(value == 0);
}
}
#endregion Internal Properties
//-----------------------------------------------------
//
// Private Fields
//
//------------------------------------------------------
#region Private Fields
// Root node of a contained tree, if any.
private TextTreeTextBlock _containedNode;
#endregion Private Fields
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------------------------
//
// File: TextTreeRootTextBlock.cs
//
// Description: The root node of a TextBlock splay tree.
//
//---------------------------------------------------------------------------
using System;
using MS.Internal;
using System.Collections;
namespace System.Windows.Documents
{
// The root node of a TextBlock splay tree.
internal class TextTreeRootTextBlock : SplayTreeNode
{
//-----------------------------------------------------
//
// Constructors
//
//-----------------------------------------------------
#region Constructors
// Creates a TextTreeRootTextBlock instance.
internal TextTreeRootTextBlock()
{
TextTreeTextBlock block;
// Allocate an initial block with just two characters -- one for
// each edge of the root node. The block will grow when/if
// additional content is added.
block = new TextTreeTextBlock(2);
block.InsertAtNode(this, ElementEdge.AfterStart);
}
#endregion Constructors
//------------------------------------------------------
//
// Public Methods
//
//-----------------------------------------------------
#region Public Methods
#if DEBUG
// Debug-only ToString override.
public override string ToString()
{
return ("RootTextBlock Id=" + this.DebugId);
}
#endif // DEBUG
#endregion Public Methods
//------------------------------------------------------
//
// Internal Properties
//
//------------------------------------------------------
#region Internal Properties
// The root node never has a parent node.
internal override SplayTreeNode ParentNode
{
get
{
return null;
}
set
{
Invariant.Assert(false, "Can't set ParentNode on TextBlock root!");
}
}
// Root node of a contained tree, if any.
internal override SplayTreeNode ContainedNode
{
get
{
return _containedNode;
}
set
{
_containedNode = (TextTreeTextBlock)value;
}
}
// The root node never has sibling nodes, so the LeftSymbolCount is a
// constant zero.
internal override int LeftSymbolCount
{
get
{
return 0;
}
set
{
Invariant.Assert(false, "TextContainer root is never a sibling!");
}
}
// Count of unicode chars of all siblings preceding this node.
// This property is only used by TextTreeNodes.
internal override int LeftCharCount
{
get
{
return 0;
}
set
{
Invariant.Assert(value == 0);
}
}
// The root node never has siblings, so it never has child nodes.
internal override SplayTreeNode LeftChildNode
{
get
{
return null;
}
set
{
Invariant.Assert(false, "TextBlock root never has sibling nodes!");
}
}
// The root node never has siblings, so it never has child nodes.
internal override SplayTreeNode RightChildNode
{
get
{
return null;
}
set
{
Invariant.Assert(false, "TextBlock root never has sibling nodes!");
}
}
// The tree generation. Not used for TextTreeRootTextBlock.
internal override uint Generation
{
get
{
return 0;
}
set
{
Invariant.Assert(false, "TextTreeRootTextBlock does not track Generation!");
}
}
// Cached symbol offset. The root node is always at offset zero.
internal override int SymbolOffsetCache
{
get
{
return 0;
}
set
{
Invariant.Assert(false, "TextTreeRootTextBlock does not track SymbolOffsetCache!");
}
}
// Not used for TextTreeRootTextBlock.
internal override int SymbolCount
{
get
{
return -1;
}
set
{
Invariant.Assert(false, "TextTreeRootTextBlock does not track symbol count!");
}
}
// Count of unicode chars covered by this node and any contained nodes.
// This property is only used by TextTreeNodes.
internal override int IMECharCount
{
get
{
return 0;
}
set
{
Invariant.Assert(value == 0);
}
}
#endregion Internal Properties
//-----------------------------------------------------
//
// Private Fields
//
//------------------------------------------------------
#region Private Fields
// Root node of a contained tree, if any.
private TextTreeTextBlock _containedNode;
#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
- DataTemplateSelector.cs
- SqlDataSourceStatusEventArgs.cs
- SynchronizedInputPattern.cs
- RequestCachePolicy.cs
- ColumnTypeConverter.cs
- _ScatterGatherBuffers.cs
- EntityDesignPluralizationHandler.cs
- OnOperation.cs
- CheckBoxStandardAdapter.cs
- WorkflowMarkupSerializationProvider.cs
- ClientBuildManagerCallback.cs
- DropSource.cs
- BindingCompleteEventArgs.cs
- SafeMemoryMappedViewHandle.cs
- FusionWrap.cs
- WindowsListViewItem.cs
- MissingFieldException.cs
- TreeViewHitTestInfo.cs
- ADMembershipUser.cs
- ListViewGroupItemCollection.cs
- SingleKeyFrameCollection.cs
- SendKeys.cs
- IPAddressCollection.cs
- ReflectionHelper.cs
- CommandEventArgs.cs
- documentsequencetextpointer.cs
- ButtonFlatAdapter.cs
- SemanticResultKey.cs
- ReadWriteControlDesigner.cs
- StringDictionary.cs
- BindingSource.cs
- CompressStream.cs
- Evidence.cs
- SimpleFieldTemplateUserControl.cs
- x509utils.cs
- OleDbRowUpdatedEvent.cs
- AttachedAnnotation.cs
- KoreanLunisolarCalendar.cs
- MobileUserControlDesigner.cs
- XPathDocumentIterator.cs
- EncryptedPackage.cs
- SlotInfo.cs
- Content.cs
- DiagnosticTraceSchemas.cs
- processwaithandle.cs
- ipaddressinformationcollection.cs
- TransformedBitmap.cs
- BoundingRectTracker.cs
- GregorianCalendar.cs
- ComplusTypeValidator.cs
- GridViewHeaderRowPresenter.cs
- BaseParser.cs
- RenderOptions.cs
- UiaCoreProviderApi.cs
- SafeNativeMethods.cs
- Exceptions.cs
- SkipQueryOptionExpression.cs
- KeyboardNavigation.cs
- ExceptionUtility.cs
- EditingCoordinator.cs
- DCSafeHandle.cs
- IndicShape.cs
- DynamicPropertyHolder.cs
- WebPartDeleteVerb.cs
- ToolStripHighContrastRenderer.cs
- InternalMappingException.cs
- SecurityUtils.cs
- QilParameter.cs
- DirectoryObjectSecurity.cs
- CapacityStreamGeometryContext.cs
- SecurityElement.cs
- SoapHeaderAttribute.cs
- ThrowHelper.cs
- ExpandCollapsePattern.cs
- ForwardPositionQuery.cs
- CounterSet.cs
- XmlCountingReader.cs
- FrugalMap.cs
- BoundingRectTracker.cs
- UrlPath.cs
- ListViewTableCell.cs
- PersonalizationEntry.cs
- indexingfiltermarshaler.cs
- WebPartTransformerAttribute.cs
- Utils.cs
- DocumentOrderQuery.cs
- FamilyMapCollection.cs
- IList.cs
- LinearKeyFrames.cs
- ThemeDictionaryExtension.cs
- BufferBuilder.cs
- XPathNodeIterator.cs
- System.Data.OracleClient_BID.cs
- WebPartTransformer.cs
- SystemWebSectionGroup.cs
- VarInfo.cs
- GenericIdentity.cs
- ObjectReferenceStack.cs
- ExceptionHandlerDesigner.cs
- TTSEvent.cs