00001 00033 #ifndef LL_LLFLOATERVOICEWIZARD_H 00034 #define LL_LLFLOATERVOICEWIZARD_H 00035 00036 #include "llfloater.h" 00037 00038 class LLPrefsVoiceLogic; 00039 class LLPanelDeviceSettings; 00040 00041 class LLFloaterVoiceWizard 00042 : public LLFloater, public LLUISingleton<LLFloaterVoiceWizard> 00043 { 00044 public: 00045 LLFloaterVoiceWizard(const LLSD& seed); 00046 virtual ~LLFloaterVoiceWizard(); 00047 00048 /*virtual*/ BOOL postBuild(); 00049 /*virtual*/ void draw(); 00050 /*virtual*/ void onOpen(); 00051 /*virtual*/ void onClose(bool app_quitting); 00052 00053 protected: 00054 static void onClickNext(void *user_data); 00055 static void onClickBack(void *user_data); 00056 static void onClickOK(void *user_data); 00057 static void onClickCancel(void *user_data); 00058 static void onCommitVoiceEnable(LLUICtrl* ctrl, void* user_data); 00059 static void* createPanelDeviceSettings(void* user_data); 00060 00061 protected: 00062 LLPrefsVoiceLogic* mLogic; 00063 LLPanelDeviceSettings* mDevicePanel; 00064 }; 00065 00066 class LLPanelDeviceSettings : public LLPanel 00067 { 00068 public: 00069 LLPanelDeviceSettings(); 00070 ~LLPanelDeviceSettings(); 00071 00072 /*virtual*/ void draw(); 00073 /*virtual*/ BOOL postBuild(); 00074 void apply(); 00075 void cancel(); 00076 void refresh(); 00077 void onOpen(); 00078 void onClose(bool app_quitting); 00079 00080 protected: 00081 F32 mMicVolume; 00082 std::string mInputDevice; 00083 std::string mOutputDevice; 00084 LLComboBox *mCtrlInputDevices; 00085 LLComboBox *mCtrlOutputDevices; 00086 BOOL mDevicesUpdated; 00087 }; 00088 00089 class LLFloaterDeviceSettings : public LLFloater, public LLUISingleton<LLFloaterDeviceSettings> 00090 { 00091 public: 00092 LLFloaterDeviceSettings(const LLSD& seed); 00093 /*virtual*/ void onOpen(); 00094 /*virtual*/ void onClose(bool app_quitting); 00095 /*virtual*/ void draw(); 00096 void apply(); 00097 void cancel(); 00098 00099 protected: 00100 static void* createPanelDeviceSettings(void* user_data); 00101 00102 LLPanelDeviceSettings* mDevicePanel; 00103 }; 00104 00105 #endif // LL_LLFLOATERVOICEWIZARD_H