summaryrefslogtreecommitdiff
path: root/indra/newview/llpanelmediasettingspermissions.h
diff options
context:
space:
mode:
authorRick Pasetto <rick@lindenlab.com>2009-11-09 16:56:33 -0800
committerRick Pasetto <rick@lindenlab.com>2009-11-09 16:56:33 -0800
commitebbb468a795d503a8869467d642d5f4962a3d7bf (patch)
treebd505947fcb92bff052f7c5ee2ea9ea02a4f8e47 /indra/newview/llpanelmediasettingspermissions.h
parentc9937716aa3a1f7aac0e93fc1d58488d02d30e6e (diff)
FIX DEV-42093 - Make sure to navigate home if current URL is empty on "Apply"
This change gets rid of the crufty (and confusing) "apply()" functions from llpanelmediasettings*. Those functions were never being called, yet changes were being made in them. Instead, I added "preApply()" and "postApply()" to each of these panels, which the floater (who really does the "apply()"ing) now calls before and after it applies the changes to the media data.
Diffstat (limited to 'indra/newview/llpanelmediasettingspermissions.h')
-rw-r--r--indra/newview/llpanelmediasettingspermissions.h46
1 files changed, 26 insertions, 20 deletions
diff --git a/indra/newview/llpanelmediasettingspermissions.h b/indra/newview/llpanelmediasettingspermissions.h
index ecc50e3582..45a596c615 100644
--- a/indra/newview/llpanelmediasettingspermissions.h
+++ b/indra/newview/llpanelmediasettingspermissions.h
@@ -46,26 +46,32 @@ class LLNameBox;
class LLPanelMediaSettingsPermissions : public LLPanel
{
- public:
- BOOL postBuild();
- virtual void draw();
- static void apply(void*);
- void getValues(LLSD &fill_me_in);
-
- LLPanelMediaSettingsPermissions();
- ~LLPanelMediaSettingsPermissions();
-
- static void initValues( void* userdata, const LLSD& media_settings, bool editable );
- static void clearValues( void* userdata, bool editable);
-
- private:
- LLCheckBoxCtrl* mPermsOwnerInteract;
- LLCheckBoxCtrl* mPermsOwnerControl;
- LLNameBox* mPermsGroupName;
- LLCheckBoxCtrl* mPermsGroupInteract;
- LLCheckBoxCtrl* mPermsGroupControl;
- LLCheckBoxCtrl* mPermsWorldInteract;
- LLCheckBoxCtrl* mPermsWorldControl;
+public:
+ LLPanelMediaSettingsPermissions();
+ ~LLPanelMediaSettingsPermissions();
+
+ BOOL postBuild();
+ virtual void draw();
+
+ // XXX TODO: put these into a common parent class?
+ // Hook that the floater calls before applying changes from the panel
+ void preApply();
+ // Function that asks the panel to fill in values associated with the panel
+ void getValues(LLSD &fill_me_in);
+ // Hook that the floater calls after applying changes to the panel
+ void postApply();
+
+ static void initValues( void* userdata, const LLSD& media_settings, bool editable );
+ static void clearValues( void* userdata, bool editable);
+
+private:
+ LLCheckBoxCtrl* mPermsOwnerInteract;
+ LLCheckBoxCtrl* mPermsOwnerControl;
+ LLNameBox* mPermsGroupName;
+ LLCheckBoxCtrl* mPermsGroupInteract;
+ LLCheckBoxCtrl* mPermsGroupControl;
+ LLCheckBoxCtrl* mPermsWorldInteract;
+ LLCheckBoxCtrl* mPermsWorldControl;
};
#endif // LL_LLPANELMEDIAMEDIASETTINGSPERMISSIONS_H