summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--kaddressbook/kabprefs.cpp2
-rw-r--r--kaddressbook/kaddressbookmain.cpp86
-rw-r--r--kaddressbook/kcmconfigs/kabconfigwidget.cpp36
-rw-r--r--kaddressbook/kcmconfigs/kabconfigwidget.h1
4 files changed, 52 insertions, 73 deletions
diff --git a/kaddressbook/kabprefs.cpp b/kaddressbook/kabprefs.cpp
index 03c5e76..2425158 100644
--- a/kaddressbook/kabprefs.cpp
+++ b/kaddressbook/kabprefs.cpp
@@ -49,3 +49,3 @@ KABPrefs::KABPrefs()
#ifdef KAB_EMBEDDED
- addItemBool("AskForQuit",&mAskForQuit,false);
+ addItemBool("AskForQuit",&mAskForQuit,true);
addItemBool("ToolBarHor",&mToolBarHor, true );
diff --git a/kaddressbook/kaddressbookmain.cpp b/kaddressbook/kaddressbookmain.cpp
index 8ebb93a..f48f214 100644
--- a/kaddressbook/kaddressbookmain.cpp
+++ b/kaddressbook/kaddressbookmain.cpp
@@ -201,71 +201,35 @@ void KAddressBookMain::closeEvent( QCloseEvent* ce )
{
- QString mess = i18n( "Close KA/Pi?");
- if ( mCore->modified() )
- mess += i18n( "\n\nChanges will be saved!");
- else
- mess += i18n( "\n\nNo unsaved changes detected!\nNothing will be saved!");
-
- switch( QMessageBox::information( this, "KA/Pi", mess ,
- i18n("Yes!"), i18n("No"), 0, 0 ) ) {
- case 0:
-
- break;
- case 1:
- return;
- break;
- case 2:
- return;
- break;
-
- default:
- return;
- break;
- }
+ bool mModified = mCore->modified();
+ bool mAskForQuit = KABPrefs::instance()->mAskForQuit;
-#if 0
+ QString mess = i18n( "Close KA/Pi?");
+ if ( mModified == true )
+ mess += i18n( "\nChanges will be saved!");
+ else
+ mess += i18n( "\nNo unsaved changes detected!\nNothing will be saved!");
- if ( mCore->modified() ) {
- QString text = i18n( "The address book has been modified.\nDo you want to save your changes?" );
+ bool mQuit = true;
-#ifndef KAB_EMBEDDED
- int ret = KMessageBox::warningYesNoCancel( this, text, "",
- KStdGuiItem::yes(),
- KStdGuiItem::no(), "AskForSave" );
- switch ( ret ) {
- case KMessageBox::Yes:
- save();
- break;
- case KMessageBox::No:
- return true;
- break;
- default: //cancel
- return ;
- break;
- }
-#else //KAB_EMBEDDED
- switch( QMessageBox::information( this, "KA/Pi",
- text,
- i18n("Yes!"), i18n("No"), 0, 0 ) ) {
- case 0:
- save();
- break;
- case 1:
- break;
- case 2:
- return;
- default:
- return;
- break;
- }
-#endif //KAB_EMBEDDED
+ if (mAskForQuit)
+ {
+
+ int res = QMessageBox::information( this, "KA/Pi", mess , i18n("Yes!"), i18n("No"), 0, 0 );
+ if (res == 0)
+ mQuit = true;
+ else
+ mQuit = false;
}
-#endif
+ if (mQuit == false)
+ return;
+
+ if (mModified == true)
+ {
+ save();
+ mCore->saveSettings();
+ KABPrefs::instance()->writeConfig();
+ }
- save();
- mCore->saveSettings();
- KABPrefs::instance()->writeConfig();
ce->accept();
-
}
diff --git a/kaddressbook/kcmconfigs/kabconfigwidget.cpp b/kaddressbook/kcmconfigs/kabconfigwidget.cpp
index 31ab7b5..3a2ccbb 100644
--- a/kaddressbook/kcmconfigs/kabconfigwidget.cpp
+++ b/kaddressbook/kcmconfigs/kabconfigwidget.cpp
@@ -33,2 +33,3 @@
#include <qfile.h>
+#include <qvbox.h>
@@ -100,20 +101,29 @@ KABConfigWidget::KABConfigWidget( QWidget *parent, const char *name )
//general groupbox
- QGroupBox *groupBox = new QGroupBox( 0, Qt::Vertical, i18n( "General" ), generalPage );
- QVBoxLayout *boxLayout = new QVBoxLayout( groupBox->layout() );
+ QVBox *vBox = new QVBox( generalPage, "qvbox" );
+ QVBoxLayout *boxLayout = new QVBoxLayout( vBox->layout(), -1, "qvboxlayout" );
boxLayout->setAlignment( Qt::AlignTop );
boxLayout->setMargin(KDialog::marginHintSmall() );
- groupBox->layout()->setMargin(KDialog::marginHintSmall()) ;
- groupBox->layout()->setSpacing(KDialog::spacingHintSmall());
+ vBox->layout()->setMargin(KDialog::marginHintSmall()) ;
+ vBox->layout()->setSpacing(KDialog::spacingHintSmall());
boxLayout->setSpacing( KDialog::spacingHintSmall() );
- mViewsSingleClickBox = new QCheckBox( i18n( "Honor KDE single click" ), groupBox, "msingle" );
+ mViewsSingleClickBox = new QCheckBox( i18n( "Honor KDE single click" ), vBox, "msingle" );
boxLayout->addWidget( mViewsSingleClickBox );
- mNameParsing = new QCheckBox( i18n( "Automatic name parsing for new addressees" ), groupBox, "mparse" );
+ mNameParsing = new QCheckBox( i18n( "Automatic name parsing for new addressees" ), vBox, "mparse" );
boxLayout->addWidget( mNameParsing );
- mMultipleViewsAtOnce = new QCheckBox( i18n( "Display List and Details at once (restart)" ), groupBox, "mdisplay" );
+ mMultipleViewsAtOnce = new QCheckBox( i18n( "Display List and Details at once (restart)" ), vBox, "mdisplay" );
boxLayout->addWidget( mMultipleViewsAtOnce );
- layout->addWidget( groupBox );
+ mAskForQuit = new QCheckBox( i18n( "Ask for quit when closing Ka/Pi" ), vBox, "mquit" );
+ boxLayout->addWidget( mAskForQuit );
+ layout->addWidget( vBox );
+
+ tabWidget->addTab( generalPage, i18n( "General" ) );
+
+ // Extension page
+ QWidget *extensionPage = new QWidget( this );
+ QVBoxLayout *extensionLayout = new QVBoxLayout( extensionPage, KDialog::marginHintSmall(),
+ KDialog::spacingHintSmall() );
@@ -121,3 +131,3 @@ KABConfigWidget::KABConfigWidget( QWidget *parent, const char *name )
- groupBox = new QGroupBox( 0, Qt::Vertical, i18n( "Extensions (restart)" ), generalPage );
+ QGroupBox* groupBox = new QGroupBox( 0, Qt::Vertical, i18n( "Extensions (restart)" ), extensionPage );
boxLayout = new QVBoxLayout( groupBox->layout() );
@@ -140,3 +150,3 @@ KABConfigWidget::KABConfigWidget( QWidget *parent, const char *name )
- layout->addWidget( groupBox );
+ extensionLayout->addWidget( groupBox );
@@ -145,2 +155,3 @@ KABConfigWidget::KABConfigWidget( QWidget *parent, const char *name )
connect( mMultipleViewsAtOnce, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) );
+ connect( mAskForQuit, SIGNAL( toggled( bool ) ), this, SLOT( modified() ) );
connect( mExtensionView, SIGNAL( selectionChanged( QListViewItem* ) ),
@@ -152,3 +163,3 @@ KABConfigWidget::KABConfigWidget( QWidget *parent, const char *name )
- tabWidget->addTab( generalPage, i18n( "General" ) );
+ tabWidget->addTab( extensionPage, i18n( "Extensions" ) );
@@ -172,2 +183,3 @@ void KABConfigWidget::restoreSettings(KABPrefs* prefs)
mMultipleViewsAtOnce->setChecked( prefs->mMultipleViewsAtOnce );
+ mAskForQuit->setChecked( prefs->mAskForQuit );
@@ -187,2 +199,3 @@ void KABConfigWidget::saveSettings(KABPrefs* prefs)
prefs->mMultipleViewsAtOnce = mMultipleViewsAtOnce->isChecked();
+ prefs->mAskForQuit = mAskForQuit->isChecked();
@@ -201,2 +214,3 @@ void KABConfigWidget::defaults(KABPrefs* prefs)
mMultipleViewsAtOnce->setChecked( true );
+ mAskForQuit->setChecked (true);
diff --git a/kaddressbook/kcmconfigs/kabconfigwidget.h b/kaddressbook/kcmconfigs/kabconfigwidget.h
index 2928495..831efc1 100644
--- a/kaddressbook/kcmconfigs/kabconfigwidget.h
+++ b/kaddressbook/kcmconfigs/kabconfigwidget.h
@@ -71,2 +71,3 @@ class KABConfigWidget : public QWidget
QCheckBox *mMultipleViewsAtOnce;
+ QCheckBox *mAskForQuit;