Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- Base64Encoding.cs
- ListMarkerLine.cs
- UInt64Storage.cs
- ObjectListField.cs
- AnimationLayer.cs
- PolicyStatement.cs
- XmlSerializer.cs
- RoleManagerModule.cs
- DESCryptoServiceProvider.cs
- SrgsRuleRef.cs
- TypeLibraryHelper.cs
- FloaterParagraph.cs
- Terminate.cs
- BinaryFormatter.cs
- PublisherMembershipCondition.cs
- XPathNodeInfoAtom.cs
- ParseNumbers.cs
- ApplyTemplatesAction.cs
- BooleanStorage.cs
- XmlSchemaSimpleContentExtension.cs
- SqlDataSourceFilteringEventArgs.cs
- CaseCqlBlock.cs
- TypeDescriptorContext.cs
- CLSCompliantAttribute.cs
- DataServiceEntityAttribute.cs
- DocumentXmlWriter.cs
- ProcessThreadCollection.cs
- UnsafeNativeMethodsMilCoreApi.cs
- SimpleApplicationHost.cs
- StatusBarAutomationPeer.cs
- StringAttributeCollection.cs
- TextEditorCharacters.cs
- GeneralTransform.cs
- URL.cs
- QilList.cs
- ControlAdapter.cs
- ResourceIDHelper.cs
- DBCommand.cs
- EntityException.cs
- PackagePart.cs
- HideDisabledControlAdapter.cs
- XmlSchemaAnnotated.cs
- Matrix.cs
- SequentialUshortCollection.cs
- SchemaNames.cs
- CachedFontFamily.cs
- PathParser.cs
- _DomainName.cs
- ExpandedWrapper.cs
- SocketAddress.cs
- UnsafeNativeMethods.cs
- BaseAsyncResult.cs
- TreeNodeBindingDepthConverter.cs
- EnumBuilder.cs
- ArcSegment.cs
- TextOptions.cs
- SignedInfo.cs
- ReflectionTypeLoadException.cs
- ExtensionDataObject.cs
- PageCache.cs
- StorageRoot.cs
- ISCIIEncoding.cs
- LazyTextWriterCreator.cs
- EmptyElement.cs
- VirtualizingPanel.cs
- Quad.cs
- Condition.cs
- EmissiveMaterial.cs
- SendActivityDesignerTheme.cs
- CDSsyncETWBCLProvider.cs
- DataGridViewColumn.cs
- RuleConditionDialog.cs
- Pipe.cs
- HttpModulesSection.cs
- MatrixCamera.cs
- OrderedDictionary.cs
- SqlConnectionManager.cs
- ProcessHostMapPath.cs
- SqlConnectionHelper.cs
- CultureTable.cs
- SQLConvert.cs
- SpecialNameAttribute.cs
- ButtonStandardAdapter.cs
- DocumentViewerConstants.cs
- PathStreamGeometryContext.cs
- DiscoveryReferences.cs
- SchemaObjectWriter.cs
- UnsafeNetInfoNativeMethods.cs
- FileCodeGroup.cs
- GeneralTransformGroup.cs
- input.cs
- CalendarDay.cs
- RegionData.cs
- ConnectionPoolManager.cs
- TimeSpan.cs
- SafeEventHandle.cs
- MissingMethodException.cs
- DesignerHierarchicalDataSourceView.cs
- StructuralObject.cs
- SHA384CryptoServiceProvider.cs