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
- WindowsListViewGroupSubsetLink.cs
- ContentPresenter.cs
- RequestUriProcessor.cs
- TreeViewItem.cs
- MessageEnumerator.cs
- TdsRecordBufferSetter.cs
- SecurityResources.cs
- System.Data.OracleClient_BID.cs
- DataGridViewCellFormattingEventArgs.cs
- Visual3D.cs
- PropertyItem.cs
- TraceProvider.cs
- SqlClientWrapperSmiStream.cs
- WindowsUpDown.cs
- DocumentViewerAutomationPeer.cs
- XmlHierarchicalDataSourceView.cs
- SnapLine.cs
- Deserializer.cs
- CngAlgorithm.cs
- LassoHelper.cs
- SafeViewOfFileHandle.cs
- XmlNodeChangedEventArgs.cs
- NGCPageContentCollectionSerializerAsync.cs
- ComponentResourceManager.cs
- IdentityReference.cs
- XmlSerializationWriter.cs
- DefaultValueTypeConverter.cs
- NetworkInformationException.cs
- SqlTypeConverter.cs
- XmlSerializerFactory.cs
- UrlPath.cs
- FileDialog_Vista_Interop.cs
- _LocalDataStoreMgr.cs
- AuthenticationSection.cs
- AnimatedTypeHelpers.cs
- AggregateException.cs
- LinkDesigner.cs
- ToolStripRenderer.cs
- RowCache.cs
- ProfileManager.cs
- GeneralTransform2DTo3D.cs
- XmlQueryRuntime.cs
- MemberPath.cs
- CachedBitmap.cs
- ObjectSecurityT.cs
- SessionViewState.cs
- CapabilitiesAssignment.cs
- ServicePoint.cs
- ImageAttributes.cs
- DescendantQuery.cs
- ImageFormatConverter.cs
- EditingCommands.cs
- MeasureItemEvent.cs
- ProjectionPruner.cs
- Simplifier.cs
- ApplicationDirectoryMembershipCondition.cs
- ReferencedAssemblyResolver.cs
- COSERVERINFO.cs
- Splitter.cs
- XPathNavigatorReader.cs
- ToolStripSplitStackLayout.cs
- PointHitTestResult.cs
- CodePropertyReferenceExpression.cs
- TargetException.cs
- RelativeSource.cs
- ToolStripDropTargetManager.cs
- ParentQuery.cs
- PropertiesTab.cs
- peersecurityelement.cs
- ImageListStreamer.cs
- InkSerializer.cs
- DefaultDialogButtons.cs
- DesignTimeVisibleAttribute.cs
- HScrollProperties.cs
- RoleBoolean.cs
- Dump.cs
- ThemeDictionaryExtension.cs
- MetaTable.cs
- DataContext.cs
- PocoEntityKeyStrategy.cs
- ReflectPropertyDescriptor.cs
- CheckBox.cs
- HeaderUtility.cs
- WinEventQueueItem.cs
- MsmqProcessProtocolHandler.cs
- OdbcParameter.cs
- ManipulationPivot.cs
- MultilineStringConverter.cs
- ChtmlLinkAdapter.cs
- NonBatchDirectoryCompiler.cs
- InternalPolicyElement.cs
- LineSegment.cs
- MasterPageCodeDomTreeGenerator.cs
- SAPIEngineTypes.cs
- InstanceDescriptor.cs
- MdiWindowListItemConverter.cs
- SocketCache.cs
- GroupBox.cs
- WebBrowserSiteBase.cs
- SupportsEventValidationAttribute.cs