#ifdef __GNUG__
-#pragma implementation
+#pragma implementation "htmprint.h"
#endif
// For compilers that support precompilation, includes "wx/wx.h".
#ifndef WX_PRECOMP
#include "wx/log.h"
#include "wx/intl.h"
+ #include "wx/dc.h"
#endif
#if wxUSE_HTML && wxUSE_PRINTING_ARCHITECTURE && wxUSE_STREAMS
+#include "wx/dc.h"
#include "wx/print.h"
#include "wx/printdlg.h"
#include "wx/html/htmprint.h"
m_BasePathIsDir = isdir;
}
-
-
void wxHtmlPrintout::SetHtmlFile(const wxString& htmlfile)
{
wxFileSystem fs;
return;
}
- wxInputStream *st = ff->GetStream();
- char *t = new char[st->GetSize() + 1];
- st->Read(t, st->GetSize());
- t[st->GetSize()] = 0;
-
- wxString doc = wxString(t);
- delete t;
- delete ff;
-
+ wxHtmlFilterHTML filter;
+ wxString doc = filter.ReadFile(*ff);
+
SetHtmlText(doc, htmlfile, FALSE);
+ delete ff;
}
m_Frame = parent_frame;
m_Name = name;
m_PrintData = new wxPrintData;
-#if (defined __WXGTK__) || (defined __WXMOTIF__)
- (*m_PrintData) = (*wxThePrintSetupData);
-#endif
m_PageSetupData = new wxPageSetupDialogData;
m_Headers[0] = m_Headers[1] = m_Footers[0] = m_Footers[1] = wxEmptyString;
void wxHtmlEasyPrinting::PageSetup()
{
+ if (!m_PrintData->Ok())
+ {
+ wxLogError(_("There was a problem during page setup: you may need to set a default printer."));
+ return;
+ }
+
m_PageSetupData->SetPrintData(*m_PrintData);
wxPageSetupDialog pageSetupDialog(m_Frame, m_PageSetupData);
}
+// This hack forces the linker to always link in m_* files
+// (wxHTML doesn't work without handlers from these files)
+#include "wx/html/forcelnk.h"
+FORCE_WXHTML_MODULES()
#endif // wxUSE_HTML & wxUSE_PRINTING_ARCHITECTURE