Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Speech / Src / Synthesis / InstalledVoice.cs / 1 / InstalledVoice.cs
//------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------- using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; using System.Diagnostics; using System.Globalization; using System.IO; using System.Speech.AudioFormat; using System.Speech.Internal; using System.Speech.Internal.ObjectTokens; using System.Speech.Internal.Synthesis; using System.Speech.Synthesis.TtsEngine; using System.Threading; using RegistryDataKey = System.Speech.Internal.ObjectTokens.RegistryDataKey; using RegistryEntry = System.Collections.Generic.KeyValuePair; #pragma warning disable 1634, 1691 // Allows suppression of certain PreSharp messages. namespace System.Speech.Synthesis { /// /// TODOC /// [DebuggerDisplay ("{VoiceInfo.Name} [{Enabled ? \"Enabled\" : \"Disabled\"}]")] public class InstalledVoice { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors internal InstalledVoice (VoiceSynthesis voiceSynthesizer, VoiceInfo voice) { _voiceSynthesizer = voiceSynthesizer; _voice = voice; _enabled = true; } #endregion //******************************************************************** // // Public Properties // //******************************************************************* #region public Properties ////// TODOC /// public VoiceInfo VoiceInfo { get { return _voice; } } ////// TODOC /// public bool Enabled { get { return _enabled; } set { SetEnabledFlag (value, true); } } #endregion Events //******************************************************************** // // Public Methods // //******************************************************************** #region public Methods /// TODOC public override bool Equals (object obj) { InstalledVoice ti2 = obj as InstalledVoice; if (ti2 == null) { return false; } return VoiceInfo.Name == ti2.VoiceInfo.Name && VoiceInfo.Age == ti2.VoiceInfo.Age && VoiceInfo.Gender == ti2.VoiceInfo.Gender && VoiceInfo.Culture.Equals (ti2.VoiceInfo.Culture); } /// TODOC public override int GetHashCode () { return VoiceInfo.Name.GetHashCode (); } #endregion Events //******************************************************************* // // Internal Methods // //******************************************************************** #region Internal Methods internal static InstalledVoice Find (Listlist, VoiceInfo voiceId) { foreach (InstalledVoice ti in list) { if (ti.Enabled && ti.VoiceInfo.Equals (voiceId)) { return ti; } } return null; } internal static InstalledVoice FirstEnabled (List list, CultureInfo culture) { InstalledVoice voiceFirst = null; foreach (InstalledVoice ti in list) { if (ti.Enabled) { if (Helpers.CompareInvariantCulture (ti.VoiceInfo.Culture, culture)) { return ti; } if (voiceFirst == null) { voiceFirst = ti; } } } return voiceFirst; } internal void SetEnabledFlag (bool value, bool switchContext) { try { if (_enabled != value) { _enabled = value; if (_enabled == false) { // reset the default voice if necessary if (_voice.Equals (_voiceSynthesizer.CurrentVoice (switchContext).VoiceInfo)) { _voiceSynthesizer.Voice = null; } } else { // reset the default voice if necessary. This new voice could be the default _voiceSynthesizer.Voice = null; } } } // If no voice can be set, ignore the error catch (InvalidOperationException) { // reset to the default voice. _voiceSynthesizer.Voice = null; } } #endregion //******************************************************************* // // Private Fields // //******************************************************************* #region Private Fields private VoiceInfo _voice; private bool _enabled; #pragma warning disable 6524 // The voice synthesizer cannot be disposed when this object is deleted. private VoiceSynthesis _voiceSynthesizer; #pragma warning restore 6524 #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------- using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; using System.Diagnostics; using System.Globalization; using System.IO; using System.Speech.AudioFormat; using System.Speech.Internal; using System.Speech.Internal.ObjectTokens; using System.Speech.Internal.Synthesis; using System.Speech.Synthesis.TtsEngine; using System.Threading; using RegistryDataKey = System.Speech.Internal.ObjectTokens.RegistryDataKey; using RegistryEntry = System.Collections.Generic.KeyValuePair; #pragma warning disable 1634, 1691 // Allows suppression of certain PreSharp messages. namespace System.Speech.Synthesis { /// /// TODOC /// [DebuggerDisplay ("{VoiceInfo.Name} [{Enabled ? \"Enabled\" : \"Disabled\"}]")] public class InstalledVoice { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors internal InstalledVoice (VoiceSynthesis voiceSynthesizer, VoiceInfo voice) { _voiceSynthesizer = voiceSynthesizer; _voice = voice; _enabled = true; } #endregion //******************************************************************** // // Public Properties // //******************************************************************* #region public Properties ////// TODOC /// public VoiceInfo VoiceInfo { get { return _voice; } } ////// TODOC /// public bool Enabled { get { return _enabled; } set { SetEnabledFlag (value, true); } } #endregion Events //******************************************************************** // // Public Methods // //******************************************************************** #region public Methods /// TODOC public override bool Equals (object obj) { InstalledVoice ti2 = obj as InstalledVoice; if (ti2 == null) { return false; } return VoiceInfo.Name == ti2.VoiceInfo.Name && VoiceInfo.Age == ti2.VoiceInfo.Age && VoiceInfo.Gender == ti2.VoiceInfo.Gender && VoiceInfo.Culture.Equals (ti2.VoiceInfo.Culture); } /// TODOC public override int GetHashCode () { return VoiceInfo.Name.GetHashCode (); } #endregion Events //******************************************************************* // // Internal Methods // //******************************************************************** #region Internal Methods internal static InstalledVoice Find (Listlist, VoiceInfo voiceId) { foreach (InstalledVoice ti in list) { if (ti.Enabled && ti.VoiceInfo.Equals (voiceId)) { return ti; } } return null; } internal static InstalledVoice FirstEnabled (List list, CultureInfo culture) { InstalledVoice voiceFirst = null; foreach (InstalledVoice ti in list) { if (ti.Enabled) { if (Helpers.CompareInvariantCulture (ti.VoiceInfo.Culture, culture)) { return ti; } if (voiceFirst == null) { voiceFirst = ti; } } } return voiceFirst; } internal void SetEnabledFlag (bool value, bool switchContext) { try { if (_enabled != value) { _enabled = value; if (_enabled == false) { // reset the default voice if necessary if (_voice.Equals (_voiceSynthesizer.CurrentVoice (switchContext).VoiceInfo)) { _voiceSynthesizer.Voice = null; } } else { // reset the default voice if necessary. This new voice could be the default _voiceSynthesizer.Voice = null; } } } // If no voice can be set, ignore the error catch (InvalidOperationException) { // reset to the default voice. _voiceSynthesizer.Voice = null; } } #endregion //******************************************************************* // // Private Fields // //******************************************************************* #region Private Fields private VoiceInfo _voice; private bool _enabled; #pragma warning disable 6524 // The voice synthesizer cannot be disposed when this object is deleted. private VoiceSynthesis _voiceSynthesizer; #pragma warning restore 6524 #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- InputBinding.cs
- OdbcErrorCollection.cs
- CodeBlockBuilder.cs
- LogicalTreeHelper.cs
- CodeBinaryOperatorExpression.cs
- MappingModelBuildProvider.cs
- OrderedDictionaryStateHelper.cs
- TypedElement.cs
- StorageEndPropertyMapping.cs
- ReadOnlyHierarchicalDataSourceView.cs
- LocatorGroup.cs
- FixedSOMImage.cs
- BCryptSafeHandles.cs
- StreamGeometry.cs
- BaseParser.cs
- SchemaCompiler.cs
- ContainerVisual.cs
- RegistrationServices.cs
- SqlProviderServices.cs
- MsmqMessageProperty.cs
- ByteStorage.cs
- DesignBindingValueUIHandler.cs
- TextFindEngine.cs
- IMembershipProvider.cs
- followingquery.cs
- CoTaskMemHandle.cs
- XmlSchemaInferenceException.cs
- ToolStripProgressBar.cs
- OrthographicCamera.cs
- PropertyEmitter.cs
- SiteMapHierarchicalDataSourceView.cs
- ChannelSinkStacks.cs
- Message.cs
- DragDropManager.cs
- ServiceOperationParameter.cs
- serverconfig.cs
- DataPagerCommandEventArgs.cs
- CodeDomExtensionMethods.cs
- LinkLabel.cs
- _NegoStream.cs
- PropertySegmentSerializer.cs
- Clipboard.cs
- StatusStrip.cs
- BindingSource.cs
- ToolstripProfessionalRenderer.cs
- MenuStrip.cs
- DiscoveryInnerClientAdhoc11.cs
- BindingNavigator.cs
- TransformerTypeCollection.cs
- Predicate.cs
- GeneralTransform.cs
- WeakReferenceKey.cs
- FacetEnabledSchemaElement.cs
- ClrProviderManifest.cs
- TreeNodeBindingCollection.cs
- AnnotationObservableCollection.cs
- EllipseGeometry.cs
- MeasureItemEvent.cs
- unsafeIndexingFilterStream.cs
- XmlReader.cs
- LinearGradientBrush.cs
- MatrixTransform.cs
- DeviceContext.cs
- DropShadowBitmapEffect.cs
- SocketInformation.cs
- DataProtection.cs
- PriorityBindingExpression.cs
- WSSecureConversationDec2005.cs
- HelpInfo.cs
- PerformanceCounterCategory.cs
- HostedHttpRequestAsyncResult.cs
- ValidationEventArgs.cs
- TypeResolver.cs
- TextFormatterImp.cs
- MailMessage.cs
- TrackingProfile.cs
- RequestCachingSection.cs
- FunctionNode.cs
- XmlILStorageConverter.cs
- SoapCodeExporter.cs
- MatrixTransform.cs
- cryptoapiTransform.cs
- GroupQuery.cs
- DataGridCommandEventArgs.cs
- TraceContextRecord.cs
- XmlSchemaAppInfo.cs
- MorphHelper.cs
- Rect3D.cs
- SqlInternalConnection.cs
- LoginView.cs
- Size3DConverter.cs
- DecoderReplacementFallback.cs
- XmlIlGenerator.cs
- DoubleLinkListEnumerator.cs
- CodeActivityMetadata.cs
- FileEnumerator.cs
- SaveFileDialog.cs
- Filter.cs
- X509ChainElement.cs
- ServiceModelConfigurationSectionCollection.cs