hgext/mq.py
changeset 11819 1c00577b0298
parent 11789 e2bce1c717fa
child 11938 b8b1e6e78486
--- a/hgext/mq.py	Wed Aug 11 20:16:22 2010 +0800
+++ b/hgext/mq.py	Thu Aug 05 12:25:53 2010 +0200
@@ -2172,7 +2172,15 @@
     '''
     def status(idx):
         guards = q.series_guards[idx] or ['unguarded']
-        ui.write('%s: ' % ui.label(q.series[idx], 'qguard.patch'))
+        if q.series[idx] in applied:
+            state = 'applied'
+        elif q.pushable(idx)[0]:
+            state = 'unapplied'
+        else:
+            state = 'guarded'
+        label = 'qguard.patch qguard.%s qseries.%s' % (state, state)
+        ui.write('%s: ' % ui.label(q.series[idx], label))
+
         for i, guard in enumerate(guards):
             if guard.startswith('+'):
                 ui.write(guard, label='qguard.positive')
@@ -2184,6 +2192,7 @@
                 ui.write(' ')
         ui.write('\n')
     q = repo.mq
+    applied = set(p.name for p in q.applied)
     patch = None
     args = list(args)
     if opts['list']: