00001 00033 #ifndef LL_LLFLOATERHTML_H 00034 #define LL_LLFLOATERHTML_H 00035 00036 #include "llfloater.h" 00037 #include "llhtmlhelp.h" 00038 00039 class LLWebBrowserCtrl; 00040 00041 class LLFloaterHtml : 00042 public LLFloater 00043 { 00044 public: 00045 static LLFloaterHtml* getInstance(); 00046 virtual ~LLFloaterHtml(); 00047 00048 virtual void draw(); 00049 virtual void onClose( bool app_quitting ); 00050 00051 // Pass string like "in-world_help" or "additional help" 00052 void show( LLString content_id, bool open_link_external, bool open_app_slurls ); 00053 00054 // Pass raw URL and window title 00055 // Can be set to handle secondlife:///app/ URLs, but this should 00056 // usually be false. 00057 void show( std::string start_url, std::string title, bool open_link_external, bool open_app_slurls ); 00058 00059 static void onClickClose( void* data ); 00060 static void onClickBack( void* data ); 00061 static void onClickHome( void* data ); 00062 static void onClickForward( void* data ); 00063 static void onCommitUrlEdit(LLUICtrl* ctrl, void* user_data); 00064 static void onClickGo( void* data ); 00065 00066 private: 00067 LLFloaterHtml(); 00068 00069 LLWebBrowserCtrl* mWebBrowser; 00070 static LLFloaterHtml* sInstance; 00071 LLButton* mCloseButton; 00072 }; 00073 00074 #endif