예제 #1
0
 def delete_result(self, result):
     if result['returncode'] == 0:
         self._set_status(self.tr('Archive deleted.'))
         deleted_row = self.archiveTable.findItems(
             self.archive_name, QtCore.Qt.MatchExactly)[0].row()
         self.archiveTable.removeRow(deleted_row)
         ArchiveModel.get(name=self.archive_name).delete_instance()
         del self.archive_name
     else:
         self._toggle_all_buttons(True)
예제 #2
0
 def list_diff_result(self, result):
     self._set_status('')
     if result['returncode'] == 0:
         archive_newer = ArchiveModel.get(
             name=result['params']['archive_name_newer'])
         archive_older = ArchiveModel.get(
             name=result['params']['archive_name_older'])
         window = DiffResult(result['data'], archive_newer, archive_older)
         self._toggle_all_buttons(True)
         window.setParent(self, QtCore.Qt.Sheet)
         self._resultwindow = window  # for testing
         window.show()
예제 #3
0
    def list_archive_result(self, result):
        self._set_status('')
        if result['returncode'] == 0:

            def process_result():
                def receive():
                    extraction_folder = dialog.selectedFiles()
                    if extraction_folder:
                        params = BorgExtractThread.prepare(
                            self.profile(), archive.name, window.selected,
                            extraction_folder[0])
                        if params['ok']:
                            self._toggle_all_buttons(False)
                            thread = BorgExtractThread(params['cmd'],
                                                       params,
                                                       parent=self.app)
                            thread.updated.connect(self.mountErrors.setText)
                            thread.result.connect(self.extract_archive_result)
                            thread.start()
                        else:
                            self._set_status(params['message'])

                dialog = choose_file_dialog(self,
                                            self.tr("Choose Extraction Point"),
                                            want_folder=True)
                dialog.open(receive)

            archive = ArchiveModel.get(name=result['params']['archive_name'])
            window = ExtractDialog(result['data'], archive)
            self._toggle_all_buttons(True)
            window.setParent(self, QtCore.Qt.Sheet)
            self._window = window  # for testing
            window.show()
            window.accepted.connect(process_result)
예제 #4
0
파일: rename.py 프로젝트: srgvg/vorta
 def process_result(self, result):
     if result['returncode'] == 0:
         repo_url, old_name = result['cmd'][-2].split('::')
         new_name = result['cmd'][-1]
         repo = RepoModel.get(url=repo_url)
         renamed_archive = ArchiveModel.get(name=old_name, repo=repo)
         renamed_archive.name = new_name
         renamed_archive.save()