summaryrefslogtreecommitdiffabout
path: root/kaddressbook
authorzautrix <zautrix>2005-01-16 22:19:12 (UTC)
committer zautrix <zautrix>2005-01-16 22:19:12 (UTC)
commit507b362d42d5eed6277ad17422b6ba61acca636e (patch) (unidiff)
treed3d29451d37649b102c3e171e2927437925f8ce8 /kaddressbook
parenta704468d5fd02d30cf962c8b2d6815c7e9208e5d (diff)
downloadkdepimpi-507b362d42d5eed6277ad17422b6ba61acca636e.zip
kdepimpi-507b362d42d5eed6277ad17422b6ba61acca636e.tar.gz
kdepimpi-507b362d42d5eed6277ad17422b6ba61acca636e.tar.bz2
print AB
Diffstat (limited to 'kaddressbook') (more/less context) (show whitespace changes)
-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.h6
-rw-r--r--kaddressbook/kabcore.cpp19
-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
17 files changed, 105 insertions, 16 deletions
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
@@ -57,48 +57,52 @@ ViewContainer::ViewContainer( QWidget *parent, const char* name )
57 styleLayout->addWidget( label ); 57 styleLayout->addWidget( label );
58 58
59 mStyleCombo = new QComboBox( this ); 59 mStyleCombo = new QComboBox( this );
60 styleLayout->addWidget( mStyleCombo ); 60 styleLayout->addWidget( mStyleCombo );
61 61
62 QFrame *frameRuler = new QFrame( this ); 62 QFrame *frameRuler = new QFrame( this );
63//US frameRuler->setFrameShape( QFrame::HLine ); 63//US frameRuler->setFrameShape( QFrame::HLine );
64//US frameRuler->setFrameShadow( QFrame::Sunken ); 64//US frameRuler->setFrameShadow( QFrame::Sunken );
65//US topLayout->addWidget( frameRuler ); 65//US topLayout->addWidget( frameRuler );
66 66
67 mDetailsStack = new QWidgetStack( this ); 67 mDetailsStack = new QWidgetStack( this );
68 topLayout->addWidget( mDetailsStack, 1 ); 68 topLayout->addWidget( mDetailsStack, 1 );
69 69
70 registerLooks(); 70 registerLooks();
71 71
72#if 1 72#if 1
73 // Hide detailed view selection combo box, because we currently have 73 // Hide detailed view selection combo box, because we currently have
74 // only one. Reenable it when there are more detailed views. 74 // only one. Reenable it when there are more detailed views.
75 label->hide(); 75 label->hide();
76 mStyleCombo->hide(); 76 mStyleCombo->hide();
77 frameRuler->hide(); 77 frameRuler->hide();
78#endif 78#endif
79} 79}
80 80
81void ViewContainer::printView()
82{
83 mCurrentLook->printView();
84}
81KABBasicLook *ViewContainer::currentLook() 85KABBasicLook *ViewContainer::currentLook()
82{ 86{
83 return mCurrentLook; 87 return mCurrentLook;
84} 88}
85 89
86void ViewContainer::registerLooks() 90void ViewContainer::registerLooks()
87{ 91{
88 mLookFactories.append( new KABHtmlViewFactory( mDetailsStack ) ); 92 mLookFactories.append( new KABHtmlViewFactory( mDetailsStack ) );
89// mLookFactories.append( new KABDetailedViewFactory( mDetailsStack ) ); 93// mLookFactories.append( new KABDetailedViewFactory( mDetailsStack ) );
90 mStyleCombo->clear(); 94 mStyleCombo->clear();
91 95
92 for ( uint i = 0; i < mLookFactories.count(); ++i ) 96 for ( uint i = 0; i < mLookFactories.count(); ++i )
93 mStyleCombo->insertItem( mLookFactories.at( i )->description() ); 97 mStyleCombo->insertItem( mLookFactories.at( i )->description() );
94 98
95 if ( !mLookFactories.isEmpty() ) 99 if ( !mLookFactories.isEmpty() )
96 slotStyleSelected( 0 ); 100 slotStyleSelected( 0 );
97} 101}
98 102
99void ViewContainer::slotStyleSelected( int index ) 103void ViewContainer::slotStyleSelected( int index )
100{ 104{
101#ifndef KAB_EMBEDDED 105#ifndef KAB_EMBEDDED
102 KConfig *config = kapp->config(); 106 KConfig *config = kapp->config();
103#else //KAB_EMBEDDED 107#else //KAB_EMBEDDED
104 //US I hope I got the same config object as above expected. 108 //US I hope I got the same config object as above expected.
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
@@ -30,48 +30,49 @@
30 30
31class QComboBox; 31class QComboBox;
32class QWidgetStack; 32class QWidgetStack;
33 33
34class ViewContainer : public QWidget 34class ViewContainer : public QWidget
35{ 35{
36 Q_OBJECT 36 Q_OBJECT
37 37
38 public: 38 public:
39 ViewContainer( QWidget *parent = 0, const char* name = 0 ); 39 ViewContainer( QWidget *parent = 0, const char* name = 0 );
40 40
41 /** 41 /**
42 Return the look currently selected. If there is none, it 42 Return the look currently selected. If there is none, it
43 returns zero. Do not use this pointer to store a reference 43 returns zero. Do not use this pointer to store a reference
44 to a look, the user might select another one (e.g., create 44 to a look, the user might select another one (e.g., create
45 a new object) at any time. 45 a new object) at any time.
46 */ 46 */
47 KABBasicLook *currentLook(); 47 KABBasicLook *currentLook();
48 /** 48 /**
49 Return the contact currently displayed. 49 Return the contact currently displayed.
50 */ 50 */
51 KABC::Addressee addressee(); 51 KABC::Addressee addressee();
52 52
53 public slots: 53 public slots:
54 void printView();
54 /** 55 /**
55 Set the contact currently displayed. 56 Set the contact currently displayed.
56 */ 57 */
57 void setAddressee( const KABC::Addressee& addressee ); 58 void setAddressee( const KABC::Addressee& addressee );
58 59
59 /** 60 /**
60 Set read-write state. 61 Set read-write state.
61 */ 62 */
62 void setReadOnly( bool state ); 63 void setReadOnly( bool state );
63 64
64 signals: 65 signals:
65 /** 66 /**
66 The contact has been changed. 67 The contact has been changed.
67 */ 68 */
68 void addresseeChanged(); 69 void addresseeChanged();
69 70
70 /** 71 /**
71 The user acticated the email address displayed. This may happen 72 The user acticated the email address displayed. This may happen
72 by, for example, clicking on the displayed mailto-URL. 73 by, for example, clicking on the displayed mailto-URL.
73 */ 74 */
74 void sendEmail( const QString& ); 75 void sendEmail( const QString& );
75 76
76 /** 77 /**
77 The user activated one of the displayed HTTP URLs. For example 78 The user activated one of the displayed HTTP URLs. For example
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
@@ -54,50 +54,52 @@ class KABBasicLook : public QVBox
54 /** 54 /**
55 Set the entry. It will be displayed automatically. 55 Set the entry. It will be displayed automatically.
56 */ 56 */
57 virtual void setAddressee( const KABC::Addressee& addressee ); 57 virtual void setAddressee( const KABC::Addressee& addressee );
58 58
59 /** 59 /**
60 Get the current entry. 60 Get the current entry.
61 */ 61 */
62 virtual KABC::Addressee addressee(); 62 virtual KABC::Addressee addressee();
63 63
64 /** 64 /**
65 Configure the view from the configuration file. 65 Configure the view from the configuration file.
66 */ 66 */
67 virtual void restoreSettings( KConfig* ); 67 virtual void restoreSettings( KConfig* );
68 68
69 /** 69 /**
70 Save the view settings to the configuration file. 70 Save the view settings to the configuration file.
71 */ 71 */
72 virtual void saveSettings( KConfig* ); 72 virtual void saveSettings( KConfig* );
73 73
74 /** 74 /**
75 Retrieve read-write state. 75 Retrieve read-write state.
76 */ 76 */
77 bool isReadOnly() const; 77 bool isReadOnly() const;
78 void printView(){ emit printMyView();}
78 79
79 signals: 80 signals:
81 void printMyView();
80 /** 82 /**
81 This signal is emitted when the user changed the entry. 83 This signal is emitted when the user changed the entry.
82 */ 84 */
83 void entryChanged(); 85 void entryChanged();
84 86
85 /** 87 /**
86 This signal indicates that the entry needs to be changed 88 This signal indicates that the entry needs to be changed
87 immidiately in the database. This might be due to changes in 89 immidiately in the database. This might be due to changes in
88 values that are available in menus. 90 values that are available in menus.
89 */ 91 */
90 void saveMe(); 92 void saveMe();
91 93
92 /** 94 /**
93 The user acticated the email address displayed. This may happen 95 The user acticated the email address displayed. This may happen
94 by, for example, clicking on the displayed mailto-URL. 96 by, for example, clicking on the displayed mailto-URL.
95 */ 97 */
96 void sendEmail( const QString &email ); 98 void sendEmail( const QString &email );
97 99
98 /** 100 /**
99 The user activated one of the displayed HTTP URLs. For example 101 The user activated one of the displayed HTTP URLs. For example
100 by clicking on the displayed homepage address. 102 by clicking on the displayed homepage address.
101 */ 103 */
102 void browse( const QString &url ); 104 void browse( const QString &url );
103 105
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
@@ -5,44 +5,52 @@
5 This program is free software; you can redistribute it and/or modify 5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by 6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or 7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version. 8 (at your option) any later version.
9 9
10 This program is distributed in the hope that it will be useful, 10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details. 13 GNU General Public License for more details.
14 14
15 You should have received a copy of the GNU General Public License 15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software 16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 18
19 As a special exception, permission is given to link this program 19 As a special exception, permission is given to link this program
20 with any edition of Qt, and distribute the resulting executable, 20 with any edition of Qt, and distribute the resulting executable,
21 without including the source code for Qt in the source distribution. 21 without including the source code for Qt in the source distribution.
22*/ 22*/
23 23
24#include <addresseeview.h> 24#include <addresseeview.h>
25 25
26#include "look_html.h" 26#include "look_html.h"
27#include <qscrollview.h> 27#include <qscrollview.h>
28#include "kabprefs.h" 28#include "kabprefs.h"
29#include <kabc/addresseeview.h>
29KABHtmlView::KABHtmlView( QWidget *parent, const char *name ) 30KABHtmlView::KABHtmlView( QWidget *parent, const char *name )
30 : KABBasicLook( parent, name ) 31 : KABBasicLook( parent, name )
31{ 32{
32 mView = new KPIM::AddresseeView( this ); 33 mView = new KABC::AddresseeView( this );
33 mView->setFont( KABPrefs::instance()->mDetailsFont ); 34 mView->setFont( KABPrefs::instance()->mDetailsFont );
35 connect(this, SIGNAL(printMyView()),
36 this , SLOT(printMe()));
34} 37}
35 38
36KABHtmlView::~KABHtmlView() 39KABHtmlView::~KABHtmlView()
37{ 40{
38} 41}
42void KABHtmlView::printMe()
43{
44 mView->printMe();
45
46}
39 47
40void KABHtmlView::setAddressee( const KABC::Addressee &addr ) 48void KABHtmlView::setAddressee( const KABC::Addressee &addr )
41{ 49{
42 mView->setFont( KABPrefs::instance()->mDetailsFont ); 50 mView->setFont( KABPrefs::instance()->mDetailsFont );
43 mView->setAddressee( addr ); 51 mView->setAddressee( addr );
44} 52}
45 53
46#ifndef KAB_EMBEDDED 54#ifndef KAB_EMBEDDED
47#include "look_html.moc" 55#include "look_html.moc"
48#endif //KAB_EMBEDDED 56#endif //KAB_EMBEDDED
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
@@ -8,68 +8,70 @@
8 (at your option) any later version. 8 (at your option) any later version.
9 9
10 This program is distributed in the hope that it will be useful, 10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details. 13 GNU General Public License for more details.
14 14
15 You should have received a copy of the GNU General Public License 15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software 16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 18
19 As a special exception, permission is given to link this program 19 As a special exception, permission is given to link this program
20 with any edition of Qt, and distribute the resulting executable, 20 with any edition of Qt, and distribute the resulting executable,
21 without including the source code for Qt in the source distribution. 21 without including the source code for Qt in the source distribution.
22*/ 22*/
23 23
24#ifndef LOOK_HTML_H 24#ifndef LOOK_HTML_H
25#define LOOK_HTML_H 25#define LOOK_HTML_H
26 26
27#include <klocale.h> 27#include <klocale.h>
28 28
29#include "look_basic.h" 29#include "look_basic.h"
30 30
31namespace KABC { class Addressee; } 31namespace KABC { class Addressee; }
32namespace KPIM { class AddresseeView; } 32namespace KABC { class AddresseeView; }
33 33
34class KABHtmlView : public KABBasicLook 34class KABHtmlView : public KABBasicLook
35{ 35{
36 Q_OBJECT 36 Q_OBJECT
37 37
38 public: 38 public:
39 /** 39 /**
40 The constructor. 40 The constructor.
41 */ 41 */
42 KABHtmlView( QWidget *parent = 0, const char* name = 0 ); 42 KABHtmlView( QWidget *parent = 0, const char* name = 0 );
43 43
44 /** 44 /**
45 The virtual destructor. 45 The virtual destructor.
46 */ 46 */
47 virtual ~KABHtmlView(); 47 virtual ~KABHtmlView();
48 48
49 /** 49 /**
50 Set the addressee. 50 Set the addressee.
51 */ 51 */
52 void setAddressee( const KABC::Addressee& ); 52 void setAddressee( const KABC::Addressee& );
53 public slots:
54 void printMe();
53 55
54 private: 56 private:
55 KPIM::AddresseeView *mView; 57 KABC::AddresseeView *mView;
56}; 58};
57 59
58class KABHtmlViewFactory : public KABLookFactory 60class KABHtmlViewFactory : public KABLookFactory
59{ 61{
60 public: 62 public:
61 KABHtmlViewFactory( QWidget *parent = 0, const char *name = 0 ) 63 KABHtmlViewFactory( QWidget *parent = 0, const char *name = 0 )
62 : KABLookFactory( parent, name ) {} 64 : KABLookFactory( parent, name ) {}
63 65
64 KABBasicLook *create() 66 KABBasicLook *create()
65 { 67 {
66 return new KABHtmlView( mParent, mName ); 68 return new KABHtmlView( mParent, mName );
67 } 69 }
68 70
69 QString description() 71 QString description()
70 { 72 {
71 return i18n( "HTML table style." ); 73 return i18n( "HTML table style." );
72 } 74 }
73}; 75};
74 76
75#endif 77#endif
diff --git a/kaddressbook/kabcore.cpp b/kaddressbook/kabcore.cpp
index 4098dda..e61f65f 100644
--- a/kaddressbook/kabcore.cpp
+++ b/kaddressbook/kabcore.cpp
@@ -1856,61 +1856,58 @@ void KABCore::initGUI()
1856 SLOT( incrementalSearch( const QString& ) ) ); 1856 SLOT( incrementalSearch( const QString& ) ) );
1857 connect( mIncSearchWidget, SIGNAL( scrollUP() ),mViewManager, SLOT( scrollUP() ) ); 1857 connect( mIncSearchWidget, SIGNAL( scrollUP() ),mViewManager, SLOT( scrollUP() ) );
1858 connect( mIncSearchWidget, SIGNAL( scrollDOWN() ),mViewManager, SLOT( scrollDOWN() ) ); 1858 connect( mIncSearchWidget, SIGNAL( scrollDOWN() ),mViewManager, SLOT( scrollDOWN() ) );
1859 1859
1860 mJumpButtonBar = new JumpButtonBar( this, this ); 1860 mJumpButtonBar = new JumpButtonBar( this, this );
1861 1861
1862 topLayout->addWidget( mJumpButtonBar ); 1862 topLayout->addWidget( mJumpButtonBar );
1863//US topLayout->setStretchFactor( mJumpButtonBar, 10 ); 1863//US topLayout->setStretchFactor( mJumpButtonBar, 10 );
1864 1864
1865// mMainWindow->getIconToolBar()->raise(); 1865// mMainWindow->getIconToolBar()->raise();
1866 1866
1867#endif //KAB_EMBEDDED 1867#endif //KAB_EMBEDDED
1868 1868
1869} 1869}
1870void KABCore::initActions() 1870void KABCore::initActions()
1871{ 1871{
1872//US qDebug("KABCore::initActions(): mIsPart %i", mIsPart); 1872//US qDebug("KABCore::initActions(): mIsPart %i", mIsPart);
1873 1873
1874#ifndef KAB_EMBEDDED 1874#ifndef KAB_EMBEDDED
1875 connect( QApplication::clipboard(), SIGNAL( dataChanged() ), 1875 connect( QApplication::clipboard(), SIGNAL( dataChanged() ),
1876 SLOT( clipboardDataChanged() ) ); 1876 SLOT( clipboardDataChanged() ) );
1877#endif //KAB_EMBEDDED 1877#endif //KAB_EMBEDDED
1878 1878
1879 // file menu 1879 // file menu
1880 if ( mIsPart ) {
1881 mActionMail = new KAction( i18n( "&Mail" ), "mail_generic", 0, this,
1882 SLOT( sendMail() ), actionCollection(),
1883 "kaddressbook_mail" );
1884 mActionPrint = new KAction( i18n( "&Print" ), "fileprint", CTRL + Key_P, this,
1885 SLOT( print() ), actionCollection(), "kaddressbook_print" );
1886 1880
1887 } else {
1888 mActionMail = KStdAction::mail( this, SLOT( sendMail() ), actionCollection() ); 1881 mActionMail = KStdAction::mail( this, SLOT( sendMail() ), actionCollection() );
1889 mActionPrint = KStdAction::print( this, SLOT( print() ), actionCollection() ); 1882 //mActionPrint = KStdAction::print( this, SLOT( print() ), actionCollection() );
1890 } 1883 mActionPrint = new KAction( i18n( "&Print View" ), "fileprint", CTRL + Key_P, mViewManager,
1884 SLOT( printView() ), actionCollection(), "kaddressbook_print" );
1891 1885
1892 1886
1887 mActionPrintDetails = new KAction( i18n( "&Print Details" ), "fileprint", 0, mDetails,
1888 SLOT( printView() ), actionCollection(), "kaddressbook_print2" );
1889
1893 mActionSave = new KAction( i18n( "&Save" ), "filesave", CTRL+Key_S, this, 1890 mActionSave = new KAction( i18n( "&Save" ), "filesave", CTRL+Key_S, this,
1894 SLOT( save() ), actionCollection(), "file_sync" ); 1891 SLOT( save() ), actionCollection(), "file_sync" );
1895 1892
1896 mActionNewContact = new KAction( i18n( "&New Contact..." ), "filenew", CTRL+Key_N, this, 1893 mActionNewContact = new KAction( i18n( "&New Contact..." ), "filenew", CTRL+Key_N, this,
1897 SLOT( newContact() ), actionCollection(), "file_new_contact" ); 1894 SLOT( newContact() ), actionCollection(), "file_new_contact" );
1898 1895
1899 mActionMailVCard = new KAction(i18n("Mail &vCard..."), "mail_post_to", 0, 1896 mActionMailVCard = new KAction(i18n("Mail &vCard..."), "mail_post_to", 0,
1900 this, SLOT( mailVCard() ), 1897 this, SLOT( mailVCard() ),
1901 actionCollection(), "file_mail_vcard"); 1898 actionCollection(), "file_mail_vcard");
1902 1899
1903 mActionExport2phone = new KAction( i18n( "Export to phone" ), "ex2phone", 0, this, 1900 mActionExport2phone = new KAction( i18n( "Export to phone" ), "ex2phone", 0, this,
1904 SLOT( export2phone() ), actionCollection(), 1901 SLOT( export2phone() ), actionCollection(),
1905 "kaddressbook_ex2phone" ); 1902 "kaddressbook_ex2phone" );
1906 1903
1907 mActionBeamVCard = 0; 1904 mActionBeamVCard = 0;
1908 mActionBeam = 0; 1905 mActionBeam = 0;
1909 1906
1910#ifndef DESKTOP_VERSION 1907#ifndef DESKTOP_VERSION
1911 if ( Ir::supported() ) { 1908 if ( Ir::supported() ) {
1912 mActionBeamVCard = new KAction( i18n( "Beam v&Card(s)..." ), "beam", 0, this, 1909 mActionBeamVCard = new KAction( i18n( "Beam v&Card(s)..." ), "beam", 0, this,
1913 SLOT( beamVCard() ), actionCollection(), 1910 SLOT( beamVCard() ), actionCollection(),
1914 "kaddressbook_beam_vcard" ); 1911 "kaddressbook_beam_vcard" );
1915 1912
1916 mActionBeam = new KAction( i18n( "&Beam personal vCard" ), "beam", 0, this, 1913 mActionBeam = new KAction( i18n( "&Beam personal vCard" ), "beam", 0, this,
@@ -2118,48 +2115,50 @@ void KABCore::addActionsManually()
2118 tb->insertWidget(-1, 0, menuBarTB); 2115 tb->insertWidget(-1, 0, menuBarTB);
2119 mIncSearchWidget = new IncSearchWidget( tb ); 2116 mIncSearchWidget = new IncSearchWidget( tb );
2120 2117
2121 tb->enableMoving(false); 2118 tb->enableMoving(false);
2122 popupBarTB->insertItem( i18n("&File"), fileMenu ); 2119 popupBarTB->insertItem( i18n("&File"), fileMenu );
2123 popupBarTB->insertItem( i18n("&Edit"), editMenu ); 2120 popupBarTB->insertItem( i18n("&Edit"), editMenu );
2124 popupBarTB->insertItem( i18n("&View"), viewMenu ); 2121 popupBarTB->insertItem( i18n("&View"), viewMenu );
2125 popupBarTB->insertItem( i18n("&Settings"), settingsMenu ); 2122 popupBarTB->insertItem( i18n("&Settings"), settingsMenu );
2126 popupBarTB->insertItem( i18n("Synchronize"), syncMenu ); 2123 popupBarTB->insertItem( i18n("Synchronize"), syncMenu );
2127 mViewManager->getFilterAction()->plug ( popupBarTB); 2124 mViewManager->getFilterAction()->plug ( popupBarTB);
2128 //popupBarTB->insertItem( i18n("&Change selected"), changeMenu ); 2125 //popupBarTB->insertItem( i18n("&Change selected"), changeMenu );
2129 popupBarTB->insertItem( i18n("&Help"), helpMenu ); 2126 popupBarTB->insertItem( i18n("&Help"), helpMenu );
2130 if (QApplication::desktop()->width() > 320 ) { 2127 if (QApplication::desktop()->width() > 320 ) {
2131 // mViewManager->getFilterAction()->plug ( tb); 2128 // mViewManager->getFilterAction()->plug ( tb);
2132 } 2129 }
2133 } 2130 }
2134#endif 2131#endif
2135 // mActionQuit->plug ( mMainWindow->toolBar()); 2132 // mActionQuit->plug ( mMainWindow->toolBar());
2136 2133
2137 2134
2138 2135
2139 //US Now connect the actions with the menue entries. 2136 //US Now connect the actions with the menue entries.
2140#ifdef DESKTOP_VERSION 2137#ifdef DESKTOP_VERSION
2141 mActionPrint->plug( fileMenu ); 2138 mActionPrint->plug( fileMenu );
2139 mActionPrintDetails->plug( fileMenu );
2140 fileMenu->insertSeparator();
2142#endif 2141#endif
2143 mActionMail->plug( fileMenu ); 2142 mActionMail->plug( fileMenu );
2144 fileMenu->insertSeparator(); 2143 fileMenu->insertSeparator();
2145 2144
2146 mActionNewContact->plug( fileMenu ); 2145 mActionNewContact->plug( fileMenu );
2147 mActionNewContact->plug( tb ); 2146 mActionNewContact->plug( tb );
2148 2147
2149 mActionEditAddressee->plug( fileMenu ); 2148 mActionEditAddressee->plug( fileMenu );
2150 // if ((KGlobal::getDesktopSize() > KGlobal::Small ) || 2149 // if ((KGlobal::getDesktopSize() > KGlobal::Small ) ||
2151 // (!KABPrefs::instance()->mMultipleViewsAtOnce )) 2150 // (!KABPrefs::instance()->mMultipleViewsAtOnce ))
2152 mActionEditAddressee->plug( tb ); 2151 mActionEditAddressee->plug( tb );
2153 2152
2154 fileMenu->insertSeparator(); 2153 fileMenu->insertSeparator();
2155 mActionSave->plug( fileMenu ); 2154 mActionSave->plug( fileMenu );
2156 fileMenu->insertItem( "&Import", ImportMenu ); 2155 fileMenu->insertItem( "&Import", ImportMenu );
2157 fileMenu->insertItem( "&Export", ExportMenu ); 2156 fileMenu->insertItem( "&Export", ExportMenu );
2158 fileMenu->insertItem( i18n("&Change"), changeMenu ); 2157 fileMenu->insertItem( i18n("&Change"), changeMenu );
2159#ifndef DESKTOP_VERSION 2158#ifndef DESKTOP_VERSION
2160 if ( Ir::supported() ) fileMenu->insertItem( i18n("&Beam"), beamMenu ); 2159 if ( Ir::supported() ) fileMenu->insertItem( i18n("&Beam"), beamMenu );
2161#endif 2160#endif
2162#if 0 2161#if 0
2163 // PENDING fix MailVCard 2162 // PENDING fix MailVCard
2164 fileMenu->insertSeparator(); 2163 fileMenu->insertSeparator();
2165 mActionMailVCard->plug( fileMenu ); 2164 mActionMailVCard->plug( fileMenu );
@@ -2747,49 +2746,49 @@ int KABCore::takeAddressee( KABC::Addressee* local, KABC::Addressee* remote, i
2747 return 1; 2746 return 1;
2748 break; 2747 break;
2749 case SYNC_PREF_REMOTE: 2748 case SYNC_PREF_REMOTE:
2750 if ( lastSync > remoteMod ) 2749 if ( lastSync > remoteMod )
2751 return 1; 2750 return 1;
2752 if ( lastSync > localMod ) 2751 if ( lastSync > localMod )
2753 return 2; 2752 return 2;
2754 return 2; 2753 return 2;
2755 break; 2754 break;
2756 case SYNC_PREF_NEWEST: 2755 case SYNC_PREF_NEWEST:
2757 if ( localMod > remoteMod ) 2756 if ( localMod > remoteMod )
2758 return 1; 2757 return 1;
2759 else 2758 else
2760 return 2; 2759 return 2;
2761 break; 2760 break;
2762 case SYNC_PREF_ASK: 2761 case SYNC_PREF_ASK:
2763 //qDebug("lsy %s --- lo %s --- re %s ", lastSync.toString().latin1(), localMod.toString().latin1(), remoteMod.toString().latin1() ); 2762 //qDebug("lsy %s --- lo %s --- re %s ", lastSync.toString().latin1(), localMod.toString().latin1(), remoteMod.toString().latin1() );
2764 if ( lastSync > remoteMod ) 2763 if ( lastSync > remoteMod )
2765 return 1; 2764 return 1;
2766 if ( lastSync > localMod ) 2765 if ( lastSync > localMod )
2767 return 2; 2766 return 2;
2768 localIsNew = localMod >= remoteMod; 2767 localIsNew = localMod >= remoteMod;
2769 //qDebug("conflict! ************************************** "); 2768 //qDebug("conflict! ************************************** ");
2770 { 2769 {
2771 KPIM::AddresseeChooser acd ( *local,*remote, localIsNew , this ); 2770 KABC::AddresseeChooser acd ( *local,*remote, localIsNew , this );
2772 result = acd.executeD(localIsNew); 2771 result = acd.executeD(localIsNew);
2773 return result; 2772 return result;
2774 } 2773 }
2775 break; 2774 break;
2776 case SYNC_PREF_FORCE_LOCAL: 2775 case SYNC_PREF_FORCE_LOCAL:
2777 return 1; 2776 return 1;
2778 break; 2777 break;
2779 case SYNC_PREF_FORCE_REMOTE: 2778 case SYNC_PREF_FORCE_REMOTE:
2780 return 2; 2779 return 2;
2781 break; 2780 break;
2782 2781
2783 default: 2782 default:
2784 // SYNC_PREF_TAKE_BOTH not implemented 2783 // SYNC_PREF_TAKE_BOTH not implemented
2785 break; 2784 break;
2786 } 2785 }
2787 return 0; 2786 return 0;
2788} 2787}
2789 2788
2790 2789
2791bool KABCore::synchronizeAddressbooks( KABC::AddressBook* local, KABC::AddressBook* remote,int mode) 2790bool KABCore::synchronizeAddressbooks( KABC::AddressBook* local, KABC::AddressBook* remote,int mode)
2792{ 2791{
2793 bool syncOK = true; 2792 bool syncOK = true;
2794 int addedAddressee = 0; 2793 int addedAddressee = 0;
2795 int addedAddresseeR = 0; 2794 int addedAddresseeR = 0;
diff --git a/kaddressbook/kabcore.h b/kaddressbook/kabcore.h
index 0d5891e..ecfe6e9 100644
--- a/kaddressbook/kabcore.h
+++ b/kaddressbook/kabcore.h
@@ -409,48 +409,49 @@ class KABCore : public QWidget, public KSyncInterface
409 XXPortManager *mXXPortManager; 409 XXPortManager *mXXPortManager;
410 JumpButtonBar *mJumpButtonBar; 410 JumpButtonBar *mJumpButtonBar;
411 IncSearchWidget *mIncSearchWidget; 411 IncSearchWidget *mIncSearchWidget;
412 ExtensionManager *mExtensionManager; 412 ExtensionManager *mExtensionManager;
413 413
414 KCMultiDialog *mConfigureDialog; 414 KCMultiDialog *mConfigureDialog;
415 415
416#ifndef KAB_EMBEDDED 416#ifndef KAB_EMBEDDED
417 LDAPSearchDialog *mLdapSearchDialog; 417 LDAPSearchDialog *mLdapSearchDialog;
418#endif //KAB_EMBEDDED 418#endif //KAB_EMBEDDED
419 // QDict<AddresseeEditorDialog> mEditorDict; 419 // QDict<AddresseeEditorDialog> mEditorDict;
420 AddresseeEditorDialog *mEditorDialog; 420 AddresseeEditorDialog *mEditorDialog;
421 bool mReadWrite; 421 bool mReadWrite;
422 bool mModified; 422 bool mModified;
423 bool mIsPart; 423 bool mIsPart;
424 bool mMultipleViewsAtOnce; 424 bool mMultipleViewsAtOnce;
425 425
426 426
427 //US file menu 427 //US file menu
428 KAction *mActionMail; 428 KAction *mActionMail;
429 KAction *mActionBeam; 429 KAction *mActionBeam;
430 KToggleAction *mActionBR; 430 KToggleAction *mActionBR;
431 KAction *mActionExport2phone; 431 KAction *mActionExport2phone;
432 KAction* mActionPrint; 432 KAction* mActionPrint;
433 KAction* mActionPrintDetails;
433 KAction* mActionNewContact; 434 KAction* mActionNewContact;
434 KAction *mActionSave; 435 KAction *mActionSave;
435 KAction *mActionEditAddressee; 436 KAction *mActionEditAddressee;
436 KAction *mActionMailVCard; 437 KAction *mActionMailVCard;
437 KAction *mActionBeamVCard; 438 KAction *mActionBeamVCard;
438 439
439 KAction *mActionQuit; 440 KAction *mActionQuit;
440 441
441 //US edit menu 442 //US edit menu
442 KAction *mActionCopy; 443 KAction *mActionCopy;
443 KAction *mActionCut; 444 KAction *mActionCut;
444 KAction *mActionPaste; 445 KAction *mActionPaste;
445 KAction *mActionSelectAll; 446 KAction *mActionSelectAll;
446 KAction *mActionUndo; 447 KAction *mActionUndo;
447 KAction *mActionRedo; 448 KAction *mActionRedo;
448 KAction *mActionDelete; 449 KAction *mActionDelete;
449 450
450 //US settings menu 451 //US settings menu
451 KAction *mActionConfigResources; 452 KAction *mActionConfigResources;
452 KAction *mActionConfigKAddressbook; 453 KAction *mActionConfigKAddressbook;
453 KAction *mActionConfigShortcuts; 454 KAction *mActionConfigShortcuts;
454 KAction *mActionConfigureToolbars; 455 KAction *mActionConfigureToolbars;
455 KAction *mActionKeyBindings; 456 KAction *mActionKeyBindings;
456 KToggleAction *mActionJumpBar; 457 KToggleAction *mActionJumpBar;
diff --git a/kaddressbook/kaddressbookview.h b/kaddressbook/kaddressbookview.h
index 8646136..8f31910 100644
--- a/kaddressbook/kaddressbookview.h
+++ b/kaddressbook/kaddressbookview.h
@@ -17,48 +17,54 @@
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 18
19 As a special exception, permission is given to link this program 19 As a special exception, permission is given to link this program
20 with any edition of Qt, and distribute the resulting executable, 20 with any edition of Qt, and distribute the resulting executable,
21 without including the source code for Qt in the source distribution. 21 without including the source code for Qt in the source distribution.
22*/ 22*/
23 23
24#ifndef KADDRESSBOOKVIEW_H 24#ifndef KADDRESSBOOKVIEW_H
25#define KADDRESSBOOKVIEW_H 25#define KADDRESSBOOKVIEW_H
26 26
27#ifndef KAB_EMBEDDED 27#ifndef KAB_EMBEDDED
28#include <klibloader.h> 28#include <klibloader.h>
29#endif //KAB_EMBEDDED 29#endif //KAB_EMBEDDED
30 30
31class KConfig; 31class KConfig;
32class QDropEvent; 32class QDropEvent;
33 33
34#include <qstringlist.h> 34#include <qstringlist.h>
35#include <kabc/field.h> 35#include <kabc/field.h>
36#include <qwidget.h> 36#include <qwidget.h>
37 37
38#include "viewconfigurewidget.h" 38#include "viewconfigurewidget.h"
39#include "filter.h" 39#include "filter.h"
40 40
41#ifdef DESKTOP_VERSION
42#include <qpaintdevicemetrics.h>
43#include <qprinter.h>
44#include <qpainter.h>
45#endif
46
41namespace KABC { class AddressBook; } 47namespace KABC { class AddressBook; }
42 48
43/** 49/**
44 Base class for all views in kaddressbook. This class implements 50 Base class for all views in kaddressbook. This class implements
45 all the common methods needed to provide a view to the user. 51 all the common methods needed to provide a view to the user.
46 52
47 To implement a specific view (table, card, etc), just inherit from 53 To implement a specific view (table, card, etc), just inherit from
48 this class and implement all the pure virtuals. 54 this class and implement all the pure virtuals.
49 55
50 @author Mike Pilone <mpilone@slac.com> 56 @author Mike Pilone <mpilone@slac.com>
51 */ 57 */
52class KAddressBookView : public QWidget 58class KAddressBookView : public QWidget
53{ 59{
54 Q_OBJECT 60 Q_OBJECT
55 61
56 public: 62 public:
57 enum DefaultFilterType { None = 0, Active = 1, Specific = 2 }; 63 enum DefaultFilterType { None = 0, Active = 1, Specific = 2 };
58 64
59 KAddressBookView( KABC::AddressBook *ab, QWidget *parent, const char *name ); 65 KAddressBookView( KABC::AddressBook *ab, QWidget *parent, const char *name );
60 virtual ~KAddressBookView(); 66 virtual ~KAddressBookView();
61 67
62 /** 68 /**
63 Must be overloaded in subclasses. Should return a list of 69 Must be overloaded in subclasses. Should return a list of
64 all the uids of selected contacts. 70 all the uids of selected contacts.
@@ -129,74 +135,77 @@ class KAddressBookView : public QWidget
129 Sets the active filter. This filter will be used for filtering 135 Sets the active filter. This filter will be used for filtering
130 the list of addressees to display. The view will <b>not</b> 136 the list of addressees to display. The view will <b>not</b>
131 automatically refresh itself, so in most cases you will want to call 137 automatically refresh itself, so in most cases you will want to call
132 KAddressBookView::refresh() after this method. 138 KAddressBookView::refresh() after this method.
133 */ 139 */
134 void setFilter( const Filter& ); 140 void setFilter( const Filter& );
135 141
136 /** 142 /**
137 @return The default filter type selection. If the selection 143 @return The default filter type selection. If the selection
138 is SpecificFilter, the name of the filter can be retrieved with 144 is SpecificFilter, the name of the filter can be retrieved with
139 defaultFilterName() 145 defaultFilterName()
140 */ 146 */
141 DefaultFilterType defaultFilterType() const; 147 DefaultFilterType defaultFilterType() const;
142 148
143 /** 149 /**
144 @return The name of the default filter. This string is 150 @return The name of the default filter. This string is
145 only valid if defaultFilterType() is returning SpecificFilter. 151 only valid if defaultFilterType() is returning SpecificFilter.
146 */ 152 */
147 const QString &defaultFilterName() const; 153 const QString &defaultFilterName() const;
148 154
149 /** 155 /**
150 @return The address book. 156 @return The address book.
151 */ 157 */
152 KABC::AddressBook *addressBook() const; 158 KABC::AddressBook *addressBook() const;
159 void printMyView() { emit printView() ;}
153 160
154 public slots: 161 public slots:
155 /** 162 /**
156 Must be overloaded in subclasses to refresh the view. 163 Must be overloaded in subclasses to refresh the view.
157 Refreshing includes updating the view to ensure that only items 164 Refreshing includes updating the view to ensure that only items
158 in the document are visible. If <i>uid</i> is valid, only the 165 in the document are visible. If <i>uid</i> is valid, only the
159 addressee with uid needs to be refreshed. This is an optimization 166 addressee with uid needs to be refreshed. This is an optimization
160 only. 167 only.
161 */ 168 */
162 virtual void refresh( QString uid = QString::null ) = 0; 169 virtual void refresh( QString uid = QString::null ) = 0;
163 170
164 /** 171 /**
165 This method must be overloaded in subclasses. Select (highlight) 172 This method must be overloaded in subclasses. Select (highlight)
166 the addressee matching <i>uid</i>. If uid 173 the addressee matching <i>uid</i>. If uid
167 is equal to QString::null, then all addressees should be selected. 174 is equal to QString::null, then all addressees should be selected.
168 */ 175 */
169#ifndef KAB_EMBEDDED 176#ifndef KAB_EMBEDDED
170//MOC_SKIP_BEGIN 177//MOC_SKIP_BEGIN
171 virtual void setSelected( QString uid = QString::null, bool selected = true ) = 0; 178 virtual void setSelected( QString uid = QString::null, bool selected = true ) = 0;
172//MOC_SKIP_END 179//MOC_SKIP_END
173#else //KAB_EMBEDDED 180#else //KAB_EMBEDDED
174 //US my moc can not handle the default parameters. Is this a problem ??? 181 //US my moc can not handle the default parameters. Is this a problem ???
175 virtual void setSelected( QString uid, bool selected) = 0; 182 virtual void setSelected( QString uid, bool selected) = 0;
176#endif //KAB_EMBEDDED 183#endif //KAB_EMBEDDED
177 184
178 signals: 185 signals:
186
187 void printView();
179 /** 188 /**
180 This signal should be emitted by a subclass whenever an addressee 189 This signal should be emitted by a subclass whenever an addressee
181 is modified. 190 is modified.
182 */ 191 */
183 void modified(); 192 void modified();
184 193
185 /** 194 /**
186 This signal should be emitted by a subclass whenever an addressee 195 This signal should be emitted by a subclass whenever an addressee
187 is selected. Selected means that the addressee was given the focus. 196 is selected. Selected means that the addressee was given the focus.
188 Some widgets may call this 'highlighted'. The view is responsible for 197 Some widgets may call this 'highlighted'. The view is responsible for
189 emitting this signal multiple times if multiple items are selected, 198 emitting this signal multiple times if multiple items are selected,
190 with the last item selected being the last emit. 199 with the last item selected being the last emit.
191 200
192 @param uid The uid of the selected addressee. 201 @param uid The uid of the selected addressee.
193 202
194 @see KListView 203 @see KListView
195 */ 204 */
196 void selected( const QString &uid ); 205 void selected( const QString &uid );
197 void deleteRequest(); 206 void deleteRequest();
198 /** 207 /**
199 This signal should be emitted by a subclass whenever an addressee 208 This signal should be emitted by a subclass whenever an addressee
200 is executed. This is defined by the KDE system wide config, but it 209 is executed. This is defined by the KDE system wide config, but it
201 either means single or doubleclicked. 210 either means single or doubleclicked.
202 211
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
@@ -136,49 +136,49 @@ KABConfigWidget::KABConfigWidget( KABPrefs* prefs, QWidget *parent, const char *
136 boxLayout->addWidget( mAskForQuit ); 136 boxLayout->addWidget( mAskForQuit );
137 137
138 layout->addWidget( vBox ); 138 layout->addWidget( vBox );
139 139
140 tabWidget->addTab( generalPage, i18n( "General" ) ); 140 tabWidget->addTab( generalPage, i18n( "General" ) );
141 141
142 // Extension page 142 // Extension page
143 QWidget *extensionPage = new QWidget( this ); 143 QWidget *extensionPage = new QWidget( this );
144 QVBoxLayout *extensionLayout = new QVBoxLayout( extensionPage, KDialog::marginHintSmall(), 144 QVBoxLayout *extensionLayout = new QVBoxLayout( extensionPage, KDialog::marginHintSmall(),
145 KDialog::spacingHintSmall() ); 145 KDialog::spacingHintSmall() );
146 146
147 //extensions groupbox 147 //extensions groupbox
148 148
149 QGroupBox* groupBox = new QGroupBox( 0, Qt::Vertical, i18n( "Extensions (restart)" ), extensionPage ); 149 QGroupBox* groupBox = new QGroupBox( 0, Qt::Vertical, i18n( "Extensions (restart)" ), extensionPage );
150 boxLayout = new QVBoxLayout( groupBox->layout() ); 150 boxLayout = new QVBoxLayout( groupBox->layout() );
151 boxLayout->setAlignment( Qt::AlignTop ); 151 boxLayout->setAlignment( Qt::AlignTop );
152 boxLayout->setMargin(KDialog::marginHintSmall()); 152 boxLayout->setMargin(KDialog::marginHintSmall());
153 boxLayout->setSpacing(KDialog::spacingHintSmall()); 153 boxLayout->setSpacing(KDialog::spacingHintSmall());
154 groupBox->layout()->setMargin(1) ; 154 groupBox->layout()->setMargin(1) ;
155 groupBox->layout()->setSpacing(0); 155 groupBox->layout()->setSpacing(0);
156 mExtensionView = new KListView( groupBox ); 156 mExtensionView = new KListView( groupBox );
157 mExtensionView->setAllColumnsShowFocus( true ); 157 mExtensionView->setAllColumnsShowFocus( true );
158 mExtensionView->addColumn( i18n( "Name" ) ); 158 mExtensionView->addColumn( i18n( "Name" ) );
159 mExtensionView->addColumn( i18n( "Description" ) ); 159 mExtensionView->addColumn( i18n( "Description" ) );
160 mExtensionView->setMaximumHeight(80); 160 //mExtensionView->setMaximumHeight(80);
161 161
162 boxLayout->addWidget( mExtensionView ); 162 boxLayout->addWidget( mExtensionView );
163 163
164 mConfigureButton = new QPushButton( i18n( "Configure..." ), groupBox ); 164 mConfigureButton = new QPushButton( i18n( "Configure..." ), groupBox );
165 mConfigureButton->setEnabled( false ); 165 mConfigureButton->setEnabled( false );
166 boxLayout->addWidget( mConfigureButton ); 166 boxLayout->addWidget( mConfigureButton );
167 167
168 extensionLayout->addWidget( groupBox ); 168 extensionLayout->addWidget( groupBox );
169 169
170 connect( mMenuBarBox, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) ); 170 connect( mMenuBarBox, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) );
171 connect( mNameParsing, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) ); 171 connect( mNameParsing, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) );
172 connect( mViewsSingleClickBox, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) ); 172 connect( mViewsSingleClickBox, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) );
173 connect( mSearchReturnBox, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) ); 173 connect( mSearchReturnBox, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) );
174 connect( mMultipleViewsAtOnce, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) ); 174 connect( mMultipleViewsAtOnce, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) );
175 connect( mAskForQuit, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) ); 175 connect( mAskForQuit, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) );
176 connect( mExtensionView, SIGNAL( selectionChanged( QListViewItem* ) ), 176 connect( mExtensionView, SIGNAL( selectionChanged( QListViewItem* ) ),
177 SLOT( selectionChanged( QListViewItem* ) ) ); 177 SLOT( selectionChanged( QListViewItem* ) ) );
178 connect( mExtensionView, SIGNAL( clicked( QListViewItem* ) ), 178 connect( mExtensionView, SIGNAL( clicked( QListViewItem* ) ),
179 SLOT( itemClicked( QListViewItem* ) ) ); 179 SLOT( itemClicked( QListViewItem* ) ) );
180 connect( mConfigureButton, SIGNAL( clicked() ), 180 connect( mConfigureButton, SIGNAL( clicked() ),
181 SLOT( configureExtension() ) ); 181 SLOT( configureExtension() ) );
182 182
183 tabWidget->addTab( extensionPage, i18n( "Extensions" ) ); 183 tabWidget->addTab( extensionPage, i18n( "Extensions" ) );
184 184
diff --git a/kaddressbook/mainembedded.cpp b/kaddressbook/mainembedded.cpp
index 771bec9..1e03dba 100644
--- a/kaddressbook/mainembedded.cpp
+++ b/kaddressbook/mainembedded.cpp
@@ -55,45 +55,46 @@ int main( int argc, char **argv )
55 printf(" KA/E is exiting now. Bye!\n"); 55 printf(" KA/E is exiting now. Bye!\n");
56 exitHelp = true; 56 exitHelp = true;
57 } 57 }
58 } 58 }
59 if ( ! exitHelp ) { 59 if ( ! exitHelp ) {
60 60
61 KGlobal::setAppName( "kaddressbook" ); 61 KGlobal::setAppName( "kaddressbook" );
62#ifndef DESKTOP_VERSION 62#ifndef DESKTOP_VERSION
63 if ( QApplication::desktop()->width() > 320 ) 63 if ( QApplication::desktop()->width() > 320 )
64 KGlobal::iconLoader()->setIconPath(QString(getenv("QPEDIR"))+"/pics/kdepim/kaddressbook/icons22/"); 64 KGlobal::iconLoader()->setIconPath(QString(getenv("QPEDIR"))+"/pics/kdepim/kaddressbook/icons22/");
65 else 65 else
66 KGlobal::iconLoader()->setIconPath(QString(getenv("QPEDIR"))+"/pics/kdepim/kaddressbook/icons16/"); 66 KGlobal::iconLoader()->setIconPath(QString(getenv("QPEDIR"))+"/pics/kdepim/kaddressbook/icons16/");
67#else 67#else
68 QString fileName ; 68 QString fileName ;
69 fileName = qApp->applicationDirPath () + "/kdepim/kaddressbook/icons22/"; 69 fileName = qApp->applicationDirPath () + "/kdepim/kaddressbook/icons22/";
70 KGlobal::iconLoader()->setIconPath(QDir::convertSeparators(fileName)); 70 KGlobal::iconLoader()->setIconPath(QDir::convertSeparators(fileName));
71 QApplication::addLibraryPath ( qApp->applicationDirPath () ); 71 QApplication::addLibraryPath ( qApp->applicationDirPath () );
72 72
73#endif 73#endif
74 KStandardDirs::setAppDir( QDir::convertSeparators(locateLocal("data", "kaddressbook"))); 74 KStandardDirs::setAppDir( QDir::convertSeparators(locateLocal("data", "kaddressbook")));
75 // init language 75 // init language
76 KPimGlobalPrefs::instance()->setGlobalConfig(); 76 KPimGlobalPrefs::instance()->setGlobalConfig();
77 KAddressBookMain m ; 77 KAddressBookMain m ;
78//US MainWindow m; 78//US MainWindow m;
79#ifndef DESKTOP_VERSION
79 QObject::connect(&a, SIGNAL (appMessage ( const QCString &, const QByteArray & )), ExternalAppHandler::instance(), SLOT (appMessage ( const QCString &, const QByteArray & ))); 80 QObject::connect(&a, SIGNAL (appMessage ( const QCString &, const QByteArray & )), ExternalAppHandler::instance(), SLOT (appMessage ( const QCString &, const QByteArray & )));
80 81#endif
81 82
82 83
83#ifndef DESKTOP_VERSION 84#ifndef DESKTOP_VERSION
84 a.showMainWidget( &m ); 85 a.showMainWidget( &m );
85 86
86#else 87#else
87 a.setMainWidget( &m ); 88 a.setMainWidget( &m );
88 m.resize (640, 480 ); 89 m.resize (640, 480 );
89 m.show(); 90 m.show();
90#endif 91#endif
91 a.exec(); 92 a.exec();
92 93
93 dumpMissing(); 94 dumpMissing();
94 95
95 KPimGlobalPrefs::instance()->writeConfig(); 96 KPimGlobalPrefs::instance()->writeConfig();
96 } 97 }
97 qDebug("KA: Bye! "); 98 qDebug("KA: Bye! ");
98} 99}
99 100
diff --git a/kaddressbook/viewmanager.h b/kaddressbook/viewmanager.h
index 272e1b0..dff9998 100644
--- a/kaddressbook/viewmanager.h
+++ b/kaddressbook/viewmanager.h
@@ -48,48 +48,49 @@ namespace KABC { class AddressBook; }
48 views (ie: AddView, ConfigureView, DeleteView, etc). 48 views (ie: AddView, ConfigureView, DeleteView, etc).
49 */ 49 */
50class ViewManager : public QWidget 50class ViewManager : public QWidget
51{ 51{
52 Q_OBJECT 52 Q_OBJECT
53 public: 53 public:
54 ViewManager( KABCore *core, QWidget *parent, const char *name = 0 ); 54 ViewManager( KABCore *core, QWidget *parent, const char *name = 0 );
55 ~ViewManager(); 55 ~ViewManager();
56 56
57 void restoreSettings(); 57 void restoreSettings();
58 void saveSettings(); 58 void saveSettings();
59 void doSearch( const QString& s ,KABC::Field *field ); 59 void doSearch( const QString& s ,KABC::Field *field );
60 60
61 void unloadViews(); 61 void unloadViews();
62 KSelectAction * getFilterAction() { return mActionSelectFilter; } 62 KSelectAction * getFilterAction() { return mActionSelectFilter; }
63 Filter getFilterByName( const QString &name ) const; 63 Filter getFilterByName( const QString &name ) const;
64 64
65 QStringList selectedUids() const; 65 QStringList selectedUids() const;
66 QStringList selectedEmails() const; 66 QStringList selectedEmails() const;
67 KABC::Addressee::List selectedAddressees() const; 67 KABC::Addressee::List selectedAddressees() const;
68 void setListSelected(QStringList); 68 void setListSelected(QStringList);
69 void setFocusAV(); 69 void setFocusAV();
70 70
71 public slots: 71 public slots:
72 void printView() { if (mActiveView) mActiveView->printMyView() ;}
72 void scrollUP(); 73 void scrollUP();
73 void scrollDOWN(); 74 void scrollDOWN();
74 75
75//US void setSelected( const QString &uid = QString::null, bool selected = true ); 76//US void setSelected( const QString &uid = QString::null, bool selected = true );
76 void setSelected( const QString &uid, bool); 77 void setSelected( const QString &uid, bool);
77//US added another method with no parameter, since my moc compiler does not support default parameters. 78//US added another method with no parameter, since my moc compiler does not support default parameters.
78 void setSelected(); 79 void setSelected();
79 80
80 81
81 82
82//US added another method with no parameter, since my moc compiler does not support default parameters. 83//US added another method with no parameter, since my moc compiler does not support default parameters.
83 void refreshView(); 84 void refreshView();
84 void refreshView( const QString &uid); 85 void refreshView( const QString &uid);
85 86
86 void editView(); 87 void editView();
87 void deleteView(); 88 void deleteView();
88 void addView(); 89 void addView();
89 90
90 protected slots: 91 protected slots:
91 /** 92 /**
92 Called whenever the user drops something in the active view. 93 Called whenever the user drops something in the active view.
93 This method will try to decode what was dropped, and if it was 94 This method will try to decode what was dropped, and if it was
94 a valid addressee, add it to the addressbook. 95 a valid addressee, add it to the addressbook.
95 */ 96 */
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
@@ -256,48 +256,75 @@ ContactListView::ContactListView(KAddressBookTableView *view,
256#else //KAB_EMBEDDED 256#else //KAB_EMBEDDED
257 mAlternateColor = QColor(240, 240, 240); 257 mAlternateColor = QColor(240, 240, 240);
258#endif //KAB_EMBEDDED 258#endif //KAB_EMBEDDED
259 259
260 setAlternateBackgroundEnabled(mABackground); 260 setAlternateBackgroundEnabled(mABackground);
261 setAcceptDrops( true ); 261 setAcceptDrops( true );
262 viewport()->setAcceptDrops( true ); 262 viewport()->setAcceptDrops( true );
263 setAllColumnsShowFocus( true ); 263 setAllColumnsShowFocus( true );
264 setShowSortIndicator(true); 264 setShowSortIndicator(true);
265 265
266 setSelectionModeExt( KListView::Extended ); 266 setSelectionModeExt( KListView::Extended );
267 setDropVisualizer(false); 267 setDropVisualizer(false);
268 // setFrameStyle(QFrame::NoFrame); 268 // setFrameStyle(QFrame::NoFrame);
269 //setLineWidth ( 0 ); 269 //setLineWidth ( 0 );
270 //setMidLineWidth ( 0 ); 270 //setMidLineWidth ( 0 );
271 //setMargin ( 0 ); 271 //setMargin ( 0 );
272#ifndef KAB_EMBEDDED 272#ifndef KAB_EMBEDDED
273 connect(this, SIGNAL(dropped(QDropEvent*)), 273 connect(this, SIGNAL(dropped(QDropEvent*)),
274 this, SLOT(itemDropped(QDropEvent*))); 274 this, SLOT(itemDropped(QDropEvent*)));
275#endif //KAB_EMBEDDED 275#endif //KAB_EMBEDDED
276 276
277 277
278 new DynamicTip( this ); 278 new DynamicTip( this );
279} 279}
280void ContactListView::printMe()
281{
282#ifdef DESKTOP_VERSION
283 QPrinter printer;
284 if (!printer.setup() )
285 return;
286 QPainter p;
287 p.begin ( &printer );
288 QPaintDeviceMetrics m = QPaintDeviceMetrics ( &printer );
289 float dx, dy;
290 int wid = (m.width() * 9)/10;
291 dx = (float) wid/(float)contentsWidth ();
292 dy = (float)(m.height()) / (float)contentsHeight ();
293 float scale;
294 // scale to fit the width or height of the paper
295 if ( dx < dy )
296 scale = dx;
297 else
298 scale = dy;
299 p.translate( m.width()/10,0 );
300 p.scale( scale, scale );
301 qDebug("scale %f ", scale);
302 drawContents ( &p, 0,0, contentsWidth (), contentsHeight () );
303 p.end();
304 qDebug("Why does it not print??? ");
305#endif
306}
280 307
281void ContactListView::setAlternateColor(const QColor &m_AlternateColor) 308void ContactListView::setAlternateColor(const QColor &m_AlternateColor)
282{ 309{
283 mAlternateColor = m_AlternateColor; 310 mAlternateColor = m_AlternateColor;
284} 311}
285 312
286void ContactListView::paintEmptyArea( QPainter * p, const QRect & rect ) 313void ContactListView::paintEmptyArea( QPainter * p, const QRect & rect )
287{ 314{
288 QBrush b = palette().brush(QPalette::Active, QColorGroup::Base); 315 QBrush b = palette().brush(QPalette::Active, QColorGroup::Base);
289 316
290 // Get the brush, which will have the background pixmap if there is one. 317 // Get the brush, which will have the background pixmap if there is one.
291 if (b.pixmap()) 318 if (b.pixmap())
292 { 319 {
293 p->drawTiledPixmap( rect.left(), rect.top(), rect.width(), rect.height(), 320 p->drawTiledPixmap( rect.left(), rect.top(), rect.width(), rect.height(),
294 *(b.pixmap()), 321 *(b.pixmap()),
295 rect.left() + contentsX(), 322 rect.left() + contentsX(),
296 rect.top() + contentsY() ); 323 rect.top() + contentsY() );
297 } 324 }
298 325
299 else 326 else
300 { 327 {
301 // Do a normal paint 328 // Do a normal paint
302 KListView::paintEmptyArea(p, rect); 329 KListView::paintEmptyArea(p, rect);
303 } 330 }
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
@@ -84,46 +84,47 @@ public:
84 84
85 const QColor &alternateColor() const { return mAlternateColor; } 85 const QColor &alternateColor() const { return mAlternateColor; }
86 void setAlternateColor(const QColor &mAlternateColor); 86 void setAlternateColor(const QColor &mAlternateColor);
87 87
88 /** Sets the background pixmap to <i>filename</i>. If the 88 /** Sets the background pixmap to <i>filename</i>. If the
89 * QString is empty (QString::isEmpty()), then the background 89 * QString is empty (QString::isEmpty()), then the background
90 * pixmap will be disabled. 90 * pixmap will be disabled.
91 */ 91 */
92 void setBackgroundPixmap(const QString &filename); 92 void setBackgroundPixmap(const QString &filename);
93 93
94protected: 94protected:
95 /** Paints the background pixmap in the empty area. This method is needed 95 /** Paints the background pixmap in the empty area. This method is needed
96 * since Qt::FixedPixmap will not scroll with the list view. 96 * since Qt::FixedPixmap will not scroll with the list view.
97 */ 97 */
98 virtual void paintEmptyArea( QPainter * p, const QRect & rect ); 98 virtual void paintEmptyArea( QPainter * p, const QRect & rect );
99 virtual void contentsMousePressEvent(QMouseEvent*); 99 virtual void contentsMousePressEvent(QMouseEvent*);
100 void contentsMouseMoveEvent( QMouseEvent *e ); 100 void contentsMouseMoveEvent( QMouseEvent *e );
101 void contentsDropEvent( QDropEvent *e ); 101 void contentsDropEvent( QDropEvent *e );
102 virtual bool acceptDrag(QDropEvent *e) const; 102 virtual bool acceptDrag(QDropEvent *e) const;
103 103
104protected slots: 104protected slots:
105 void itemDropped(QDropEvent *e); 105 void itemDropped(QDropEvent *e);
106 106
107public slots: 107public slots:
108 void printMe();
108 109
109signals: 110signals:
110 void startAddresseeDrag(); 111 void startAddresseeDrag();
111 void addresseeDropped(QDropEvent *); 112 void addresseeDropped(QDropEvent *);
112 113
113private: 114private:
114 KAddressBookTableView *pabWidget; 115 KAddressBookTableView *pabWidget;
115 int oldColumn; 116 int oldColumn;
116 int column; 117 int column;
117 bool ascending; 118 bool ascending;
118 119
119 bool mABackground; 120 bool mABackground;
120 bool mSingleLine; 121 bool mSingleLine;
121 bool mToolTips; 122 bool mToolTips;
122 123
123 QColor mAlternateColor; 124 QColor mAlternateColor;
124 125
125 QPoint presspos; 126 QPoint presspos;
126}; 127};
127 128
128 129
129#endif 130#endif
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
@@ -17,48 +17,49 @@
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 18
19 As a special exception, permission is given to link this program 19 As a special exception, permission is given to link this program
20 with any edition of Qt, and distribute the resulting executable, 20 with any edition of Qt, and distribute the resulting executable,
21 without including the source code for Qt in the source distribution. 21 without including the source code for Qt in the source distribution.
22*/ 22*/
23 23
24#include <qdragobject.h> 24#include <qdragobject.h>
25#include <qevent.h> 25#include <qevent.h>
26#include <qiconview.h> 26#include <qiconview.h>
27#include <qlayout.h> 27#include <qlayout.h>
28#include <qstringlist.h> 28#include <qstringlist.h>
29#include <qregexp.h> 29#include <qregexp.h>
30#include <qapplication.h> 30#include <qapplication.h>
31 31
32#include <kabc/addressbook.h> 32#include <kabc/addressbook.h>
33#include <kabc/addressee.h> 33#include <kabc/addressee.h>
34#include <kconfig.h> 34#include <kconfig.h>
35#include <kdebug.h> 35#include <kdebug.h>
36#include <klocale.h> 36#include <klocale.h>
37 37
38#include "kabprefs.h" 38#include "kabprefs.h"
39#include "viewmanager.h" 39#include "viewmanager.h"
40 40
41
41#include "kaddressbookcardview.h" 42#include "kaddressbookcardview.h"
42 43
43#ifndef KAB_EMBEDDED 44#ifndef KAB_EMBEDDED
44extern "C" { 45extern "C" {
45 void *init_libkaddrbk_cardview() 46 void *init_libkaddrbk_cardview()
46 { 47 {
47 return ( new CardViewFactory ); 48 return ( new CardViewFactory );
48 } 49 }
49} 50}
50#endif //KAB_EMBEDDED 51#endif //KAB_EMBEDDED
51 52
52//////////////////////////////// 53////////////////////////////////
53// AddresseeCardViewItem (internal class) 54// AddresseeCardViewItem (internal class)
54class AddresseeCardViewItem : public CardViewItem 55class AddresseeCardViewItem : public CardViewItem
55{ 56{
56 public: 57 public:
57 AddresseeCardViewItem(const KABC::Field::List &fields, 58 AddresseeCardViewItem(const KABC::Field::List &fields,
58 bool showEmptyFields, 59 bool showEmptyFields,
59 KABC::AddressBook *doc, const KABC::Addressee &a, 60 KABC::AddressBook *doc, const KABC::Addressee &a,
60 CardView *parent) 61 CardView *parent)
61 : CardViewItem(parent, a.formattedName()), 62 : CardViewItem(parent, a.formattedName()),
62 mFields( fields ), mShowEmptyFields(showEmptyFields), 63 mFields( fields ), mShowEmptyFields(showEmptyFields),
63 mDocument(doc), mAddressee(a) 64 mDocument(doc), mAddressee(a)
64 { 65 {
@@ -95,96 +96,124 @@ class AddresseeCardViewItem : public CardViewItem
95 // We might want to make this the first field. hmm... -mpilone 96 // We might want to make this the first field. hmm... -mpilone
96 setCaption( mAddressee.realName() ); 97 setCaption( mAddressee.realName() );
97 } 98 }
98 } 99 }
99 100
100 private: 101 private:
101 KABC::Field::List mFields; 102 KABC::Field::List mFields;
102 bool mShowEmptyFields; 103 bool mShowEmptyFields;
103 KABC::AddressBook *mDocument; 104 KABC::AddressBook *mDocument;
104 KABC::Addressee mAddressee; 105 KABC::Addressee mAddressee;
105}; 106};
106 107
107/////////////////////////////// 108///////////////////////////////
108// AddresseeCardView 109// AddresseeCardView
109 110
110AddresseeCardView::AddresseeCardView(QWidget *parent, const char *name) 111AddresseeCardView::AddresseeCardView(QWidget *parent, const char *name)
111 : CardView(parent, name) 112 : CardView(parent, name)
112{ 113{
113 setAcceptDrops(true); 114 setAcceptDrops(true);
114} 115}
115 116
116AddresseeCardView::~AddresseeCardView() 117AddresseeCardView::~AddresseeCardView()
117{ 118{
118} 119}
120void AddresseeCardView::printMe()
121{
122#ifdef DESKTOP_VERSION
123 QPrinter printer;
124 if (!printer.setup() )
125 return;
126 QPainter p;
127 p.begin ( &printer );
128 QPaintDeviceMetrics m = QPaintDeviceMetrics ( &printer );
129 float dx, dy;
130 int wid = (m.width() * 9)/10;
131 dx = (float) wid/(float)contentsWidth ();
132 dy = (float)(m.height()) / (float)contentsHeight ();
133 float scale;
134 // scale to fit the width or height of the paper
135 if ( dx < dy )
136 scale = dx;
137 else
138 scale = dy;
139 p.translate( m.width()/10,0 );
140 p.scale( scale, scale );
141 drawContents ( &p, 0,0, contentsWidth (), contentsHeight () );
142 p.end();
143 repaint();
144#endif
145}
119 146
120 147
121void AddresseeCardView::dragEnterEvent(QDragEnterEvent *e) 148void AddresseeCardView::dragEnterEvent(QDragEnterEvent *e)
122{ 149{
123#ifndef KAB_EMBEDDED 150#ifndef KAB_EMBEDDED
124 if (QTextDrag::canDecode(e)) 151 if (QTextDrag::canDecode(e))
125 e->accept(); 152 e->accept();
126#else //KAB_EMBEDDED 153#else //KAB_EMBEDDED
127qDebug("AddresseeCardView::dragEnterEvent drag&drop is not implemented"); 154qDebug("AddresseeCardView::dragEnterEvent drag&drop is not implemented");
128#endif //KAB_EMBEDDED 155#endif //KAB_EMBEDDED
129} 156}
130 157
131void AddresseeCardView::dropEvent(QDropEvent *e) 158void AddresseeCardView::dropEvent(QDropEvent *e)
132{ 159{
133 emit addresseeDropped(e); 160 emit addresseeDropped(e);
134} 161}
135 162
136void AddresseeCardView::startDrag() 163void AddresseeCardView::startDrag()
137{ 164{
138 emit startAddresseeDrag(); 165 emit startAddresseeDrag();
139} 166}
140 167
141 168
142/////////////////////////////// 169///////////////////////////////
143// KAddressBookCardView 170// KAddressBookCardView
144 171
145KAddressBookCardView::KAddressBookCardView( KABC::AddressBook *ab, 172KAddressBookCardView::KAddressBookCardView( KABC::AddressBook *ab,
146 QWidget *parent, const char *name ) 173 QWidget *parent, const char *name )
147 : KAddressBookView( ab, parent, name ) 174 : KAddressBookView( ab, parent, name )
148{ 175{
149 mShowEmptyFields = false; 176 mShowEmptyFields = false;
150 177
151 // Init the GUI 178 // Init the GUI
152 QVBoxLayout *layout = new QVBoxLayout(viewWidget()); 179 QVBoxLayout *layout = new QVBoxLayout(viewWidget());
153 180
154 mCardView = new AddresseeCardView(viewWidget(), "mCardView"); 181 mCardView = new AddresseeCardView(viewWidget(), "mCardView");
155 mCardView->setSelectionMode(CardView::Extended); 182 mCardView->setSelectionMode(CardView::Extended);
156 layout->addWidget(mCardView); 183 layout->addWidget(mCardView);
157 184
158 // Connect up the signals 185 // Connect up the signals
159 connect(mCardView, SIGNAL(executed(CardViewItem *)), 186 connect(mCardView, SIGNAL(executed(CardViewItem *)),
160 this, SLOT(addresseeExecuted(CardViewItem *))); 187 this, SLOT(addresseeExecuted(CardViewItem *)));
161 connect(mCardView, SIGNAL(selectionChanged()), 188 connect(mCardView, SIGNAL(selectionChanged()),
162 this, SLOT(addresseeSelected())); 189 this, SLOT(addresseeSelected()));
163 connect(mCardView, SIGNAL(addresseeDropped(QDropEvent*)), 190 connect(mCardView, SIGNAL(addresseeDropped(QDropEvent*)),
164 this, SIGNAL(dropped(QDropEvent*))); 191 this, SIGNAL(dropped(QDropEvent*)));
165 connect(mCardView, SIGNAL(startAddresseeDrag()), 192 connect(mCardView, SIGNAL(startAddresseeDrag()),
166 this, SIGNAL(startDrag())); 193 this, SIGNAL(startDrag()));
194 connect(this, SIGNAL(printView()),
195 mCardView , SLOT(printMe()));
167} 196}
168 197
169KAddressBookCardView::~KAddressBookCardView() 198KAddressBookCardView::~KAddressBookCardView()
170{ 199{
171} 200}
172void KAddressBookCardView::setFocusAV() 201void KAddressBookCardView::setFocusAV()
173{ 202{
174 if ( mCardView ) 203 if ( mCardView )
175 mCardView->setFocus(); 204 mCardView->setFocus();
176 205
177} 206}
178void KAddressBookCardView::scrollUP() 207void KAddressBookCardView::scrollUP()
179{ 208{
180 QKeyEvent * ev = new QKeyEvent ( QEvent::KeyPress, Qt::Key_Up, 0,0 ); 209 QKeyEvent * ev = new QKeyEvent ( QEvent::KeyPress, Qt::Key_Up, 0,0 );
181 QApplication::postEvent( mCardView, ev ); 210 QApplication::postEvent( mCardView, ev );
182 211
183} 212}
184void KAddressBookCardView::scrollDOWN() 213void KAddressBookCardView::scrollDOWN()
185{ 214{
186 QKeyEvent * ev = new QKeyEvent ( QEvent::KeyPress, Qt::Key_Down, 0,0 ); 215 QKeyEvent * ev = new QKeyEvent ( QEvent::KeyPress, Qt::Key_Down, 0,0 );
187 QApplication::postEvent( mCardView, ev ); 216 QApplication::postEvent( mCardView, ev );
188} 217}
189void KAddressBookCardView::readConfig(KConfig *config) 218void KAddressBookCardView::readConfig(KConfig *config)
190{ 219{
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
@@ -64,48 +64,50 @@ class KAddressBookCardView : public KAddressBookView
64 virtual void scrollDOWN(); 64 virtual void scrollDOWN();
65 virtual void setFocusAV(); 65 virtual void setFocusAV();
66 66
67 public slots: 67 public slots:
68 void refresh(QString uid = QString::null); 68 void refresh(QString uid = QString::null);
69 void setSelected(QString uid/*US = QString::null*/, bool selected/*US = true*/); 69 void setSelected(QString uid/*US = QString::null*/, bool selected/*US = true*/);
70//US added an additional method without parameter 70//US added an additional method without parameter
71 void setSelected(); 71 void setSelected();
72 72
73 protected slots: 73 protected slots:
74 void addresseeExecuted(CardViewItem *item); 74 void addresseeExecuted(CardViewItem *item);
75 void addresseeSelected(); 75 void addresseeSelected();
76 76
77 private: 77 private:
78 AddresseeCardView *mCardView; 78 AddresseeCardView *mCardView;
79 bool mShowEmptyFields; 79 bool mShowEmptyFields;
80}; 80};
81 81
82class AddresseeCardView : public CardView 82class AddresseeCardView : public CardView
83{ 83{
84 Q_OBJECT 84 Q_OBJECT
85 public: 85 public:
86 AddresseeCardView(QWidget *parent, const char *name = 0); 86 AddresseeCardView(QWidget *parent, const char *name = 0);
87 ~AddresseeCardView(); 87 ~AddresseeCardView();
88public slots:
89 void printMe();
88 90
89 signals: 91 signals:
90 void startAddresseeDrag(); 92 void startAddresseeDrag();
91 void addresseeDropped(QDropEvent *); 93 void addresseeDropped(QDropEvent *);
92 94
93 protected: 95 protected:
94 virtual void dragEnterEvent(QDragEnterEvent *); 96 virtual void dragEnterEvent(QDragEnterEvent *);
95 virtual void dropEvent(QDropEvent *); 97 virtual void dropEvent(QDropEvent *);
96 virtual void startDrag(); 98 virtual void startDrag();
97}; 99};
98 100
99 101
100class CardViewFactory : public ViewFactory 102class CardViewFactory : public ViewFactory
101{ 103{
102 public: 104 public:
103 KAddressBookView *view( KABC::AddressBook *ab, QWidget *parent, const char *name ) 105 KAddressBookView *view( KABC::AddressBook *ab, QWidget *parent, const char *name )
104 { 106 {
105 return new KAddressBookCardView( ab, parent, name ); 107 return new KAddressBookCardView( ab, parent, name );
106 } 108 }
107 109
108 QString type() const { return "Card"; } 110 QString type() const { return "Card"; }
109 111
110 QString description() const { return i18n( "Rolodex style cards represent contacts." ); } 112 QString description() const { return i18n( "Rolodex style cards represent contacts." ); }
111 113
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
@@ -68,48 +68,50 @@ void KAddressBookTableView::scrollDOWN()
68 QApplication::postEvent( mListView, ev ); 68 QApplication::postEvent( mListView, ev );
69} 69}
70void KAddressBookTableView::reconstructListView() 70void KAddressBookTableView::reconstructListView()
71{ 71{
72 if (mListView) 72 if (mListView)
73 { 73 {
74 disconnect(mListView, SIGNAL(selectionChanged()), 74 disconnect(mListView, SIGNAL(selectionChanged()),
75 this, SLOT(addresseeSelected())); 75 this, SLOT(addresseeSelected()));
76 disconnect(mListView, SIGNAL(executed(QListViewItem*)), 76 disconnect(mListView, SIGNAL(executed(QListViewItem*)),
77 this, SLOT(addresseeExecuted(QListViewItem*))); 77 this, SLOT(addresseeExecuted(QListViewItem*)));
78 disconnect(mListView, SIGNAL(doubleClicked(QListViewItem*)), 78 disconnect(mListView, SIGNAL(doubleClicked(QListViewItem*)),
79 this, SLOT(addresseeExecuted(QListViewItem*))); 79 this, SLOT(addresseeExecuted(QListViewItem*)));
80 disconnect(mListView, SIGNAL(startAddresseeDrag()), this, 80 disconnect(mListView, SIGNAL(startAddresseeDrag()), this,
81 SIGNAL(startDrag())); 81 SIGNAL(startDrag()));
82 disconnect(mListView, SIGNAL(returnPressed(QListViewItem*)), 82 disconnect(mListView, SIGNAL(returnPressed(QListViewItem*)),
83 this, SLOT(addresseeExecuted(QListViewItem*))); 83 this, SLOT(addresseeExecuted(QListViewItem*)));
84 84
85 disconnect(mListView, SIGNAL(addresseeDropped(QDropEvent*)), this, 85 disconnect(mListView, SIGNAL(addresseeDropped(QDropEvent*)), this,
86 SIGNAL(dropped(QDropEvent*))); 86 SIGNAL(dropped(QDropEvent*)));
87 delete mListView; 87 delete mListView;
88 } 88 }
89 89
90 mListView = new ContactListView( this, addressBook(), viewWidget() ); 90 mListView = new ContactListView( this, addressBook(), viewWidget() );
91 91
92 connect(this, SIGNAL(printView()),
93 mListView , SLOT(printMe()));
92 //US set singleClick manually, because it is no global configparameter in embedded space 94 //US set singleClick manually, because it is no global configparameter in embedded space
93 mListView->setSingleClick(KABPrefs::instance()->mHonorSingleClick); 95 mListView->setSingleClick(KABPrefs::instance()->mHonorSingleClick);
94 96
95 // Add the columns 97 // Add the columns
96 KABC::Field::List fieldList = fields(); 98 KABC::Field::List fieldList = fields();
97 KABC::Field::List::ConstIterator it; 99 KABC::Field::List::ConstIterator it;
98 100
99 int c = 0; 101 int c = 0;
100 for( it = fieldList.begin(); it != fieldList.end(); ++it ) { 102 for( it = fieldList.begin(); it != fieldList.end(); ++it ) {
101 mListView->addColumn( (*it)->label() ); 103 mListView->addColumn( (*it)->label() );
102 mListView->setColumnWidthMode(c++, QListView::Manual); 104 mListView->setColumnWidthMode(c++, QListView::Manual);
103//US 105//US
104 // qDebug("KAddressBookTableView::reconstructListView: field %s", (*it)->label().latin1()); 106 // qDebug("KAddressBookTableView::reconstructListView: field %s", (*it)->label().latin1());
105 } 107 }
106 108
107 connect(mListView, SIGNAL(selectionChanged()), 109 connect(mListView, SIGNAL(selectionChanged()),
108 this, SLOT(addresseeSelected())); 110 this, SLOT(addresseeSelected()));
109 connect(mListView, SIGNAL(startAddresseeDrag()), this, 111 connect(mListView, SIGNAL(startAddresseeDrag()), this,
110 SIGNAL(startDrag())); 112 SIGNAL(startDrag()));
111 connect(mListView, SIGNAL(addresseeDropped(QDropEvent*)), this, 113 connect(mListView, SIGNAL(addresseeDropped(QDropEvent*)), this,
112 SIGNAL(dropped(QDropEvent*))); 114 SIGNAL(dropped(QDropEvent*)));
113 115
114 if (KABPrefs::instance()->mHonorSingleClick) { 116 if (KABPrefs::instance()->mHonorSingleClick) {
115 // qDebug("KAddressBookTableView::reconstructListView single"); 117 // qDebug("KAddressBookTableView::reconstructListView single");
diff --git a/kaddressbook/xxportmanager.cpp b/kaddressbook/xxportmanager.cpp
index 8d40ffe..89a2626 100644
--- a/kaddressbook/xxportmanager.cpp
+++ b/kaddressbook/xxportmanager.cpp
@@ -207,36 +207,36 @@ void XXPortManager::loadPlugins()
207 XXPortFactory *xxportFactory = it.current(); 207 XXPortFactory *xxportFactory = it.current();
208#endif //KAB_EMBEDDED 208#endif //KAB_EMBEDDED
209 209
210 XXPortObject *obj = xxportFactory->xxportObject( mCore->addressBook(), mCore ); 210 XXPortObject *obj = xxportFactory->xxportObject( mCore->addressBook(), mCore );
211 if ( obj ) { 211 if ( obj ) {
212 mCore->addGUIClient( obj ); 212 mCore->addGUIClient( obj );
213 mXXPortObjects.insert( obj->identifier(), obj ); 213 mXXPortObjects.insert( obj->identifier(), obj );
214 connect( obj, SIGNAL( exportActivated( const QString&, const QString& ) ), 214 connect( obj, SIGNAL( exportActivated( const QString&, const QString& ) ),
215 this, SLOT( slotExport( const QString&, const QString& ) ) ); 215 this, SLOT( slotExport( const QString&, const QString& ) ) );
216 connect( obj, SIGNAL( importActivated( const QString&, const QString& ) ), 216 connect( obj, SIGNAL( importActivated( const QString&, const QString& ) ),
217 this, SLOT( slotImport( const QString&, const QString& ) ) ); 217 this, SLOT( slotImport( const QString&, const QString& ) ) );
218 } 218 }
219 } 219 }
220} 220}
221 221
222 222
223PreviewDialog::PreviewDialog( const KABC::Addressee &addr, QWidget *parent, 223PreviewDialog::PreviewDialog( const KABC::Addressee &addr, QWidget *parent,
224 const char *name ) 224 const char *name )
225 : KDialogBase( Plain, i18n( "Contact Preview" ), Ok | Cancel, Ok, parent, 225 : KDialogBase( Plain, i18n( "Contact Preview" ), Ok | Cancel, Ok, parent,
226 name, true, true ) 226 name, true, true )
227{ 227{
228 QWidget *page = plainPage(); 228 QWidget *page = plainPage();
229 QVBoxLayout *layout = new QVBoxLayout( page, marginHint(), spacingHint() ); 229 QVBoxLayout *layout = new QVBoxLayout( page, marginHint(), spacingHint() );
230 230
231 KPIM::AddresseeView *view = new KPIM::AddresseeView( page ); 231 KABC::AddresseeView *view = new KABC::AddresseeView( page );
232 view->setAddressee( addr ); 232 view->setAddressee( addr );
233 233
234 layout->addWidget( view ); 234 layout->addWidget( view );
235 235
236 resize( 400, 300 ); 236 resize( 400, 300 );
237} 237}
238 238
239#ifndef KAB_EMBEDDED 239#ifndef KAB_EMBEDDED
240#include "xxportmanager.moc" 240#include "xxportmanager.moc"
241#endif //KAB_EMBEDDED 241#endif //KAB_EMBEDDED
242 242