X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ae3c17b4013e80b99976c750c19fca47729517f6..36a0190ebd5bd9a7302f60f6dcd608b80574e21c:/interface/wx/fs_mem.h diff --git a/interface/wx/fs_mem.h b/interface/wx/fs_mem.h index bef7f52f8d..a083bbc0c6 100644 --- a/interface/wx/fs_mem.h +++ b/interface/wx/fs_mem.h @@ -2,19 +2,17 @@ // Name: fs_mem.h // Purpose: interface of wxMemoryFSHandler // Author: wxWidgets team -// RCS-ID: $Id$ -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// /** @class wxMemoryFSHandler - @wxheader{fs_mem.h} This wxFileSystem handler can store arbitrary data in memory stream and make them accessible via an URL. It is particularly suitable for storing bitmaps from resources or included XPM - files so that they can be used with wxHTML. + files so that they can be used with wxHTML or wxWebView. Filenames are prefixed with @c "memory:", e.g. @c "memory:myfile.html". @@ -27,24 +25,30 @@ void MyFrame::OnAbout(wxCommandEvent&) { - wxBusyCursor bcur; wxFileSystem::AddHandler(new wxMemoryFSHandler); - wxMemoryFSHandler::AddFile("logo.pcx", wxBITMAP(logo), wxBITMAP_TYPE_PCX); + wxMemoryFSHandler::AddFile("logo.png", wxBITMAP(logo), wxBITMAP_TYPE_PNG); wxMemoryFSHandler::AddFile("about.htm", "About: " - ""); + ""); wxDialog dlg(this, -1, wxString(_("About"))); wxBoxSizer *topsizer; - wxHtmlWindow *html; topsizer = new wxBoxSizer(wxVERTICAL); - html = new wxHtmlWindow(&dlg, -1, wxDefaultPosition, - wxSize(380, 160), wxHW_SCROLLBAR_NEVER); - html->SetBorders(0); - html->LoadPage("memory:about.htm"); - html->SetSize(html->GetInternalRepresentation()->GetWidth(), - html->GetInternalRepresentation()->GetHeight()); - topsizer->Add(html, 1, wxALL, 10); + #ifdef USE_WEBVIEW + wxWebView* browser = wxWebView::New(&dlg, wxID_ANY, wxWebViewDefaultURLStr, + wxDefaultPosition, wxSize(380, 160)); + browser->RegisterHandler(wxSharedPtr(new wxWebViewFSHandler("memory"))); + browser->LoadURL("memory:about.htm"); + #else // Use wxHtml + wxHtmlWindow *browser; + browser = new wxHtmlWindow(&dlg, -1, wxDefaultPosition, + wxSize(380, 160), wxHW_SCROLLBAR_NEVER); + browser->SetBorders(0); + browser->LoadPage("memory:about.htm"); + browser->SetSize(browser->GetInternalRepresentation()->GetWidth(), + browser->GetInternalRepresentation()->GetHeight()); + #endif + topsizer->Add(browser, 1, wxALL, 10); topsizer->Add(new wxStaticLine(&dlg, -1), 0, wxEXPAND | wxLEFT | wxRIGHT, 10); topsizer->Add(new wxButton(&dlg, wxID_OK, "Ok"), 0, wxALL | wxALIGN_RIGHT, 15); @@ -54,7 +58,7 @@ dlg.Centre(); dlg.ShowModal(); - wxMemoryFSHandler::RemoveFile("logo.pcx"); + wxMemoryFSHandler::RemoveFile("logo.png"); wxMemoryFSHandler::RemoveFile("about.htm"); } @endcode