Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / WinForms / Managed / System / WinForms / OSFeature.cs / 1305376 / 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.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
- TableLayoutStyleCollection.cs
- SchemaElementDecl.cs
- JournalNavigationScope.cs
- PlacementWorkspace.cs
- BlurBitmapEffect.cs
- VolatileResourceManager.cs
- SurrogateEncoder.cs
- GlyphRunDrawing.cs
- DataGridViewIntLinkedList.cs
- SafeArrayTypeMismatchException.cs
- SubclassTypeValidator.cs
- BinaryFormatterWriter.cs
- FormsAuthenticationTicket.cs
- OracleConnectionFactory.cs
- ColorMap.cs
- XmlIlTypeHelper.cs
- Validator.cs
- ObjectStorage.cs
- SecurityCriticalDataForSet.cs
- OdbcRowUpdatingEvent.cs
- PeerTransportListenAddressValidatorAttribute.cs
- WmlValidatorAdapter.cs
- SmtpMail.cs
- HtmlLink.cs
- ValidationUtility.cs
- HostedHttpRequestAsyncResult.cs
- ErrorWrapper.cs
- DataDocumentXPathNavigator.cs
- DurableEnlistmentState.cs
- RayHitTestParameters.cs
- Part.cs
- SQLCharsStorage.cs
- OSEnvironmentHelper.cs
- ToolStripCustomTypeDescriptor.cs
- xmlglyphRunInfo.cs
- Int32CollectionConverter.cs
- XmlSchemaAppInfo.cs
- SimpleType.cs
- VisualStyleTypesAndProperties.cs
- SystemWebSectionGroup.cs
- AutoGeneratedFieldProperties.cs
- HostProtectionPermission.cs
- CaseStatement.cs
- MetadataArtifactLoader.cs
- NavigationEventArgs.cs
- BaseCollection.cs
- DbProviderFactories.cs
- XmlUtf8RawTextWriter.cs
- FrameworkContextData.cs
- _BufferOffsetSize.cs
- WhitespaceReader.cs
- ProfilePropertyNameValidator.cs
- SymDocumentType.cs
- UriParserTemplates.cs
- Scene3D.cs
- PolicyReader.cs
- VectorAnimationUsingKeyFrames.cs
- ResourceSet.cs
- Knowncolors.cs
- ComNativeDescriptor.cs
- X500Name.cs
- TextLineBreak.cs
- KeyTimeConverter.cs
- SafeThemeHandle.cs
- ContractCodeDomInfo.cs
- XmlDownloadManager.cs
- FormsAuthenticationEventArgs.cs
- IdentityVerifier.cs
- RichTextBoxAutomationPeer.cs
- WinInetCache.cs
- DataSetUtil.cs
- SourceSwitch.cs
- PackageProperties.cs
- TTSVoice.cs
- _AutoWebProxyScriptEngine.cs
- MouseBinding.cs
- XmlLanguageConverter.cs
- XmlSchemaChoice.cs
- CreateParams.cs
- Properties.cs
- FunctionOverloadResolver.cs
- SchemaEntity.cs
- ViewgenContext.cs
- SqlBuffer.cs
- UserControlParser.cs
- _WebProxyDataBuilder.cs
- EdmTypeAttribute.cs
- ObjectDisposedException.cs
- ToolStripGripRenderEventArgs.cs
- DependencyPropertyDescriptor.cs
- EditCommandColumn.cs
- RequestCacheEntry.cs
- WebPartsSection.cs
- RequestFactory.cs
- MimeMapping.cs
- OleDbErrorCollection.cs
- XamlRtfConverter.cs
- CodeTypeDeclarationCollection.cs
- ValidatorCompatibilityHelper.cs
- EqualityComparer.cs