def layout(self):
"""
Create the widget layout.
"""
# ------------ Plot widget -----------------------
self._plot_box = PlotBox(self,self._fit)
# ------------ Message box -----------------------
self._message_box = MessageBox(self,self._fit)
# ------------ Experiments widget ----------------
self._exp_box = ExperimentBox(self,self._fit)
# ------------ Parameters widget -----------------
self._param_box = ParameterBox(self,self._fit)
self._core_widgets = [self._plot_box,
self._message_box,
self._exp_box,
self._param_box]
# ------------ "Do fit" button -------------------
self._do_fit_button = QW.QPushButton("Do fit", self)
self._do_fit_button.clicked.connect(self.do_fit_callback)
# Split up the main window in a useful way
# Left column
left_column = QW.QSplitter(QC.Qt.Vertical)
left_column.addWidget(self._plot_box)
left_column.addWidget(self._exp_box)
left_column.setSizes([200, 50])
# right column
right_column = QW.QSplitter(QC.Qt.Vertical)
right_column.addWidget(self._message_box)
right_column.addWidget(self._param_box)
right_column.setSizes([200, 200])
# Right and left columns next to each other
h_splitter = QW.QSplitter(QC.Qt.Horizontal)
h_splitter.addWidget(left_column)
h_splitter.addWidget(right_column)
h_splitter.setSizes([200, 200])
# Now add the split up window.
main_layout = QW.QVBoxLayout(self)
main_layout.addWidget(h_splitter)
main_layout.addWidget(self._do_fit_button)
评论列表
文章目录