Kiln » TortoiseHg » TortoiseHg
Clone URL:  
Pushed to one repository · View In Graph Contained in 1.9, 1.9.1, and 1.9.2

gotobar: move goto quickbar from repoview to repowidget

This allows us to safely parent the gotobar above the repoview

Changeset 0aa46c241901

Parent 00441b342717

by Steve Borho

Changes to 2 files · Browse files at 0aa46c241901 Showing diff from parent 00441b342717 Diff from another changeset...

 
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
 
81
82
83
84
85
86
87
 
98
99
100
101
102
103
104
105
106
107
108
 
121
122
123
124
125
126
127
 
225
226
227
228
 
 
229
230
231
 
269
270
271
272
273
 
19
20
21
 
22
23
24
25
26
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
27
28
29
 
50
51
52
 
53
54
55
 
66
67
68
 
 
 
 
 
69
70
71
 
84
85
86
 
87
88
89
 
187
188
189
 
190
191
192
193
194
 
232
233
234
 
235
@@ -19,42 +19,11 @@
 from tortoisehg.util import hglib  from tortoisehg.hgqt.qtlib import geticon  from tortoisehg.hgqt.i18n import _ -from tortoisehg.hgqt.quickbar import QuickBar  from tortoisehg.hgqt import htmllistview    from PyQt4.QtCore import *  from PyQt4.QtGui import *   -class GotoQuickBar(QuickBar): - gotoSignal = pyqtSignal(unicode) - - def __init__(self, parent): - QuickBar.__init__(self, 'Goto', 'Ctrl+Shift+G', 'Goto', parent) - - def createActions(self, openkey, desc): - QuickBar.createActions(self, openkey, desc) - self._actions['go'] = QAction('Go', self) - self._actions['go'].triggered.connect(self.goto) - - def goto(self): - self.gotoSignal.emit(unicode(self.entry.text())) - - def createContent(self): - QuickBar.createContent(self) - self.entry = QLineEdit(self) - self.addWidget(self.entry) - self.addAction(self._actions['go']) - self.entry.returnPressed.connect(self._actions['go'].trigger) - - def setVisible(self, visible=True): - QuickBar.setVisible(self, visible) - if visible: - self.entry.setFocus() - self.entry.selectAll() - - def setCompletionKeys(self, keys): - self.entry.setCompleter(QCompleter(keys)) -  class HgRepoView(QTableView):     revisionClicked = pyqtSignal(object) @@ -81,7 +50,6 @@
  self.setSelectionMode(QAbstractItemView.ExtendedSelection)   self.setSelectionBehavior(QAbstractItemView.SelectRows)   - self.createToolbars()   self.doubleClicked.connect(self.revActivated)   self.clicked.connect(self.revClicked)   @@ -98,11 +66,6 @@
  return   QTableView.mousePressEvent(self, event)   - def createToolbars(self): - self.gototb = tb = GotoQuickBar(self) - tb.setObjectName('gototb') - tb.gotoSignal.connect(self.goto) -   def contextMenuEvent(self, event):   self.menuRequested.emit(event.globalPos(), self.selectedRevisions())   @@ -121,7 +84,6 @@
  self.init_variables()   QTableView.setModel(self, model)   self.selectionModel().currentRowChanged.connect(self.revSelected) - self.gototb.setCompletionKeys(self.repo.tags().keys())   self.resetDelegate()   model.layoutChanged.connect(self.resetDelegate)   @@ -225,7 +187,8 @@
  if ctx.thgmqunappliedpatch() or ctx2.thgmqunappliedpatch():   return   ancestor = ctx.ancestor(ctx2) - self.showMessage.emit(_("Goto ancestor of %s and %s")%(ctx.rev(), ctx2.rev())) + self.showMessage.emit(_("Goto ancestor of %s and %s") % ( + ctx.rev(), ctx2.rev()))   self.goto(ancestor.rev())     def updateActions(self): @@ -269,5 +232,4 @@
  else:   idx = self.model().indexFromRev(rev)   if idx is not None: - self.gototb.setVisible(False)   self.setCurrentIndex(idx)
 
30
31
32
 
33
34
35
36
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
37
38
39
 
74
75
76
 
77
78
79
 
84
85
86
 
 
 
 
 
87
88
89
 
438
439
440
 
441
442
443
 
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
 
106
107
108
109
110
111
112
 
117
118
119
120
121
122
123
124
125
126
127
 
476
477
478
479
480
481
482
@@ -30,10 +30,42 @@
 from tortoisehg.hgqt.manifestdialog import ManifestTaskWidget  from tortoisehg.hgqt.sync import SyncWidget  from tortoisehg.hgqt.grep import SearchWidget +from tortoisehg.hgqt.quickbar import QuickBar    from PyQt4.QtCore import *  from PyQt4.QtGui import *   +class GotoQuickBar(QuickBar): + gotoSignal = pyqtSignal(unicode) + + def __init__(self, parent): + QuickBar.__init__(self, 'Goto', 'Ctrl+Shift+G', 'Goto', parent) + + def createActions(self, openkey, desc): + QuickBar.createActions(self, openkey, desc) + self._actions['go'] = QAction('Go', self) + self._actions['go'].triggered.connect(self.goto) + + def goto(self): + self.gotoSignal.emit(unicode(self.entry.text())) + + def createContent(self): + QuickBar.createContent(self) + self.entry = QLineEdit(self) + self.addWidget(self.entry) + self.addAction(self._actions['go']) + self.entry.returnPressed.connect(self._actions['go'].trigger) + + def setVisible(self, visible=True): + QuickBar.setVisible(self, visible) + if visible: + self.entry.setFocus() + self.entry.selectAll() + + def setCompletionKeys(self, keys): + self.entry.setCompleter(QCompleter(keys)) + +  class RepoWidget(QWidget):     showMessageSignal = pyqtSignal(str) @@ -74,6 +106,7 @@
  self.repotabs_splitter = QSplitter(orientation=Qt.Vertical)   self.setLayout(QVBoxLayout())   self.layout().setContentsMargins(0, 0, 0, 0) + self.layout().setSpacing(0)     self.filterbar = RepoFilterBar(self.repo)   self.filterbar.branchChanged.connect(self.setBranch) @@ -84,6 +117,11 @@
  self.filterbar.filterToggled.connect(self.filterToggled)   self.layout().addWidget(self.filterbar)   + self.gototb = tb = GotoQuickBar(self) + tb.setObjectName('gototb') + tb.gotoSignal.connect(self.goto) + self.layout().addWidget(tb) +   self.revsetfilter = self.filterbar.filtercb.isChecked()     self.layout().addWidget(self.repotabs_splitter) @@ -438,6 +476,7 @@
  self.repomodel.loaded.connect(self.modelLoaded)   self.repomodel.showMessage.connect(self.showMessage)   self.repoview.setModel(self.repomodel) + self.gototb.setCompletionKeys(self.repo.tags().keys())     def modelFilled(self):   'initial batch of revisions loaded'