equal
deleted
inserted
replaced
24 |
24 |
25 |
25 |
26 from __future__ import absolute_import |
26 from __future__ import absolute_import |
27 from __future__ import print_function |
27 from __future__ import print_function |
28 import os |
28 import os |
|
29 import platform |
29 from zope.interface import implements |
30 from zope.interface import implements |
30 from nevow import appserver, inevow, tags, loaders, athena, url, rend |
31 from nevow import appserver, inevow, tags, loaders, athena, url, rend |
31 from nevow.page import renderer |
32 from nevow.page import renderer |
32 from formless import annotate |
33 from formless import annotate |
33 from formless import webform |
34 from formless import webform |
139 def addExtension(self, name, desc, fields, btnlabel, callback): |
140 def addExtension(self, name, desc, fields, btnlabel, callback): |
140 def _bind(ctx): |
141 def _bind(ctx): |
141 return annotate.MethodBinding( |
142 return annotate.MethodBinding( |
142 'action_'+name, |
143 'action_'+name, |
143 annotate.Method(arguments=[ |
144 annotate.Method(arguments=[ |
144 annotate.Argument(name, fieldtype) |
145 annotate.Argument(*field) |
145 for fieldname,fieldtype in fields], |
146 for field in fields], |
146 label = desc), |
147 label = desc), |
147 action = btnlabel) |
148 action = btnlabel) |
148 setattr(self, 'bind_'+name, _bind) |
149 setattr(self, 'bind_'+name, _bind) |
149 |
150 |
150 setattr(self, 'action_'+name, callback) |
151 setattr(self, 'action_'+name, callback) |
152 self.bindingsNames.append(name) |
153 self.bindingsNames.append(name) |
153 |
154 |
154 ConfigurableSettings = ConfigurableBindings() |
155 ConfigurableSettings = ConfigurableBindings() |
155 |
156 |
156 class ISettings(annotate.TypedInterface): |
157 class ISettings(annotate.TypedInterface): |
|
158 platform = annotate.String(label = _("Platform"), |
|
159 default = platform.system() + " " + platform.release(), |
|
160 immutable = True) |
|
161 # TODO version ? |
|
162 |
157 def sendLogMessage( |
163 def sendLogMessage( |
158 ctx = annotate.Context(), |
164 ctx = annotate.Context(), |
159 level = annotate.Choice(LogLevels, |
165 level = annotate.Choice(LogLevels, |
160 required=True, |
166 required=True, |
161 label=_("Log message level")), |
167 label=_("Log message level")), |