return top;
}
-bool wxHtmlWinParser::CanOpenURL(const wxString& url) const
+wxFSFile *wxHtmlWinParser::OpenURL(wxHtmlURLType type,
+ const wxString& url) const
{
// FIXME - normalize the URL to full path before passing to
// OnOpeningURL!!
if ( m_Window )
- return m_Window->OnOpeningURL(url);
- else
- return TRUE;
+ {
+ wxString myurl(url);
+ wxHtmlOpeningStatus status;
+ for (;;)
+ {
+ wxString redirect;
+ status = m_Window->OnOpeningURL(type, myurl, &redirect);
+ if ( status != wxHTML_REDIRECT )
+ break;
+
+ myurl = redirect;
+ }
+
+ if ( status == wxHTML_BLOCK )
+ return NULL;
+
+ return GetFS()->OpenFile(myurl);
+ }
+
+ return wxHtmlParser::OpenURL(type, url);
}
void wxHtmlWinParser::AddText(const wxChar* txt)