Plugins/VcsPlugins/vcsMercurial/HgStatusDialog.py

changeset 216
6f9713e8d570
parent 198
7ab8e126f404
child 221
38689444e922
equal deleted inserted replaced
215:e8978dca44af 216:6f9713e8d570
57 self.trUtf8("Commit changes to repository..."), self.__commit)) 57 self.trUtf8("Commit changes to repository..."), self.__commit))
58 self.menu.addSeparator() 58 self.menu.addSeparator()
59 self.menuactions.append(self.menu.addAction(\ 59 self.menuactions.append(self.menu.addAction(\
60 self.trUtf8("Add to repository"), self.__add)) 60 self.trUtf8("Add to repository"), self.__add))
61 self.menuactions.append(self.menu.addAction(\ 61 self.menuactions.append(self.menu.addAction(\
62 self.trUtf8("Remove from repository"), self.__forget))
63 self.menuactions.append(self.menu.addAction(\
62 self.trUtf8("Revert changes"), self.__revert)) 64 self.trUtf8("Revert changes"), self.__revert))
63 self.menu.addSeparator() 65 self.menu.addSeparator()
64 self.menuactions.append(self.menu.addAction(self.trUtf8("Adjust column sizes"), 66 self.menuactions.append(self.menu.addAction(self.trUtf8("Adjust column sizes"),
65 self.__resizeColumns)) 67 self.__resizeColumns))
66 for act in self.menuactions: 68 for act in self.menuactions:
77 self.trUtf8('removed'), 79 self.trUtf8('removed'),
78 ] 80 ]
79 81
80 self.unversionedIndicators = [ 82 self.unversionedIndicators = [
81 self.trUtf8('not tracked'), 83 self.trUtf8('not tracked'),
84 ]
85
86 self.missingIndicators = [
87 self.trUtf8('missing')
82 ] 88 ]
83 89
84 self.status = { 90 self.status = {
85 'A' : self.trUtf8('added'), 91 'A' : self.trUtf8('added'),
86 'C' : self.trUtf8('normal'), 92 'C' : self.trUtf8('normal'),
402 project = e5App().getObject("Project") 408 project = e5App().getObject("Project")
403 for name in names: 409 for name in names:
404 project.getModel().updateVCSStatus(name) 410 project.getModel().updateVCSStatus(name)
405 self.vcs.checkVCSStatus() 411 self.vcs.checkVCSStatus()
406 412
413 def __forget(self):
414 """
415 Private slot to handle the Remove context menu entry.
416 """
417 names = [os.path.join(self.dname, itm.text(self.__pathColumn)) \
418 for itm in self.__getMissingItems()]
419 if not names:
420 QMessageBox.information(self,
421 self.trUtf8("Remove"),
422 self.trUtf8("""There are no missing entries available/selected."""))
423 return
424
425 self.vcs.hgForget(names)
426 self.on_refreshButton_clicked()
427
407 def __revert(self): 428 def __revert(self):
408 """ 429 """
409 Private slot to handle the Revert context menu entry. 430 Private slot to handle the Revert context menu entry.
410 """ 431 """
411 names = [os.path.join(self.dname, itm.text(self.__pathColumn)) \ 432 names = [os.path.join(self.dname, itm.text(self.__pathColumn)) \
445 unversionedItems = [] 466 unversionedItems = []
446 for itm in self.statusList.selectedItems(): 467 for itm in self.statusList.selectedItems():
447 if itm.text(self.__statusColumn) in self.unversionedIndicators: 468 if itm.text(self.__statusColumn) in self.unversionedIndicators:
448 unversionedItems.append(itm) 469 unversionedItems.append(itm)
449 return unversionedItems 470 return unversionedItems
471
472 def __getMissingItems(self):
473 """
474 Private method to retrieve all entries, that have a missing status.
475
476 @return list of all items with a missing status
477 """
478 missingItems = []
479 for itm in self.statusList.selectedItems():
480 if itm.text(self.__statusColumn) in self.missingIndicators:
481 missingItems.append(itm)
482 return missingItems

eric ide

mercurial