00001
00032
00033
00034
00035
00036 #ifndef LL_LLFLOATER_WATER_H
00037 #define LL_LLFLOATER_WATER_H
00038
00039 #include "llfloater.h"
00040
00041 #include <vector>
00042 #include "llwlparamset.h"
00043
00044 struct WaterColorControl;
00045 struct WaterloatControl;
00046
00047
00049 class LLFloaterWater : public LLFloater
00050 {
00051 public:
00052
00053 LLFloaterWater();
00054 virtual ~LLFloaterWater();
00055
00057 void initCallbacks(void);
00058
00060 static LLFloaterWater* instance();
00061
00062
00063 static void onClickHelp(void* data);
00064 void initHelpBtn(const char* name, const char* xml_alert);
00065
00066 static void newPromptCallback(S32 option, const LLString& text, void* userData);
00067
00069 static void onColorControlRMoved(LLUICtrl* ctrl, void* userData);
00070 static void onColorControlGMoved(LLUICtrl* ctrl, void* userData);
00071 static void onColorControlBMoved(LLUICtrl* ctrl, void* userData);
00072 static void onColorControlAMoved(LLUICtrl* ctrl, void* userData);
00073 static void onColorControlIMoved(LLUICtrl* ctrl, void* userData);
00074
00075 static void onVector3ControlXMoved(LLUICtrl* ctrl, void* userData);
00076 static void onVector3ControlYMoved(LLUICtrl* ctrl, void* userData);
00077 static void onVector3ControlZMoved(LLUICtrl* ctrl, void* userData);
00078
00079 static void onVector2ControlXMoved(LLUICtrl* ctrl, void* userData);
00080 static void onVector2ControlYMoved(LLUICtrl* ctrl, void* userData);
00081
00082 static void onFloatControlMoved(LLUICtrl* ctrl, void* userData);
00083
00084 static void onExpFloatControlMoved(LLUICtrl* ctrl, void* userData);
00085
00086 static void onWaterFogColorMoved(LLUICtrl* ctrl, void* userData);
00087
00088 static void onBoolToggle(LLUICtrl* ctrl, void* userData);
00089
00091 static void onNormalMapPicked(LLUICtrl* ctrl, void* userData);
00092
00094 static void onNewPreset(void* userData);
00095
00097 static void onSavePreset(void* userData);
00098
00100 static void saveAlertCallback(S32 option, void* userdata);
00101
00103 static void onDeletePreset(void* userData);
00104
00106 static void deleteAlertCallback(S32 option, void* userdata);
00107
00109 static void onChangePresetName(LLUICtrl* ctrl, void* userData);
00110
00112
00114 static void show();
00115
00117 static bool isOpen();
00118
00120 virtual void onClose(bool app_quitting);
00121
00123 void syncMenu();
00124
00125 private:
00126
00127 static LLFloaterWater* sWaterMenu;
00128
00129 static std::set<std::string> sDefaultPresets;
00130 };
00131
00132
00133 #endif