Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / 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
- xml.cs
- AlphaSortedEnumConverter.cs
- SqlNodeTypeOperators.cs
- Debugger.cs
- PrintEvent.cs
- InternalEnumValidatorAttribute.cs
- StrongNameMembershipCondition.cs
- HostSecurityManager.cs
- StyleSheet.cs
- DecimalAnimation.cs
- DynamicPropertyReader.cs
- CodeLabeledStatement.cs
- GridViewSortEventArgs.cs
- ObjRef.cs
- AttributeCollection.cs
- DataRecordObjectView.cs
- CaseExpr.cs
- XMLSyntaxException.cs
- LinqDataView.cs
- ListViewVirtualItemsSelectionRangeChangedEvent.cs
- ServiceInstanceProvider.cs
- InputLanguageSource.cs
- TableHeaderCell.cs
- DataTableExtensions.cs
- ButtonField.cs
- XmlObjectSerializerReadContext.cs
- GACIdentityPermission.cs
- ByteKeyFrameCollection.cs
- StorageEntityTypeMapping.cs
- SslStream.cs
- ContextMenuAutomationPeer.cs
- Animatable.cs
- RadioButtonList.cs
- SignatureToken.cs
- LocatorBase.cs
- TableTextElementCollectionInternal.cs
- SchemaDeclBase.cs
- HttpCapabilitiesEvaluator.cs
- RelationshipSet.cs
- DependencyPropertyKey.cs
- WaitForChangedResult.cs
- RuleSettings.cs
- ConfigUtil.cs
- SimpleHandlerBuildProvider.cs
- BinaryFormatterWriter.cs
- UnsafeNativeMethods.cs
- DataSetMappper.cs
- mediaclock.cs
- AudienceUriMode.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- TableLayoutSettings.cs
- LocationUpdates.cs
- TrackBar.cs
- CodeAccessPermission.cs
- RecordManager.cs
- IntegerFacetDescriptionElement.cs
- ComponentDispatcher.cs
- PointF.cs
- ViewStateModeByIdAttribute.cs
- BufferedStream.cs
- SafePointer.cs
- AggregateNode.cs
- FormatterConverter.cs
- ProcessModelInfo.cs
- _BufferOffsetSize.cs
- DPTypeDescriptorContext.cs
- MenuTracker.cs
- _SslSessionsCache.cs
- ListViewCommandEventArgs.cs
- CorrelationInitializer.cs
- NetTcpSectionData.cs
- TaskDesigner.cs
- PtsHost.cs
- OperatingSystem.cs
- CmsInterop.cs
- ProcessInfo.cs
- CombinedGeometry.cs
- InternalBufferOverflowException.cs
- GACMembershipCondition.cs
- SecurityBindingElementImporter.cs
- TraceHandlerErrorFormatter.cs
- LazyTextWriterCreator.cs
- CollectionBuilder.cs
- TimeStampChecker.cs
- SequentialOutput.cs
- CompiledXpathExpr.cs
- XmlRawWriterWrapper.cs
- PixelFormats.cs
- ValidateNames.cs
- UpdatePanelControlTrigger.cs
- ServiceSecurityAuditElement.cs
- SizeAnimation.cs
- Authorization.cs
- KnownColorTable.cs
- PrimaryKeyTypeConverter.cs
- WindowsHyperlink.cs
- ListManagerBindingsCollection.cs
- FieldNameLookup.cs
- ActionFrame.cs
- TransportConfigurationTypeElement.cs