Skip to content
Snippets Groups Projects

let user select one of the folders data/, sdata/

Merged Lan Dam requested to merge i132_read_folder_w_data_sdata into master
1 file
+ 17
6
Compare changes
  • Side-by-side
  • Inline
@@ -48,7 +48,7 @@ class SavePlotDialog(QDialog):
if fmt == self.main_window.save_plot_format:
self.format_radio_btns[fmt].setChecked(True)
self.cancel_btn = QtWidgets.QPushButton('CANCEL', self)
self.continue_btn = QtWidgets.QPushButton('SAVE PLOT', self)
self.save_plot_btn = QtWidgets.QPushButton('SAVE PLOT', self)
self.setup_ui()
self.connect_signals()
@@ -77,12 +77,12 @@ class SavePlotDialog(QDialog):
rowidx += 1
main_layout.addWidget(self.cancel_btn, rowidx, 1, 1, 1)
main_layout.addWidget(self.continue_btn, rowidx, 3, 1, 1)
main_layout.addWidget(self.save_plot_btn, rowidx, 3, 1, 1)
def connect_signals(self) -> None:
self.save_dir_btn.clicked.connect(self.change_save_directory)
self.cancel_btn.clicked.connect(self.close)
self.continue_btn.clicked.connect(self.on_continue)
self.save_plot_btn.clicked.connect(self.save_plot)
@QtCore.Slot()
def change_save_directory(self) -> None:
@@ -96,12 +96,12 @@ class SavePlotDialog(QDialog):
fd.exec()
new_path = fd.selectedFiles()[0]
self.save_dir_textbox.setText(new_path)
self.save_dir_path = new_path
self.main_window.save_plot_dir = new_path
@QtCore.Slot()
def on_continue(self):
if self.save_dir_textbox.text().strip() == '':
def save_plot(self):
self.save_dir_path = self.save_dir_textbox.text().strip()
if self.save_dir_path == '':
QtWidgets.QMessageBox.warning(
self, "Add Directory",
"A directory need to be given before continue.")
@@ -121,6 +121,17 @@ class SavePlotDialog(QDialog):
self.save_file_path = Path(self.save_dir_path).joinpath(
f"{self.save_filename_textbox.text()}.{save_format}")
if not os.access(self.save_dir_path, os.W_OK):
self.save_file_path = None
QtWidgets.QMessageBox.information(
self, "No Write Permission",
"The directory to save file to doesn't have Write Permission."
"\n\nPlease change its permission or "
"select another directory."
)
return
self.dpi = self.dpi_line_edit.value()
self.close()
Loading