Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / MS / Internal / PtsHost / OptimalBreakSession.cs / 1 / OptimalBreakSession.cs
//---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // // File: OptimalBreakSession // // Description: OptimalBreakSession is unmanaged resouce handle to TextParagraphCache // // History: // 06/07/2005 : [....] - created // //--------------------------------------------------------------------------- using System; using System.Collections; using System.Windows; using System.Security; // SecurityCritical using System.Windows.Documents; using MS.Internal.Text; using MS.Internal.PtsHost.UnsafeNativeMethods; using System.Windows.Media.TextFormatting; namespace MS.Internal.PtsHost { // --------------------------------------------------------------------- // Break record for line - holds decoration information // --------------------------------------------------------------------- internal sealed class OptimalBreakSession : UnmanagedHandle { // ------------------------------------------------------------------ // Constructor. // // PtsContext - Context // TextParagraphCache - Contained line break // ----------------------------------------------------------------- internal OptimalBreakSession(TextParagraph textParagraph, TextParaClient textParaClient, TextParagraphCache TextParagraphCache, OptimalTextSource optimalTextSource) : base(textParagraph.PtsContext) { _textParagraph = textParagraph; _textParaClient = textParaClient; _textParagraphCache = TextParagraphCache; _optimalTextSource = optimalTextSource; } ////// Dispose the break session / paragraph cache /// public override void Dispose() { try { if(_textParagraphCache != null) { _textParagraphCache.Dispose(); } if(_optimalTextSource != null) { _optimalTextSource.Dispose(); } } finally { _textParagraphCache = null; _optimalTextSource = null; } base.Dispose(); } #region Internal Properties internal TextParagraphCache TextParagraphCache { get { return _textParagraphCache; } } internal TextParagraph TextParagraph { get { return _textParagraph; } } internal TextParaClient TextParaClient { get { return _textParaClient; } } internal OptimalTextSource OptimalTextSource { get { return _optimalTextSource; } } #endregion Internal Properties #region Private Fields private TextParagraphCache _textParagraphCache; private TextParagraph _textParagraph; private TextParaClient _textParaClient; private OptimalTextSource _optimalTextSource; #endregion Private Fields } // ---------------------------------------------------------------------- // LineBreakpoint - Unmanaged handle for TextBreakpoint / optimal break session // ---------------------------------------------------------------------- internal sealed class LineBreakpoint : UnmanagedHandle { // ----------------------------------------------------------------- // Constructor. // // PtsContext - Context // TextBreakpoint - Contained breakpoint // ------------------------------------------------------------------ internal LineBreakpoint(OptimalBreakSession optimalBreakSession, TextBreakpoint textBreakpoint) : base(optimalBreakSession.PtsContext) { _textBreakpoint = textBreakpoint; _optimalBreakSession = optimalBreakSession; } ////// Dispose the text breakpoint /// public override void Dispose() { if(_textBreakpoint != null) { _textBreakpoint.Dispose(); } base.Dispose(); } #region Internal Properties internal OptimalBreakSession OptimalBreakSession { get { return _optimalBreakSession; } } #endregion Internal Properties #region Private Fields private TextBreakpoint _textBreakpoint; private OptimalBreakSession _optimalBreakSession; #endregion Private Fields } } // 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
- SelectionManager.cs
- SymLanguageVendor.cs
- ClientConvert.cs
- EventItfInfo.cs
- CodeTypeParameter.cs
- Variable.cs
- XmlTextAttribute.cs
- PersonalizablePropertyEntry.cs
- StandardToolWindows.cs
- Action.cs
- ChangePasswordAutoFormat.cs
- CryptoHelper.cs
- XmlSchemaAnnotation.cs
- XmlWriterDelegator.cs
- TdsParserStaticMethods.cs
- ScriptRegistrationManager.cs
- GridLength.cs
- ArrayMergeHelper.cs
- PartialCachingControl.cs
- ArraySubsetEnumerator.cs
- SqlRecordBuffer.cs
- DSACryptoServiceProvider.cs
- XmlSchema.cs
- SecureStringHasher.cs
- HTMLTextWriter.cs
- TransformerInfo.cs
- AnchoredBlock.cs
- DateTimePickerDesigner.cs
- JavascriptCallbackResponseProperty.cs
- cookiecollection.cs
- EmptyEnumerable.cs
- RemoteWebConfigurationHostServer.cs
- InstanceDataCollection.cs
- Nullable.cs
- VirtualDirectoryMapping.cs
- Ray3DHitTestResult.cs
- CopyAction.cs
- ToolBarButtonClickEvent.cs
- OdbcHandle.cs
- WindowsHyperlink.cs
- GridToolTip.cs
- FixedSOMGroup.cs
- TemplateXamlTreeBuilder.cs
- Variable.cs
- SqlCommand.cs
- PageRanges.cs
- XPathMultyIterator.cs
- Query.cs
- NavigationService.cs
- EntityStoreSchemaGenerator.cs
- ScaleTransform.cs
- SchemaReference.cs
- GridProviderWrapper.cs
- ThreadExceptionEvent.cs
- CodeSnippetExpression.cs
- MessageSmuggler.cs
- EmptyStringExpandableObjectConverter.cs
- MappingItemCollection.cs
- XmlQualifiedName.cs
- BookmarkCallbackWrapper.cs
- DynamicEntity.cs
- StylusTip.cs
- FileVersionInfo.cs
- DescendantOverDescendantQuery.cs
- RecognizedAudio.cs
- SqlGenericUtil.cs
- TypeSystemProvider.cs
- GenericEnumerator.cs
- BindingRestrictions.cs
- ModuleBuilderData.cs
- BitmapCodecInfo.cs
- TextBoxView.cs
- DataGridTablesFactory.cs
- Decimal.cs
- Matrix.cs
- FreezableDefaultValueFactory.cs
- HeaderCollection.cs
- FileLevelControlBuilderAttribute.cs
- ObjectReferenceStack.cs
- WindowsRegion.cs
- PolicyUtility.cs
- StateMachineSubscription.cs
- MailAddressCollection.cs
- FixedSchema.cs
- WebException.cs
- DynamicValueConverter.cs
- DrawToolTipEventArgs.cs
- SqlDependencyListener.cs
- InheritedPropertyChangedEventArgs.cs
- AppDomain.cs
- Control.cs
- BitmapFrame.cs
- ConstructorExpr.cs
- PublisherIdentityPermission.cs
- UserControlCodeDomTreeGenerator.cs
- DesignSurfaceServiceContainer.cs
- PropertyGrid.cs
- IOException.cs
- Scene3D.cs
- JsonXmlDataContract.cs