summaryrefslogtreecommitdiffabout
path: root/kaddressbook/extensionmanager.cpp
Unidiff
Diffstat (limited to 'kaddressbook/extensionmanager.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--kaddressbook/extensionmanager.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/kaddressbook/extensionmanager.cpp b/kaddressbook/extensionmanager.cpp
index efbdf17..46defa1 100644
--- a/kaddressbook/extensionmanager.cpp
+++ b/kaddressbook/extensionmanager.cpp
@@ -1,152 +1,152 @@
1/* 1/*
2 This file is part of KAddressbook. 2 This file is part of KAddressbook.
3 Copyright (c) 2003 Tobias Koenig <tokoe@kde.org> 3 Copyright (c) 2003 Tobias Koenig <tokoe@kde.org>
4 4
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#include <qlayout.h> 23#include <qlayout.h>
24#include <qapplication.h> 24#include <qapplication.h>
25#include <kactionclasses.h> 25#include <kactionclasses.h>
26#include <kconfig.h> 26#include <kconfig.h>
27#include <kdebug.h> 27#include <kdebug.h>
28#include <klocale.h> 28#include <klocale.h>
29 29
30#ifndef KAB_EMBEDDED 30#ifndef KAB_EMBEDDED
31#include <ktrader.h> 31#include <ktrader.h>
32#else //KAB_EMBEDDED 32#else //KAB_EMBEDDED
33#include <features/mergewidget.h> 33#include <features/mergewidget.h>
34#include <features/distributionlistwidget.h> 34#include <features/distributionlistwidget.h>
35#endif //KAB_EMBEDDED 35#endif //KAB_EMBEDDED
36 36
37#include "addresseeeditorwidget.h" 37#include "addresseeeditorwidget.h"
38#include "kabcore.h" 38#include "kabcore.h"
39#include "kabprefs.h" 39#include "kabprefs.h"
40 40
41#include "extensionmanager.h" 41#include "extensionmanager.h"
42 42
43ExtensionManager::ExtensionManager( KABCore *core, QWidget *parent, 43ExtensionManager::ExtensionManager( KABCore *core, QWidget *parent,
44 const char *name ) 44 const char *name )
45 : QScrollView( parent, name ), mCore( core ), mCurrentExtensionWidget( 0 ) 45 : QScrollView( parent, name ), mCore( core ), mCurrentExtensionWidget( 0 )
46{ 46{
47#ifdef KAB_EMBEDDED 47#ifdef KAB_EMBEDDED
48//US QPopupMenu *settingsmenu = (QPopupMenu*)mCore->getSettingsMenu(); 48//US QPopupMenu *settingsmenu = (QPopupMenu*)mCore->getSettingsMenu();
49 QWidget *settingsmenu = (QWidget*)mCore->getSettingsMenu(); 49 QWidget *settingsmenu = (QWidget*)mCore->getViewMenu();
50#endif //KAB_EMBEDDED 50#endif //KAB_EMBEDDED
51 51
52 mActionExtensions = new KSelectAction( i18n( "Show Extension Bar" ), 0, 52 mActionExtensions = new KSelectAction( i18n( "Show Extension Bar" ), 0,
53 mCore->actionCollection(), 53 mCore->actionCollection(),
54 "options_show_extensions" ); 54 "options_show_extensions" );
55 55
56 mActionExtensions->plug( settingsmenu ); 56 mActionExtensions->plug( settingsmenu ,0);
57 57
58 connect( mActionExtensions, SIGNAL( activated( int ) ), 58 connect( mActionExtensions, SIGNAL( activated( int ) ),
59 SLOT( setActiveExtension( int ) ) ); 59 SLOT( setActiveExtension( int ) ) );
60 mWidgetBox = new QWidget( viewport() ); 60 mWidgetBox = new QWidget( viewport() );
61 new QHBoxLayout (mWidgetBox ); 61 new QHBoxLayout (mWidgetBox );
62 addChild( mWidgetBox ); 62 addChild( mWidgetBox );
63 setResizePolicy(AutoOneFit); 63 setResizePolicy(AutoOneFit);
64 createExtensionWidgets(); 64 createExtensionWidgets();
65 hide(); 65 hide();
66} 66}
67 67
68ExtensionManager::~ExtensionManager() 68ExtensionManager::~ExtensionManager()
69{ 69{
70} 70}
71 71
72void ExtensionManager::restoreSettings() 72void ExtensionManager::restoreSettings()
73{ 73{
74 mActionExtensions->setCurrentItem( KABPrefs::instance()->mCurrentExtension ); 74 mActionExtensions->setCurrentItem( KABPrefs::instance()->mCurrentExtension );
75 int i = 1; 75 int i = 1;
76 mCurrentExtensionWidget = mExtensionWidgetList.at( i-1 ); 76 mCurrentExtensionWidget = mExtensionWidgetList.at( i-1 );
77 while ( mCurrentExtensionWidget ) { 77 while ( mCurrentExtensionWidget ) {
78 if( i != KABPrefs::instance()->mCurrentExtension ) 78 if( i != KABPrefs::instance()->mCurrentExtension )
79 mCurrentExtensionWidget->hide(); 79 mCurrentExtensionWidget->hide();
80 mCurrentExtensionWidget = mExtensionWidgetList.at( ++i-1 ); 80 mCurrentExtensionWidget = mExtensionWidgetList.at( ++i-1 );
81 81
82 } 82 }
83 setActiveExtension( mActionExtensions->currentItem() ); 83 setActiveExtension( mActionExtensions->currentItem() );
84} 84}
85 85
86void ExtensionManager::saveSettings() 86void ExtensionManager::saveSettings()
87{ 87{
88 KABPrefs::instance()->mCurrentExtension = mActionExtensions->currentItem(); 88 KABPrefs::instance()->mCurrentExtension = mActionExtensions->currentItem();
89} 89}
90 90
91void ExtensionManager::reconfigure() 91void ExtensionManager::reconfigure()
92{ 92{
93 saveSettings(); 93 saveSettings();
94 createExtensionWidgets(); 94 createExtensionWidgets();
95 restoreSettings(); 95 restoreSettings();
96} 96}
97 97
98bool ExtensionManager::isQuickEditVisible() const 98bool ExtensionManager::isQuickEditVisible() const
99{ 99{
100 return ( mCurrentExtensionWidget && 100 return ( mCurrentExtensionWidget &&
101 mCurrentExtensionWidget->identifier() == "contact_editor" ); 101 mCurrentExtensionWidget->identifier() == "contact_editor" );
102} 102}
103 103
104void ExtensionManager::setSelectionChanged() 104void ExtensionManager::setSelectionChanged()
105{ 105{
106 if ( mCurrentExtensionWidget ) 106 if ( mCurrentExtensionWidget )
107 mCurrentExtensionWidget->contactsSelectionChanged(); 107 mCurrentExtensionWidget->contactsSelectionChanged();
108} 108}
109 109
110void ExtensionManager::setActiveExtension( int id ) 110void ExtensionManager::setActiveExtension( int id )
111{ 111{
112 //qDebug("+++++++++++++++++++ExtensionManager::setActiveExtension %d ", id); 112 //qDebug("+++++++++++++++++++ExtensionManager::setActiveExtension %d ", id);
113 if ( id == 0 ) { 113 if ( id == 0 ) {
114 hide(); 114 hide();
115 mCurrentExtensionWidget = 0; 115 mCurrentExtensionWidget = 0;
116#ifndef DESKTOP_VERSION 116#ifndef DESKTOP_VERSION
117//US our screen is so small, that we better hide the detailscreen, just in case. 117//US our screen is so small, that we better hide the detailscreen, just in case.
118//US mCore->setDetailsToState( ); 118//US mCore->setDetailsToState( );
119#endif //KAB_EMBEDDED 119#endif //KAB_EMBEDDED
120 } else if ( id > 0 ) { 120 } else if ( id > 0 ) {
121 if ( mCurrentExtensionWidget ) 121 if ( mCurrentExtensionWidget )
122 mCurrentExtensionWidget->hide(); 122 mCurrentExtensionWidget->hide();
123 123
124 mCurrentExtensionWidget = mExtensionWidgetList.at( id - 1 ); 124 mCurrentExtensionWidget = mExtensionWidgetList.at( id - 1 );
125 125
126 if ( mCurrentExtensionWidget ) { 126 if ( mCurrentExtensionWidget ) {
127#ifndef DESKTOP_VERSION 127#ifndef DESKTOP_VERSION
128//US our screen is so small, that we better hide the detailscreen, just in case. 128//US our screen is so small, that we better hide the detailscreen, just in case.
129//US mCore->setDetailsVisible( false ); 129//US mCore->setDetailsVisible( false );
130#endif //KAB_EMBEDDED 130#endif //KAB_EMBEDDED
131 show(); 131 show();
132 mWidgetBox->show(); 132 mWidgetBox->show();
133 mCurrentExtensionWidget->show(); 133 mCurrentExtensionWidget->show();
134 } else { 134 } else {
135 hide(); 135 hide();
136 mCurrentExtensionWidget = 0; 136 mCurrentExtensionWidget = 0;
137#ifndef DESKTOP_VERSION 137#ifndef DESKTOP_VERSION
138//US our screen is so small, that we better hide the detailscreen, just in case. 138//US our screen is so small, that we better hide the detailscreen, just in case.
139//US mCore->setDetailsToState( ); 139//US mCore->setDetailsToState( );
140#endif //KAB_EMBEDDED 140#endif //KAB_EMBEDDED
141 } 141 }
142 } 142 }
143 143
144 emit changedActiveExtension( id ); 144 emit changedActiveExtension( id );
145} 145}
146 146
147void ExtensionManager::createExtensionWidgets() 147void ExtensionManager::createExtensionWidgets()
148{ 148{
149 // clear extension widget list 149 // clear extension widget list
150 mExtensionWidgetList.setAutoDelete( true ); 150 mExtensionWidgetList.setAutoDelete( true );
151 QPtrListIterator<ExtensionWidget> wdgIt( mExtensionWidgetList ); 151 QPtrListIterator<ExtensionWidget> wdgIt( mExtensionWidgetList );
152 ExtensionWidget *wdg = 0; 152 ExtensionWidget *wdg = 0;