aboutsummaryrefslogtreecommitdiffstats
path: root/libbe/ui/util/__init__.py
diff options
context:
space:
mode:
authorW. Trevor King <wking@drexel.edu>2009-12-12 01:12:17 -0500
committerW. Trevor King <wking@drexel.edu>2009-12-12 01:12:17 -0500
commit8b4ad37815cbef1e06532179f9ca098588d9cb44 (patch)
treeba4810396c75a70ebb2c7ddceea580b2660dbfe7 /libbe/ui/util/__init__.py
parentbf3d434b244c57556bec979acbc658c30eb58221 (diff)
downloadbugseverywhere-8b4ad37815cbef1e06532179f9ca098588d9cb44.tar.gz
Moved command completion from libbe.ui.util to libbe.command.util
Diffstat (limited to 'libbe/ui/util/__init__.py')
-rw-r--r--libbe/ui/util/__init__.py68
1 files changed, 0 insertions, 68 deletions
diff --git a/libbe/ui/util/__init__.py b/libbe/ui/util/__init__.py
index a650d33..b98f164 100644
--- a/libbe/ui/util/__init__.py
+++ b/libbe/ui/util/__init__.py
@@ -1,69 +1 @@
# Copyright
-
-class Completer (object):
- def __init__(self, options):
- self.options = options
- def __call__(self, bugdir, fragment=None):
- return [fragment]
-
-def complete_status(bugdir, fragment=None):
- return [fragment]
-def complete_severity(bugdir, fragment=None):
- return [fragment]
-def complete_assigned(bugdir, fragment=None):
- return [fragment]
-def complete_extra_strings(bugdir, fragment=None):
- return [fragment]
-
-def select_values(string, possible_values, name="unkown"):
- """
- This function allows the user to select values from a list of
- possible values. The default is to select all the values:
-
- >>> select_values(None, ['abc', 'def', 'hij'])
- ['abc', 'def', 'hij']
-
- The user selects values with a comma-separated limit_string.
- Prepending a minus sign to such a list denotes blacklist mode:
-
- >>> select_values('-abc,hij', ['abc', 'def', 'hij'])
- ['def']
-
- Without the leading -, the selection is in whitelist mode:
-
- >>> select_values('abc,hij', ['abc', 'def', 'hij'])
- ['abc', 'hij']
-
- In either case, appropriate errors are raised if on of the
- user-values is not in the list of possible values. The name
- parameter lets you make the error message more clear:
-
- >>> select_values('-xyz,hij', ['abc', 'def', 'hij'], name="foobar")
- Traceback (most recent call last):
- ...
- UserError: Invalid foobar xyz
- ['abc', 'def', 'hij']
- >>> select_values('xyz,hij', ['abc', 'def', 'hij'], name="foobar")
- Traceback (most recent call last):
- ...
- UserError: Invalid foobar xyz
- ['abc', 'def', 'hij']
- """
- possible_values = list(possible_values) # don't alter the original
- if string == None:
- pass
- elif string.startswith('-'):
- blacklisted_values = set(string[1:].split(','))
- for value in blacklisted_values:
- if value not in possible_values:
- raise UserError('Invalid %s %s\n %s'
- % (name, value, possible_values))
- possible_values.remove(value)
- else:
- whitelisted_values = string.split(',')
- for value in whitelisted_values:
- if value not in possible_values:
- raise UserError('Invalid %s %s\n %s'
- % (name, value, possible_values))
- possible_values = whitelisted_values
- return possible_values