Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Documents / TextTreePropertyUndoUnit.cs / 1305600 / TextTreePropertyUndoUnit.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: Undo unit for TextContainer.SetValue, etc. calls. // // History: // 03/03/2004 : [....] - Created // //--------------------------------------------------------------------------- using System; using MS.Internal; namespace System.Windows.Documents { // Undo unit for TextContainer.SetValue, etc. calls. internal class TextTreePropertyUndoUnit : TextTreeUndoUnit { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- #region Constructors // Create a new undo unit instance. // symbolOffset is where property values will be set. internal TextTreePropertyUndoUnit(TextContainer tree, int symbolOffset, PropertyRecord propertyRecord) : base(tree, symbolOffset) { _propertyRecord = propertyRecord; } #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 position; VerifyTreeContentHashCode(); position = new TextPointer(this.TextContainer, this.SymbolOffset, LogicalDirection.Forward); Invariant.Assert(position.GetPointerContext(LogicalDirection.Backward) == TextPointerContext.ElementStart, "TextTree undo unit out of [....] with TextTree."); if (_propertyRecord.Value != DependencyProperty.UnsetValue) { this.TextContainer.SetValue(position, _propertyRecord.Property, _propertyRecord.Value); } else { position.Parent.ClearValue(_propertyRecord.Property); } } #endregion Public Methods //------------------------------------------------------ // // Private Fields // //------------------------------------------------------ #region Private Fields // Property/value pair to restore. private readonly PropertyRecord _propertyRecord; #endregion Private Fields } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: Undo unit for TextContainer.SetValue, etc. calls. // // History: // 03/03/2004 : [....] - Created // //--------------------------------------------------------------------------- using System; using MS.Internal; namespace System.Windows.Documents { // Undo unit for TextContainer.SetValue, etc. calls. internal class TextTreePropertyUndoUnit : TextTreeUndoUnit { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- #region Constructors // Create a new undo unit instance. // symbolOffset is where property values will be set. internal TextTreePropertyUndoUnit(TextContainer tree, int symbolOffset, PropertyRecord propertyRecord) : base(tree, symbolOffset) { _propertyRecord = propertyRecord; } #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 position; VerifyTreeContentHashCode(); position = new TextPointer(this.TextContainer, this.SymbolOffset, LogicalDirection.Forward); Invariant.Assert(position.GetPointerContext(LogicalDirection.Backward) == TextPointerContext.ElementStart, "TextTree undo unit out of [....] with TextTree."); if (_propertyRecord.Value != DependencyProperty.UnsetValue) { this.TextContainer.SetValue(position, _propertyRecord.Property, _propertyRecord.Value); } else { position.Parent.ClearValue(_propertyRecord.Property); } } #endregion Public Methods //------------------------------------------------------ // // Private Fields // //------------------------------------------------------ #region Private Fields // Property/value pair to restore. private readonly PropertyRecord _propertyRecord; #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
- GraphicsState.cs
- TextSpanModifier.cs
- NamespaceCollection.cs
- ProtocolsConfigurationEntry.cs
- StorageEntitySetMapping.cs
- XPathQueryGenerator.cs
- DataTablePropertyDescriptor.cs
- ControlEvent.cs
- PipelineComponent.cs
- PenCursorManager.cs
- FontWeightConverter.cs
- EncryptedData.cs
- DisplayMemberTemplateSelector.cs
- RegexCompilationInfo.cs
- InProcStateClientManager.cs
- SecurityMessageProperty.cs
- Rule.cs
- BevelBitmapEffect.cs
- GC.cs
- ControlPropertyNameConverter.cs
- HttpResponseInternalBase.cs
- BitConverter.cs
- PowerModeChangedEventArgs.cs
- CustomError.cs
- PersistenceTypeAttribute.cs
- DocumentEventArgs.cs
- VisualStateChangedEventArgs.cs
- ClientBuildManager.cs
- ScalarConstant.cs
- RenderContext.cs
- BitmapInitialize.cs
- ControlBuilder.cs
- DateTimePicker.cs
- Metadata.cs
- objectquery_tresulttype.cs
- OutputCacheProfileCollection.cs
- PublisherMembershipCondition.cs
- MobileControlsSectionHelper.cs
- PseudoWebRequest.cs
- Ipv6Element.cs
- ISCIIEncoding.cs
- XsdDuration.cs
- XmlWrappingReader.cs
- ScrollProperties.cs
- WorkflowApplicationAbortedEventArgs.cs
- BinaryReader.cs
- FixedSOMSemanticBox.cs
- WebPartUtil.cs
- DrawListViewSubItemEventArgs.cs
- CqlQuery.cs
- ToolStripSeparatorRenderEventArgs.cs
- ControlEvent.cs
- WSSecurityOneDotOneReceiveSecurityHeader.cs
- DataControlReferenceCollection.cs
- ConfigurationValue.cs
- SymbolMethod.cs
- BaseDataListComponentEditor.cs
- RemoteArgument.cs
- WrapPanel.cs
- PageThemeBuildProvider.cs
- CustomAttributeFormatException.cs
- SHA1CryptoServiceProvider.cs
- FormsAuthenticationEventArgs.cs
- SmiXetterAccessMap.cs
- DeferredRunTextReference.cs
- CompositeControl.cs
- HttpInputStream.cs
- SubMenuStyle.cs
- WebPartDisplayMode.cs
- SafeFindHandle.cs
- TextControlDesigner.cs
- InvalidProgramException.cs
- MainMenu.cs
- DefaultHttpHandler.cs
- _SSPISessionCache.cs
- HtmlInputControl.cs
- XamlHostingSection.cs
- GroupDescription.cs
- ComponentConverter.cs
- FunctionDetailsReader.cs
- BooleanProjectedSlot.cs
- HttpFileCollectionWrapper.cs
- HtmlUtf8RawTextWriter.cs
- CqlIdentifiers.cs
- Tool.cs
- xml.cs
- DesignerActionUI.cs
- TreeNode.cs
- SelectionRange.cs
- Point.cs
- PrimitiveXmlSerializers.cs
- ListControl.cs
- DataGridClipboardHelper.cs
- HelpOperationInvoker.cs
- DoWorkEventArgs.cs
- Vector3D.cs
- FixedPage.cs
- DSASignatureDeformatter.cs
- UnsafeNativeMethodsMilCoreApi.cs
- ParamArrayAttribute.cs