void TestWidget::Print ( JPagePrinter& p ) { if (!p.OpenDocument()) { return; } const JCoordinate headerHeight = p.JPainter::GetLineHeight(); const JCoordinate footerHeight = JRound(1.5 * headerHeight); const JString dateStr = JGetTimeStamp(); JBoolean cancelled = kJFalse; for (JIndex i=1; i<=3; i++) { if (!p.NewPage()) { cancelled = kJTrue; break; } // draw the header JRect pageRect = p.GetPageRect(); p.String(pageRect.left, pageRect.top, "testjx TestWidget"); p.String(pageRect.left, pageRect.top, dateStr, pageRect.width(), JPainter::kHAlignRight); p.LockHeader(headerHeight); // draw the footer pageRect = p.GetPageRect(); const JString pageNumberStr = "Page " + JString(i); p.String(pageRect.left, pageRect.bottom - footerHeight, pageNumberStr, pageRect.width(), JPainter::kHAlignCenter, footerHeight, JPainter::kVAlignBottom); p.LockFooter(footerHeight); // draw the page DrawStuff(p); } if (!cancelled) { p.CloseDocument(); } }
void TestFloatTable::DrawPrintHeader ( JPagePrinter& p, const JCoordinate headerHeight ) { JRect pageRect = p.GetPageRect(); p.String(pageRect.left, pageRect.top, "testjx NumberTable"); const JString dateStr = JGetTimeStamp(); p.String(pageRect.left, pageRect.top, dateStr, pageRect.width(), JPainter::kHAlignRight); }
void TestFloatTable::DrawPrintFooter ( JPagePrinter& p, const JCoordinate footerHeight ) { JRect pageRect = p.GetPageRect(); const JString pageNumberStr = "Page " + JString(p.GetPageIndex()); p.String(pageRect.left, pageRect.bottom - footerHeight, pageNumberStr, pageRect.width(), JPainter::kHAlignCenter, footerHeight, JPainter::kVAlignBottom); }
void CMArray2DTable::DrawPrintHeader ( JPagePrinter& p, const JCoordinate headerHeight ) { JRect pageRect = p.GetPageRect(); p.String(pageRect.left, pageRect.top, itsArrayDir->GetExpression()); const JString dateStr = JGetTimeStamp(); p.String(pageRect.left, pageRect.top, dateStr, pageRect.width(), JPainter::kHAlignRight); }