@@ -82,9 +82,10 @@ def accept(self):
82
82
self .buttonOk .setEnabled ( True )
83
83
84
84
def compute (self , inVect , inField , value , perc , progressBar ):
85
+ mlayer = ftools_utils .getMapLayerByName (inVect )
86
+ mlayer .removeSelection (True )
85
87
vlayer = ftools_utils .getVectorLayerByName (inVect )
86
88
vprovider = vlayer .dataProvider ()
87
- mlayer = ftools_utils .getMapLayerByName (inVect )
88
89
allAttrs = vprovider .attributeIndexes ()
89
90
vprovider .select (allAttrs )
90
91
index = vprovider .fieldNameIndex (inField )
@@ -93,7 +94,6 @@ def compute(self, inVect, inField, value, perc, progressBar):
93
94
unique = ftools_utils .getUniqueValues (vprovider , int (index ))
94
95
inFeat = QgsFeature ()
95
96
selran = []
96
- mlayer .removeSelection (True )
97
97
nFeat = vprovider .featureCount () * len (unique )
98
98
nElement = 0
99
99
self .progressBar .setValue (0 )
@@ -111,9 +111,9 @@ def compute(self, inVect, inField, value, perc, progressBar):
111
111
self .progressBar .setValue (nElement )
112
112
if perc : selVal = int (round ((value / 100.0000 ) * len (FIDs ), 0 ))
113
113
else : selVal = value
114
- if selVal >= len (FIDs ): selran = FIDs
115
- else : selran = random .sample (FIDs , selVal )
116
- selran .extend (mlayer . selectedFeaturesIds () )
117
- mlayer .setSelectedFeatures (selran )
114
+ if selVal >= len (FIDs ): selFeat = FIDs
115
+ else : selFeat = random .sample (FIDs , selVal )
116
+ selran .extend (selFeat )
117
+ mlayer .setSelectedFeatures (selran )
118
118
else :
119
119
mlayer .setSelectedFeatures (range (0 , mlayer .featureCount ()))
0 commit comments