diff options
author | Paul ProductEngine <pguslisty@productengine.com> | 2011-08-15 20:35:39 +0300 |
---|---|---|
committer | Paul ProductEngine <pguslisty@productengine.com> | 2011-08-15 20:35:39 +0300 |
commit | fecec49081419dbd7a66533e4d0457784b8d26a0 (patch) | |
tree | 457018dc36300b5c2a355aedd771861d6b300697 /indra/newview/llfloaterwebcontent.h | |
parent | c70a357a274d5acd7921c3185dc34b89069d4e61 (diff) | |
parent | 5c0df02df5abdadbf17235ae5d7208963c25f1ce (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; |