diff --git a/CHANGELOG b/CHANGELOG index 60c7b61..2546654 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,5 +1,6 @@ 0.6.3 - fix: cleanup temporary directories on startup (#29) + - enh: warn user when source and target directory are identical (#28) 0.6.2 - setup: bump dclab from 0.55.7 to 0.57.0 0.6.1 diff --git a/mpl_data_cast/gui/main.py b/mpl_data_cast/gui/main.py index 439b832..31f30c4 100644 --- a/mpl_data_cast/gui/main.py +++ b/mpl_data_cast/gui/main.py @@ -150,6 +150,21 @@ def on_task_transfer(self) -> None: "Output directory error", "Output directory does not exist!") + # Warn the user when input and output directories are identical. + if self.widget_input.path.samefile(self.widget_output.path): + ret = QtWidgets.QMessageBox.question( + self, + "Output and input directories are identical", + "You have selected an output directory that is identical to " + "the input directory. If you continue, then the files in this " + "directory will be replaced according to the recipe " + "you chose.

" + "Are you absolutely sure you would like to continue?" + ) + if ret != QtWidgets.QMessageBox.StandardButton.Yes: + # Abort + return + self.pushButton_transfer.setEnabled(False) rp = self.current_recipe(self.widget_input.path, self.widget_output.path)