diff options
author | Logan Dethrow <log@lindenlab.com> | 2011-08-08 18:09:11 -0400 |
---|---|---|
committer | Logan Dethrow <log@lindenlab.com> | 2011-08-08 18:09:11 -0400 |
commit | 1fa2afbe2007690612f360eff3603a353ee95672 (patch) | |
tree | bd5a48c23a2280afcd0115cc6dd1d70764162b1c /indra/newview/llfloaterwebcontent.h | |
parent | fe14e50a45a450cd7bcdfe73a8bbda03c018053f (diff) | |
parent | 4ab5831b3eed23c06d2ccd3cf55f6c018613c788 (diff) |
merge
Diffstat (limited to 'indra/newview/llfloaterwebcontent.h')
-rw-r--r-- | indra/newview/llfloaterwebcontent.h | 31 |
1 files changed, 26 insertions, 5 deletions
diff --git a/indra/newview/llfloaterwebcontent.h b/indra/newview/llfloaterwebcontent.h index 56b6ef12c8..36e214b7a9 100644 --- a/indra/newview/llfloaterwebcontent.h +++ b/indra/newview/llfloaterwebcontent.h @@ -29,6 +29,7 @@ #include "llfloater.h" #include "llmediactrl.h" +#include "llsdparam.h" class LLMediaCtrl; class LLComboBox; @@ -38,24 +39,45 @@ class LLIconCtrl; class LLFloaterWebContent : public LLFloater, - public LLViewerMediaObserver + public LLViewerMediaObserver, + public LLInstanceTracker<LLFloaterWebContent, std::string> { public: LOG_CLASS(LLFloaterWebContent); - LLFloaterWebContent(const LLSD& key); + + struct _Params : public LLInitParam::Block<_Params> + { + Optional<std::string> url, + target, + window_class, + id; + Optional<bool> show_chrome, + allow_address_entry, + trusted_content; + Optional<LLRect> preferred_media_size; + + _Params(); + }; + + typedef LLSDParamAdapter<_Params> Params; + + LLFloaterWebContent(const Params& params); void initializeURLHistory(); - static void create(const std::string &url, const std::string& target, const std::string& uuid = LLStringUtil::null, bool show_chrome = true, const LLRect& preferred_media_size = LLRect() ); + static LLFloater* create(Params); static void closeRequest(const std::string &uuid); static void geometryChanged(const std::string &uuid, S32 x, S32 y, S32 width, S32 height); void geometryChanged(S32 x, S32 y, S32 width, S32 height); /* virtual */ BOOL postBuild(); + /* virtual */ void onOpen(const LLSD& key); + /* virtual */ bool matchesKey(const LLSD& key); /* virtual */ void onClose(bool app_quitting); /* virtual */ void draw(); +protected: // inherited from LLViewerMediaObserver /*virtual*/ void handleMediaEvent(LLPluginClassMedia* self, EMediaEvent event); @@ -66,8 +88,7 @@ public: void onEnterAddress(); void onPopExternal(); -private: - void open_media(const std::string& media_url, const std::string& target); + void open_media(const Params& ); void set_current_url(const std::string& url); LLMediaCtrl* mWebBrowser; |