File tree Expand file tree Collapse file tree 1 file changed +8
-14
lines changed Expand file tree Collapse file tree 1 file changed +8
-14
lines changed Original file line number Diff line number Diff line change @@ -100,36 +100,30 @@ bool RememberAttributesController::shouldRememberValue( const QgsVectorLayer *la
100
100
101
101
bool RememberAttributesController::setShouldRememberValue ( const QgsVectorLayer *layer, int fieldIndex, bool shouldRemember )
102
102
{
103
- if ( !rememberValuesAllowed () )
103
+ if ( !rememberValuesAllowed () || !layer || ! mActiveProject )
104
104
return false ;
105
105
106
106
QSettings settings;
107
107
settings.beginGroup ( CACHED_ATTRIBUTES_GROUP );
108
108
109
109
QString fieldEnabledKey = QStringLiteral ( " /%1/%2/%3/enabled" ).arg ( mActiveProject ->projectFullName () ).arg ( layer->id () ).arg ( fieldIndex );
110
- bool fieldEnabled = settings.value ( fieldEnabledKey, false ).toBool ();
111
-
112
- if ( layer && shouldRemember )
113
- {
114
- if ( !fieldEnabled )
115
- settings.setValue ( fieldEnabledKey, true );
110
+ bool currentlyEnabled = settings.value ( fieldEnabledKey, false ).toBool ();
116
111
117
- settings.endGroup ();
118
- return true ;
119
- }
120
-
121
- if ( fieldEnabled )
122
- settings.setValue ( fieldEnabledKey, false );
112
+ if ( currentlyEnabled != shouldRemember )
113
+ settings.setValue ( fieldEnabledKey, shouldRemember );
123
114
124
115
settings.endGroup ();
125
- return false ;
116
+ return shouldRemember ;
126
117
}
127
118
128
119
bool RememberAttributesController::rememberedValue (
129
120
const QgsVectorLayer *layer,
130
121
int fieldIndex,
131
122
QVariant &value ) const
132
123
{
124
+ if ( !layer || !mActiveProject )
125
+ return false ;
126
+
133
127
QSettings settings;
134
128
settings.beginGroup ( CACHED_ATTRIBUTES_GROUP );
135
129
You can’t perform that action at this time.
0 commit comments