Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / MS / Internal / PtsHost / UpdateRecord.cs / 1305600 / UpdateRecord.cs
//---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // // File: UpdateRecord.cs // // Description: Contains information about current state of upate process // in the current container paragraph. // // History: // 05/05/2003 : [....] - moving from Avalon branch. // //--------------------------------------------------------------------------- using System; using System.Diagnostics; using MS.Internal.PtsHost.UnsafeNativeMethods; namespace MS.Internal.PtsHost { // --------------------------------------------------------------------- // Contains information about current state of upate process in the // current container paragraph. // --------------------------------------------------------------------- internal sealed class UpdateRecord { // ------------------------------------------------------------------ // Constructor // ----------------------------------------------------------------- internal UpdateRecord() { Dtr = new DirtyTextRange(0,0,0); FirstPara = SyncPara = null; ChangeType = PTS.FSKCHANGE.fskchNone; Next = null; InProcessing = false; } // ------------------------------------------------------------------ // Merge with next update record. // ------------------------------------------------------------------ internal void MergeWithNext() { Debug.Assert(Next != null); // This is the last UR, cannot merge with next. // Merge DTRs int delta = Next.Dtr.StartIndex - Dtr.StartIndex; // Dtr.StartIndex is not changing Dtr.PositionsAdded += delta + Next.Dtr.PositionsAdded; Dtr.PositionsRemoved += delta + Next.Dtr.PositionsRemoved; // Reasign [....] point and next UpdateRecord SyncPara = Next.SyncPara; Next = Next.Next; } // ----------------------------------------------------------------- // Dirty text range. // ------------------------------------------------------------------ internal DirtyTextRange Dtr; // ----------------------------------------------------------------- // The first paragraph affected by the change. // ----------------------------------------------------------------- internal BaseParagraph FirstPara; // ----------------------------------------------------------------- // The first paragraph not affected by DTR, synchronization point for // update process. // ------------------------------------------------------------------ internal BaseParagraph SyncPara; // ----------------------------------------------------------------- // Type of the change (none, new, inside). // ------------------------------------------------------------------ internal PTS.FSKCHANGE ChangeType; // ------------------------------------------------------------------ // Next UpdateRecord. // ----------------------------------------------------------------- internal UpdateRecord Next; // ------------------------------------------------------------------ // Update record is in processing mode? // ----------------------------------------------------------------- internal bool InProcessing; } } // 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. // // File: UpdateRecord.cs // // Description: Contains information about current state of upate process // in the current container paragraph. // // History: // 05/05/2003 : [....] - moving from Avalon branch. // //--------------------------------------------------------------------------- using System; using System.Diagnostics; using MS.Internal.PtsHost.UnsafeNativeMethods; namespace MS.Internal.PtsHost { // --------------------------------------------------------------------- // Contains information about current state of upate process in the // current container paragraph. // --------------------------------------------------------------------- internal sealed class UpdateRecord { // ------------------------------------------------------------------ // Constructor // ----------------------------------------------------------------- internal UpdateRecord() { Dtr = new DirtyTextRange(0,0,0); FirstPara = SyncPara = null; ChangeType = PTS.FSKCHANGE.fskchNone; Next = null; InProcessing = false; } // ------------------------------------------------------------------ // Merge with next update record. // ------------------------------------------------------------------ internal void MergeWithNext() { Debug.Assert(Next != null); // This is the last UR, cannot merge with next. // Merge DTRs int delta = Next.Dtr.StartIndex - Dtr.StartIndex; // Dtr.StartIndex is not changing Dtr.PositionsAdded += delta + Next.Dtr.PositionsAdded; Dtr.PositionsRemoved += delta + Next.Dtr.PositionsRemoved; // Reasign [....] point and next UpdateRecord SyncPara = Next.SyncPara; Next = Next.Next; } // ----------------------------------------------------------------- // Dirty text range. // ------------------------------------------------------------------ internal DirtyTextRange Dtr; // ----------------------------------------------------------------- // The first paragraph affected by the change. // ----------------------------------------------------------------- internal BaseParagraph FirstPara; // ----------------------------------------------------------------- // The first paragraph not affected by DTR, synchronization point for // update process. // ------------------------------------------------------------------ internal BaseParagraph SyncPara; // ----------------------------------------------------------------- // Type of the change (none, new, inside). // ------------------------------------------------------------------ internal PTS.FSKCHANGE ChangeType; // ------------------------------------------------------------------ // Next UpdateRecord. // ----------------------------------------------------------------- internal UpdateRecord Next; // ------------------------------------------------------------------ // Update record is in processing mode? // ----------------------------------------------------------------- internal bool InProcessing; } } // 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
- AnnouncementEndpoint.cs
- HandleCollector.cs
- DriveInfo.cs
- CLSCompliantAttribute.cs
- Control.cs
- XmlAtomicValue.cs
- CollectionsUtil.cs
- QilExpression.cs
- Vector3DCollection.cs
- PerfProviderCollection.cs
- SimpleTextLine.cs
- WebMessageBodyStyleHelper.cs
- UInt32.cs
- DelayLoadType.cs
- ReferenceConverter.cs
- ReaderOutput.cs
- MSG.cs
- DbParameterCollectionHelper.cs
- EdmProviderManifest.cs
- ToolBarPanel.cs
- FillBehavior.cs
- RequiredAttributeAttribute.cs
- EventsTab.cs
- SQLByteStorage.cs
- FixedDocument.cs
- XhtmlBasicTextViewAdapter.cs
- TextFindEngine.cs
- UrlPath.cs
- BindingCompleteEventArgs.cs
- WebConfigurationHost.cs
- PingReply.cs
- EntityDataSourceConfigureObjectContext.cs
- SystemUdpStatistics.cs
- DataObjectFieldAttribute.cs
- LineServicesRun.cs
- FontStretch.cs
- TabControl.cs
- TextElementEnumerator.cs
- WebPartEditorApplyVerb.cs
- Executor.cs
- RelatedView.cs
- SafeNativeMethods.cs
- MetaForeignKeyColumn.cs
- CodeVariableDeclarationStatement.cs
- SystemResourceKey.cs
- SecurityException.cs
- ResourcesChangeInfo.cs
- ExtenderControl.cs
- XmlDataSourceNodeDescriptor.cs
- EncryptedPackage.cs
- BevelBitmapEffect.cs
- PerformanceCountersElement.cs
- EntityContainerEntitySet.cs
- MetadataException.cs
- EpmSyndicationContentDeSerializer.cs
- FormViewModeEventArgs.cs
- Pen.cs
- TextServicesContext.cs
- Int64Storage.cs
- CmsInterop.cs
- NetWebProxyFinder.cs
- SystemSounds.cs
- TreeBuilder.cs
- UIElementPropertyUndoUnit.cs
- CommandBinding.cs
- EntityDataSourceMemberPath.cs
- RootProfilePropertySettingsCollection.cs
- MenuAutomationPeer.cs
- IDReferencePropertyAttribute.cs
- TextBoxDesigner.cs
- ContactManager.cs
- SessionParameter.cs
- AliasGenerator.cs
- BaseResourcesBuildProvider.cs
- Point4DConverter.cs
- ReferenceEqualityComparer.cs
- CodeSnippetStatement.cs
- ScriptingJsonSerializationSection.cs
- SecureConversationVersion.cs
- TreeViewItem.cs
- CheckPair.cs
- TreeNode.cs
- EntityDataSourceSelectedEventArgs.cs
- WebPartCloseVerb.cs
- BinaryNode.cs
- DefinitionBase.cs
- AppDomainFactory.cs
- OdbcConnection.cs
- BlurBitmapEffect.cs
- LongValidatorAttribute.cs
- DbDataReader.cs
- DesignerActionItem.cs
- Tool.cs
- PointAnimationClockResource.cs
- ParallelTimeline.cs
- CommentEmitter.cs
- Hash.cs
- SR.Designer.cs
- LayoutExceptionEventArgs.cs
- FixedDocumentSequencePaginator.cs