Salome HOME
PN vielles macros
[tools/eficas.git] / Ihm / I_VALIDATOR.py
1 # -*- coding: utf-8 -*-
2 """
3    Ce module contient des classes permettant de définir des validateurs
4    pour EFICAS. Ces classes constituent un complément à des classes existantes
5    dans Noyau/N_VALIDATOR.py ou de nouvelles classes de validation.
6    Ces classes complémentaires ne servent que pour l'IHM d'EFICAS.
7    Elles servent essentiellement à ajouter des comportements spécifiques
8    IHM aux classes existantes dans le Noyau.
9    Ces comportements pourront etre rapatries dans le Noyau quand leur
10    interface sera stabilisée.
11 """
12
13 import types
14
15 class Valid:
16    """
17         Cette classe est la classe mere de toutes les classes complémentaires
18         que l'on trouve dans Ihm.
19    """
20
21 class ListVal(Valid):pass
22
23 class RangeVal(ListVal):pass
24
25 class CardVal(Valid):pass
26
27 class PairVal(ListVal):pass
28
29 class EnumVal(ListVal):pass
30           
31 class NoRepeat(ListVal):pass
32
33 class LongStr(ListVal):pass
34
35 class OrdList(ListVal):pass
36
37 CoercableFuncs = { types.IntType:     int,
38                    types.LongType:    long,
39                    types.FloatType:   float,
40                    types.ComplexType: complex,
41                    types.UnicodeType: unicode }
42
43 class TypeVal(ListVal):pass
44
45 class InstanceVal(ListVal):pass
46
47 class FunctionVal(Valid):pass
48
49 class OrVal(Valid):pass
50
51 class AndVal(Valid):pass
52