Ejemplo n.º 1
0
 def addDefaultField(self, fieldDescr):
     className = fieldDescr.classDescr.name
     fieldName = 'defaultValueFor%s_%s' % (className, fieldDescr.fieldName)
     fieldType = fieldDescr.appyType.clone()
     self.addField(fieldName, fieldType)
     fieldType.page.name = 'data'
     fieldType.group = gen.Group(fieldDescr.classDescr.klass.__name__)
Ejemplo n.º 2
0
 def addOptionalField(self, fieldDescr):
     className = fieldDescr.classDescr.name
     fieldName = 'optionalFieldsFor%s' % className
     fieldType = getattr(self.modelClass, fieldName, None)
     if not fieldType:
         fieldType = String(multiplicity=(0, None))
         fieldType.validator = []
         self.addField(fieldName, fieldType)
     fieldType.validator.append(fieldDescr.fieldName)
     fieldType.page.name = 'data'
     fieldType.group = gen.Group(fieldDescr.classDescr.klass.__name__)
Ejemplo n.º 3
0
 def addPodRelatedFields(self, fieldDescr):
     '''Adds the fields needed in the Tool for configuring a Pod field.'''
     className = fieldDescr.classDescr.name
     # On what page and group to display those fields ?
     pg = {
         'page': 'documents',
         'group': gen.Group(fieldDescr.classDescr.klass.__name__,
                            ['50%'] * 2)
     }
     # Add the field that will store the pod template.
     fieldName = 'podTemplateFor%s_%s' % (className, fieldDescr.fieldName)
     fieldType = gen.File(**pg)
     self.addField(fieldName, fieldType)
     # Add the field that will store the output format(s)
     fieldName = 'formatsFor%s_%s' % (className, fieldDescr.fieldName)
     fieldType = gen.String(validator=gen.Selection('getPodOutputFormats'),
                            multiplicity=(1, None),
                            default=('odt', ),
                            **pg)
     self.addField(fieldName, fieldType)