summaryrefslogtreecommitdiffabout
authorzautrix <zautrix>2005-01-16 22:19:12 (UTC)
committer zautrix <zautrix>2005-01-16 22:19:12 (UTC)
commit507b362d42d5eed6277ad17422b6ba61acca636e (patch) (side-by-side diff)
treed3d29451d37649b102c3e171e2927437925f8ce8
parenta704468d5fd02d30cf962c8b2d6815c7e9208e5d (diff)
downloadkdepimpi-507b362d42d5eed6277ad17422b6ba61acca636e.zip
kdepimpi-507b362d42d5eed6277ad17422b6ba61acca636e.tar.gz
kdepimpi-507b362d42d5eed6277ad17422b6ba61acca636e.tar.bz2
print AB
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--kabc/addresseeview.cpp38
-rw-r--r--kabc/addresseeview.h4
-rw-r--r--kaddressbook/details/detailsviewcontainer.cpp4
-rw-r--r--kaddressbook/details/detailsviewcontainer.h1
-rw-r--r--kaddressbook/details/look_basic.h2
-rw-r--r--kaddressbook/details/look_html.cpp10
-rw-r--r--kaddressbook/details/look_html.h8
-rw-r--r--kaddressbook/kabcore.cpp21
-rw-r--r--kaddressbook/kabcore.h1
-rw-r--r--kaddressbook/kaddressbookview.h9
-rw-r--r--kaddressbook/kcmconfigs/kabconfigwidget.cpp2
-rw-r--r--kaddressbook/mainembedded.cpp3
-rw-r--r--kaddressbook/viewmanager.h1
-rw-r--r--kaddressbook/views/contactlistview.cpp27
-rw-r--r--kaddressbook/views/contactlistview.h1
-rw-r--r--kaddressbook/views/kaddressbookcardview.cpp29
-rw-r--r--kaddressbook/views/kaddressbookcardview.h2
-rw-r--r--kaddressbook/views/kaddressbooktableview.cpp2
-rw-r--r--kaddressbook/xxportmanager.cpp2
-rw-r--r--korganizer/koeventviewer.cpp2
-rw-r--r--korganizer/kowhatsnextview.cpp42
-rw-r--r--korganizer/kowhatsnextview.h5
22 files changed, 176 insertions, 40 deletions
diff --git a/kabc/addresseeview.cpp b/kabc/addresseeview.cpp
index 7a4336b..e85991e 100644
--- a/kabc/addresseeview.cpp
+++ b/kabc/addresseeview.cpp
@@ -36,10 +36,15 @@
#include <qlayout.h>
#include <qapplication.h>
#include <qpushbutton.h>
+#ifdef DESKTOP_VERSION
+#include <qpaintdevicemetrics.h>
+#include <qprinter.h>
+#include <qpainter.h>
+#endif
#include "externalapphandler.h"
-#include "addresseeview.h"
+#include <kabc/addresseeview.h>
//US #ifndef DESKTOP_VERSION
@@ -49,10 +54,9 @@
//US static int kphoneInstalled = 0;
-using namespace KPIM;
+using namespace KABC;
AddresseeView::AddresseeView( QWidget *parent, const char *name )
-//US : KTextBrowser( parent, name )
: QTextBrowser( parent, name )
@@ -67,7 +71,31 @@ AddresseeView::AddresseeView( QWidget *parent, const char *name )
//US link->setColor( KGlobalSettings::linkColor() );
}
-
+void AddresseeView::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();
+#endif
+}
void AddresseeView::setSource(const QString& n)
{
//qDebug("********AddresseeView::setSource %s", n.latin1());
@@ -211,7 +239,7 @@ void AddresseeView::setAddressee( const KABC::Addressee& mAddressee )
}
if ( true /*!mAddressee.organization().isEmpty()*/ ) {
aOrga = "<tr>"
- "<td align=\"left\">" + mAddressee.organization() + "</td>" ;
+ "<td align=\"left\">" + mAddressee.organization() + "</td>"
"</tr>";
}
mText = "";
diff --git a/kabc/addresseeview.h b/kabc/addresseeview.h
index 3800512..e977d8f 100644
--- a/kabc/addresseeview.h
+++ b/kabc/addresseeview.h
@@ -28,11 +28,12 @@
//US #include <ktextbrowser.h>
#include <qtextbrowser.h>
-namespace KPIM {
+namespace KABC {
//US class AddresseeView : public KTextBrowser
class AddresseeView : public QTextBrowser
{
+
public:
AddresseeView( QWidget *parent = 0, const char *name = 0 );
@@ -47,6 +48,7 @@ class AddresseeView : public QTextBrowser
Returns the current addressee object.
*/
//KABC::Addressee addressee() const;
+ void printMe();
private:
//KABC::Addressee mAddressee;
diff --git a/kaddressbook/details/detailsviewcontainer.cpp b/kaddressbook/details/detailsviewcontainer.cpp
index 229cce0..cee5886 100644
--- a/kaddressbook/details/detailsviewcontainer.cpp
+++ b/kaddressbook/details/detailsviewcontainer.cpp
@@ -78,6 +78,10 @@ ViewContainer::ViewContainer( QWidget *parent, const char* name )
#endif
}
+void ViewContainer::printView()
+{
+ mCurrentLook->printView();
+}
KABBasicLook *ViewContainer::currentLook()
{
return mCurrentLook;
diff --git a/kaddressbook/details/detailsviewcontainer.h b/kaddressbook/details/detailsviewcontainer.h
index 667f0cb..9684736 100644
--- a/kaddressbook/details/detailsviewcontainer.h
+++ b/kaddressbook/details/detailsviewcontainer.h
@@ -51,6 +51,7 @@ class ViewContainer : public QWidget
KABC::Addressee addressee();
public slots:
+ void printView();
/**
Set the contact currently displayed.
*/
diff --git a/kaddressbook/details/look_basic.h b/kaddressbook/details/look_basic.h
index 7e8baff..a65c99c 100644
--- a/kaddressbook/details/look_basic.h
+++ b/kaddressbook/details/look_basic.h
@@ -75,8 +75,10 @@ class KABBasicLook : public QVBox
Retrieve read-write state.
*/
bool isReadOnly() const;
+ void printView(){ emit printMyView();}
signals:
+ void printMyView();
/**
This signal is emitted when the user changed the entry.
*/
diff --git a/kaddressbook/details/look_html.cpp b/kaddressbook/details/look_html.cpp
index 64987b8..bb30650 100644
--- a/kaddressbook/details/look_html.cpp
+++ b/kaddressbook/details/look_html.cpp
@@ -26,16 +26,24 @@
#include "look_html.h"
#include <qscrollview.h>
#include "kabprefs.h"
+#include <kabc/addresseeview.h>
KABHtmlView::KABHtmlView( QWidget *parent, const char *name )
: KABBasicLook( parent, name )
{
- mView = new KPIM::AddresseeView( this );
+ mView = new KABC::AddresseeView( this );
mView->setFont( KABPrefs::instance()->mDetailsFont );
+ connect(this, SIGNAL(printMyView()),
+ this , SLOT(printMe()));
}
KABHtmlView::~KABHtmlView()
{
}
+void KABHtmlView::printMe()
+{
+ mView->printMe();
+
+}
void KABHtmlView::setAddressee( const KABC::Addressee &addr )
{
diff --git a/kaddressbook/details/look_html.h b/kaddressbook/details/look_html.h
index 68a02d9..57eb56f 100644
--- a/kaddressbook/details/look_html.h
+++ b/kaddressbook/details/look_html.h
@@ -29,7 +29,7 @@
#include "look_basic.h"
namespace KABC { class Addressee; }
-namespace KPIM { class AddresseeView; }
+namespace KABC { class AddresseeView; }
class KABHtmlView : public KABBasicLook
{
@@ -49,10 +49,12 @@ class KABHtmlView : public KABBasicLook
/**
Set the addressee.
*/
- void setAddressee( const KABC::Addressee& );
+ void setAddressee( const KABC::Addressee& );
+ public slots:
+ void printMe();
private:
- KPIM::AddresseeView *mView;
+ KABC::AddresseeView *mView;
};
class KABHtmlViewFactory : public KABLookFactory
diff --git a/kaddressbook/kabcore.cpp b/kaddressbook/kabcore.cpp
index 4098dda..e61f65f 100644
--- a/kaddressbook/kabcore.cpp
+++ b/kaddressbook/kabcore.cpp
@@ -1877,18 +1877,15 @@ void KABCore::initActions()
#endif //KAB_EMBEDDED
// file menu
- if ( mIsPart ) {
- mActionMail = new KAction( i18n( "&Mail" ), "mail_generic", 0, this,
- SLOT( sendMail() ), actionCollection(),
- "kaddressbook_mail" );
- mActionPrint = new KAction( i18n( "&Print" ), "fileprint", CTRL + Key_P, this,
- SLOT( print() ), actionCollection(), "kaddressbook_print" );
-
- } else {
+
mActionMail = KStdAction::mail( this, SLOT( sendMail() ), actionCollection() );
- mActionPrint = KStdAction::print( this, SLOT( print() ), actionCollection() );
- }
+ //mActionPrint = KStdAction::print( this, SLOT( print() ), actionCollection() );
+ mActionPrint = new KAction( i18n( "&Print View" ), "fileprint", CTRL + Key_P, mViewManager,
+ SLOT( printView() ), actionCollection(), "kaddressbook_print" );
+
+ mActionPrintDetails = new KAction( i18n( "&Print Details" ), "fileprint", 0, mDetails,
+ SLOT( printView() ), actionCollection(), "kaddressbook_print2" );
mActionSave = new KAction( i18n( "&Save" ), "filesave", CTRL+Key_S, this,
SLOT( save() ), actionCollection(), "file_sync" );
@@ -2139,6 +2136,8 @@ void KABCore::addActionsManually()
//US Now connect the actions with the menue entries.
#ifdef DESKTOP_VERSION
mActionPrint->plug( fileMenu );
+ mActionPrintDetails->plug( fileMenu );
+ fileMenu->insertSeparator();
#endif
mActionMail->plug( fileMenu );
fileMenu->insertSeparator();
@@ -2768,7 +2767,7 @@ int KABCore::takeAddressee( KABC::Addressee* local, KABC::Addressee* remote, i
localIsNew = localMod >= remoteMod;
//qDebug("conflict! ************************************** ");
{
- KPIM::AddresseeChooser acd ( *local,*remote, localIsNew , this );
+ KABC::AddresseeChooser acd ( *local,*remote, localIsNew , this );
result = acd.executeD(localIsNew);
return result;
}
diff --git a/kaddressbook/kabcore.h b/kaddressbook/kabcore.h
index 0d5891e..ecfe6e9 100644
--- a/kaddressbook/kabcore.h
+++ b/kaddressbook/kabcore.h
@@ -430,6 +430,7 @@ class KABCore : public QWidget, public KSyncInterface
KToggleAction *mActionBR;
KAction *mActionExport2phone;
KAction* mActionPrint;
+ KAction* mActionPrintDetails;
KAction* mActionNewContact;
KAction *mActionSave;
KAction *mActionEditAddressee;
diff --git a/kaddressbook/kaddressbookview.h b/kaddressbook/kaddressbookview.h
index 8646136..8f31910 100644
--- a/kaddressbook/kaddressbookview.h
+++ b/kaddressbook/kaddressbookview.h
@@ -38,6 +38,12 @@ class QDropEvent;
#include "viewconfigurewidget.h"
#include "filter.h"
+#ifdef DESKTOP_VERSION
+#include <qpaintdevicemetrics.h>
+#include <qprinter.h>
+#include <qpainter.h>
+#endif
+
namespace KABC { class AddressBook; }
/**
@@ -150,6 +156,7 @@ class KAddressBookView : public QWidget
@return The address book.
*/
KABC::AddressBook *addressBook() const;
+ void printMyView() { emit printView() ;}
public slots:
/**
@@ -176,6 +183,8 @@ class KAddressBookView : public QWidget
#endif //KAB_EMBEDDED
signals:
+
+ void printView();
/**
This signal should be emitted by a subclass whenever an addressee
is modified.
diff --git a/kaddressbook/kcmconfigs/kabconfigwidget.cpp b/kaddressbook/kcmconfigs/kabconfigwidget.cpp
index 8bf9bb0..3ad2f74 100644
--- a/kaddressbook/kcmconfigs/kabconfigwidget.cpp
+++ b/kaddressbook/kcmconfigs/kabconfigwidget.cpp
@@ -157,7 +157,7 @@ KABConfigWidget::KABConfigWidget( KABPrefs* prefs, QWidget *parent, const char *
mExtensionView->setAllColumnsShowFocus( true );
mExtensionView->addColumn( i18n( "Name" ) );
mExtensionView->addColumn( i18n( "Description" ) );
- mExtensionView->setMaximumHeight(80);
+ //mExtensionView->setMaximumHeight(80);
boxLayout->addWidget( mExtensionView );
diff --git a/kaddressbook/mainembedded.cpp b/kaddressbook/mainembedded.cpp
index 771bec9..1e03dba 100644
--- a/kaddressbook/mainembedded.cpp
+++ b/kaddressbook/mainembedded.cpp
@@ -76,8 +76,9 @@ int main( int argc, char **argv )
KPimGlobalPrefs::instance()->setGlobalConfig();
KAddressBookMain m ;
//US MainWindow m;
+#ifndef DESKTOP_VERSION
QObject::connect(&a, SIGNAL (appMessage ( const QCString &, const QByteArray & )), ExternalAppHandler::instance(), SLOT (appMessage ( const QCString &, const QByteArray & )));
-
+#endif
#ifndef DESKTOP_VERSION
diff --git a/kaddressbook/viewmanager.h b/kaddressbook/viewmanager.h
index 272e1b0..dff9998 100644
--- a/kaddressbook/viewmanager.h
+++ b/kaddressbook/viewmanager.h
@@ -69,6 +69,7 @@ class ViewManager : public QWidget
void setFocusAV();
public slots:
+ void printView() { if (mActiveView) mActiveView->printMyView() ;}
void scrollUP();
void scrollDOWN();
diff --git a/kaddressbook/views/contactlistview.cpp b/kaddressbook/views/contactlistview.cpp
index 23b091c..e75810e 100644
--- a/kaddressbook/views/contactlistview.cpp
+++ b/kaddressbook/views/contactlistview.cpp
@@ -277,6 +277,33 @@ ContactListView::ContactListView(KAddressBookTableView *view,
new DynamicTip( this );
}
+void ContactListView::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 );
+ qDebug("scale %f ", scale);
+ drawContents ( &p, 0,0, contentsWidth (), contentsHeight () );
+ p.end();
+ qDebug("Why does it not print??? ");
+#endif
+}
void ContactListView::setAlternateColor(const QColor &m_AlternateColor)
{
diff --git a/kaddressbook/views/contactlistview.h b/kaddressbook/views/contactlistview.h
index fad7f38..9d1a672 100644
--- a/kaddressbook/views/contactlistview.h
+++ b/kaddressbook/views/contactlistview.h
@@ -105,6 +105,7 @@ protected slots:
void itemDropped(QDropEvent *e);
public slots:
+ void printMe();
signals:
void startAddresseeDrag();
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()
diff --git a/kaddressbook/views/kaddressbookcardview.h b/kaddressbook/views/kaddressbookcardview.h
index 8f22d54..2a71f7e 100644
--- a/kaddressbook/views/kaddressbookcardview.h
+++ b/kaddressbook/views/kaddressbookcardview.h
@@ -85,6 +85,8 @@ class AddresseeCardView : public CardView
public:
AddresseeCardView(QWidget *parent, const char *name = 0);
~AddresseeCardView();
+public slots:
+ void printMe();
signals:
void startAddresseeDrag();
diff --git a/kaddressbook/views/kaddressbooktableview.cpp b/kaddressbook/views/kaddressbooktableview.cpp
index 61703ee..ecd6f05 100644
--- a/kaddressbook/views/kaddressbooktableview.cpp
+++ b/kaddressbook/views/kaddressbooktableview.cpp
@@ -89,6 +89,8 @@ void KAddressBookTableView::reconstructListView()
mListView = new ContactListView( this, addressBook(), viewWidget() );
+ connect(this, SIGNAL(printView()),
+ mListView , SLOT(printMe()));
//US set singleClick manually, because it is no global configparameter in embedded space
mListView->setSingleClick(KABPrefs::instance()->mHonorSingleClick);
diff --git a/kaddressbook/xxportmanager.cpp b/kaddressbook/xxportmanager.cpp
index 8d40ffe..89a2626 100644
--- a/kaddressbook/xxportmanager.cpp
+++ b/kaddressbook/xxportmanager.cpp
@@ -228,7 +228,7 @@ PreviewDialog::PreviewDialog( const KABC::Addressee &addr, QWidget *parent,
QWidget *page = plainPage();
QVBoxLayout *layout = new QVBoxLayout( page, marginHint(), spacingHint() );
- KPIM::AddresseeView *view = new KPIM::AddresseeView( page );
+ KABC::AddresseeView *view = new KABC::AddresseeView( page );
view->setAddressee( addr );
layout->addWidget( view );
diff --git a/korganizer/koeventviewer.cpp b/korganizer/koeventviewer.cpp
index cee0466..5de667e 100644
--- a/korganizer/koeventviewer.cpp
+++ b/korganizer/koeventviewer.cpp
@@ -87,7 +87,7 @@ void KOEventViewer::setSource(const QString& n)
QDialog dia( this,"dia123", true );
dia.setCaption( i18n("Details of attendee") );
QVBoxLayout lay ( &dia );
- KPIM::AddresseeView av ( &dia );
+ KABC::AddresseeView av ( &dia );
av.setAddressee( (*it) );
lay.addWidget( &av );
if ( QApplication::desktop()->width() < 480 )
diff --git a/korganizer/kowhatsnextview.cpp b/korganizer/kowhatsnextview.cpp
index 219f7c3..7166a01 100644
--- a/korganizer/kowhatsnextview.cpp
+++ b/korganizer/kowhatsnextview.cpp
@@ -24,7 +24,9 @@
#include <qlabel.h>
#include <qapplication.h>
-
+#ifdef DESKTOP_VERSION
+#include <qpaintdevicemetrics.h>
+#endif
#include <kglobal.h>
#include <klocale.h>
#include <kdebug.h>
@@ -56,6 +58,31 @@ void WhatsNextTextBrowser::setSource(const QString& n)
QTextBrowser::setSource(n);
}
}
+void WhatsNextTextBrowser::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();
+#endif
+}
KOWhatsNextView::KOWhatsNextView(Calendar *calendar, QWidget *parent,
const char *name)
@@ -114,18 +141,7 @@ QPtrList<Incidence> KOWhatsNextView::selectedIncidences()
void KOWhatsNextView::printMe()
{
#ifdef DESKTOP_VERSION
- QPrinter printer;
- if (!printer.setup() )
- return;
- QTextBrowser tb;
- tb.setFixedSize( 600, 4000 );
- QPainter::redirect ( tb.viewport(), &printer );
- updateView();
- tb.setText( mText );
- tb.show();
- tb.repaint();
- tb.hide();
- KMessageBox::information( this, i18n("Printing What's Next View!\n\nPlease close after\nprinting is finished."));
+ mView->printMe();
#endif
}
void KOWhatsNextView::printPreview(CalPrinter *calPrinter, const QDate &fd,
diff --git a/korganizer/kowhatsnextview.h b/korganizer/kowhatsnextview.h
index 0231cf2..715037f 100644
--- a/korganizer/kowhatsnextview.h
+++ b/korganizer/kowhatsnextview.h
@@ -34,9 +34,10 @@ class KOEventViewerDialog;
class WhatsNextTextBrowser : public QTextBrowser {
Q_OBJECT
public:
- WhatsNextTextBrowser(QWidget *parent) : QTextBrowser(parent) {}
+ WhatsNextTextBrowser(QWidget *parent) : QTextBrowser(parent) {};
void setSource(const QString &);
+ void printMe();
signals:
void showIncidence(const QString &uid);
@@ -88,7 +89,7 @@ class KOWhatsNextView : public KOrg::BaseView
private:
//void createEventViewer();
QTimer* mTimer;
- QTextBrowser *mView;
+ WhatsNextTextBrowser *mView;
QString mText;
// QLabel *mDateLabel;
KOEventViewerDialog *mEventViewer;