source: trunk/grails-app/domain/dbnp/studycapturing/TemplateFieldType.groovy @ 482

Last change on this file since 482 was 482, checked in by keesvb, 13 years ago

solved compilation error, added relative date type, restructured menu's, changed topnav layout to also scrolldown on click on main buttons

  • Property svn:keywords set to Date Author Rev
File size: 1.1 KB
Line 
1package dbnp.studycapturing
2
3/**
4 * Enum describing the type of a templated field.
5 * Revision information:
6 * $Rev: 482 $
7 * $Author: keesvb $
8 * $Date: 2010-05-27 06:36:24 +0000 (do, 27 mei 2010) $
9 */
10public enum TemplateFieldType implements Serializable  {
11        STRING('String'),
12        TEXT('Long string'),
13        INTEGER('Integer number'),
14        FLOAT('Floating-point number'),
15        DOUBLE('Double precision floating-point number'),
16        STRINGLIST('List of items'),
17        ONTOLOGYTERM('Ontology Reference'),
18        DATE('Date'),
19    RELDATE('Relative date') // relative date, e.g. days since start of study
20
21        String name
22
23        TemplateFieldType(String name) {
24                this.name = name
25        }
26
27        static list() {
28                [STRING, TEXT, INTEGER, FLOAT, DOUBLE, STRINGLIST, ONTOLOGYTERM, DATE, RELDATE]
29        }
30
31        def getDefaultValue() {
32                switch(this) {
33                        case [STRING, TEXT]:
34                                return ""
35                        case INTEGER:
36                                return Integer.MIN_VALUE
37                        case FLOAT:
38                                return Float.NaN
39                        case DOUBLE:
40                                return Double.MIN_VALUE
41                        case STRINGLIST:
42                                return null
43                        case ONTOLOGYTERM:
44                                return null
45                        case DATE:
46                                return null
47            case RELDATE:
48                return null
49                        default:
50                                throw new NoSuchFieldException("Field type ${fieldType} not recognized")
51                }
52        }
53}
Note: See TracBrowser for help on using the repository browser.