Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / 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
- XmlAutoDetectWriter.cs
- Base64Stream.cs
- TabItemWrapperAutomationPeer.cs
- SmtpSection.cs
- IdentityManager.cs
- KeyManager.cs
- DocumentPage.cs
- MenuCommand.cs
- handlecollector.cs
- FontStyle.cs
- OleDbRowUpdatedEvent.cs
- XmlQuerySequence.cs
- TextEditorSpelling.cs
- HtmlInputControl.cs
- SelectionHighlightInfo.cs
- DataGridHeaderBorder.cs
- ScaleTransform.cs
- PolygonHotSpot.cs
- ServiceModelActivity.cs
- XmlAttributeAttribute.cs
- DynamicUpdateCommand.cs
- x509store.cs
- QueryConverter.cs
- OutputCacheProviderCollection.cs
- basenumberconverter.cs
- PathStreamGeometryContext.cs
- XmlAnyElementAttribute.cs
- ClientSettingsSection.cs
- BitmapEffectInputData.cs
- XmlConvert.cs
- UInt16Converter.cs
- WebPartConnectionsCloseVerb.cs
- Utils.cs
- SHA512.cs
- MultiDataTrigger.cs
- ReadWriteObjectLock.cs
- StateBag.cs
- LocatorGroup.cs
- DataKeyArray.cs
- BamlWriter.cs
- ConnectionsZone.cs
- ProvidersHelper.cs
- DrawingAttributesDefaultValueFactory.cs
- GeometryModel3D.cs
- CommandBinding.cs
- ZipFileInfoCollection.cs
- DataGridViewLayoutData.cs
- VirtualPathProvider.cs
- DictionarySectionHandler.cs
- DataViewSetting.cs
- Polyline.cs
- BulletedListEventArgs.cs
- GraphicsPathIterator.cs
- HandleValueEditor.cs
- ProtocolImporter.cs
- GlobalizationSection.cs
- httpserverutility.cs
- PieceNameHelper.cs
- RecordManager.cs
- SqlDataSourceCommandEventArgs.cs
- Substitution.cs
- NotCondition.cs
- DataView.cs
- ErrorCodes.cs
- DescriptionAttribute.cs
- RandomDelayQueuedSendsAsyncResult.cs
- OperationResponse.cs
- Keyboard.cs
- BigInt.cs
- AttributeSetAction.cs
- PlainXmlDeserializer.cs
- HttpMethodAttribute.cs
- WmlPanelAdapter.cs
- RawKeyboardInputReport.cs
- OpCodes.cs
- BooleanAnimationBase.cs
- DataGridHeaderBorder.cs
- DataControlFieldCell.cs
- SHA1.cs
- UIElement.cs
- TrustLevel.cs
- LocalizableAttribute.cs
- FixedSOMContainer.cs
- ToolboxComponentsCreatedEventArgs.cs
- GuidelineSet.cs
- WindowsAuthenticationEventArgs.cs
- XmlHierarchyData.cs
- SessionStateSection.cs
- EntityExpressionVisitor.cs
- QueueProcessor.cs
- HttpModule.cs
- GridProviderWrapper.cs
- XPathExpr.cs
- DeflateStreamAsyncResult.cs
- StrokeCollectionConverter.cs
- MediaElementAutomationPeer.cs
- _CookieModule.cs
- PrinterSettings.cs
- ResourcePropertyMemberCodeDomSerializer.cs
- SymLanguageVendor.cs