#include "knoteprinter.h" #include #include #include #include #include #include #include #include #include #include KNotePrinter::KNotePrinter() : m_styleSheet( 0 ), m_mimeSourceFactory( 0 ) { } void KNotePrinter::setContext( const TQString& context ) { m_context = context; } TQString KNotePrinter::context() const { return m_context; } void KNotePrinter::setMimeSourceFactory( TQMimeSourceFactory* factory ) { m_mimeSourceFactory = factory; } TQMimeSourceFactory* KNotePrinter::mimeSourceFactory() const { return m_mimeSourceFactory; } void KNotePrinter::setFont( const TQFont& font ) { m_font = font; } TQFont KNotePrinter::font() const { return m_font; } void KNotePrinter::setColorGroup( const TQColorGroup& colorGroup ) { m_colorGroup = colorGroup; } TQColorGroup KNotePrinter::colorGroup() const { return m_colorGroup; } void KNotePrinter::setStyleSheet( TQStyleSheet* styleSheet ) { m_styleSheet = styleSheet; } TQStyleSheet* KNotePrinter::styleSheet() const { return m_styleSheet; } void KNotePrinter::doPrint( KPrinter& printer, TQPainter& painter, const TQString& content ) const { const int margin = 40; // pt TQPaintDeviceMetrics metrics( painter.device() ); int marginX = margin * metrics.logicalDpiX() / 72; int marginY = margin * metrics.logicalDpiY() / 72; TQRect body( marginX, marginY, metrics.width() - marginX * 2, metrics.height() - marginY * 2 ); kdDebug()<<" content :"<= text.height() ) break; printer.newPage(); page++; } } void KNotePrinter::printNote( const TQString& name, const TQString& content ) const { KPrinter printer; printer.setFullPage( true ); if ( !printer.setup( 0, i18n("Print %1").arg(name) ) ) return; TQPainter painter; painter.begin( &printer ); doPrint( printer, painter, content ); painter.end(); } void KNotePrinter::printNotes( const TQValueList& journals ) const { if ( journals.isEmpty() ) return; KPrinter printer; printer.setFullPage( true ); if ( !printer.setup( 0, i18n("Print Note", "Print %n notes", journals.count() ) ) ) return; TQPainter painter; painter.begin( &printer ); TQString content; TQValueListConstIterator it( journals.constBegin() ); TQValueListConstIterator end( journals.constEnd() ); while ( it != end ) { KCal::Journal *j = *it; it++; content += "

" + j->summary() + "

"; content += j->description(); if ( it != end ) content += "
"; } doPrint( printer, painter, content ); painter.end(); }