by
Changes to 3 files · Browse files at f2595f775e8e Showing diff from parent ea5baa91e88b d3c7245ea536 Diff from another changeset...
@@ -57,7 +57,11 @@
def get_title(self):
- return os.path.basename(self.repo.root) + ' commit ' + ' '.join(self.pats) + ' ' + self.opts['user'] + ' ' + self.opts['date']
+ root = os.path.basename(self.repo.root)
+ user = self.opts.get('user')
+ date = self.opts.get('date')
+ pats = ' '.join(self.pats)
+ return ' '.join([root, 'commit', pats, user, date])
def get_icon(self):
return 'menucommit.ico'
@@ -289,6 +293,7 @@ def _commit_selected(self, files):
import hgshelve
# 1a. get list of chunks not rejected
+ files = [util.pconvert(f) for f in files]
hlist = [x[DM_CHUNK_ID] for x in self.diff_model if not x[DM_REJECTED]]
repo, chunks, ui = self.repo, self._shelve_chunks, self.ui
|
@@ -11,30 +11,17 @@ from mercurial import hg, ui, match
class HgIgnoreDialog(gtk.Window):
- """ Edit a reposiory .hgignore file """
+ 'Edit a reposiory .hgignore file'
def __init__(self, root='', fileglob=''):
- """ Initialize the Dialog """
+ 'Initialize the Dialog'
gtk.Window.__init__(self, gtk.WINDOW_TOPLEVEL)
self.root = root
- self.set_title('Ignore mask for ' + os.path.basename(root))
+ self.set_title('Ignore filter for ' + os.path.basename(root))
self.set_default_size(630, 400)
self.notify_func = None
- self.tbar = gtk.Toolbar()
- self.tips = gtk.Tooltips()
-
- tbuttons = [
- self._toolbutton(gtk.STOCK_REFRESH,
- 'Refresh',
- self._refresh_clicked,
- tip='Reload hgignore')
- ]
- for btn in tbuttons:
- self.tbar.insert(btn, -1)
mainvbox = gtk.VBox()
- self.add(mainvbox)
- mainvbox.pack_start(self.tbar, False, False, 2)
hbox = gtk.HBox()
lbl = gtk.Label('Glob:')
@@ -71,7 +58,6 @@ pattree.set_reorderable(False)
sel = pattree.get_selection()
sel.set_mode(gtk.SELECTION_SINGLE)
- sel.connect("changed", self.pattern_rowchanged)
col = gtk.TreeViewColumn('Patterns', gtk.CellRendererText(), text=0)
pattree.append_column(col)
pattree.set_headers_visible(False)
@@ -80,18 +66,19 @@ scrolledwindow.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
scrolledwindow.set_border_width(4)
scrolledwindow.add(pattree)
+ vbox = gtk.VBox()
+ vbox.pack_start(scrolledwindow, True, True, 2)
+ bhbox = gtk.HBox()
remove = gtk.Button("Remove Selected")
remove.connect("pressed", self.remove_pressed, sel)
- vbox = gtk.VBox()
- vbox.pack_start(scrolledwindow, True, True, 2)
- vbox.pack_start(remove, False, False, 2)
+ remove.set_sensitive(False)
+ bhbox.pack_start(remove, False, False, 2)
+ vbox.pack_start(bhbox, False, False, 2)
frame.add(vbox)
frame = gtk.Frame('Unknown Files')
hbox.pack_start(frame, True, True, 4)
unknowntree = gtk.TreeView()
- sel = unknowntree.get_selection()
- sel.connect("changed", self.unknown_rowchanged)
col = gtk.TreeViewColumn('Files', gtk.CellRendererText(), text=0)
unknowntree.append_column(col)
scrolledwindow = gtk.ScrolledWindow()
@@ -102,12 +89,22 @@ unknowntree.set_model(model)
unknowntree.set_headers_visible(False)
self.unkmodel = model
- frame.add(scrolledwindow)
+ vbox = gtk.VBox()
+ vbox.pack_start(scrolledwindow, True, True, 2)
+ bhbox = gtk.HBox()
+ refresh = gtk.Button("Refresh")
+ refresh.connect("pressed", self.refresh_clicked, sel)
+ bhbox.pack_start(refresh, False, False, 2)
+ vbox.pack_start(bhbox, False, False, 2)
+ frame.add(vbox)
mainvbox.pack_start(hbox, True, True)
+ self.add(mainvbox)
glob_entry.grab_focus()
- self.connect('map_event', self._on_window_map_event)
+ pattree.get_selection().connect('changed', self.pattree_rowchanged, remove)
+ unknowntree.get_selection().connect('changed', self.unknown_rowchanged)
+ self.connect('map_event', self.on_window_map_event)
def remove_pressed(self, widget, selection):
model, rows = selection.get_selected_rows()
@@ -116,10 +113,10 @@ self.write_ignore_lines()
self.refresh()
- def pattern_rowchanged(self, sel):
+ def pattree_rowchanged(self, sel, remove):
model, iter = sel.get_selected()
- if not iter:
- return
+ sensitive = iter and True or False
+ remove.set_sensitive(sensitive)
def unknown_rowchanged(self, sel):
model, iter = sel.get_selected()
@@ -139,10 +136,10 @@ self.write_ignore_lines()
self.refresh()
- def _on_window_map_event(self, event, param):
+ def on_window_map_event(self, event, param):
self.refresh()
- def _refresh_clicked(self, togglebutton, data=None):
+ def refresh_clicked(self, togglebutton, data=None):
self.refresh()
def set_notify_func(self, func):
|
@@ -77,9 +77,11 @@ fr = gtk.Button('Find Renames')
fc = gtk.Button('Find Copies')
hbox = gtk.HBox()
- hbox.pack_start(fr, True, True, 2)
- hbox.pack_start(fc, True, True, 2)
+ hbox.pack_start(fr, False, False, 2)
+ hbox.pack_start(fc, False, False, 2)
vbox.pack_start(hbox, False, False, 2)
+ fr.set_sensitive(False)
+ fc.set_sensitive(False)
unknownframe = gtk.Frame('Unrevisioned Files')
unknownframe.add(vbox)
@@ -113,22 +115,18 @@ col.set_resizable(True)
ctree.append_column(col)
- ctree.connect('row-activated', self.candidate_row_act, unknowntree)
scroller = gtk.ScrolledWindow()
scroller.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
scroller.add(ctree)
stbar = gtklib.StatusBar()
- args = (unknowntree, ctree, adjustment, stbar)
vbox = gtk.VBox()
vbox.pack_start(scroller, True, True, 2)
ac = gtk.Button('Accept Match')
- fc.connect('pressed', self.find_copies, *args)
- fr.connect('pressed', self.find_renames, *args)
- ac.connect('pressed', self.accept_match, *args)
hbox = gtk.HBox()
hbox.pack_start(ac, False, False, 2)
vbox.pack_start(hbox, False, False, 2)
+ ac.set_sensitive(False)
candidateframe = gtk.Frame('Candidate Matches')
candidateframe.add(vbox)
@@ -170,7 +168,14 @@ vbox.pack_start(stbar, False, False, 2)
self.add(vbox)
- ctree.connect('cursor-changed', self.show_diff, buffer)
+ args = (unknowntree, ctree, adjustment, stbar)
+ fc.connect('pressed', self.find_copies, *args)
+ fr.connect('pressed', self.find_renames, *args)
+ ac.connect('pressed', self.accept_match, *args)
+
+ unknowntree.get_selection().connect('changed', self.unknown_sel_change, fr, fc)
+ ctree.connect('row-activated', self.candidate_row_act, unknowntree, stbar)
+ ctree.get_selection().connect('changed', self.show_diff, buffer, ac)
self.connect('map_event', self.on_window_map_event, unkmodel)
self.connect('delete-event', self.save_settings,
settings, hpaned, vpaned, adjustment)
@@ -306,12 +311,23 @@ row[3] = False
self.refresh(unktree.get_model())
- def candidate_row_act(self, ctree, path, column, unktree):
+ def candidate_row_act(self, ctree, path, column, unktree, stbar):
'User activated row of candidate list'
- self.accept_match(ctree, unktree, ctree, None)
+ self.accept_match(ctree, unktree, ctree, None, stbar)
- def show_diff(self, tree, buffer):
+ def unknown_sel_change(self, selection, fr, fc):
+ 'User selected a row in the unknown tree'
+ model, paths = selection.get_selected_rows()
+ sensitive = paths and True or False
+ fr.set_sensitive(sensitive)
+ fc.set_sensitive(sensitive)
+
+ def show_diff(self, selection, buffer, ac):
'User selected a row in the candidate tree'
+ model, paths = selection.get_selected_rows()
+ sensitive = paths and True or False
+ ac.set_sensitive(sensitive)
+
try:
repo = hg.repository(ui.ui(), self.root)
except RepoError:
@@ -319,7 +335,6 @@
buffer.set_text('')
iter = buffer.get_start_iter()
- model, paths = tree.get_selection().get_selected_rows()
for path in paths:
row = model[path]
src, dest, percent, sensitive = row
|
Loading...