/*========================================================================= Program: bbtk Module: $RCSfile: bbtkWxGUIHtmlBrowser.h,v $ Language: C++ Date: $Date: 2008/03/20 09:51:29 $ Version: $Revision: 1.1 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or http://www.creatis.insa-lyon.fr/Public/bbtk/License.html for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. =========================================================================*//** * \brief Short description in one line * * Long description which * can span multiple lines */ /** * \file * \brief */ /** * \class bbtk:: * \brief */ #ifdef _USE_WXWIDGETS_ #ifndef __bbtkWxGUIHtmlBrowser_h_INCLUDED__ #define __bbtkWxGUIHtmlBrowser_h_INCLUDED__ #include "bbtkWx.h" #include namespace bbtk { class WxGUIHtmlBrowser; class WxHtmlWindow : public virtual wxHtmlWindow { public: WxHtmlWindow( wxWindow *parent, int id, WxGUIHtmlBrowser* browser, wxSize size) : wxHtmlWindow(parent, id, wxDefaultPosition, size, wxHW_SCROLLBAR_AUTO, _T("bbtk::WxGUIHtmlBrowser")), mBrowser(browser) { } // wxHtmlOpeningStatus OnOpeningURL(wxHtmlURLType type,const wxString& url, wxString *redirect); //EED virtual void OnLinkClicked(const wxHtmlLinkInfo& link); private: WxGUIHtmlBrowser* mBrowser; }; /* /// Abstract class which defines the callbacks invoked by WxGUIHtmlBrowser class WxGUIHtmlBrowserUser { public : WxGUIHtmlBrowserUser() {} ~WxGUIHtmlBrowserUser() {} }; */ // class WxGUIConsole; class WxGUIHtmlBrowser : public wxPanel { public: WxGUIHtmlBrowser ( wxWindow *parent, wxSize size ); // WxGUIHtmlBrowserUser* = 0 ); bool GoTo(std::string&); void GoHome(); void OnBackButton(wxCommandEvent& ); void OnForwardButton(wxCommandEvent& ); void OnHomeButton(wxCommandEvent& ); void OnReloadButton(wxCommandEvent& ); // void OnRunButton(wxCommandEvent& ); void OnLinkClicked(wxHtmlLinkEvent& ); void OnURLEnter( wxCommandEvent&); void UpdateURL(); // void OnCell(wxHtmlCellEvent& ); void SetSize( wxSize ); std::string GetCurrentPage(); private: WxHtmlWindow* mwxHtmlWindow; wxTextCtrl* mwxURL; wxButton* mwxBackButton; wxButton* mwxForwardButton; wxButton* mwxHomeButton; wxButton* mwxReloadButton; // wxButton* mwxRunButton; // WxGUIHtmlBrowserUser* mUser; // any class wishing to process wxWidgets events must use this macro DECLARE_EVENT_TABLE() }; } #endif #endif