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
- cache.cs
- TransformerInfo.cs
- FactoryGenerator.cs
- AuthenticationService.cs
- StickyNoteHelper.cs
- ContractMapping.cs
- MSG.cs
- AtomContentProperty.cs
- DPTypeDescriptorContext.cs
- MemberMaps.cs
- ProfilePropertySettingsCollection.cs
- TextEmbeddedObject.cs
- BindingContext.cs
- SafeCryptoHandles.cs
- CodeGeneratorAttribute.cs
- Expressions.cs
- Environment.cs
- SqlServer2KCompatibilityCheck.cs
- RuntimeComponentFilter.cs
- VisualBrush.cs
- URLBuilder.cs
- X509ChainPolicy.cs
- PolicyFactory.cs
- QuaternionConverter.cs
- DesignerActionPropertyItem.cs
- DataGridColumnReorderingEventArgs.cs
- NGCPageContentCollectionSerializerAsync.cs
- DebuggerAttributes.cs
- SignerInfo.cs
- PathBox.cs
- SemaphoreSecurity.cs
- HighlightComponent.cs
- BrowserTree.cs
- SHA384.cs
- WebPartsPersonalization.cs
- ThemeDictionaryExtension.cs
- XmlSchemas.cs
- ComplexLine.cs
- BaseCollection.cs
- GestureRecognitionResult.cs
- CompiledRegexRunner.cs
- HtmlTable.cs
- BindingExpression.cs
- BindingManagerDataErrorEventArgs.cs
- SigningProgress.cs
- DragAssistanceManager.cs
- FrugalMap.cs
- storagemappingitemcollection.viewdictionary.cs
- CacheOutputQuery.cs
- UdpChannelFactory.cs
- DataBindingExpressionBuilder.cs
- RemotingService.cs
- WindowsIPAddress.cs
- DataControlFieldCollection.cs
- SmiRecordBuffer.cs
- FullTrustAssembly.cs
- XmlSchemaDocumentation.cs
- SocketPermission.cs
- Membership.cs
- TraceData.cs
- WebBrowsableAttribute.cs
- SynthesizerStateChangedEventArgs.cs
- ActivationProxy.cs
- RepeaterCommandEventArgs.cs
- Point4D.cs
- SimpleFieldTemplateUserControl.cs
- DBPropSet.cs
- LogEntrySerializationException.cs
- HostedElements.cs
- FixedPage.cs
- SweepDirectionValidation.cs
- externdll.cs
- FormsAuthenticationModule.cs
- BrowserCapabilitiesCodeGenerator.cs
- EventNotify.cs
- AlternateView.cs
- WebPageTraceListener.cs
- FixUp.cs
- ZipIOExtraFieldPaddingElement.cs
- RotateTransform3D.cs
- HttpRawResponse.cs
- LOSFormatter.cs
- DnsEndPoint.cs
- XmlNode.cs
- ToolTipService.cs
- ConfigXmlAttribute.cs
- ChoiceConverter.cs
- QuerySettings.cs
- PartialList.cs
- WebOperationContext.cs
- HyperLinkStyle.cs
- HttpRuntimeSection.cs
- FormViewPagerRow.cs
- SqlParameterCollection.cs
- StorageRoot.cs
- TextTreeTextBlock.cs
- SqlDependency.cs
- TemplatedAdorner.cs
- InstanceLockTracking.cs
- IconHelper.cs