diff --git a/basetype.py b/basetype.py new file mode 100644 index 0000000..c501ccb --- /dev/null +++ b/basetype.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +"base 'interface' types for option types" +# Copyright (C) 2012 Team tiramisu (see README for all contributors) +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# The original `Config` design model is unproudly borrowed from +# the rough gus of pypy: pypy: http://codespeak.net/svn/pypy/dist/pypy/config/ +# the whole pypy projet is under MIT licence +# ____________________________________________________________ +# Option and OptionDescription modes +modes = ['normal', 'expert'] + +class HiddenBaseType(object): + hidden = False + def hide(self): + self.hidden = True + def show(self): + self.hidden = False + def _is_hidden(self): + # dangerous method: how an Option can determine its status by itself ? + return self.hidden + +class DisabledBaseType(object): + disabled = False + def disable(self): + self.disabled = True + def enable(self): + self.disabled = False + def _is_disabled(self): + return self.disabled + +class ModeBaseType(object): + mode = 'normal' + def get_mode(self): + return self.mode + def set_mode(self, mode): + if mode not in modes: + raise TypeError("Unknown mode: {0}".format(mode)) + self.mode = mode + diff --git a/doc/eole-report/eolreport/build/index-report.html b/doc/eole-report/eolreport/build/index-report.html index 098c9c7..a0597f8 100644 --- a/doc/eole-report/eolreport/build/index-report.html +++ b/doc/eole-report/eolreport/build/index-report.html @@ -3,7 +3,7 @@ - + rapports eole