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 / TextTreeInsertUndoUnit.cs / 1 / TextTreeInsertUndoUnit.cs
//---------------------------------------------------------------------------- // // File: TextTreeInsertUndoUnit.cs // // Description: Undo unit for TextContainer.InsertText and InsertEmbeddedObject calls. // // History: // 03/03/2004 : benwest - Created // //--------------------------------------------------------------------------- using System; using MS.Internal; namespace System.Windows.Documents { // Undo unit for TextContainer.InsertText and InsertEmbeddedObject calls. internal class TextTreeInsertUndoUnit : TextTreeUndoUnit { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- #region Constructors // Create a new undo unit instance. // symbolOffset and symbolCount track the offset of the inserted content // and its symbol count, respectively. internal TextTreeInsertUndoUnit(TextContainer tree, int symbolOffset, int symbolCount) : base(tree, symbolOffset) { Invariant.Assert(symbolCount > 0, "Creating no-op insert undo unit!"); _symbolCount = symbolCount; } #endregion Constructors //------------------------------------------------------ // // Public Methods // //----------------------------------------------------- #region Public Methods // Called by the undo manager. Restores tree state to its condition // when the unit was created. Assumes the tree state matches conditions // just after the unit was created. public override void DoCore() { TextPointer start; TextPointer end; VerifyTreeContentHashCode(); start = new TextPointer(this.TextContainer, this.SymbolOffset, LogicalDirection.Forward); end = new TextPointer(this.TextContainer, this.SymbolOffset + _symbolCount, LogicalDirection.Forward); this.TextContainer.DeleteContentInternal(start, end); } #endregion Public Methods //------------------------------------------------------ // // Private Fields // //------------------------------------------------------ #region Private Fields // Count of symbols to remove. private readonly int _symbolCount; #endregion Private Fields } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // // File: TextTreeInsertUndoUnit.cs // // Description: Undo unit for TextContainer.InsertText and InsertEmbeddedObject calls. // // History: // 03/03/2004 : benwest - Created // //--------------------------------------------------------------------------- using System; using MS.Internal; namespace System.Windows.Documents { // Undo unit for TextContainer.InsertText and InsertEmbeddedObject calls. internal class TextTreeInsertUndoUnit : TextTreeUndoUnit { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- #region Constructors // Create a new undo unit instance. // symbolOffset and symbolCount track the offset of the inserted content // and its symbol count, respectively. internal TextTreeInsertUndoUnit(TextContainer tree, int symbolOffset, int symbolCount) : base(tree, symbolOffset) { Invariant.Assert(symbolCount > 0, "Creating no-op insert undo unit!"); _symbolCount = symbolCount; } #endregion Constructors //------------------------------------------------------ // // Public Methods // //----------------------------------------------------- #region Public Methods // Called by the undo manager. Restores tree state to its condition // when the unit was created. Assumes the tree state matches conditions // just after the unit was created. public override void DoCore() { TextPointer start; TextPointer end; VerifyTreeContentHashCode(); start = new TextPointer(this.TextContainer, this.SymbolOffset, LogicalDirection.Forward); end = new TextPointer(this.TextContainer, this.SymbolOffset + _symbolCount, LogicalDirection.Forward); this.TextContainer.DeleteContentInternal(start, end); } #endregion Public Methods //------------------------------------------------------ // // Private Fields // //------------------------------------------------------ #region Private Fields // Count of symbols to remove. private readonly int _symbolCount; #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
- ClientBuildManager.cs
- GB18030Encoding.cs
- XmlMemberMapping.cs
- DragEventArgs.cs
- ObjectItemCachedAssemblyLoader.cs
- UnmanagedMemoryStreamWrapper.cs
- Regex.cs
- InstanceData.cs
- EdmPropertyAttribute.cs
- LogStream.cs
- HtmlContainerControl.cs
- XmlCDATASection.cs
- HttpProtocolReflector.cs
- RNGCryptoServiceProvider.cs
- SkipStoryboardToFill.cs
- DataGridViewRow.cs
- NameValuePermission.cs
- SecurityTokenAuthenticator.cs
- sqlnorm.cs
- TextDecorationCollection.cs
- ParserExtension.cs
- SqlConnectionManager.cs
- DataGridViewBindingCompleteEventArgs.cs
- Function.cs
- WebHttpSecurityElement.cs
- ConfigurationFileMap.cs
- OraclePermissionAttribute.cs
- StylusPointProperty.cs
- QueryAccessibilityHelpEvent.cs
- ClientEndpointLoader.cs
- DesignerAdapterUtil.cs
- GridErrorDlg.cs
- __ComObject.cs
- HttpPostServerProtocol.cs
- ByteAnimationBase.cs
- Assert.cs
- RandomDelayQueuedSendsAsyncResult.cs
- StartFileNameEditor.cs
- StringUtil.cs
- DataGridrowEditEndingEventArgs.cs
- ArgIterator.cs
- CompleteWizardStep.cs
- GC.cs
- CultureTableRecord.cs
- PackageDigitalSignature.cs
- InputManager.cs
- XmlElementAttribute.cs
- SqlBuffer.cs
- LayoutEvent.cs
- DesignerCategoryAttribute.cs
- EntityConnectionStringBuilder.cs
- ObsoleteAttribute.cs
- Metafile.cs
- ExpressionLexer.cs
- StorageModelBuildProvider.cs
- Cursors.cs
- UIPermission.cs
- BulletedListEventArgs.cs
- LineServicesCallbacks.cs
- WindowsIPAddress.cs
- InputReport.cs
- MethodBuilderInstantiation.cs
- XmlSchema.cs
- FieldDescriptor.cs
- DataControlButton.cs
- ItemsControl.cs
- TextBox.cs
- WebPartMovingEventArgs.cs
- LogLogRecord.cs
- DataSourceCacheDurationConverter.cs
- Point3DCollectionValueSerializer.cs
- DropShadowEffect.cs
- SapiRecoInterop.cs
- ObjectSet.cs
- ChtmlMobileTextWriter.cs
- SpecialFolderEnumConverter.cs
- TreeIterator.cs
- PropertyRef.cs
- HtmlSelect.cs
- TextRangeProviderWrapper.cs
- PenContexts.cs
- GroupQuery.cs
- GenericTextProperties.cs
- NetTcpSectionData.cs
- OleDbConnection.cs
- ContainerSelectorGlyph.cs
- FieldInfo.cs
- ModelUIElement3D.cs
- ImageListImage.cs
- ClientFormsAuthenticationCredentials.cs
- DataBoundControl.cs
- DynamicPropertyHolder.cs
- UrlMapping.cs
- ProfileElement.cs
- TextDecorationCollection.cs
- ConnectionConsumerAttribute.cs
- HtmlDocument.cs
- Int32CollectionValueSerializer.cs
- ManifestResourceInfo.cs
- RTLAwareMessageBox.cs