Diffstat (limited to 'korganizer/kowhatsnextview.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | korganizer/kowhatsnextview.cpp | 42 |
1 files changed, 29 insertions, 13 deletions
diff --git a/korganizer/kowhatsnextview.cpp b/korganizer/kowhatsnextview.cpp index 219f7c3..7166a01 100644 --- a/korganizer/kowhatsnextview.cpp +++ b/korganizer/kowhatsnextview.cpp | |||
@@ -25,5 +25,7 @@ | |||
25 | 25 | ||
26 | #include <qapplication.h> | 26 | #include <qapplication.h> |
27 | 27 | #ifdef DESKTOP_VERSION | |
28 | #include <qpaintdevicemetrics.h> | ||
29 | #endif | ||
28 | #include <kglobal.h> | 30 | #include <kglobal.h> |
29 | #include <klocale.h> | 31 | #include <klocale.h> |
@@ -57,4 +59,29 @@ void WhatsNextTextBrowser::setSource(const QString& n) | |||
57 | } | 59 | } |
58 | } | 60 | } |
61 | void WhatsNextTextBrowser::printMe() | ||
62 | { | ||
63 | #ifdef DESKTOP_VERSION | ||
64 | QPrinter printer; | ||
65 | if (!printer.setup() ) | ||
66 | return; | ||
67 | QPainter p; | ||
68 | p.begin ( &printer ); | ||
69 | QPaintDeviceMetrics m = QPaintDeviceMetrics ( &printer ); | ||
70 | float dx, dy; | ||
71 | int wid = (m.width() * 9)/10; | ||
72 | dx = (float) wid/(float)contentsWidth (); | ||
73 | dy = (float)(m.height()) / (float)contentsHeight (); | ||
74 | float scale; | ||
75 | // scale to fit the width or height of the paper | ||
76 | if ( dx < dy ) | ||
77 | scale = dx; | ||
78 | else | ||
79 | scale = dy; | ||
80 | p.translate( m.width()/10,0 ); | ||
81 | p.scale( scale, scale ); | ||
82 | drawContents ( &p, 0,0, contentsWidth (), contentsHeight () ); | ||
83 | p.end(); | ||
84 | #endif | ||
85 | } | ||
59 | 86 | ||
60 | KOWhatsNextView::KOWhatsNextView(Calendar *calendar, QWidget *parent, | 87 | KOWhatsNextView::KOWhatsNextView(Calendar *calendar, QWidget *parent, |
@@ -115,16 +142,5 @@ void KOWhatsNextView::printMe() | |||
115 | { | 142 | { |
116 | #ifdef DESKTOP_VERSION | 143 | #ifdef DESKTOP_VERSION |
117 | QPrinter printer; | 144 | mView->printMe(); |
118 | if (!printer.setup() ) | ||
119 | return; | ||
120 | QTextBrowser tb; | ||
121 | tb.setFixedSize( 600, 4000 ); | ||
122 | QPainter::redirect ( tb.viewport(), &printer ); | ||
123 | updateView(); | ||
124 | tb.setText( mText ); | ||
125 | tb.show(); | ||
126 | tb.repaint(); | ||
127 | tb.hide(); | ||
128 | KMessageBox::information( this, i18n("Printing What's Next View!\n\nPlease close after\nprinting is finished.")); | ||
129 | #endif | 145 | #endif |
130 | } | 146 | } |