def delete(self): ret = QMessageBox.warning(config.iface.mainWindow(), "Remove repository", "Are you sure you want to remove this repository and all the data in it?", QMessageBox.Yes | QMessageBox.No, QMessageBox.Yes); if ret == QMessageBox.No: return tracked = getTrackedPathsForRepo(self.repo) self.repo.delete() removeRepo(self.repo) removeTrackedForRepo(self.repo) layers = vectorLayers() for layer in layers: if formatSource(layer) in tracked: setAsNonRepoLayer(layer) self.tree.takeTopLevelItem(self.tree.indexOfTopLevelItem(self)) repoWatcher.repoChanged.emit(self.repo)
def deleteCurrentElement(self): if len(self.repoTree.selectedItems()) == 0: return item = self.repoTree.selectedItems()[0] if isinstance(item, RepoItem): ret = QMessageBox.warning( config.iface.mainWindow(), "Remove repository", "Are you sure you want to remove this repository and all the data in it?", QMessageBox.Yes | QMessageBox.No, QMessageBox.Yes) if ret == QMessageBox.No: return tracked = getTrackedPathsForRepo(item.repo) item.repo.delete() removeRepo(item.repo) removeTrackedForRepo(item.repo) layers = getVectorLayers() for layer in layers: if formatSource(layer) in tracked: setAsNonRepoLayer(layer) parent = item.parent() parent.removeChild(item) self.updateCurrentRepo(None) elif isinstance(item, GroupItem): self._removeRepoEndpoint(item) elif isinstance(item, BranchItem): ret = QMessageBox.question( self, 'Delete branch', 'Are you sure you want to delete this branch?', QMessageBox.Yes | QMessageBox.No, QMessageBox.No) if ret == QMessageBox.No: return item.repo.deletebranch(item.branch) repoWatcher.repoChanged.emit(item.repo) elif isinstance(item, LayerItem): ret = QMessageBox.question( self, 'Delete layer', 'Are you sure you want to delete this layer from the selected branch?', QMessageBox.Yes | QMessageBox.No, QMessageBox.No) if ret == QMessageBox.No: return execute(lambda: self._removeLayer(item))
def deleteRepo(self, item): ret = QtGui.QMessageBox.warning(config.iface.mainWindow(), "Delete repository", "Are you sure you want to delete this repository?", QtGui.QMessageBox.Yes | QtGui.QMessageBox.No, QtGui.QMessageBox.Yes); if ret == QtGui.QMessageBox.No: return reponame = item.repo.name execute(lambda: deleteRepo(reponame)) self.lastSelectedRepoItem.parent().removeChild(self.lastSelectedRepoItem) if item.parent() == self.sharedVersioReposItem: self.lastSelectedRepoItem.setIcon(0, disabledRepoIcon) self.updateCurrentRepo(None, None) removeTrackedForRepo(item.repo.path) killGateway() try: shutil.rmtree(item.repo.repo().url) except: ret = QtGui.QMessageBox.warning(config.iface.mainWindow(), "Delete repository", "Local copy of repository could not be removed.\n" "It will have to be removed manually at the following path:\n" + item.repo.repo().url, QtGui.QMessageBox.Ok);
def deleteRepo(self, item): ret = QtGui.QMessageBox.warning(config.iface.mainWindow(), "Delete repository", "Are you sure you want to delete this repository?", QtGui.QMessageBox.Yes | QtGui.QMessageBox.No, QtGui.QMessageBox.Yes); if ret == QtGui.QMessageBox.No: return self.lastSelectedRepoItem.parent().removeChild(self.lastSelectedRepoItem) self.updateCurrentRepo(None, None) tracked = getTrackedPathsForRepo(item.repo.repo()) layers = getVectorLayers() for layer in layers: if layer.source() in tracked: setAsUntracked(layer) removeTrackedForRepo(item.repo.path) killGateway() try: shutil.rmtree(item.repo.repo().url) except: ret = QtGui.QMessageBox.warning(config.iface.mainWindow(), "Delete repository", "Local copy of repository could not be removed.\n" "It will have to be removed manually at the following path:\n" + item.repo.repo().url, QtGui.QMessageBox.Ok);