X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/28b2ac5b1a9217ec44f9a8c11950366c670ccc02..bb2955b339a83d043ed94cdbed982ea77f93d95c:/src/html/htmlwin.cpp?ds=sidebyside diff --git a/src/html/htmlwin.cpp b/src/html/htmlwin.cpp index 2ec463d641..7d71dd82d7 100644 --- a/src/html/htmlwin.cpp +++ b/src/html/htmlwin.cpp @@ -7,12 +7,6 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// - -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma implementation "htmlwin.h" -#pragma implementation "htmlproc.h" -#endif - #include "wx/wxprec.h" #include "wx/defs.h" @@ -141,10 +135,10 @@ private: //----------------------------------------------------------------------------- WX_DECLARE_OBJARRAY(wxHtmlHistoryItem, wxHtmlHistoryArray); -WX_DEFINE_OBJARRAY(wxHtmlHistoryArray); +WX_DEFINE_OBJARRAY(wxHtmlHistoryArray) WX_DECLARE_LIST(wxHtmlProcessor, wxHtmlProcessorList); -WX_DEFINE_LIST(wxHtmlProcessorList); +WX_DEFINE_LIST(wxHtmlProcessorList) //----------------------------------------------------------------------------- // wxHtmlWindow @@ -241,32 +235,31 @@ void wxHtmlWindow::SetRelatedStatusBar(int bar) -void wxHtmlWindow::SetFonts(wxString normal_face, wxString fixed_face, const int *sizes) +void wxHtmlWindow::SetFonts(const wxString& normal_face, const wxString& fixed_face, const int *sizes) { - wxString op = m_OpenedPage; - m_Parser->SetFonts(normal_face, fixed_face, sizes); - // fonts changed => contents invalid, so reload the page: - SetPage(wxT("")); - if (!op.empty()) - LoadPage(op); + + // re-layout the page after changing fonts: + DoSetPage(*(m_Parser->GetSource())); } void wxHtmlWindow::SetStandardFonts(int size, const wxString& normal_face, const wxString& fixed_face) { - wxString op = m_OpenedPage; - m_Parser->SetStandardFonts(size, normal_face, fixed_face); - // fonts changed => contents invalid, so reload the page: - SetPage(wxT("")); - if (!op.empty()) - LoadPage(op); -} + // re-layout the page after changing fonts: + DoSetPage(*(m_Parser->GetSource())); +} bool wxHtmlWindow::SetPage(const wxString& source) +{ + m_OpenedPage = m_OpenedAnchor = m_OpenedPageTitle = wxEmptyString; + return DoSetPage(source); +} + +bool wxHtmlWindow::DoSetPage(const wxString& source) { wxString newsrc(source); @@ -281,8 +274,10 @@ bool wxHtmlWindow::SetPage(const wxString& source) wxHtmlProcessorList::compatibility_iterator nodeL, nodeG; int prL, prG; - nodeL = (m_Processors) ? m_Processors->GetFirst() : wxHtmlProcessorList::compatibility_iterator(); - nodeG = (m_GlobalProcessors) ? m_GlobalProcessors->GetFirst() : wxHtmlProcessorList::compatibility_iterator(); + if ( m_Processors ) + nodeL = m_Processors->GetFirst(); + if ( m_GlobalProcessors ) + nodeG = m_GlobalProcessors->GetFirst(); // VS: there are two lists, global and local, both of them sorted by // priority. Since we have to go through _both_ lists with @@ -313,7 +308,7 @@ bool wxHtmlWindow::SetPage(const wxString& source) dc->SetMapMode(wxMM_TEXT); SetBackgroundColour(wxColour(0xFF, 0xFF, 0xFF)); SetBackgroundImage(wxNullBitmap); - m_OpenedPage = m_OpenedAnchor = m_OpenedPageTitle = wxEmptyString; + m_Parser->SetDC(dc); if (m_Cell) { @@ -332,7 +327,7 @@ bool wxHtmlWindow::SetPage(const wxString& source) bool wxHtmlWindow::AppendToPage(const wxString& source) { - return SetPage(*(GetParser()->GetSource()) + source); + return DoSetPage(*(GetParser()->GetSource()) + source); } bool wxHtmlWindow::LoadPage(const wxString& location) @@ -826,6 +821,8 @@ bool wxHtmlWindow::CopySelection(ClipboardType t) return true; } } +#else + wxUnusedVar(t); #endif // wxUSE_CLIPBOARD return false; @@ -1027,6 +1024,8 @@ void wxHtmlWindow::OnMouseDown(wxMouseEvent& event) CaptureMouse(); } } +#else + wxUnusedVar(event); #endif // wxUSE_CLIPBOARD } @@ -1308,8 +1307,7 @@ void wxHtmlWindow::OnMouseLeave(wxMouseEvent& event) void wxHtmlWindow::OnKeyUp(wxKeyEvent& event) { - if ( IsSelectionEnabled() && - event.GetKeyCode() == 'C' && event.ControlDown() ) + if ( IsSelectionEnabled() && event.GetKeyCode() == 'C' && event.CmdDown() ) { (void) CopySelection(); }