diff options
author | Sylvain Thenault <sylvain.thenault@logilab.fr> | 2008-12-01 11:22:28 +0100 |
---|---|---|
committer | Sylvain Thenault <sylvain.thenault@logilab.fr> | 2008-12-01 11:22:28 +0100 |
commit | d57c02e99ddda1ae7d53d71365246eff9df9f727 (patch) | |
tree | da0244b450a06071625f354059a7791c532083b8 | |
parent | c7681e5cb0e59e9b5403037f90a2a94ae70f4e64 (diff) | |
download | logilab-common-d57c02e99ddda1ae7d53d71365246eff9df9f727.tar.gz |
new time/bytes option types, using textutils conversion function
-rw-r--r-- | optik_ext.py | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/optik_ext.py b/optik_ext.py index 9ceb145..d737a39 100644 --- a/optik_ext.py +++ b/optik_ext.py @@ -151,13 +151,22 @@ def check_color(option, opt, value): value or predefinied color" raise OptionValueError(msg % (opt, value)) +def check_time(option, opt, value): + from logilab.common.textutils import TIME_UNITS, apply_units + apply_unit(value, TIME_UNITS) + +def check_bytes(option, opt, value): + from logilab.common.textutils import BYTES_UNITS, apply_units + apply_unit(value, BYTES_UNITS) + import types class Option(BaseOption): """override optik.Option to add some new option types """ TYPES = BaseOption.TYPES + ('regexp', 'csv', 'yn', 'named', 'password', - 'multiple_choice', 'file', 'font', 'color') + 'multiple_choice', 'file', 'color', + 'time', 'bytes') ATTRS = BaseOption.ATTRS + ['hide'] TYPE_CHECKER = copy(BaseOption.TYPE_CHECKER) TYPE_CHECKER['regexp'] = check_regexp @@ -168,6 +177,8 @@ class Option(BaseOption): TYPE_CHECKER['file'] = check_file TYPE_CHECKER['color'] = check_color TYPE_CHECKER['password'] = check_password + TYPE_CHECKER['time'] = check_time + TYPE_CHECKER['bytes'] = check_bytes if HAS_MX_DATETIME: TYPES += ('date',) TYPE_CHECKER['date'] = check_date |