QtPrintContext.cpp [plain text]
#include "config.h"
#include "QtPrintContext.h"
#include "GraphicsContext.h"
#include "IntRect.h"
#include "PrintContext.h"
#include "QWebFrameAdapter.h"
using namespace WebCore;
QtPrintContext::QtPrintContext(QPainter* painter, const QRect& pageRect, QWebFrameAdapter* frameAdapter)
: m_graphicsContext(new GraphicsContext(painter))
, m_printContext(new PrintContext(frameAdapter->frame))
{
m_printContext->begin(pageRect.width(), pageRect.height());
float pageHeight = 0;
m_printContext->computePageRects(IntRect(pageRect), 0, 0, 1.0, pageHeight);
}
QtPrintContext::~QtPrintContext()
{
m_printContext->end();
delete m_graphicsContext;
delete m_printContext;
}
int QtPrintContext::pageCount() const
{
return m_printContext->pageCount();
}
void QtPrintContext::spoolPage(int pageNumber, float width)
{
m_printContext->spoolPage(*m_graphicsContext, pageNumber, width);
}