def __accepted(self) -> None: """Use the file path to export the project.""" qdir = QDir(_get_name(self.path_edit, ispath=True)) if self.newfolder_option.isChecked(): new_folder = self.filename_edit.placeholderText() if (not qdir.mkdir(new_folder)) and self.warn_radio.isChecked(): self.exist_warning(new_folder, folder=True) return qdir.cd(new_folder) try: ok = self.do(qdir) except PermissionError as error: QMessageBox.warning(self, "Permission error", str(error)) else: if ok: self.accept()
def copyRecursively(self, src, tgt): src_info = QFileInfo(src) if src_info.isDir(): tgt_dir = QDir(tgt) if not tgt_dir.mkdir(src_info.fileName()): return False src_dir = QDir(src) fnames = src_dir.entryList(QDir.Files | QDir.Dirs | QDir.NoDotAndDotDot | QDir.Hidden | QDir.System) for fname in fnames: new_src = os.path.join(src, fname) new_tgt = os.path.join(tgt, src_info.fileName()) if not self.copyRecursively(new_src, new_tgt): return False elif src_info.isFile(): fname = src_info.fileName() if not QFile.copy(src, os.path.join(tgt, fname)): return False return True