summaryrefslogtreecommitdiffabout
path: root/kaddressbook/kcmconfigs
Unidiff
Diffstat (limited to 'kaddressbook/kcmconfigs') (more/less context) (ignore whitespace changes)
-rw-r--r--kaddressbook/kcmconfigs/kabconfigwidget.cpp9
-rw-r--r--kaddressbook/kcmconfigs/kabconfigwidget.h2
2 files changed, 10 insertions, 1 deletions
diff --git a/kaddressbook/kcmconfigs/kabconfigwidget.cpp b/kaddressbook/kcmconfigs/kabconfigwidget.cpp
index b5309c0..31ab7b5 100644
--- a/kaddressbook/kcmconfigs/kabconfigwidget.cpp
+++ b/kaddressbook/kcmconfigs/kabconfigwidget.cpp
@@ -90,129 +90,136 @@ KABConfigWidget::KABConfigWidget( QWidget *parent, const char *name )
90 QVBoxLayout *topLayout = new QVBoxLayout( this, 0, 90 QVBoxLayout *topLayout = new QVBoxLayout( this, 0,
91 KDialog::spacingHint() ); 91 KDialog::spacingHint() );
92 92
93 QTabWidget *tabWidget = new QTabWidget( this ); 93 QTabWidget *tabWidget = new QTabWidget( this );
94 topLayout->addWidget( tabWidget ); 94 topLayout->addWidget( tabWidget );
95 95
96 // General page 96 // General page
97 QWidget *generalPage = new QWidget( this ); 97 QWidget *generalPage = new QWidget( this );
98 QVBoxLayout *layout = new QVBoxLayout( generalPage, KDialog::marginHintSmall(), 98 QVBoxLayout *layout = new QVBoxLayout( generalPage, KDialog::marginHintSmall(),
99 KDialog::spacingHintSmall() ); 99 KDialog::spacingHintSmall() );
100 //general groupbox 100 //general groupbox
101 QGroupBox *groupBox = new QGroupBox( 0, Qt::Vertical, i18n( "General" ), generalPage ); 101 QGroupBox *groupBox = new QGroupBox( 0, Qt::Vertical, i18n( "General" ), generalPage );
102 QVBoxLayout *boxLayout = new QVBoxLayout( groupBox->layout() ); 102 QVBoxLayout *boxLayout = new QVBoxLayout( groupBox->layout() );
103 boxLayout->setAlignment( Qt::AlignTop ); 103 boxLayout->setAlignment( Qt::AlignTop );
104 boxLayout->setMargin(KDialog::marginHintSmall() ); 104 boxLayout->setMargin(KDialog::marginHintSmall() );
105 groupBox->layout()->setMargin(KDialog::marginHintSmall()) ; 105 groupBox->layout()->setMargin(KDialog::marginHintSmall()) ;
106 groupBox->layout()->setSpacing(KDialog::spacingHintSmall()); 106 groupBox->layout()->setSpacing(KDialog::spacingHintSmall());
107 boxLayout->setSpacing( KDialog::spacingHintSmall() ); 107 boxLayout->setSpacing( KDialog::spacingHintSmall() );
108 mViewsSingleClickBox = new QCheckBox( i18n( "Honor KDE single click" ), groupBox, "msingle" ); 108 mViewsSingleClickBox = new QCheckBox( i18n( "Honor KDE single click" ), groupBox, "msingle" );
109 boxLayout->addWidget( mViewsSingleClickBox ); 109 boxLayout->addWidget( mViewsSingleClickBox );
110 110
111 mNameParsing = new QCheckBox( i18n( "Automatic name parsing for new addressees" ), groupBox, "mparse" ); 111 mNameParsing = new QCheckBox( i18n( "Automatic name parsing for new addressees" ), groupBox, "mparse" );
112 boxLayout->addWidget( mNameParsing ); 112 boxLayout->addWidget( mNameParsing );
113 113
114 mMultipleViewsAtOnce = new QCheckBox( i18n( "Display List and Details at once (restart)" ), groupBox, "mdisplay" );
115 boxLayout->addWidget( mMultipleViewsAtOnce );
116
114 layout->addWidget( groupBox ); 117 layout->addWidget( groupBox );
115 118
116 119
117 //extensions groupbox 120 //extensions groupbox
118 121
119 groupBox = new QGroupBox( 0, Qt::Vertical, i18n( "Extensions" ), generalPage ); 122 groupBox = new QGroupBox( 0, Qt::Vertical, i18n( "Extensions (restart)" ), generalPage );
120 boxLayout = new QVBoxLayout( groupBox->layout() ); 123 boxLayout = new QVBoxLayout( groupBox->layout() );
121 boxLayout->setAlignment( Qt::AlignTop ); 124 boxLayout->setAlignment( Qt::AlignTop );
122 boxLayout->setMargin(KDialog::marginHintSmall()); 125 boxLayout->setMargin(KDialog::marginHintSmall());
123 boxLayout->setSpacing(KDialog::spacingHintSmall()); 126 boxLayout->setSpacing(KDialog::spacingHintSmall());
124 groupBox->layout()->setMargin(1) ; 127 groupBox->layout()->setMargin(1) ;
125 groupBox->layout()->setSpacing(0); 128 groupBox->layout()->setSpacing(0);
126 mExtensionView = new KListView( groupBox ); 129 mExtensionView = new KListView( groupBox );
127 mExtensionView->setAllColumnsShowFocus( true ); 130 mExtensionView->setAllColumnsShowFocus( true );
128 mExtensionView->addColumn( i18n( "Name" ) ); 131 mExtensionView->addColumn( i18n( "Name" ) );
129 mExtensionView->addColumn( i18n( "Description" ) ); 132 mExtensionView->addColumn( i18n( "Description" ) );
130 mExtensionView->setMaximumHeight(80); 133 mExtensionView->setMaximumHeight(80);
131 134
132 boxLayout->addWidget( mExtensionView ); 135 boxLayout->addWidget( mExtensionView );
133 136
134 mConfigureButton = new QPushButton( i18n( "Configure..." ), groupBox ); 137 mConfigureButton = new QPushButton( i18n( "Configure..." ), groupBox );
135 mConfigureButton->setEnabled( false ); 138 mConfigureButton->setEnabled( false );
136 boxLayout->addWidget( mConfigureButton ); 139 boxLayout->addWidget( mConfigureButton );
137 140
138 layout->addWidget( groupBox ); 141 layout->addWidget( groupBox );
139 142
140 connect( mNameParsing, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) ); 143 connect( mNameParsing, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) );
141 connect( mViewsSingleClickBox, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) ); 144 connect( mViewsSingleClickBox, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) );
145 connect( mMultipleViewsAtOnce, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) );
142 connect( mExtensionView, SIGNAL( selectionChanged( QListViewItem* ) ), 146 connect( mExtensionView, SIGNAL( selectionChanged( QListViewItem* ) ),
143 SLOT( selectionChanged( QListViewItem* ) ) ); 147 SLOT( selectionChanged( QListViewItem* ) ) );
144 connect( mExtensionView, SIGNAL( clicked( QListViewItem* ) ), 148 connect( mExtensionView, SIGNAL( clicked( QListViewItem* ) ),
145 SLOT( itemClicked( QListViewItem* ) ) ); 149 SLOT( itemClicked( QListViewItem* ) ) );
146 connect( mConfigureButton, SIGNAL( clicked() ), 150 connect( mConfigureButton, SIGNAL( clicked() ),
147 SLOT( configureExtension() ) ); 151 SLOT( configureExtension() ) );
148 152
149 tabWidget->addTab( generalPage, i18n( "General" ) ); 153 tabWidget->addTab( generalPage, i18n( "General" ) );
150 154
151 // Addressee page 155 // Addressee page
152 mAddresseeWidget = new AddresseeWidget( this ); 156 mAddresseeWidget = new AddresseeWidget( this );
153 tabWidget->addTab( mAddresseeWidget, i18n( "Contact" ) ); 157 tabWidget->addTab( mAddresseeWidget, i18n( "Contact" ) );
154 connect( mAddresseeWidget, SIGNAL( modified() ), SLOT( modified() ) ); 158 connect( mAddresseeWidget, SIGNAL( modified() ), SLOT( modified() ) );
155 159
156} 160}
157 161
158 162
159void KABConfigWidget::restoreSettings(KABPrefs* prefs) 163void KABConfigWidget::restoreSettings(KABPrefs* prefs)
160{ 164{
161//US prefs was KABPrefs::instance() before 165//US prefs was KABPrefs::instance() before
162 166
163 bool blocked = signalsBlocked(); 167 bool blocked = signalsBlocked();
164 blockSignals( true ); 168 blockSignals( true );
165 169
166 mNameParsing->setChecked( prefs->mAutomaticNameParsing ); 170 mNameParsing->setChecked( prefs->mAutomaticNameParsing );
167 mViewsSingleClickBox->setChecked( prefs->mHonorSingleClick ); 171 mViewsSingleClickBox->setChecked( prefs->mHonorSingleClick );
172 mMultipleViewsAtOnce->setChecked( prefs->mMultipleViewsAtOnce );
168 173
169 mAddresseeWidget->restoreSettings(); 174 mAddresseeWidget->restoreSettings();
170 175
171 restoreExtensionSettings(); 176 restoreExtensionSettings();
172 177
173 blockSignals( blocked ); 178 blockSignals( blocked );
174 179
175 emit changed( false ); 180 emit changed( false );
176} 181}
177 182
178void KABConfigWidget::saveSettings(KABPrefs* prefs) 183void KABConfigWidget::saveSettings(KABPrefs* prefs)
179{ 184{
180 prefs->mAutomaticNameParsing = mNameParsing->isChecked(); 185 prefs->mAutomaticNameParsing = mNameParsing->isChecked();
181 prefs->mHonorSingleClick = mViewsSingleClickBox->isChecked(); 186 prefs->mHonorSingleClick = mViewsSingleClickBox->isChecked();
187 prefs->mMultipleViewsAtOnce = mMultipleViewsAtOnce->isChecked();
182 188
183 mAddresseeWidget->saveSettings(); 189 mAddresseeWidget->saveSettings();
184 190
185 saveExtensionSettings(); 191 saveExtensionSettings();
186 KABPrefs::instance()->writeConfig(); 192 KABPrefs::instance()->writeConfig();
187 193
188 emit changed( false ); 194 emit changed( false );
189} 195}
190 196
191void KABConfigWidget::defaults(KABPrefs* prefs) 197void KABConfigWidget::defaults(KABPrefs* prefs)
192{ 198{
193 mNameParsing->setChecked( true ); 199 mNameParsing->setChecked( true );
194 mViewsSingleClickBox->setChecked( false ); 200 mViewsSingleClickBox->setChecked( false );
201 mMultipleViewsAtOnce->setChecked( true );
195 202
196 emit changed( true ); 203 emit changed( true );
197} 204}
198 205
199void KABConfigWidget::modified() 206void KABConfigWidget::modified()
200{ 207{
201 emit changed( true ); 208 emit changed( true );
202} 209}
203 210
204void KABConfigWidget::restoreExtensionSettings() 211void KABConfigWidget::restoreExtensionSettings()
205{ 212{
206 QStringList activeExtensions = KABPrefs::instance()->mActiveExtensions; 213 QStringList activeExtensions = KABPrefs::instance()->mActiveExtensions;
207 214
208 mExtensionView->clear(); 215 mExtensionView->clear();
209 216
210#ifndef KAB_EMBEDDED 217#ifndef KAB_EMBEDDED
211 KTrader::OfferList plugins = KTrader::self()->query( "KAddressBook/Extension" ); 218 KTrader::OfferList plugins = KTrader::self()->query( "KAddressBook/Extension" );
212 KTrader::OfferList::ConstIterator it; 219 KTrader::OfferList::ConstIterator it;
213 for ( it = plugins.begin(); it != plugins.end(); ++it ) { 220 for ( it = plugins.begin(); it != plugins.end(); ++it ) {
214 if ( !(*it)->hasServiceType( "KAddressBook/Extension" ) ) 221 if ( !(*it)->hasServiceType( "KAddressBook/Extension" ) )
215 continue; 222 continue;
216 223
217 ExtensionItem *item = new ExtensionItem( mExtensionView, (*it)->name() ); 224 ExtensionItem *item = new ExtensionItem( mExtensionView, (*it)->name() );
218 item->setService( *it ); 225 item->setService( *it );
diff --git a/kaddressbook/kcmconfigs/kabconfigwidget.h b/kaddressbook/kcmconfigs/kabconfigwidget.h
index 8c0c436..2928495 100644
--- a/kaddressbook/kcmconfigs/kabconfigwidget.h
+++ b/kaddressbook/kcmconfigs/kabconfigwidget.h
@@ -47,30 +47,32 @@ class KABConfigWidget : public QWidget
47 void saveSettings(KABPrefs* prefs); 47 void saveSettings(KABPrefs* prefs);
48 void defaults(KABPrefs* prefs); 48 void defaults(KABPrefs* prefs);
49 49
50 signals: 50 signals:
51 void changed( bool ); 51 void changed( bool );
52 52
53 public slots: 53 public slots:
54 void modified(); 54 void modified();
55 55
56 56
57 57
58 private slots: 58 private slots:
59 void configureExtension(); 59 void configureExtension();
60 void selectionChanged( QListViewItem* ); 60 void selectionChanged( QListViewItem* );
61 void itemClicked( QListViewItem* ); 61 void itemClicked( QListViewItem* );
62 62
63 private: 63 private:
64 void restoreExtensionSettings(); 64 void restoreExtensionSettings();
65 void saveExtensionSettings(); 65 void saveExtensionSettings();
66 66
67 KListView *mExtensionView; 67 KListView *mExtensionView;
68 68
69 QCheckBox *mNameParsing; 69 QCheckBox *mNameParsing;
70 QCheckBox *mViewsSingleClickBox; 70 QCheckBox *mViewsSingleClickBox;
71 QCheckBox *mMultipleViewsAtOnce;
72
71 QPushButton *mConfigureButton; 73 QPushButton *mConfigureButton;
72 74
73 AddresseeWidget *mAddresseeWidget; 75 AddresseeWidget *mAddresseeWidget;
74}; 76};
75 77
76#endif 78#endif