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

hgemail: move revision list to changesets model

Changeset 894d811d1169

Parent eab80dfc4363

by Yuya Nishihara

Changes to one file · Browse files at 894d811d1169 Showing diff from parent eab80dfc4363 Diff from another changeset...

 
30
31
32
33
34
35
36
37
38
39
40
41
 
42
43
44
 
93
94
95
 
 
 
 
 
 
 
 
 
 
 
 
 
96
97
98
 
185
186
187
188
 
189
190
191
 
223
224
225
226
 
227
228
229
 
242
243
244
245
 
246
247
248
 
291
292
293
294
 
295
296
297
 
302
303
304
305
306
307
308
309
310
311
312
 
324
325
326
 
 
 
 
327
328
329
 
30
31
32
 
33
34
35
36
37
 
 
 
38
39
40
41
 
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
 
195
196
197
 
198
199
200
201
 
233
234
235
 
236
237
238
239
 
252
253
254
 
255
256
257
258
 
301
302
303
 
304
305
306
307
 
312
313
314
 
 
 
 
 
315
316
317
 
329
330
331
332
333
334
335
336
337
338
@@ -30,15 +30,12 @@
  self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint)   self._ui = ui   self._repo = repo - self._revs = revs     self._qui = Ui_EmailDialog()   self._qui.setupUi(self)   self._qui.bundle_radio.setEnabled(False) # TODO: bundle support   - changesets = _ChangesetsModel(self._repo, self._purerevs, parent=self) - self._qui.changesets_view.setModel(changesets) - + self._initchangesets(revs)   self._initpreviewtab()   self._initintrobox()   self._readhistory() @@ -93,6 +90,19 @@
  w = getattr(self._qui, '%s_edit' % k)   s.setValue('email/%s_history' % k, list(itercombo(w))[:10])   + def _initchangesets(self, revs): + def purerevs(revs): + return cmdutil.revrange(self._repo, revs) + + self._changesets = _ChangesetsModel(self._repo, purerevs(revs), + parent=self) + self._qui.changesets_view.setModel(self._changesets) + + @property + def _revs(self): + """Returns list of revisions to be sent""" + return self._changesets.revs +   def _filldefaults(self):   """Fill form by default values"""   def getfromaddr(ui): @@ -185,7 +195,7 @@
  return False     # TODO: is it nice if we can choose revisions to send? - if not self._purerevs: + if not self._revs:   return False     return True @@ -223,7 +233,7 @@
    opts = self._patchbombopts()   try: - cmd = cmdui.Dialog(['email'] + cmdargs(opts) + list(self._revs), + cmd = cmdui.Dialog(['email'] + cmdargs(opts) + list(map(str, self._revs)),   parent=self)   cmd.setWindowTitle(_('Sending Email'))   cmd.show_output(False) @@ -242,7 +252,7 @@
    def _introrequired(self):   """Is intro message required?""" - return len(self._purerevs) > 1 + return len(self._revs) > 1     def _initpreviewtab(self):   def initqsci(w): @@ -291,7 +301,7 @@
  if 'PAGER' in os.environ:   del os.environ['PAGER']   - loadpatchbomb().patchbomb(ui, self._repo, *self._revs, + loadpatchbomb().patchbomb(ui, self._repo, *map(str, self._revs),   **opts)   return stripheadmsg(hglib.tounicode(buf.getvalue()))   finally: @@ -302,11 +312,6 @@
  """Index of preview tab"""   return self._qui.main_tabs.indexOf(self._qui.preview_tab)   - @util.propertycache - def _purerevs(self): - """Extract revranges to list of pure revision numbers""" - return cmdutil.revrange(self._repo, self._revs) -   @pyqtSlot()   def on_settings_button_clicked(self):   from tortoisehg.hgqt import settings @@ -324,6 +329,10 @@
  self._repo = repo   self._revs = revs   + @property + def revs(self): + return self._revs +   def data(self, index, role):   if (not index.isValid()) or role != Qt.DisplayRole:   return QVariant()