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 / 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 : 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
- DataTableNewRowEvent.cs
- HttpFileCollection.cs
- ConnectionStringsExpressionBuilder.cs
- ZoneLinkButton.cs
- ToolStripRenderer.cs
- PolyQuadraticBezierSegment.cs
- iisPickupDirectory.cs
- SortFieldComparer.cs
- FixedSOMElement.cs
- ByteAnimationBase.cs
- WebPartCloseVerb.cs
- HttpConfigurationSystem.cs
- CommonObjectSecurity.cs
- TypeNameConverter.cs
- DSASignatureDeformatter.cs
- File.cs
- LayoutExceptionEventArgs.cs
- NetNamedPipeBindingCollectionElement.cs
- HtmlControlPersistable.cs
- CurrentChangingEventManager.cs
- StandardCommands.cs
- Codec.cs
- XamlFrame.cs
- PropertyIDSet.cs
- RSAOAEPKeyExchangeFormatter.cs
- FacetChecker.cs
- SiteMapHierarchicalDataSourceView.cs
- AlignmentXValidation.cs
- MessageHeaderDescription.cs
- PatternMatcher.cs
- IncomingWebResponseContext.cs
- ReverseInheritProperty.cs
- DefaultValueConverter.cs
- COM2IDispatchConverter.cs
- SiteMapNodeCollection.cs
- AssertFilter.cs
- UIAgentMonitor.cs
- PropertyChangedEventManager.cs
- DynamicUpdateCommand.cs
- PersonalizationProvider.cs
- IssuanceTokenProviderBase.cs
- FileInfo.cs
- TableLayoutColumnStyleCollection.cs
- GACIdentityPermission.cs
- OracleDateTime.cs
- cookie.cs
- Annotation.cs
- PropertyTabAttribute.cs
- ResourceCategoryAttribute.cs
- DataMemberFieldConverter.cs
- StackOverflowException.cs
- ObjectDataSourceDisposingEventArgs.cs
- SafeFileHandle.cs
- UrlMappingCollection.cs
- DisposableCollectionWrapper.cs
- Convert.cs
- PageParserFilter.cs
- EncryptedData.cs
- ToolBarButton.cs
- WmlImageAdapter.cs
- EventListener.cs
- ProvidersHelper.cs
- ZipIOExtraFieldElement.cs
- ArrayList.cs
- InputMethodStateTypeInfo.cs
- BidOverLoads.cs
- EventMap.cs
- HealthMonitoringSection.cs
- NamespaceExpr.cs
- ReferentialConstraint.cs
- StyleHelper.cs
- BitVector32.cs
- Convert.cs
- CompareValidator.cs
- ToolStripLabel.cs
- MsmqNonTransactedPoisonHandler.cs
- ModuleElement.cs
- SiblingIterators.cs
- TreeNode.cs
- SqlReorderer.cs
- SelectionRangeConverter.cs
- HwndMouseInputProvider.cs
- XmlILConstructAnalyzer.cs
- Scheduler.cs
- WrapperEqualityComparer.cs
- Rect3DConverter.cs
- DiagnosticsConfigurationHandler.cs
- AuthenticateEventArgs.cs
- ArgumentsParser.cs
- SHA1CryptoServiceProvider.cs
- DateTimeFormat.cs
- XPathDocument.cs
- UInt64.cs
- SafeRightsManagementQueryHandle.cs
- ReflectionServiceProvider.cs
- BaseTypeViewSchema.cs
- PassportAuthenticationModule.cs
- TableStyle.cs
- ProcessThreadCollection.cs
- NonBatchDirectoryCompiler.cs