33from pum import ParameterDefinition , ParameterType
44from qgis .PyQt .QtWidgets import (
55 QCheckBox ,
6- QGridLayout ,
76 QGroupBox ,
87 QHBoxLayout ,
98 QLabel ,
@@ -37,14 +36,12 @@ def __init__(self, parameter_definition: ParameterDefinition, parent):
3736 self .widget = QLineEdit (self )
3837 self .widget .setPlaceholderText (parameter_definition .default .as_string ())
3938 self .layout .addWidget (self .widget )
40- self .value = lambda : self .widget .text ()
39+ self .value = lambda : self .widget .text () or self . widget . placeholderText ()
4140
4241
4342class ParametersGroupBox (QGroupBox ):
4443 def __init__ (self , parent ):
4544 QGroupBox .__init__ (self , parent )
46- self .layout = QGridLayout (self )
47- self .setLayout (self .layout )
4845 self .parameter_widgets = {}
4946
5047 def setParameters (self , parameters : list [ParameterDefinition ]):
@@ -54,7 +51,7 @@ def setParameters(self, parameters: list[ParameterDefinition]):
5451 # Remove all widgets from the parameters_group_box layout
5552 for parameter in parameters :
5653 pw = ParameterWidget (parameter , self )
57- self .layout .addWidget (pw )
54+ self .layout () .addWidget (pw )
5855 self .parameter_widgets [parameter .name ] = pw
5956
6057 def parameters_values (self ):
@@ -64,6 +61,6 @@ def parameters_values(self):
6461 return values
6562
6663 def clean (self ):
67- for widget in self .parameter_widgets :
64+ for widget in self .parameter_widgets . values () :
6865 widget .deleteLater ()
6966 self .parameter_widgets = {}
0 commit comments