states.py
changeset 26 c9da15600775
parent 25 b372166d460d
child 27 31906bc290ff
--- a/states.py	Fri Jul 01 17:03:49 2011 +0200
+++ b/states.py	Fri Jul 01 17:20:45 2011 +0200
@@ -119,7 +119,30 @@
 # New commands
 #############################
 
-cmdtable = {}
+
+def cmdstates(ui, repo, *states, **opt):
+    """show enabled states"""
+    if not states:
+        for st in sorted(repo._enabledstates):
+            ui.write('%s\n' % st)
+    else:
+        off = opt.get('off', False)
+        for state_name in states:
+            for st in STATES:
+                if st.name == state_name:
+                    break
+            else:
+                ui.write_err(_('no state named %s\n') % state_name)
+                return 1
+            if off and st in repo._enabledstates:
+                repo._enabledstates.remove(st)
+            else:
+                repo._enabledstates.add(st)
+        repo._writeenabledstates()
+    return 0
+
+cmdtable = {'states': (cmdstates, [ ('', 'off', False, _('desactivate the state') )], '<state>')}
+#cmdtable = {'states': (cmdstates, [], '<state>')}
 
 def makecmd(state):
     def cmdmoveheads(ui, repo, *changesets):