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
- SqlFunctions.cs
- SiblingIterators.cs
- DrawingContextWalker.cs
- SpecialNameAttribute.cs
- PageContentAsyncResult.cs
- DataReceivedEventArgs.cs
- messageonlyhwndwrapper.cs
- XmlDataLoader.cs
- PlanCompiler.cs
- SoapParser.cs
- DataTable.cs
- CheckBoxPopupAdapter.cs
- NativeMethods.cs
- RoutedCommand.cs
- Column.cs
- ReaderWriterLock.cs
- CompilerErrorCollection.cs
- HtmlWindow.cs
- PackWebRequest.cs
- Profiler.cs
- TypeGeneratedEventArgs.cs
- FocusTracker.cs
- PublishLicense.cs
- InvalidOleVariantTypeException.cs
- RadialGradientBrush.cs
- Byte.cs
- AssemblyInfo.cs
- SelectedDatesCollection.cs
- GeneralTransformGroup.cs
- SpellerHighlightLayer.cs
- MinimizableAttributeTypeConverter.cs
- Domain.cs
- DataFormats.cs
- HtmlImageAdapter.cs
- AstTree.cs
- PtsHelper.cs
- ActionMismatchAddressingException.cs
- KerberosSecurityTokenProvider.cs
- JumpPath.cs
- ThreadStartException.cs
- XmlJsonReader.cs
- ValidationError.cs
- OutputCacheProfileCollection.cs
- CompoundFileStreamReference.cs
- ParameterRefs.cs
- SqlConnectionFactory.cs
- GreenMethods.cs
- MethodCallTranslator.cs
- BinaryWriter.cs
- DataGridViewLinkColumn.cs
- TextRangeEditLists.cs
- ConnectorDragDropGlyph.cs
- XmlSchemaNotation.cs
- XmlSchemaCompilationSettings.cs
- OraclePermission.cs
- DataGridViewCellLinkedList.cs
- BufferModesCollection.cs
- RadialGradientBrush.cs
- InitiatorServiceModelSecurityTokenRequirement.cs
- ValidatedMobileControlConverter.cs
- ComboBox.cs
- SymLanguageVendor.cs
- ReadOnlyNameValueCollection.cs
- TabPanel.cs
- regiisutil.cs
- PropertyTabChangedEvent.cs
- AddInToken.cs
- ProxyHelper.cs
- HtmlContainerControl.cs
- FigureParagraph.cs
- Buffer.cs
- PointLightBase.cs
- XmlNodeReader.cs
- MultipleViewProviderWrapper.cs
- DataSet.cs
- BindingBase.cs
- Stream.cs
- CssTextWriter.cs
- ChildrenQuery.cs
- SapiAttributeParser.cs
- ReadOnlyTernaryTree.cs
- WebConfigurationManager.cs
- Double.cs
- ClientRuntimeConfig.cs
- altserialization.cs
- DataProviderNameConverter.cs
- EmptyStringExpandableObjectConverter.cs
- SemaphoreSecurity.cs
- CustomError.cs
- SystemIdentity.cs
- Part.cs
- DashStyle.cs
- AuditLogLocation.cs
- PngBitmapDecoder.cs
- Thread.cs
- MobileSysDescriptionAttribute.cs
- QueryCacheManager.cs
- Span.cs
- DataSourceConverter.cs
- StrongNameIdentityPermission.cs