Changeset 294
- Timestamp:
- 09/03/07 15:01:44 (1 year ago)
- Files:
-
- trunk/formal/html/SelectOtherChoice.html (modified) (2 diffs)
- trunk/formal/widget.py (modified) (4 diffs)
- trunk/setup.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/formal/html/SelectOtherChoice.html
r158 r294 1 1 <n:invisible xmlns:n="http://nevow.com/ns/nevow/0.1"> 2 <span class="select-with-other"> 2 3 <span n:pattern="editable" class="select-with-other"> 3 4 <n:attr name="id"><n:slot name="id"/></n:attr> 4 5 <select> … … 14 15 <input type="text"><n:attr name="name"><n:slot name="key" />-other</n:attr><n:attr name="value"><n:slot name="otherValue"/></n:attr></input> 15 16 </span> 17 18 <span n:pattern="immutable" class="select-with-other"> 19 <n:attr name="id"><n:slot name="id"/></n:attr> 20 <select disabled="disabled"> 21 <n:attr name="name"><n:slot name="key"/></n:attr> 22 <n:slot name="options"> 23 <option n:pattern="option"><n:attr name="value"><n:slot name="value"/></n:attr><n:slot name="label">One</n:slot></option> 24 <option selected="selected" n:pattern="selectedOption"><n:attr name="value"><n:slot name="value"/></n:attr><n:slot name="label">One</n:slot></option> 25 <option>Two</option> 26 <option>Three</option> 27 <option value="...">Other ...</option> 28 </n:slot> 29 </select> 30 <input readonly="readonly" type="text"><n:attr name="name"><n:slot name="key" />-other</n:attr><n:attr name="value"><n:slot name="otherValue"/></n:attr></input> 31 </span> 32 16 33 </n:invisible> trunk/formal/widget.py
r286 r294 371 371 372 372 def render(self, ctx, key, args, errors): 373 return self._render(ctx, key, args, errors, False) 374 375 def renderImmutable(self, ctx, key, args, errors): 376 return self._render(ctx, key, args, errors, True) 377 378 def _render(self, ctx, key, args, errors, immutable): 373 379 374 380 charset = util.getPOSTCharset(ctx) … … 383 389 value = iformal.IKey(self.noneOption).key() 384 390 385 optionGen = inevow.IQ(self.template).patternGenerator('option') 386 selectedOptionGen = inevow.IQ(self.template).patternGenerator('selectedOption') 391 if immutable: 392 template = inevow.IQ(self.template).onePattern('immutable') 393 else: 394 template = inevow.IQ(self.template).onePattern('editable') 395 optionGen = template.patternGenerator('option') 396 selectedOptionGen = template.patternGenerator('selectedOption') 387 397 optionTags = [] 388 398 selectOther = True … … 420 430 optionTags.append(tag) 421 431 422 tag = T.invisible[self.template.load(ctx)]432 tag = template 423 433 tag.fillSlots('key', key) 424 434 tag.fillSlots('id', render_cssid(key)) … … 426 436 tag.fillSlots('otherValue', otherValue) 427 437 return tag 428 429 def renderImmutable(self, ctx, key, args, errors):430 raise NotImplemented431 438 432 439 def processInput(self, ctx, key, args): trunk/setup.py
r293 r294 3 3 setup( 4 4 name='formal', 5 version='0.15. 3',5 version='0.15.4', 6 6 description='HTML forms framework for Nevow', 7 7 author='Matt Goodall',
