by
Changes to 6 files · Browse files at 3e9fa875c486 Showing diff from parent c3bfa782ddc0 1c508fce19e5 Diff from another changeset...
|
@@ -214,7 +214,7 @@ _(' %s is larger than the specified max diff size') % wfile]
else:
lines = []
- matcher = cmdutil.match(self.repo, [wfile])
+ matcher = cmdutil.matchfiles(self.repo, [wfile])
opts = mdiff.diffopts(git=True, nodates=True)
for s in patch.diff(self.repo, n1, n2, match=matcher, opts=opts):
lines.extend(s.splitlines())
|
@@ -7,13 +7,14 @@ import os
import gtk
import gobject
+import re
-from mercurial import hg, ui, match
+from mercurial import hg, ui, match, util
from thgutil.i18n import _
from thgutil import shlib, hglib, paths
-from hggtk import gtklib
+from hggtk import gtklib, gdialog
class HgIgnoreDialog(gtk.Window):
'Edit a reposiory .hgignore file'
@@ -24,7 +25,8 @@ gtklib.set_tortoise_keys(self)
self.root = paths.find_root()
- self.set_title(_('Ignore filter for ') + hglib.toutf(os.path.basename(self.root)))
+ base = os.path.basename(self.root)
+ self.set_title(_('Ignore filter for ') + hglib.toutf(base))
self.set_default_size(630, 400)
self.notify_func = None
@@ -169,16 +171,32 @@ newglob = hglib.fromutf(glob_entry.get_text())
if newglob == '':
return
- self.ignorelines.append('glob:' + newglob)
+ newglob = 'glob:' + newglob
+ try:
+ match.match(self.root, '', [], [newglob])
+ except util.Abort, inst:
+ gdialog.Prompt(_('Invalid glob expression'), str(inst),
+ self).run()
+ return
+ self.ignorelines.append(newglob)
self.write_ignore_lines()
+ glob_entry.set_text('')
self.refresh()
def add_regexp(self, widget, regexp_entry):
newregexp = hglib.fromutf(regexp_entry.get_text())
if newregexp == '':
return
- self.ignorelines.append('regexp:' + newregexp)
+ try:
+ match.match(self.root, '', [], ['relre:' + newregexp])
+ re.compile(newregexp)
+ except (util.Abort, re.error), inst:
+ gdialog.Prompt(_('Invalid regexp expression'), str(inst),
+ self).run()
+ return
+ self.ignorelines.append('relre:' + newregexp)
self.write_ignore_lines()
+ regexp_entry.set_text('')
self.refresh()
def thgrefresh(self, window):
|
@@ -125,7 +125,7 @@ def prompt_response(self, dialog, response_id):
dialog.destroy()
if response_id == gtk.RESPONSE_DELETE_EVENT:
- raise util.Abort('No response')
+ self.responseq.put(None)
else:
self.responseq.put(chr(response_id))
|
@@ -186,6 +186,7 @@
self.ovenable.set_active(overlayenable)
self.lclonly.set_active(localdisks)
+ self.lclonly.set_sensitive(overlayenable)
self.hgighlight_taskbaricon.set_active(hgighlight_taskbaricon)
promoted = [pi.strip() for pi in promoteditems.split(',')]
for cmd, check in self.cmptoggles.iteritems():
|
Loading...