# I will search for the acceptable range of values later
self.v_start=QDoubleSpinBox()
self.v_start.setDecimals(3)
self.v_start.setRange(-20.475,20.475)
self.v_start.setValue(-8)
self.v_stop=QDoubleSpinBox()
self.v_stop.setDecimals(3)
self.v_stop.setRange(-20.475,20.475)
self.v_stop.setValue(2)
self.v_step=QDoubleSpinBox()
self.v_step.setDecimals(3)
self.v_step.setRange(-2*20.475,2*20.475)
self.v_step.setValue(0.5)
self.info=QPlainTextEdit()
self.info.setFixedSize(500,150)
# integration time instead of points
self.int_time=QDoubleSpinBox()
self.int_time.setDecimals(6)# microseconds
self.int_time.setRange(10e-6,60)
self.int_time.setValue(0.5)
self.delay=QDoubleSpinBox()#only software delay leave it like this
# Minimum 0 Maximum 99.99 and 2 decimals places
self.verbose=QCheckBox("Verbose")
self.spectrum=QComboBox()
self.spectrum.addItems(["NONE","ALL","MAX"])
self.substrate=QDoubleSpinBox()
self.substrate.setRange(0,1)
self.substrate.setValue(0.11)
self.clear_plots=QCheckBox("Clear Plots Before Measurement")
self.parameters.addWidget(QLabel("First voltage point in [V]"))
self.parameters.addWidget(self.v_start)
self.parameters.addWidget(QLabel("Last voltage point in [V]"))
self.parameters.addWidget(self.v_stop)
self.parameters.addWidget(QLabel("Voltage sweep increament in [V]"))
self.parameters.addWidget(self.v_step)
self.parameters.addWidget(QLabel("Information to add to the header of result file"))
self.parameters.addWidget(self.info)
self.parameters.addWidget(QLabel("Initial integration time for spectrometer (automatically increased if saturation is reached"))
self.parameters.addWidget(self.int_time)
self.parameters.addWidget(QLabel("Time in [s] to wait between measurement points"))
self.parameters.addWidget(self.delay)
self.parameters.addWidget(QLabel("Active area in cm^2"))
self.parameters.addWidget(self.substrate)
self.parameters.addWidget(QLabel("Save radiance spectrum\nMAX: Save single spectrum at maximum irradiance\nALL: Safe every spectrum\nNONE: Dont save any spectrum."))
self.parameters.addWidget(self.spectrum)
self.parameters.addWidget(self.clear_plots)
self.parameters.addWidget(self.start_meas)
self.parameters_widget=QWidget()
self.parameters_widget.setLayout(self.parameters)# an abstract widget to hold the QVBoxLayout