def instalar_biblioteca(self): caminho_bibliotecas = os.path.join(get_caminho_padrao(), "bibliotecas") dialogo = QFileDialog() dialogo.setWindowTitle("Escolher biblioteca") dialogo.setLabelText(QFileDialog.FileName, "Arquivo:") dialogo.setLabelText(QFileDialog.LookIn, "Buscar em:") dialogo.setLabelText(QFileDialog.FileType, "Tipo de arquivo:") dialogo.setLabelText(QFileDialog.Accept, "Escolher") dialogo.setLabelText(QFileDialog.Reject, "Cancelar") dialogo.setFileMode(QFileDialog.DirectoryOnly) dialogo.setDirectory(get_caminho_padrao()) if dialogo.exec_() == QFileDialog.Accepted: caminho = dialogo.selectedUrls()[0].path() if (caminho.startswith("/") and os.name == 'nt'): caminho = caminho[1:] # Testa se o arquivo existe if os.path.exists(caminho): try: shutil.copytree( caminho, os.path.join(caminho_bibliotecas, os.path.basename(caminho))) # Directories are the same except shutil.Error as e: print('Directory not copied. Error: %s' % e) # Any error saying that the directory doesn't exist except OSError as e: print('Directory not copied. Error: %s' % e) else: QMessageBox(QMessageBox.Warning, "Erro", "O arquivo não existe", QMessageBox.NoButton, self).show() else: return
def pick_target_dir(self) -> None: """ Opens file dialog to pick target directory for links """ dlg = QFileDialog() dlg.setFileMode(QFileDialog.DirectoryOnly) if dlg.exec_(): self.target_directory = dlg.selectedUrls()[0]
def _open(self): proxy_model = ExecutableFilterModel() options = QFileDialog.Options() options |= QFileDialog.DontUseNativeDialog dialog = QFileDialog(self.widget, "Select a source port", self.config.get("sourcePortDir")) dialog.setOptions(options) dialog.setProxyModel(proxy_model) if dialog.exec_() == QDialog.Accepted: filename = dialog.selectedUrls()[0].toLocalFile() self.saveSourcePortPath(filename) self.setSourcePort(filename)