Kiln » TortoiseHg » TortoiseHg
Clone URL:  
Pushed to one repository · View In Graph Contained in 2.0, 2.0.1, and 2.0.2

stable mq: improve file list behavior

* refresh file list automatically when qnew is toggled
* in qref mode, initially check files already in the patch
* in qnew mode, initially check MAR files
* select file 0 if no other selection was made

Changeset 69e6058dd073

Parent bc387b3b539a

by Steve Borho

Changes to one file · Browse files at 69e6058dd073 Showing diff from parent bc387b3b539a Diff from another changeset...

 
686
687
688
 
689
690
691
 
701
702
703
 
 
704
705
706
 
707
708
709
710
 
711
712
713
 
724
725
726
 
 
727
728
729
 
 
730
731
732
733
734
735
736
737
 
 
 
 
 
738
739
740
 
686
687
688
689
690
691
692
 
702
703
704
705
706
707
708
 
709
710
711
712
 
713
714
715
716
 
727
728
729
730
731
732
733
734
735
736
737
738
739
 
 
 
 
 
740
741
742
743
744
745
746
747
@@ -686,6 +686,7 @@
  self.patchNameLE.setText('')   self.setMessage('')   self.patchNameLE.setEnabled(False) + self.refreshFileListWidget()     def refreshFileListWidget(self):   self.refreshing = True @@ -701,13 +702,15 @@
  self.refreshing = False   if self.reselectFileItem:   self.fileListWidget.setCurrentItem(self.reselectFileItem) + elif self.fileListWidget.count(): + self.fileListWidget.setCurrentRow(0)     def _refreshFileListWidget(self): - def addfiles(mode, files, initial): + def addfiles(mode, files, func):   for file in files:   item = QListWidgetItem(u'%s %s' % (mode, hglib.tounicode(file)))   item.setFlags(flags) - item.setCheckState(initial) + item.setCheckState(func(mode, file))   self.fileListWidget.addItem(item)   if selfile == file:   self.reselectFileItem = item @@ -724,17 +727,21 @@
  # Show qrefresh (qdiff) diffs   st = self.repo.status(pctx.p1().node(), None, unknown=True)[:5]   M, A, R, D, U = st + checkfunc = lambda stat, file: file in pctx.files() and \ + Qt.Checked or Qt.Unchecked   elif newmode:   # Show qnew (working) diffs   M, A, R, D, U = self.repo[None].status(unknown=True)[:5] + checkfunc = lambda stat, file: stat in 'MAR' \ + and Qt.Checked or Qt.Unchecked   else:   return   flags = Qt.ItemIsSelectable | Qt.ItemIsUserCheckable | Qt.ItemIsEnabled - addfiles(u'A', A, Qt.Checked) - addfiles(u'M', M, Qt.Checked) - addfiles(u'R', R, Qt.Checked) - addfiles(u'!', D, Qt.Unchecked) - addfiles(u'?', U, Qt.Unchecked) + addfiles(u'A', A, checkfunc) + addfiles(u'M', M, checkfunc) + addfiles(u'R', R, checkfunc) + addfiles(u'!', D, checkfunc) + addfiles(u'?', U, checkfunc)     def refreshSelectedGuards(self):   total = len(self.allguards)