web/formfields.py
changeset 1989 8c8dead642f7
parent 1988 b5c5c088bb03
child 2086 be76ce00a05e
equal deleted inserted replaced
1988:b5c5c088bb03 1989:8c8dead642f7
   198             elif self.max_length and self.max_length < 257:
   198             elif self.max_length and self.max_length < 257:
   199                 widget = TextInput()
   199                 widget = TextInput()
   200         super(StringField, self).init_widget(widget)
   200         super(StringField, self).init_widget(widget)
   201         if isinstance(self.widget, TextArea):
   201         if isinstance(self.widget, TextArea):
   202             self.init_text_area(self.widget)
   202             self.init_text_area(self.widget)
   203         elif isinstance(self.widget, Select):
       
   204             self.widget.attrs.setdefault('size', 1)
       
   205 
   203 
   206     def init_text_area(self, widget):
   204     def init_text_area(self, widget):
   207         if self.max_length < 513:
   205         if self.max_length < 513:
   208             widget.attrs.setdefault('cols', 60)
   206             widget.attrs.setdefault('cols', 60)
   209             widget.attrs.setdefault('rows', 5)
   207             widget.attrs.setdefault('rows', 5)
   240                 fkwargs['widget'] = HiddenInput()
   238                 fkwargs['widget'] = HiddenInput()
   241                 fkwargs['initial'] = 'text/html'
   239                 fkwargs['initial'] = 'text/html'
   242             else:
   240             else:
   243                 # else we want a format selector
   241                 # else we want a format selector
   244                 fkwargs['widget'] = Select()
   242                 fkwargs['widget'] = Select()
   245                 fkwargs['widget'].attrs['size'] = 1
       
   246                 fcstr = FormatConstraint()
   243                 fcstr = FormatConstraint()
   247                 fkwargs['choices'] = fcstr.vocabulary(req=req)
   244                 fkwargs['choices'] = fcstr.vocabulary(req=req)
   248                 fkwargs['internationalizable'] = True
   245                 fkwargs['internationalizable'] = True
   249                 fkwargs['initial'] = lambda f: f.form_field_format(self)
   246                 fkwargs['initial'] = lambda f: f.form_field_format(self)
   250             field = StringField(name=self.name + '_format', **fkwargs)
   247             field = StringField(name=self.name + '_format', **fkwargs)