File r900000.diff of Package kdepim4

Subject: korganizer: disable the configuration area for deselected plugins
From: wstephenson@suse.de
Bug: 
Patch-upstream: 900000
--- korganizer/koprefsdialog.cpp	(revision 899999)
+++ korganizer/koprefsdialog.cpp	(revision 900000)
@@ -56,6 +56,7 @@ using namespace LibKHolidays;
 #include <q3listview.h>
 #include <q3buttongroup.h>
 #include <QLayout>
+#include <QFormLayout>
 #include <QLabel>
 #include <QSlider>
 #include <QFile>
@@ -96,14 +97,12 @@ KOPrefsDialogMain::KOPrefsDialogMain( co
     new QGroupBox( i18nc( "@title:group email settings", "Email Settings" ), personalFrame );
 
   personalLayout->addWidget( mUserEmailSettings );
-  QVBoxLayout *emailSettingsLayout = new QVBoxLayout( mUserEmailSettings );
-  KHBox *hbox1 = new KHBox( mUserEmailSettings );
-  addWidString( KOPrefs::instance()->userNameItem(), hbox1 );
-  emailSettingsLayout->addWidget( hbox1 );
-
-  KHBox *hbox2 = new KHBox( mUserEmailSettings );
-  addWidString( KOPrefs::instance()->userEmailItem(), hbox2 );
-  emailSettingsLayout->addWidget( hbox2 );
+  QFormLayout *emailSettingsLayout = new QFormLayout( mUserEmailSettings );
+  KPrefsWidString *s = addWidString( KOPrefs::instance()->userNameItem(), mUserEmailSettings );
+  emailSettingsLayout->addRow ( s->label(), s->lineEdit() );
+
+  s=addWidString( KOPrefs::instance()->userEmailItem(), mUserEmailSettings );
+  emailSettingsLayout->addRow ( s->label(), s->lineEdit() );
 
   KPrefsWidRadios *defaultEmailAttachMethod =
     addWidRadios( KOPrefs::instance()->defaultEmailAttachMethodItem(), personalFrame );
@@ -1276,6 +1275,7 @@ KOPrefsDialogPlugins::KOPrefsDialogPlugi
   connect( mPositionAgendaBottom, SIGNAL(clicked()), SLOT(positioningChanged()) );
 
   connect( mTreeWidget, SIGNAL(itemSelectionChanged()), SLOT(selectionChanged()) );
+  connect( mTreeWidget, SIGNAL(itemChanged(QTreeWidgetItem*,int)), SLOT(selectionChanged()) );
   connect( mTreeWidget, SIGNAL(itemClicked(QTreeWidgetItem*,int)), SLOT(slotWidChanged()) );
 
   load();
@@ -1440,7 +1440,7 @@ void KOPrefsDialogPlugins::selectionChan
   }
 
   mDescription->setText( item->service()->comment() );
-  mConfigureButton->setEnabled( hasSettings );
+  mConfigureButton->setEnabled( hasSettings && ( item->checkState(0) == Qt::Checked ) ) ;
 
   if ( item->service()->hasServiceType( KOrg::CalendarDecoration::Decoration::serviceType() ) ) {
     QString decoration = item->service()->desktopEntryName();
@@ -1453,6 +1453,7 @@ void KOPrefsDialogPlugins::selectionChan
     if ( mDecorationsAtAgendaViewBottom.contains( decoration ) ) {
       mPositionAgendaBottom->setChecked( true );
     }
+    mPositioningGroupBox->setEnabled( item->checkState(0) == Qt::Checked );
     mPositioningGroupBox->show();
   }
 
Index: korganizer/koprefsdialog.cpp
===================================================================
openSUSE Build Service is sponsored by