summaryrefslogtreecommitdiffabout
path: root/kabc/addresseeview.cpp
Unidiff
Diffstat (limited to 'kabc/addresseeview.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--kabc/addresseeview.cpp38
1 files changed, 33 insertions, 5 deletions
diff --git a/kabc/addresseeview.cpp b/kabc/addresseeview.cpp
index 7a4336b..e85991e 100644
--- a/kabc/addresseeview.cpp
+++ b/kabc/addresseeview.cpp
@@ -23,64 +23,92 @@
23#include <kabc/addressee.h> 23#include <kabc/addressee.h>
24#include <kabc/phonenumber.h> 24#include <kabc/phonenumber.h>
25#include <kglobal.h> 25#include <kglobal.h>
26//US#include <kglobalsettings.h> 26//US#include <kglobalsettings.h>
27#include <kiconloader.h> 27#include <kiconloader.h>
28#include <klocale.h> 28#include <klocale.h>
29//US #include <kstringhandler.h> 29//US #include <kstringhandler.h>
30#include <qscrollview.h> 30#include <qscrollview.h>
31#include <qregexp.h> 31#include <qregexp.h>
32#include <qfile.h> 32#include <qfile.h>
33#include <qvbox.h> 33#include <qvbox.h>
34#include <qlabel.h> 34#include <qlabel.h>
35#include <qwidget.h> 35#include <qwidget.h>
36#include <qlayout.h> 36#include <qlayout.h>
37#include <qapplication.h> 37#include <qapplication.h>
38#include <qpushbutton.h> 38#include <qpushbutton.h>
39#ifdef DESKTOP_VERSION
40#include <qpaintdevicemetrics.h>
41#include <qprinter.h>
42#include <qpainter.h>
43#endif
39 44
40 45
41#include "externalapphandler.h" 46#include "externalapphandler.h"
42#include "addresseeview.h" 47#include <kabc/addresseeview.h>
43 48
44 49
45//US #ifndef DESKTOP_VERSION 50//US #ifndef DESKTOP_VERSION
46//US #include <qtopia/qcopenvelope_qws.h> 51//US #include <qtopia/qcopenvelope_qws.h>
47//US #include <qpe/qpeapplication.h> 52//US #include <qpe/qpeapplication.h>
48//US #endif 53//US #endif
49 54
50//US static int kphoneInstalled = 0; 55//US static int kphoneInstalled = 0;
51 56
52using namespace KPIM; 57using namespace KABC;
53 58
54AddresseeView::AddresseeView( QWidget *parent, const char *name ) 59AddresseeView::AddresseeView( QWidget *parent, const char *name )
55//US : KTextBrowser( parent, name )
56 : QTextBrowser( parent, name ) 60 : QTextBrowser( parent, name )
57 61
58 62
59{ 63{
60//US setWrapPolicy( QTextEdit::AtWordBoundary ); 64//US setWrapPolicy( QTextEdit::AtWordBoundary );
61 setLinkUnderline( false ); 65 setLinkUnderline( false );
62 // setVScrollBarMode( QScrollView::AlwaysOff ); 66 // setVScrollBarMode( QScrollView::AlwaysOff );
63 //setHScrollBarMode( QScrollView::AlwaysOff ); 67 //setHScrollBarMode( QScrollView::AlwaysOff );
64 68
65//US QStyleSheet *sheet = styleSheet(); 69//US QStyleSheet *sheet = styleSheet();
66//US QStyleSheetItem *link = sheet->item( "a" ); 70//US QStyleSheetItem *link = sheet->item( "a" );
67//US link->setColor( KGlobalSettings::linkColor() ); 71//US link->setColor( KGlobalSettings::linkColor() );
68 72
69} 73}
70 74void AddresseeView::printMe()
75{
76#ifdef DESKTOP_VERSION
77 QPrinter printer;
78 if (!printer.setup() )
79 return;
80 QPainter p;
81 p.begin ( &printer );
82 QPaintDeviceMetrics m = QPaintDeviceMetrics ( &printer );
83 float dx, dy;
84 int wid = (m.width() * 9)/10;
85 dx = (float) wid/(float)contentsWidth ();
86 dy = (float)(m.height()) / (float)contentsHeight ();
87 float scale;
88 // scale to fit the width or height of the paper
89 if ( dx < dy )
90 scale = dx;
91 else
92 scale = dy;
93 p.translate( m.width()/10,0 );
94 p.scale( scale, scale );
95 drawContents ( &p, 0,0, contentsWidth (), contentsHeight () );
96 p.end();
97#endif
98}
71void AddresseeView::setSource(const QString& n) 99void AddresseeView::setSource(const QString& n)
72{ 100{
73 //qDebug("********AddresseeView::setSource %s", n.latin1()); 101 //qDebug("********AddresseeView::setSource %s", n.latin1());
74 102
75 if ( n.left( 6 ) == "mailto" ) 103 if ( n.left( 6 ) == "mailto" )
76 ExternalAppHandler::instance()->mailToOneContact( n.mid(7) ); 104 ExternalAppHandler::instance()->mailToOneContact( n.mid(7) );
77 else if ( n.left( 7 ) == "phoneto" ) 105 else if ( n.left( 7 ) == "phoneto" )
78 ExternalAppHandler::instance()->callByPhone( n.mid(8) ); 106 ExternalAppHandler::instance()->callByPhone( n.mid(8) );
79 else if ( n.left( 5 ) == "faxto" ) 107 else if ( n.left( 5 ) == "faxto" )
80 ExternalAppHandler::instance()->callByFax( n.mid(6) ); 108 ExternalAppHandler::instance()->callByFax( n.mid(6) );
81 else if ( n.left( 5 ) == "smsto" ) 109 else if ( n.left( 5 ) == "smsto" )
82 ExternalAppHandler::instance()->callBySMS( n.mid(6) ); 110 ExternalAppHandler::instance()->callBySMS( n.mid(6) );
83 else if ( n.left( 7 ) == "pagerto" ) 111 else if ( n.left( 7 ) == "pagerto" )
84 ExternalAppHandler::instance()->callByPager( n.mid(8) ); 112 ExternalAppHandler::instance()->callByPager( n.mid(8) );
85 else if ( n.left( 5 ) == "sipto" ) 113 else if ( n.left( 5 ) == "sipto" )
86 ExternalAppHandler::instance()->callBySIP( n.mid(6) ); 114 ExternalAppHandler::instance()->callBySIP( n.mid(6) );
@@ -198,33 +226,33 @@ void AddresseeView::setAddressee( const KABC::Addressee& mAddressee )
198 "<td align=\"left\">%2</td>" // note 226 "<td align=\"left\">%2</td>" // note
199 "</tr>" ).arg( i18n( "Notes" ) ) 227 "</tr>" ).arg( i18n( "Notes" ) )
200//US .arg( mAddressee.note().replace( '\n', "<br>" ) ); 228//US .arg( mAddressee.note().replace( '\n', "<br>" ) );
201 .arg( mAddressee.note().replace( QRegExp("\n"), "<br>" ) ); 229 .arg( mAddressee.note().replace( QRegExp("\n"), "<br>" ) );
202 //qDebug("AddresseeView::setAddressee has to be verified."); 230 //qDebug("AddresseeView::setAddressee has to be verified.");
203 } 231 }
204 232
205 QString aRole = ""; 233 QString aRole = "";
206 QString aOrga = ""; 234 QString aOrga = "";
207 if ( true /*!mAddressee.role().isEmpty()*/ ) { 235 if ( true /*!mAddressee.role().isEmpty()*/ ) {
208 aRole = "<tr>" 236 aRole = "<tr>"
209 "<td align=\"left\">" + mAddressee.role() + "</td>" 237 "<td align=\"left\">" + mAddressee.role() + "</td>"
210 "</tr>"; 238 "</tr>";
211 } 239 }
212 if ( true /*!mAddressee.organization().isEmpty()*/ ) { 240 if ( true /*!mAddressee.organization().isEmpty()*/ ) {
213 aOrga = "<tr>" 241 aOrga = "<tr>"
214 "<td align=\"left\">" + mAddressee.organization() + "</td>" ; 242 "<td align=\"left\">" + mAddressee.organization() + "</td>"
215 "</tr>"; 243 "</tr>";
216 } 244 }
217 mText = ""; 245 mText = "";
218 QString picString = ""; 246 QString picString = "";
219 KABC::Picture picture = mAddressee.photo(); 247 KABC::Picture picture = mAddressee.photo();
220 bool picAvailintern = false; 248 bool picAvailintern = false;
221 bool picAvailUrl = false; 249 bool picAvailUrl = false;
222 if (! picture.undefined() ) { 250 if (! picture.undefined() ) {
223 picAvailintern = (picture.isIntern() && !picture.data().isNull()); 251 picAvailintern = (picture.isIntern() && !picture.data().isNull());
224 picAvailUrl = !picture.isIntern() && QFile::exists(picture.url() ); 252 picAvailUrl = !picture.isIntern() && QFile::exists(picture.url() );
225 } 253 }
226 if ( picAvailUrl || picAvailintern || QApplication::desktop()->width() > 320 ) { 254 if ( picAvailUrl || picAvailintern || QApplication::desktop()->width() > 320 ) {
227 if ( picAvailintern ) { 255 if ( picAvailintern ) {
228 QMimeSourceFactory::defaultFactory()->setImage( "myimage", picture.data() ); 256 QMimeSourceFactory::defaultFactory()->setImage( "myimage", picture.data() );
229 } else { 257 } else {
230 if ( picAvailUrl ) { 258 if ( picAvailUrl ) {