Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / CommonUI / System / Drawing / Advanced / FontCollection.cs / 1 / FontCollection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /*************************************************************************\ * * Copyright (c) 1998-1999, Microsoft Corp. All Rights Reserved. * * Module Name: * * font.cs * * Abstract: * * COM+ wrapper for GDI+ font objects * * Revision History: * * 3/16/2000 [...] * Created it. * \**************************************************************************/ namespace System.Drawing.Text { using System.Diagnostics; using System; using System.Drawing; using System.Drawing.Internal; using System.Runtime.InteropServices; using System.ComponentModel; using Microsoft.Win32; ////// /// When inherited, enumerates the FontFamily /// objects in a collection of fonts. /// public abstract class FontCollection : IDisposable { internal IntPtr nativeFontCollection; internal FontCollection() { nativeFontCollection = IntPtr.Zero; } ////// /// Disposes of this public void Dispose() { Dispose(true); GC.SuppressFinalize(this); } ////// protected virtual void Dispose(bool disposing) { // nothing... } /// /// /// public FontFamily[] Families { get { int numSought = 0; int status = SafeNativeMethods.Gdip.GdipGetFontCollectionFamilyCount(new HandleRef(this, nativeFontCollection), out numSought); if (status != SafeNativeMethods.Gdip.Ok) throw SafeNativeMethods.Gdip.StatusException(status); IntPtr[] gpfamilies = new IntPtr[numSought]; int numFound = 0; status = SafeNativeMethods.Gdip.GdipGetFontCollectionFamilyList(new HandleRef(this, nativeFontCollection), numSought, gpfamilies, out numFound); if (status != SafeNativeMethods.Gdip.Ok) throw SafeNativeMethods.Gdip.StatusException(status); Debug.Assert(numSought == numFound, "GDI+ can't give a straight answer about how many fonts there are"); FontFamily[] families = new FontFamily[numFound]; for (int f = 0; f < numFound; f++) { IntPtr native; SafeNativeMethods.Gdip.GdipCloneFontFamily(new HandleRef(null, (IntPtr)gpfamilies[f]), out native); families[f] = new FontFamily(native); } return families; } } /** * Object cleanup */ ////// Gets the array of ////// objects associated with this . /// /// /// ~FontCollection() { Dispose(false); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved./// Allows an object to free resources before the object is /// reclaimed by the Garbage Collector ( ///). ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MobileControlPersister.cs
- HierarchicalDataSourceControl.cs
- SimplePropertyEntry.cs
- MarkupWriter.cs
- ToolStripPanel.cs
- ellipse.cs
- QuaternionAnimationUsingKeyFrames.cs
- TimeSpanFormat.cs
- FixedTextSelectionProcessor.cs
- Enum.cs
- MemberExpression.cs
- SqlFunctionAttribute.cs
- HttpRequestTraceRecord.cs
- MetabaseServerConfig.cs
- GridSplitterAutomationPeer.cs
- TemplateKeyConverter.cs
- HtmlEncodedRawTextWriter.cs
- QueryParameter.cs
- ColorDialog.cs
- DialogResultConverter.cs
- propertyentry.cs
- SelectionUIService.cs
- BufferedStream.cs
- DirectoryNotFoundException.cs
- AvTrace.cs
- CapabilitiesState.cs
- DigestComparer.cs
- LookupBindingPropertiesAttribute.cs
- PeerTransportSecuritySettings.cs
- FeatureSupport.cs
- ContainerControlDesigner.cs
- CodeIdentifier.cs
- HandoffBehavior.cs
- KeyManager.cs
- WinInetCache.cs
- ProfileBuildProvider.cs
- PerfCounters.cs
- Composition.cs
- DataGridPagerStyle.cs
- OutgoingWebResponseContext.cs
- TextReader.cs
- TextViewBase.cs
- EdmSchemaAttribute.cs
- AmbientLight.cs
- SimpleMailWebEventProvider.cs
- CodeTypeReferenceSerializer.cs
- GeneralTransformGroup.cs
- IPEndPoint.cs
- IInstanceContextProvider.cs
- DynamicPropertyReader.cs
- DataGridTable.cs
- ByteFacetDescriptionElement.cs
- TextBoxBase.cs
- SmtpMail.cs
- FigureHelper.cs
- DetailsViewUpdatedEventArgs.cs
- PictureBox.cs
- MultiBinding.cs
- WebPartConnectVerb.cs
- PreviewKeyDownEventArgs.cs
- NullableIntSumAggregationOperator.cs
- codemethodreferenceexpression.cs
- SynchronizedReadOnlyCollection.cs
- XmlComplianceUtil.cs
- SqlLiftWhereClauses.cs
- PermissionToken.cs
- SqlDataSourceCustomCommandEditor.cs
- XmlCodeExporter.cs
- TypeElement.cs
- baseshape.cs
- SecurityHelper.cs
- WpfKnownMember.cs
- UTF32Encoding.cs
- SharedPerformanceCounter.cs
- ChildrenQuery.cs
- ZoneMembershipCondition.cs
- QueryableDataSourceEditData.cs
- TextDecoration.cs
- XmlSchemaCollection.cs
- WmlCalendarAdapter.cs
- _BaseOverlappedAsyncResult.cs
- NumberFunctions.cs
- SessionEndingCancelEventArgs.cs
- CacheMode.cs
- BitmapEffectCollection.cs
- mediaclock.cs
- ThreadInterruptedException.cs
- ResizeGrip.cs
- GlyphRunDrawing.cs
- ProcessModule.cs
- KeyFrames.cs
- TemplateControlBuildProvider.cs
- UnsafeNativeMethodsCLR.cs
- AnimationException.cs
- ProcessHostServerConfig.cs
- MouseBinding.cs
- Button.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- MessageHeaderInfoTraceRecord.cs
- XmlMtomReader.cs