summaryrefslogtreecommitdiff
path: root/indra/newview/llfloaterpreference.h
diff options
context:
space:
mode:
authorcallum_linden <none@none>2016-05-19 11:00:03 -0700
committercallum_linden <none@none>2016-05-19 11:00:03 -0700
commit9c4ed8d1138de86041b740139c4deec1bc6bf8ee (patch)
treed7452bc7faeae01964f13faaa16e2812b27ba93c /indra/newview/llfloaterpreference.h
parente6fb7564b02ba73c8a402efaca65cb944ce7bef2 (diff)
parentc2ef3b4c7186dbbd95b16520f281b7d58364fb52 (diff)
Automated merge with tip of viewer-release to pick up 4.0.5
Diffstat (limited to 'indra/newview/llfloaterpreference.h')
-rw-r--r--[-rwxr-xr-x]indra/newview/llfloaterpreference.h83
1 files changed, 66 insertions, 17 deletions
diff --git a/indra/newview/llfloaterpreference.h b/indra/newview/llfloaterpreference.h
index 04e5e37731..fa0c09e97a 100755..100644
--- a/indra/newview/llfloaterpreference.h
+++ b/indra/newview/llfloaterpreference.h
@@ -58,7 +58,6 @@ typedef enum
} EGraphicsSettings;
-
// Floater to control preferences (display, audio, bandwidth, general.
class LLFloaterPreference : public LLFloater, public LLAvatarPropertiesObserver, public LLConversationLogObserver
{
@@ -93,11 +92,11 @@ public:
void saveAvatarProperties( void );
void selectPrivacyPanel();
void selectChatPanel();
+ void getControlNames(std::vector<std::string>& names);
protected:
- void onBtnOK();
- void onBtnCancel();
- void onBtnApply();
+ void onBtnOK(const LLSD& userdata);
+ void onBtnCancel(const LLSD& userdata);
void onClickClearCache(); // Clear viewer texture cache, vfs, and VO cache on next startup
void onClickBrowserClearCache(); // Clear web history and caches as well as viewer caches above
@@ -111,11 +110,13 @@ protected:
// if the custom settings box is clicked
void onChangeCustom();
void updateMeterText(LLUICtrl* ctrl);
- void onOpenHardwareSettings();
// callback for defaults
void setHardwareDefaults();
+ void setRecommended();
// callback for when client turns on shaders
void onVertexShaderEnable();
+ // callback for when client turns on impostors
+ void onAvatarImpostorsEnable();
// callback for commit in the "Single click on land" and "Double click on land" comboboxes.
void onClickActionChange();
@@ -123,13 +124,11 @@ protected:
void updateClickActionSettings();
// updates click/double-click action controls depending on values from settings.xml
void updateClickActionControls();
-
+
+public:
// This function squirrels away the current values of the controls so that
// cancel() can restore them.
void saveSettings();
-
-
-public:
void setCacheLocation(const LLStringExplicit& location);
@@ -150,13 +149,11 @@ public:
void enableHistory();
void setPersonalInfo(const std::string& visibility, bool im_via_email);
void refreshEnabledState();
- void disableUnavailableSettings();
void onCommitWindowedMode();
void refresh(); // Refresh enable/disable
// if the quality radio buttons are changed
void onChangeQuality(const LLSD& data);
- void updateSliderText(LLSliderCtrl* ctrl, LLTextBox* text_box);
void refreshUI();
void onCommitParcelMediaAutoPlayEnable();
@@ -170,18 +167,21 @@ public:
void onClickPermsDefault();
void onClickAutoReplace();
void onClickSpellChecker();
+ void onClickAdvanced();
void applyUIColor(LLUICtrl* ctrl, const LLSD& param);
void getUIColor(LLUICtrl* ctrl, const LLSD& param);
void onLogChatHistorySaved();
void buildPopupLists();
static void refreshSkin(void* data);
void selectPanel(const LLSD& name);
+ void saveGraphicsPreset(std::string& preset);
private:
void onDeleteTranscripts();
void onDeleteTranscriptsResponse(const LLSD& notification, const LLSD& response);
void updateDeleteTranscriptsButton();
+ void updateMaxComplexity();
static std::string sSkin;
notifications_map mNotificationOptions;
@@ -196,6 +196,8 @@ private:
std::string mDirectoryVisibility;
LLAvatarData mAvatarProperties;
+ std::string mSavedGraphicsPreset;
+ LOG_CLASS(LLFloaterPreference);
};
class LLPanelPreference : public LLPanel
@@ -209,7 +211,7 @@ public:
virtual void apply();
virtual void cancel();
void setControlFalse(const LLSD& user_data);
- virtual void setHardwareDefaults(){};
+ virtual void setHardwareDefaults();
// Disables "Allow Media to auto play" check box only when both
// "Streaming Music" and "Media" are unchecked. Otherwise enables it.
@@ -218,7 +220,11 @@ public:
// This function squirrels away the current values of the controls so that
// cancel() can restore them.
virtual void saveSettings();
-
+
+ void deletePreset(const LLSD& user_data);
+ void savePreset(const LLSD& user_data);
+ void loadPreset(const LLSD& user_data);
+
class Updater;
protected:
@@ -235,6 +241,7 @@ private:
string_color_map_t mSavedColors;
Updater* mBandWidthUpdater;
+ LOG_CLASS(LLPanelPreference);
};
class LLPanelPreferenceGraphics : public LLPanelPreference
@@ -242,14 +249,56 @@ class LLPanelPreferenceGraphics : public LLPanelPreference
public:
BOOL postBuild();
void draw();
- void apply();
void cancel();
void saveSettings();
+ void resetDirtyChilds();
void setHardwareDefaults();
+ void setPresetText();
+
+ static const std::string getPresetsPath();
+
protected:
bool hasDirtyChilds();
- void resetDirtyChilds();
-
+
+private:
+
+ void onPresetsListChange();
+ LOG_CLASS(LLPanelPreferenceGraphics);
+};
+
+class LLFloaterPreferenceGraphicsAdvanced : public LLFloater
+{
+ public:
+ LLFloaterPreferenceGraphicsAdvanced(const LLSD& key);
+ ~LLFloaterPreferenceGraphicsAdvanced();
+ void onOpen(const LLSD& key);
+ void onClickCloseBtn(bool app_quitting);
+ void disableUnavailableSettings();
+ void refreshEnabledGraphics();
+ void refreshEnabledState();
+ void updateSliderText(LLSliderCtrl* ctrl, LLTextBox* text_box);
+ void updateMaxNonImpostors();
+ void setMaxNonImpostorsText(U32 value, LLTextBox* text_box);
+ void updateMaxComplexity();
+ void setMaxComplexityText(U32 value, LLTextBox* text_box);
+ static void setIndirectControls();
+ static void setIndirectMaxNonImpostors();
+ static void setIndirectMaxArc();
+ void refresh();
+ // callback for when client turns on shaders
+ void onVertexShaderEnable();
+ LOG_CLASS(LLFloaterPreferenceGraphicsAdvanced);
+};
+
+class LLAvatarComplexityControls
+{
+ public:
+ static void updateMax(LLSliderCtrl* slider, LLTextBox* value_label);
+ static void setText(U32 value, LLTextBox* text_box);
+ static void setIndirectControls();
+ static void setIndirectMaxNonImpostors();
+ static void setIndirectMaxArc();
+ LOG_CLASS(LLAvatarComplexityControls);
};
class LLFloaterPreferenceProxy : public LLFloater
@@ -278,7 +327,7 @@ private:
bool mSocksSettingsDirty;
typedef std::map<LLControlVariable*, LLSD> control_values_map_t;
control_values_map_t mSavedValues;
-
+ LOG_CLASS(LLFloaterPreferenceProxy);
};