Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Framework / MS / Internal / PtsHost / DirtyTextRange.cs / 1 / DirtyTextRange.cs
//---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // // File: DirtyTextRange.cs // // Description: Dirty text range describes change in the TextContainer. // // History: // 06/06/2003 : grzegorz - created. // //--------------------------------------------------------------------------- using System; using System.Windows.Controls; using System.Windows.Documents; namespace MS.Internal.PtsHost { // --------------------------------------------------------------------- // Dirty text range describes change in the TextContainer. // --------------------------------------------------------------------- internal struct DirtyTextRange { // ------------------------------------------------------------------ // Constructor // // startIndex - Index of the starting position of the change. // positionsAdded - Number of characters added. // positionsRemoved - Number of characters removed. // ----------------------------------------------------------------- internal DirtyTextRange(int startIndex, int positionsAdded, int positionsRemoved) : this(startIndex, positionsAdded, positionsRemoved, false /* affectsRenderOnly */) { } // ------------------------------------------------------------------ // Constructor // // startIndex - Index of the starting position of the change. // positionsAdded - Number of characters added. // positionsRemoved - Number of characters removed. // affectsRenderOnly - true if change does not affect measure (highlight change) // ------------------------------------------------------------------ internal DirtyTextRange(int startIndex, int positionsAdded, int positionsRemoved, bool affectsRenderOnly) { StartIndex = startIndex; PositionsAdded = positionsAdded; PositionsRemoved = positionsRemoved; AffectsRenderOnly = affectsRenderOnly; } // ----------------------------------------------------------------- // Constructor // // change - TextContainer change data. // ------------------------------------------------------------------ internal DirtyTextRange(TextContainerChangeEventArgs change) { StartIndex = change.ITextPosition.Offset; PositionsAdded = 0; PositionsRemoved = 0; switch (change.TextChange) { case TextChangeType.ContentAdded: PositionsAdded = change.Count; break; case TextChangeType.ContentRemoved: PositionsRemoved = change.Count; break; case TextChangeType.PropertyModified: PositionsAdded = change.Count; PositionsRemoved = change.Count; break; } AffectsRenderOnly = false; } // ----------------------------------------------------------------- // Index of the starting position of the change. // ----------------------------------------------------------------- internal int StartIndex; // ----------------------------------------------------------------- // Number of characters added. // ------------------------------------------------------------------ internal int PositionsAdded; // ----------------------------------------------------------------- // Number of characters removed. // ------------------------------------------------------------------ internal int PositionsRemoved; // ------------------------------------------------------------------ // true if the change affects render only (ie, a highlight change). // ----------------------------------------------------------------- internal bool AffectsRenderOnly; } } // 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: DirtyTextRange.cs // // Description: Dirty text range describes change in the TextContainer. // // History: // 06/06/2003 : grzegorz - created. // //--------------------------------------------------------------------------- using System; using System.Windows.Controls; using System.Windows.Documents; namespace MS.Internal.PtsHost { // --------------------------------------------------------------------- // Dirty text range describes change in the TextContainer. // --------------------------------------------------------------------- internal struct DirtyTextRange { // ------------------------------------------------------------------ // Constructor // // startIndex - Index of the starting position of the change. // positionsAdded - Number of characters added. // positionsRemoved - Number of characters removed. // ----------------------------------------------------------------- internal DirtyTextRange(int startIndex, int positionsAdded, int positionsRemoved) : this(startIndex, positionsAdded, positionsRemoved, false /* affectsRenderOnly */) { } // ------------------------------------------------------------------ // Constructor // // startIndex - Index of the starting position of the change. // positionsAdded - Number of characters added. // positionsRemoved - Number of characters removed. // affectsRenderOnly - true if change does not affect measure (highlight change) // ------------------------------------------------------------------ internal DirtyTextRange(int startIndex, int positionsAdded, int positionsRemoved, bool affectsRenderOnly) { StartIndex = startIndex; PositionsAdded = positionsAdded; PositionsRemoved = positionsRemoved; AffectsRenderOnly = affectsRenderOnly; } // ----------------------------------------------------------------- // Constructor // // change - TextContainer change data. // ------------------------------------------------------------------ internal DirtyTextRange(TextContainerChangeEventArgs change) { StartIndex = change.ITextPosition.Offset; PositionsAdded = 0; PositionsRemoved = 0; switch (change.TextChange) { case TextChangeType.ContentAdded: PositionsAdded = change.Count; break; case TextChangeType.ContentRemoved: PositionsRemoved = change.Count; break; case TextChangeType.PropertyModified: PositionsAdded = change.Count; PositionsRemoved = change.Count; break; } AffectsRenderOnly = false; } // ----------------------------------------------------------------- // Index of the starting position of the change. // ----------------------------------------------------------------- internal int StartIndex; // ----------------------------------------------------------------- // Number of characters added. // ------------------------------------------------------------------ internal int PositionsAdded; // ----------------------------------------------------------------- // Number of characters removed. // ------------------------------------------------------------------ internal int PositionsRemoved; // ------------------------------------------------------------------ // true if the change affects render only (ie, a highlight change). // ----------------------------------------------------------------- internal bool AffectsRenderOnly; } } // 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
- PointCollection.cs
- Bidi.cs
- panel.cs
- ButtonField.cs
- BufferedGraphicsContext.cs
- SessionStateUtil.cs
- BypassElement.cs
- ActiveXSite.cs
- TextRangeSerialization.cs
- DependencyPropertyKind.cs
- TitleStyle.cs
- DbBuffer.cs
- OverflowException.cs
- propertytag.cs
- ReadWriteObjectLock.cs
- CodeCompiler.cs
- SimpleMailWebEventProvider.cs
- LinqDataView.cs
- OleDbConnection.cs
- QilReplaceVisitor.cs
- basecomparevalidator.cs
- OutputCacheProfileCollection.cs
- HostedHttpContext.cs
- ListViewGroupConverter.cs
- Page.cs
- KnownTypesHelper.cs
- WebPartVerbCollection.cs
- XmlTypeMapping.cs
- ActivityStateRecord.cs
- ListBoxChrome.cs
- TdsParserHelperClasses.cs
- DynamicPhysicalDiscoSearcher.cs
- ResXResourceSet.cs
- Vertex.cs
- codemethodreferenceexpression.cs
- MessageDesigner.cs
- ToolBarPanel.cs
- DockProviderWrapper.cs
- MemoryMappedFile.cs
- IisTraceListener.cs
- SqlFactory.cs
- EventEntry.cs
- LoginNameDesigner.cs
- XamlTreeBuilder.cs
- XamlVector3DCollectionSerializer.cs
- DefaultClaimSet.cs
- DataGridItemCollection.cs
- RegistrySecurity.cs
- ResumeStoryboard.cs
- StandardCommandToolStripMenuItem.cs
- Matrix.cs
- ProviderSettings.cs
- SystemInfo.cs
- UrlMappingCollection.cs
- Effect.cs
- ViewPort3D.cs
- IPEndPointCollection.cs
- HealthMonitoringSection.cs
- XPathBinder.cs
- Reference.cs
- TextLine.cs
- ObjectConverter.cs
- DataControlPagerLinkButton.cs
- FormViewInsertedEventArgs.cs
- TreeWalker.cs
- SqlDataSourceView.cs
- XmlException.cs
- FastPropertyAccessor.cs
- SqlTrackingQuery.cs
- IsolatedStorageFile.cs
- NegatedConstant.cs
- DeadCharTextComposition.cs
- Baml2006KeyRecord.cs
- MimeFormatter.cs
- PipelineComponent.cs
- EntityTransaction.cs
- UInt16.cs
- SqlProvider.cs
- ScrollChrome.cs
- WindowsSpinner.cs
- TextTreeUndo.cs
- GenericIdentity.cs
- MergablePropertyAttribute.cs
- NewItemsContextMenuStrip.cs
- TypeKeyValue.cs
- WebPartsSection.cs
- SimpleBitVector32.cs
- HttpCacheVaryByContentEncodings.cs
- HttpRuntime.cs
- JavascriptCallbackResponseProperty.cs
- DPCustomTypeDescriptor.cs
- RuntimeArgumentHandle.cs
- PrimitiveSchema.cs
- StrongNameKeyPair.cs
- ToolStripContextMenu.cs
- XPathQilFactory.cs
- HyperLinkColumn.cs
- NativeMethods.cs
- SignatureHelper.cs
- CodeTypeReferenceExpression.cs