X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=kernel%2Fsrc%2FbbtkWxBrowser.cxx;h=874f7f61dec955acccf199639731bff0d31e4f89;hb=372f03317f05d4a436b0f9c39b98558ec4810b78;hp=708784171c7c03a7894879c6b0fb37058ad173f1;hpb=cbdd914a561bf6241a5b56d66873e090db933f8b;p=bbtk.git diff --git a/kernel/src/bbtkWxBrowser.cxx b/kernel/src/bbtkWxBrowser.cxx index 7087841..874f7f6 100644 --- a/kernel/src/bbtkWxBrowser.cxx +++ b/kernel/src/bbtkWxBrowser.cxx @@ -11,10 +11,24 @@ namespace bbtk { + //======================================================================== + enum + { + bwd_id, + fwd_id, + home_id, + reload_id, + include_id, + url_id , + html_id + }; + + +/*EED //======================================================================== void WxHtmlWindow::OnLinkClicked(const wxHtmlLinkInfo& e) { - // std::cout << "WxHtmlWindow::OnLink"<UpdateURL(); - - } //======================================================================== +*/ + - //======================================================================== - enum - { - bwd_id, - fwd_id, - home_id, - reload_id, - include_id, - url_id, - html_id - }; //======================================================================== BEGIN_EVENT_TABLE(WxBrowser, wxPanel) @@ -56,7 +59,8 @@ namespace bbtk //======================================================================== WxBrowser::WxBrowser ( wxWindow *parent, wxSize size ) : - wxPanel ( parent, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL) + wxPanel ( parent, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL), + mWxConsole(0) { wxPanel* panel = this; @@ -65,45 +69,38 @@ namespace bbtk wxBoxSizer *bsizer = new wxBoxSizer(wxHORIZONTAL); - - sizer->Add ( bsizer, 0, wxGROW ); - - + mwxBackButton = new wxButton( panel, bwd_id,_T("<"),wxDefaultPosition, wxDefaultSize,wxBU_EXACTFIT); - bsizer->Add ( mwxBackButton, 0, wxALIGN_CENTRE | - wxLEFT | wxTOP | wxBOTTOM , 10 ); + bsizer->Add ( mwxBackButton , 0, wxALIGN_CENTRE | wxLEFT | wxTOP | wxBOTTOM , 10 ); mwxForwardButton = new wxButton( panel, fwd_id,_T(">"),wxDefaultPosition, wxDefaultSize,wxBU_EXACTFIT); - bsizer->Add ( mwxForwardButton, 0, wxALIGN_CENTRE | - wxTOP | wxBOTTOM , 10); + bsizer->Add ( mwxForwardButton , 0, wxALIGN_CENTRE | wxTOP | wxBOTTOM , 10); - mwxHomeButton = new wxButton( panel, home_id,_T("~"),wxDefaultPosition, + mwxHomeButton = new wxButton( panel, home_id,_T("Home"),wxDefaultPosition, wxDefaultSize,wxBU_EXACTFIT); - bsizer->Add ( mwxHomeButton, 0, wxALIGN_CENTRE | - wxLEFT | wxTOP | wxBOTTOM , 10 ); + bsizer->Add ( mwxHomeButton , 0, wxALIGN_CENTRE | wxLEFT | wxTOP | wxBOTTOM , 10 ); - mwxReloadButton = new wxButton( panel, reload_id,_T("."),wxDefaultPosition, + mwxReloadButton = new wxButton( panel, reload_id,_T("Reload"),wxDefaultPosition, wxDefaultSize,wxBU_EXACTFIT); - bsizer->Add ( mwxReloadButton, 0, wxALIGN_CENTRE | - wxTOP | wxBOTTOM , 10 ); + bsizer->Add ( mwxReloadButton , 0, wxALIGN_CENTRE | wxTOP | wxBOTTOM , 10 ); mwxIncludeFileButton = new wxButton( panel, include_id, - _T("*"),wxDefaultPosition, + _T("RUN"),wxDefaultPosition, wxDefaultSize,wxBU_EXACTFIT); - bsizer->Add ( mwxIncludeFileButton, 0, wxALIGN_CENTRE | - wxLEFT | wxTOP | wxBOTTOM , 10 ); + bsizer->Add ( mwxIncludeFileButton , 0, wxALIGN_CENTRE | wxLEFT | wxTOP | wxBOTTOM , 10 ); mwxURL = new wxTextCtrl(panel,url_id,_T(""), wxDefaultPosition, wxDefaultSize, wxTE_PROCESS_ENTER); mwxURL->SetLabel(_T("URL")); - bsizer->Add(mwxURL, 1, wxGROW | wxALL, 10); + bsizer->Add(mwxURL, 1, wxEXPAND | wxALL, 10); - mwxHtmlWindow = new WxHtmlWindow(parent,html_id,this,size); +// mwxHtmlWindow = new WxHtmlWindow(parent,html_id,this,size); + mwxHtmlWindow = new WxHtmlWindow(this,html_id,this,size); /* @@ -115,23 +112,32 @@ namespace bbtk */ mwxHtmlWindow->SetBorders(5); // mwxHtmlWindow->FitInside(); + wxStaticBoxSizer* hw = new wxStaticBoxSizer( new wxStaticBox( this, -1, _T(""), wxDefaultPosition, size ), wxVERTICAL ); - hw->Add ( mwxHtmlWindow, 1, wxGROW ); +//EED hw->Add ( mwxHtmlWindow, 1, wxGROW ); + hw->Add ( mwxHtmlWindow, 1, wxEXPAND ); + + + + + //sizer->Add ( mwxHtmlWindow, 1, wxGROW ); +//EED sizer->Add ( hw, 1, wxGROW ); // | wxLEFT | wxRIGHT | wxBOTTOM, 10 ); + sizer->Add ( bsizer , 0, wxEXPAND ); sizer->Add ( hw, 1, wxGROW ); // | wxLEFT | wxRIGHT | wxBOTTOM, 10 ); - - + + panel -> SetSizer(sizer); panel -> SetAutoLayout(true); panel -> Layout(); - GoHome(); +// GoHome(); /* Connect( mwxBackButton->GetId(), @@ -168,6 +174,7 @@ namespace bbtk bool WxBrowser::GoTo(std::string& file) { // std::cout << "goto"<LoadPage(std2wx(file)); UpdateURL(); return r; @@ -197,6 +204,13 @@ namespace bbtk { std::string url = ConfigurationFile::GetInstance().Get_doc_path(); url += "/bbtkWebSite/menu.html"; + GoTo(url); + + mwxURL->Clear(); + mwxURL->AppendText(std2wx(url)); + + +/*EED if (Utilities::FileExists(url)) { GoTo(url); @@ -205,6 +219,7 @@ namespace bbtk { // what ? } +*/ } //======================================================================== @@ -228,22 +243,27 @@ namespace bbtk std::string filename = wx2std(mwxURL->GetValue()); size_t s = filename.length(); - WxConsole* C = WxConsole::GetInstance(); - if (C != 0) + WxConsole* C = mWxConsole; //::GetInstance(); + // MessageManager::SetMessageLevel("All",9); + Interpreter* I = new Interpreter; + + if ((s>3) && (filename[s-1]=='s') + && (filename[s-2]=='b') + && (filename[s-3]=='b') + && (filename[s-4]=='.')) + { + std::cout << "stat"<SetStatusText(_T("Executing ")+mwxURL->GetValue()); + std::cout << "int"<InterpretFile(filename); + std::cout << "eoint"<3) && (filename[s-1]=='s') - && (filename[s-2]=='b') - && (filename[s-3]=='b') - && (filename[s-4]=='.')) - { - C->SetStatusText(_T("Executing ")+mwxURL->GetValue()); - C->InterpretFile(filename); - } - else - { - C->SetStatusText(_T("The current page is not a bbs file : cannot execute it")); - } + if (C!=0) C->SetStatusText(_T("The current page is not a bbs file : cannot execute it")); } + + delete I; /* std::string bbdoc = ConfigurationFile::GetInstance().Get_url(); bbdoc += "/bbdoc"; @@ -258,21 +278,21 @@ namespace bbtk //======================================================================== void WxBrowser::OnURLEnter( wxCommandEvent&) { - //std::cout << "OnURL"<LoadPage(mwxURL->GetValue()); } //======================================================================== + //======================================================================== void WxBrowser::OnLinkClicked(wxHtmlLinkEvent& e) { - std::cout << "WxBrowser::OnLinkClicked"<LoadPage(e.GetLinkInfo().GetHref()); + mwxHtmlWindow->LoadPage( e.GetLinkInfo().GetHref() ); UpdateURL(); + mwxHtmlWindow->LoadPage( mwxURL->GetValue() ); } //======================================================================== + /* void WxBrowser::OnCell(wxHtmlCellEvent& ) {