##// END OF EJS Templates
record: add an operation arguments to customize recording ui...
Laurent Charignon -
r25310:c1f5ef76 default
parent child Browse files
Show More
@@ -45,7 +45,7 b' def setupwrapcolorwrite(ui):'
45 setattr(ui, 'write', wrap)
45 setattr(ui, 'write', wrap)
46 return oldwrite
46 return oldwrite
47
47
48 def filterchunks(ui, originalhunks, usecurses, testfile):
48 def filterchunks(ui, originalhunks, usecurses, testfile, operation=None):
49 if usecurses:
49 if usecurses:
50 if testfile:
50 if testfile:
51 recordfn = crecordmod.testdecorator(testfile,
51 recordfn = crecordmod.testdecorator(testfile,
@@ -53,17 +53,23 b' def filterchunks(ui, originalhunks, usec'
53 else:
53 else:
54 recordfn = crecordmod.chunkselector
54 recordfn = crecordmod.chunkselector
55
55
56 return crecordmod.filterpatch(ui, originalhunks, recordfn)
56 return crecordmod.filterpatch(ui, originalhunks, recordfn, operation)
57
57
58 else:
58 else:
59 return patch.filterpatch(ui, originalhunks)
59 return patch.filterpatch(ui, originalhunks, operation)
60
60
61 def recordfilter(ui, originalhunks):
61 def recordfilter(ui, originalhunks, operation=None):
62 """ Prompts the user to filter the originalhunks and return a list of
63 selected hunks.
64 *operation* is used for ui purposes to indicate the user
65 what kind of filtering they are doing: reverting, commiting, shelving, etc.
66 """
62 usecurses = ui.configbool('experimental', 'crecord', False)
67 usecurses = ui.configbool('experimental', 'crecord', False)
63 testfile = ui.config('experimental', 'crecordtest', None)
68 testfile = ui.config('experimental', 'crecordtest', None)
64 oldwrite = setupwrapcolorwrite(ui)
69 oldwrite = setupwrapcolorwrite(ui)
65 try:
70 try:
66 newchunks = filterchunks(ui, originalhunks, usecurses, testfile)
71 newchunks = filterchunks(ui, originalhunks, usecurses, testfile,
72 operation)
67 finally:
73 finally:
68 ui.write = oldwrite
74 ui.write = oldwrite
69 return newchunks
75 return newchunks
@@ -425,7 +425,7 b' class uihunk(patchnode):'
425 def __repr__(self):
425 def __repr__(self):
426 return '<hunk %r@%d>' % (self.filename(), self.fromline)
426 return '<hunk %r@%d>' % (self.filename(), self.fromline)
427
427
428 def filterpatch(ui, chunks, chunkselector):
428 def filterpatch(ui, chunks, chunkselector, operation=None):
429 """interactively filter patch chunks into applied-only chunks"""
429 """interactively filter patch chunks into applied-only chunks"""
430
430
431 chunks = list(chunks)
431 chunks = list(chunks)
@@ -948,7 +948,7 b' class recordhunk(object):'
948 def __repr__(self):
948 def __repr__(self):
949 return '<hunk %r@%d>' % (self.filename(), self.fromline)
949 return '<hunk %r@%d>' % (self.filename(), self.fromline)
950
950
951 def filterpatch(ui, headers):
951 def filterpatch(ui, headers, operation=None):
952 """Interactively filter patch chunks into applied-only chunks"""
952 """Interactively filter patch chunks into applied-only chunks"""
953
953
954 def prompt(skipfile, skipall, query, chunk):
954 def prompt(skipfile, skipall, query, chunk):
General Comments 0
You need to be logged in to leave comments. Login now