Diffstat (limited to 'microkde/kresources/configdialog.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | microkde/kresources/configdialog.cpp | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/microkde/kresources/configdialog.cpp b/microkde/kresources/configdialog.cpp index 48d9137..0fc199c 100644 --- a/microkde/kresources/configdialog.cpp +++ b/microkde/kresources/configdialog.cpp @@ -47,3 +47,3 @@ ConfigDialog::ConfigDialog( QWidget *parent, const QString& resourceFamily, : KDialogBase( parent, name, true, i18n( "Resource Configuration" ), - Ok|Cancel, Ok, true )/*, mConfig( config )*/, mResource( resource ) + Ok|Cancel, Ok, true )/*, mConfig( config )*/, mResource( resource ), mPersistentReadOnly(false) { @@ -84,2 +84,6 @@ ConfigDialog::ConfigDialog( QWidget *parent, const QString& resourceFamily, if ( mConfigWidget ) { + connect( mConfigWidget, SIGNAL( setReadOnly( bool ) ), + SLOT( setReadOnly( bool ) ) ); + connect( mConfigWidget, SIGNAL( setPersistentReadOnly( bool ) ), + SLOT( setPersistentReadOnly( bool ) ) ); mConfigWidget->setInEditMode( false ); @@ -87,4 +91,3 @@ ConfigDialog::ConfigDialog( QWidget *parent, const QString& resourceFamily, mConfigWidget->show(); - connect( mConfigWidget, SIGNAL( setReadOnly( bool ) ), - SLOT( setReadOnly( bool ) ) ); + } @@ -114,3 +117,17 @@ void ConfigDialog::setReadOnly( bool value ) { - mReadOnly->setChecked( value ); + if (mPersistentReadOnly == false) + mReadOnly->setChecked( value ); + else + mReadOnly->setChecked( true ); +} + +void ConfigDialog::setPersistentReadOnly( bool value ) +{ + mPersistentReadOnly = value; + + if (value == true) + setReadOnly( true ); + + mReadOnly->setEnabled( !value ); + } |