From 507b362d42d5eed6277ad17422b6ba61acca636e Mon Sep 17 00:00:00 2001 From: zautrix Date: Sun, 16 Jan 2005 22:19:12 +0000 Subject: print AB --- (limited to 'kaddressbook/views/kaddressbookcardview.cpp') diff --git a/kaddressbook/views/kaddressbookcardview.cpp b/kaddressbook/views/kaddressbookcardview.cpp index 2d7ed08..107be59 100644 --- a/kaddressbook/views/kaddressbookcardview.cpp +++ b/kaddressbook/views/kaddressbookcardview.cpp @@ -38,6 +38,7 @@ #include "kabprefs.h" #include "viewmanager.h" + #include "kaddressbookcardview.h" #ifndef KAB_EMBEDDED @@ -116,6 +117,32 @@ AddresseeCardView::AddresseeCardView(QWidget *parent, const char *name) AddresseeCardView::~AddresseeCardView() { } +void AddresseeCardView::printMe() +{ +#ifdef DESKTOP_VERSION + QPrinter printer; + if (!printer.setup() ) + return; + QPainter p; + p.begin ( &printer ); + QPaintDeviceMetrics m = QPaintDeviceMetrics ( &printer ); + float dx, dy; + int wid = (m.width() * 9)/10; + dx = (float) wid/(float)contentsWidth (); + dy = (float)(m.height()) / (float)contentsHeight (); + float scale; + // scale to fit the width or height of the paper + if ( dx < dy ) + scale = dx; + else + scale = dy; + p.translate( m.width()/10,0 ); + p.scale( scale, scale ); + drawContents ( &p, 0,0, contentsWidth (), contentsHeight () ); + p.end(); + repaint(); +#endif +} void AddresseeCardView::dragEnterEvent(QDragEnterEvent *e) @@ -164,6 +191,8 @@ KAddressBookCardView::KAddressBookCardView( KABC::AddressBook *ab, this, SIGNAL(dropped(QDropEvent*))); connect(mCardView, SIGNAL(startAddresseeDrag()), this, SIGNAL(startDrag())); + connect(this, SIGNAL(printView()), + mCardView , SLOT(printMe())); } KAddressBookCardView::~KAddressBookCardView() -- cgit v0.9.0.2