llpanelaudiovolume.cpp

Go to the documentation of this file.
00001 
00032 #include "llviewerprecompiledheaders.h"
00033 
00034 #include "llpanelaudiovolume.h"
00035 
00036 #include "lloverlaybar.h"
00037 #include "llviewercontrol.h"
00038 #include "lluictrlfactory.h"
00039 
00041 //
00042 //
00043 LLPanelAudioVolume::LLPanelAudioVolume()
00044 {
00045 }
00046 
00047 BOOL LLPanelAudioVolume::postBuild()
00048 {
00049         childSetCommitCallback("System Volume", onCommitVolumeChange);
00050         childSetCommitCallback("Music Volume", onCommitVolumeChange);
00051         childSetCommitCallback("Media Volume", onCommitVolumeChange);
00052         childSetCommitCallback("Voice Volume", onCommitVolumeChange);
00053         childSetCommitCallback("SFX Volume", onCommitVolumeChange);
00054         childSetCommitCallback("UI Volume", onCommitVolumeChange);
00055         childSetCommitCallback("Wind Volume", onCommitVolumeChange);
00056         return TRUE;
00057 }
00058 
00059 LLPanelAudioVolume::~LLPanelAudioVolume ()
00060 {
00061 }
00062 
00064 //
00065 //
00066 void LLPanelAudioVolume::draw()
00067 {
00068         BOOL mute = gSavedSettings.getBOOL("MuteAudio");
00069         bool enable = mute ? false : true;
00070         childSetEnabled("Music Volume", enable);
00071         childSetEnabled("Media Volume", enable);
00072         childSetEnabled("Voice Volume", enable);
00073         childSetEnabled("SFX Volume", enable);
00074         childSetEnabled("UI Volume", enable);
00075         childSetEnabled("Wind Volume", enable);
00076 
00077         childSetEnabled("mute_music", enable);
00078         childSetEnabled("mute_media", enable);
00079         childSetEnabled("mute_voice", enable);
00080         childSetEnabled("mute_sfx", enable);
00081         childSetEnabled("mute_wind", enable);
00082         childSetEnabled("mute_ui", enable);
00083 
00084         LLPanel::draw();
00085 }
00086 
00087 //static
00088 void LLPanelAudioVolume::onCommitVolumeChange(LLUICtrl* ctrl, void* user_data)
00089 {
00090         // unmute various audio sources when user changes volume
00091         LLString control_name = ctrl->getControlName();
00092         if (control_name == "AudioLevelMaster")
00093         {
00094                 gSavedSettings.setBOOL("MuteAudio", FALSE);
00095         }
00096         else if (control_name == "AudioLevelSFX")
00097         {
00098                 gSavedSettings.setBOOL("MuteSounds", FALSE);
00099         }
00100         else if (control_name == "AudioLevelUI")
00101         {
00102                 gSavedSettings.setBOOL("MuteUI", FALSE);
00103         }
00104         else if (control_name == "AudioLevelAmbient")
00105         {
00106                 gSavedSettings.setBOOL("MuteAmbient", FALSE);
00107         }
00108         else if (control_name == "AudioLevelMusic")
00109         {
00110                 gSavedSettings.setBOOL("MuteMusic", FALSE);
00111         }
00112         else if (control_name == "AudioLevelMedia")
00113         {
00114                 gSavedSettings.setBOOL("MuteMedia", FALSE);
00115         }
00116         else if (control_name == "AudioLevelVoice")
00117         {
00118                 gSavedSettings.setBOOL("MuteVoice", FALSE);
00119         }
00120 }
00121 
00122 

Generated on Fri May 16 08:33:48 2008 for SecondLife by  doxygen 1.5.5