Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / WinForms / Managed / System / WinForms / OSFeature.cs / 1 / OSFeature.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms { using System.Configuration.Assemblies; using System.Diagnostics; using System; using System.Security; using System.Security.Permissions; ////// /// public class OSFeature : FeatureSupport { ///Provides operating-system specific feature queries. ////// /// public static readonly object LayeredWindows = new object(); ///Represents the layered, top-level windows feature. This /// ///field is read-only. /// /// public static readonly object Themes = new object(); private static OSFeature feature = null; private static bool themeSupportTested = false; private static bool themeSupport = false; ///Determines if the OS supports themes ////// /// /// protected OSFeature() { } ////// Initializes a new instance of the ///class. /// /// /// /// public static OSFeature Feature { get { if (feature == null) feature = new OSFeature(); return feature; } } ///Represents the ///instance of to use for feature queries. This property is read-only. /// /// public override Version GetVersionPresent(object feature) { Version featureVersion = null; if (feature == LayeredWindows) { if (Environment.OSVersion.Platform == System.PlatformID.Win32NT && Environment.OSVersion.Version.CompareTo(new Version(5, 0, 0, 0)) >= 0) { featureVersion = new Version(0, 0, 0, 0); } } else if (feature == Themes) { if (!themeSupportTested) { try { SafeNativeMethods.IsAppThemed(); themeSupport = true; } catch { themeSupport = false; } themeSupportTested = true; } if (themeSupport) { featureVersion = new Version(0, 0, 0, 0); } } return featureVersion; } internal bool OnXp { get { bool onXp = false; if (Environment.OSVersion.Platform == System.PlatformID.Win32NT) { onXp = Environment.OSVersion.Version.CompareTo(new Version(5, 1, 0, 0)) >= 0; } return onXp; } } internal bool OnWin2k { get { bool onWin2k = false; if (Environment.OSVersion.Platform == System.PlatformID.Win32NT) { onWin2k = Environment.OSVersion.Version.CompareTo(new Version(5, 0, 0, 0)) >= 0; } return onWin2k; } } ///Retrieves the version of the specified feature currently available on the system. ////// /// public static bool IsPresent(SystemParameter enumVal) { switch (enumVal) { case SystemParameter.DropShadow: return Feature.OnXp; case SystemParameter.FlatMenu: return Feature.OnXp; case SystemParameter.FontSmoothingContrastMetric: return Feature.OnXp; case SystemParameter.FontSmoothingTypeMetric: return Feature.OnXp; case SystemParameter.MenuFadeEnabled: return Feature.OnWin2k; case SystemParameter.SelectionFade: return Feature.OnWin2k; case SystemParameter.ToolTipAnimationMetric: return Feature.OnWin2k; case SystemParameter.UIEffects: return Feature.OnWin2k; case SystemParameter.CaretWidthMetric: return Feature.OnWin2k; case SystemParameter.VerticalFocusThicknessMetric: return Feature.OnXp; case SystemParameter.HorizontalFocusThicknessMetric: return Feature.OnXp; } return false; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.Retrieves whether SystemParameterType is supported on the Current OS version. ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HyperlinkAutomationPeer.cs
- XmlSchemaObjectTable.cs
- ManagementNamedValueCollection.cs
- SystemIPInterfaceProperties.cs
- CodeActivity.cs
- BitSet.cs
- DiscoveryClientDocuments.cs
- Style.cs
- WebPartDeleteVerb.cs
- Converter.cs
- BlockUIContainer.cs
- ListComponentEditorPage.cs
- XmlAttributeAttribute.cs
- WebPartEditVerb.cs
- JpegBitmapEncoder.cs
- Vector3DValueSerializer.cs
- FileUpload.cs
- RTLAwareMessageBox.cs
- Accessible.cs
- InlinedLocationReference.cs
- EnglishPluralizationService.cs
- DbException.cs
- BookmarkCallbackWrapper.cs
- DesignerForm.cs
- SpanIndex.cs
- DateTimeOffset.cs
- DecoderExceptionFallback.cs
- backend.cs
- DependencyPropertyKey.cs
- LiteralTextParser.cs
- TimeSpanValidatorAttribute.cs
- TreeNodeCollection.cs
- CheckBoxRenderer.cs
- WmfPlaceableFileHeader.cs
- WebEventCodes.cs
- AQNBuilder.cs
- SspiNegotiationTokenProviderState.cs
- EntityReference.cs
- HostedHttpRequestAsyncResult.cs
- MultipartContentParser.cs
- ColorTransformHelper.cs
- OdbcConnectionString.cs
- ButtonFieldBase.cs
- IOThreadTimer.cs
- Rfc2898DeriveBytes.cs
- ToolStripRenderEventArgs.cs
- WebContext.cs
- MediaCommands.cs
- CodeObjectCreateExpression.cs
- IIS7WorkerRequest.cs
- UnhandledExceptionEventArgs.cs
- RelatedPropertyManager.cs
- ClientSettingsSection.cs
- AssociatedControlConverter.cs
- Tuple.cs
- IntranetCredentialPolicy.cs
- DecoderExceptionFallback.cs
- DependencyPropertyHelper.cs
- HttpCapabilitiesSectionHandler.cs
- DataGridViewDataErrorEventArgs.cs
- XPathBinder.cs
- NaturalLanguageHyphenator.cs
- FacetDescriptionElement.cs
- List.cs
- DynamicMetaObjectBinder.cs
- ContactManager.cs
- FirstMatchCodeGroup.cs
- ParallelLoopState.cs
- ScopedKnownTypes.cs
- CookieProtection.cs
- Control.cs
- PagesSection.cs
- TypeForwardedToAttribute.cs
- ReadOnlyHierarchicalDataSourceView.cs
- documentsequencetextcontainer.cs
- DataPagerField.cs
- GeneralTransform2DTo3D.cs
- EditingMode.cs
- CodeDelegateInvokeExpression.cs
- ScrollChrome.cs
- RowUpdatingEventArgs.cs
- Dynamic.cs
- Run.cs
- DataGridViewHeaderCell.cs
- UserUseLicenseDictionaryLoader.cs
- XmlWriter.cs
- SettingsProperty.cs
- VScrollProperties.cs
- ObjectDataSourceStatusEventArgs.cs
- RawUIStateInputReport.cs
- ExpressionBindingCollection.cs
- Point3DCollectionConverter.cs
- KeyFrames.cs
- PerfCounterSection.cs
- ConfigXmlWhitespace.cs
- StsCommunicationException.cs
- ControlCachePolicy.cs
- QilSortKey.cs
- SrgsElement.cs
- DbResourceAllocator.cs