Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / MS / Internal / PtsHost / OptimalBreakSession.cs / 1305600 / OptimalBreakSession.cs
//---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // // File: OptimalBreakSession // // Description: OptimalBreakSession is unmanaged resouce handle to TextParagraphCache // // History: // 06/07/2005 : ghermann - 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. //---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // // File: OptimalBreakSession // // Description: OptimalBreakSession is unmanaged resouce handle to TextParagraphCache // // History: // 06/07/2005 : ghermann - 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
- PageSettings.cs
- CreateUserErrorEventArgs.cs
- RegexWriter.cs
- AddInSegmentDirectoryNotFoundException.cs
- WpfWebRequestHelper.cs
- Encoder.cs
- SkinIDTypeConverter.cs
- Utils.cs
- HealthMonitoringSection.cs
- sqlmetadatafactory.cs
- SafeMILHandleMemoryPressure.cs
- NullExtension.cs
- ZipIOZip64EndOfCentralDirectoryBlock.cs
- DataSysAttribute.cs
- DebuggerAttributes.cs
- StylusDownEventArgs.cs
- QilScopedVisitor.cs
- Trace.cs
- SoapCommonClasses.cs
- WorkflowQueuingService.cs
- WSDualHttpSecurityElement.cs
- DataPagerFieldItem.cs
- ActivityBuilderHelper.cs
- TextControl.cs
- DateRangeEvent.cs
- GlyphTypeface.cs
- Debug.cs
- Constants.cs
- ArrangedElement.cs
- HtmlForm.cs
- RegexCaptureCollection.cs
- ProxyFragment.cs
- OAVariantLib.cs
- ADMembershipUser.cs
- SourceSwitch.cs
- QueryCursorEventArgs.cs
- XmlValidatingReaderImpl.cs
- ActivitiesCollection.cs
- ConfigurationSection.cs
- ControlBuilder.cs
- CollectionDataContractAttribute.cs
- FormView.cs
- RegexCode.cs
- DbConnectionStringBuilder.cs
- TreeNode.cs
- TreeSet.cs
- TextServicesPropertyRanges.cs
- SQLCharsStorage.cs
- NameObjectCollectionBase.cs
- BaseCodeDomTreeGenerator.cs
- UrlAuthFailedErrorFormatter.cs
- WCFServiceClientProxyGenerator.cs
- EventToken.cs
- Rule.cs
- OrderedHashRepartitionStream.cs
- MsmqHostedTransportManager.cs
- ConstraintCollection.cs
- XmlDataProvider.cs
- DesignTimeParseData.cs
- HTMLTagNameToTypeMapper.cs
- ButtonField.cs
- XmlnsDictionary.cs
- FlowDocumentPage.cs
- LineGeometry.cs
- CompositeDataBoundControl.cs
- InstanceDataCollection.cs
- XmlSchemaProviderAttribute.cs
- ConnectionStringsSection.cs
- PersonalizationProvider.cs
- DropDownList.cs
- TaskHelper.cs
- SafePEFileHandle.cs
- CommandManager.cs
- HashHelpers.cs
- XmlDictionaryWriter.cs
- TraceProvider.cs
- SemanticAnalyzer.cs
- TypeUtil.cs
- SoapSchemaExporter.cs
- GPStream.cs
- CharacterShapingProperties.cs
- DtdParser.cs
- DesignObjectWrapper.cs
- DependencyProperty.cs
- DesignSurfaceCollection.cs
- HTMLTextWriter.cs
- PasswordDeriveBytes.cs
- SoapDocumentServiceAttribute.cs
- Stylesheet.cs
- TypeDependencyAttribute.cs
- CodeCommentStatement.cs
- WebPartHeaderCloseVerb.cs
- MergePropertyDescriptor.cs
- OracleParameter.cs
- ConnectionPoint.cs
- SingleResultAttribute.cs
- TimeIntervalCollection.cs
- BinaryConverter.cs
- SemanticResolver.cs
- Rect3D.cs