diff options
Diffstat (limited to 'indra/newview/llpanelmediasettingssecurity.h')
-rw-r--r-- | indra/newview/llpanelmediasettingssecurity.h | 54 |
1 files changed, 39 insertions, 15 deletions
diff --git a/indra/newview/llpanelmediasettingssecurity.h b/indra/newview/llpanelmediasettingssecurity.h index b7cf67c039..94f2fdc89c 100644 --- a/indra/newview/llpanelmediasettingssecurity.h +++ b/indra/newview/llpanelmediasettingssecurity.h @@ -37,28 +37,52 @@ class LLCheckBoxCtrl; class LLScrollListCtrl; +class LLTextBox; +class LLFloaterMediaSettings; class LLPanelMediaSettingsSecurity : public LLPanel { - public: - BOOL postBuild(); - virtual void draw(); - static void apply(void*); - void getValues(LLSD &fill_me_in); +public: + LLPanelMediaSettingsSecurity(); + ~LLPanelMediaSettingsSecurity(); + + 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 + // 'include_tentative' means fill in tentative values as well, otherwise do not + void getValues(LLSD &fill_me_in, bool include_tentative = true); + // 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); + void addWhiteListEntry( const std::string& url ); + void setParent( LLFloaterMediaSettings* parent ); + bool urlPassesWhiteList( const std::string& test_url ); + const std::string makeValidUrl( const std::string& src_url ); - LLPanelMediaSettingsSecurity(); - ~LLPanelMediaSettingsSecurity(); + void updateWhitelistEnableStatus(); - static void initValues( void* userdata, const LLSD& media_settings,bool editable ); - static void clearValues( void* userdata, bool editable); - void addWhiteListItem(const std::string& url); +protected: + LLFloaterMediaSettings* mParent; + +private: + enum ColumnIndex + { + ICON_COLUMN = 0, + ENTRY_COLUMN = 1, + }; - private: - LLCheckBoxCtrl* mEnableWhiteList; - LLScrollListCtrl* mWhiteListList; + LLCheckBoxCtrl* mEnableWhiteList; + LLScrollListCtrl* mWhiteListList; + LLTextBox* mHomeUrlFailsWhiteListText; - static void onBtnAdd(void*); - static void onBtnDel(void*); + static void onBtnAdd(void*); + static void onBtnDel(void*); }; #endif // LL_LLPANELMEDIAMEDIASETTINGSSECURITY_H |