void QgsComposition::print( QPrinter &printer ) { //set resolution based on composer setting printer.setFullPage( true ); printer.setColorMode( QPrinter::Color ); //set user-defined resolution printer.setResolution( printResolution() ); QPainter p( &printer ); //QgsComposition starts page numbering at 0 int fromPage = ( printer.fromPage() < 1 ) ? 0 : printer.fromPage() - 1 ; int toPage = ( printer.toPage() < 1 ) ? numPages() - 1 : printer.toPage() - 1; if ( mPrintAsRaster ) { for ( int i = fromPage; i <= toPage; ++i ) { if ( i > fromPage ) { printer.newPage(); } QImage image = printPageAsRaster( i ); if ( !image.isNull() ) { QRectF targetArea( 0, 0, image.width(), image.height() ); p.drawImage( targetArea, image, targetArea ); } } } if ( !mPrintAsRaster ) { for ( int i = fromPage; i <= toPage; ++i ) { if ( i > fromPage ) { printer.newPage(); } renderPage( &p, i ); } } }
void QgsComposition::doPrint( QPrinter& printer, QPainter& p ) { //QgsComposition starts page numbering at 0 int fromPage = ( printer.fromPage() < 1 ) ? 0 : printer.fromPage() - 1 ; int toPage = ( printer.toPage() < 1 ) ? numPages() - 1 : printer.toPage() - 1; if ( mPrintAsRaster ) { for ( int i = fromPage; i <= toPage; ++i ) { if ( i > fromPage ) { printer.newPage(); } QImage image = printPageAsRaster( i ); if ( !image.isNull() ) { QRectF targetArea( 0, 0, image.width(), image.height() ); p.drawImage( targetArea, image, targetArea ); } } } if ( !mPrintAsRaster ) { for ( int i = fromPage; i <= toPage; ++i ) { if ( i > fromPage ) { printer.newPage(); } renderPage( &p, i ); } } }
void FalagardListHeaderSegment::render() { ListHeaderSegment* w = (ListHeaderSegment*)d_window; // get WidgetLookFeel for the assigned look. const WidgetLookFeel& wlf = getLookNFeel(); const StateImagery* imagery; // get imagery for main state. if (w->isDisabled()) { imagery = &wlf.getStateImagery("Disabled"); } else if ((w->isSegmentHovering() != w->isSegmentPushed()) && !w->isSplitterHovering() && w->isClickable()) { imagery = &wlf.getStateImagery("Hover"); } else if (w->isSplitterHovering()) { imagery = &wlf.getStateImagery("SplitterHover"); } else { imagery = &wlf.getStateImagery("Normal"); } // do main rendering imagery->render(*w); // Render sorting icon as needed ListHeaderSegment::SortDirection sort_dir = w->getSortDirection(); if (sort_dir == ListHeaderSegment::Ascending) { imagery = &wlf.getStateImagery("AscendingSortIcon"); imagery->render(*w); } else if (sort_dir == ListHeaderSegment::Descending) { imagery = &wlf.getStateImagery("DescendingSortIcon"); imagery->render(*w); } // draw ghost copy if the segment is being dragged. if (w->isBeingDragMoved()) { Size pixel_size = w->getPixelSize(); Rect targetArea(0, 0, pixel_size.d_width, pixel_size.d_height); targetArea.offset(w->getDragMoveOffset()); imagery = &wlf.getStateImagery("DragGhost"); imagery->render(*w, targetArea); // Render sorting icon as needed if (sort_dir == ListHeaderSegment::Ascending) { imagery = &wlf.getStateImagery("GhostAscendingSortIcon"); imagery->render(*w, targetArea); } else if (sort_dir == ListHeaderSegment::Descending) { imagery = &wlf.getStateImagery("GhostDescendingSortIcon"); imagery->render(*w, targetArea); } } }