Kiln » TortoiseHg » TortoiseHg
Clone URL:  
Pushed to one repository · View In Graph Contained in 0.9, 0.9.1, and 0.9.1.1

stable history: add ListStore to 'post pull' combobox

Changeset 9dd49234e443

Parent a5ce1c216ae7

by Yuki KODAMA

Changes to one file · Browse files at 9dd49234e443 Showing diff from parent a5ce1c216ae7 Diff from another changeset...

 
947
948
949
 
950
951
952
 
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
 
 
 
 
 
 
 
 
 
 
 
 
 
971
972
973
974
975
976
977
978
 
1101
1102
1103
1104
1105
1106
 
 
 
1107
1108
1109
 
1251
1252
1253
1254
1255
1256
 
 
 
1257
1258
1259
 
947
948
949
950
951
952
953
 
956
957
958
 
 
 
 
 
 
 
 
 
 
 
 
 
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
 
 
975
976
977
 
1100
1101
1102
 
 
 
1103
1104
1105
1106
1107
1108
 
1250
1251
1252
 
 
 
1253
1254
1255
1256
1257
1258
@@ -947,6 +947,7 @@
  conf.connect('clicked', self.conf_clicked, urlcombo)   email.connect('clicked', self.email_clicked)   + ## post pull drop-down list   syncbox.append_widget(gtk.Label(_('After Pull:')))   ppulldata = [('none', _('Nothing')), ('update', _('Update'))]   ppull = self.repo.ui.config('tortoisehg', 'postpull', 'none') @@ -955,24 +956,22 @@
  if 'rebase' in self.exs or 'rebase' == ppull:   ppulldata.append(('rebase', _('Rebase')))   - self.ppullcombo = gtk.combo_box_new_text() - ppullcombo = self.ppullcombo - for (index, (name, label)) in enumerate(ppulldata): - ppullcombo.insert_text(index, label) - - for (index, (name, label)) in enumerate(ppulldata): - if ppull == name: - pos = index - break; - else: - pos = [index for (index, (name, label)) - in enumerate(ppulldata) if name == 'none'][0] - ppullcombo.set_active(pos) + ppulllist = gtk.ListStore(str, # name + str) # label (utf-8) + ppullcombo = gtk.ComboBox(ppulllist) + syncbox.append_widget(ppullcombo) + cell = gtk.CellRendererText() + ppullcombo.pack_start(cell) + ppullcombo.add_attribute(cell, 'text', 1) + selindex = 0 + for name, label in ppulldata: + ppulllist.append((name, label)) + if name == ppull: + selindex = len(ppulllist) - 1 + ppullcombo.set_active(selindex)   self.ppullcombo = ppullcombo   self.ppulldata = ppulldata   - syncbox.append_widget(ppullcombo) -   # filter bar   self.filterbox = gtklib.SlimToolbar()   filterbox = self.filterbox @@ -1101,9 +1100,9 @@
  return self.stbar     def apply_clicked(self, button): - ppullcombo, ppulldata = self.ppullcombo, self.ppulldata - sel = ppullcombo.get_active_text() - ppull = [name for (name, label) in ppulldata if sel == label][0] + combo = self.ppullcombo + list, iter = combo.get_model(), combo.get_active_iter() + ppull, label = list[list.get_path(iter)]   if ppull == 'fetch':   cmd = ['fetch', '--message', 'merge']   # load the fetch extension explicitly @@ -1251,9 +1250,9 @@
  self.set_bundlefile(result)     def pull_clicked(self, toolbutton): - ppullcombo, ppulldata = self.ppullcombo, self.ppulldata - sel = ppullcombo.get_active_text() - ppull = [name for (name, label) in ppulldata if sel == label][0] + combo = self.ppullcombo + list, iter = combo.get_model(), combo.get_active_iter() + ppull, label = list[list.get_path(iter)]   if ppull == 'fetch':   cmd = ['fetch', '--message', 'merge']   # load the fetch extension explicitly