merged [21403]: Fixed an exception thrown when clearing all complete file transfers...
[adiumx.git] / Source / AISoundController.m
blobeb1e53c18af6aa057f1f3d8ebddee080a9378138
1 /* 
2  * Adium is the legal property of its developers, whose names are listed in the copyright file included
3  * with this source distribution.
4  * 
5  * This program is free software; you can redistribute it and/or modify it under the terms of the GNU
6  * General Public License as published by the Free Software Foundation; either version 2 of the License,
7  * or (at your option) any later version.
8  * 
9  * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
10  * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General
11  * Public License for more details.
12  * 
13  * You should have received a copy of the GNU General Public License along with this program; if not,
14  * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
15  */
17 #import "AdiumSound.h"
18 #import "AdiumSpeech.h"
19 #import "AdiumSoundSets.h"
21 @implementation AISoundController
23 - (id)init
25         if ((self = [super init])) {
26                 adiumSound = [[AdiumSound alloc] init];
27                 adiumSpeech = [[AdiumSpeech alloc] init];
28                 adiumSoundSets = [[AdiumSoundSets alloc] init];
29         }
30         
31         return self;
34 - (void)controllerDidLoad
36         [adiumSound controllerDidLoad];
37         [adiumSpeech controllerDidLoad];
40 - (void)controllerWillClose
42         [adiumSound release]; adiumSound = nil;
43         [adiumSpeech release]; adiumSpeech = nil;
44         [adiumSoundSets release]; adiumSoundSets = nil;
47 //Sound
48 - (void)playSoundAtPath:(NSString *)inPath{
49         [adiumSound playSoundAtPath:inPath];
52 //Speech
53 - (NSArray *)voices{
54         return [adiumSpeech voices];
57 /*!
58  * @brief Speak the demonstration text for a voice
59  *
60  * @param voiceString The name of the voice that should be used to generate speech
61  * @param pitch The pitch to use, or 0.0 to use the default pitch
62  * @param rate The rate to use, 0.0 to use the default rate
63  */
64 - (void)speakDemoTextForVoice:(NSString *)voiceString withPitch:(float)pitch andRate:(float)rate{
65         [adiumSpeech speakDemoTextForVoice:voiceString withPitch:pitch andRate:rate];
67 - (float)defaultRate{
68         return [adiumSpeech defaultRate];
70 - (float)defaultPitch{
71         return [adiumSpeech defaultPitch];
73 - (void)speakText:(NSString *)text{
74         [adiumSpeech speakText:text];
76 - (void)speakText:(NSString *)text withVoice:(NSString *)voiceString pitch:(float)pitch rate:(float)rate{
77         [adiumSpeech speakText:text withVoice:voiceString pitch:pitch rate:rate];
80 //Soundsets
81 - (NSArray *)soundSets{
82         return [adiumSoundSets soundSets];
85 - (void)setSoundsAreMuted:(BOOL)muted
87         [adiumSound setSoundsAreMuted:muted];
90 @end