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
===================================================================