/[formed]/trunk/ChangeLog
ViewVC logotype

Diff of /trunk/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 14 by teichmann, Wed Aug 8 16:58:13 2007 UTC revision 161 by teichmann, Mon Sep 10 13:22:13 2007 UTC
# Line 1  Line 1 
1    2007-09-10 Sascha L. Teichmann <[email protected]>
2    
3            * tools/formed/formed/plugins/web/controllers.py: Pretty
4              print format data (dates e.g)
5    
6    2007-09-10 Sascha L. Teichmann <[email protected]>
7    
8            * tools/formed/formed/plugins/web/controllers.py: Modified
9              ErrorStats a bit to avoid mysterious extra error on page.
10                    No clue why this works.
11    
12    2007-09-10 Sascha L. Teichmann <[email protected]>
13    
14            * tools/formed/formed/plugins/web/form_renderer.py: Fixed value
15              problem with radio groups, too.
16    
17    2007-09-10 Torsten Irlaender <[email protected]>
18            * tools/formed/formed/plugins/web/controllers.py: Sessions are now
19              really removed when deleting a dataset.
20            
21    2007-09-10 Torsten Irlaender <[email protected]>
22    
23            * tools/formed/formed/plugins/web/controllers.py: Added new Class
24              ErrorStats which provides Information on remaining errors per page.
25    
26            * tools/formed/formed/plugins/web/renderers.py: Finished movement of
27              the renderer methods from controllers.py to renderers.py.
28    
29            * tools/formed/formed/plugins/web/plugin.py: Removed render_session
30              handlers
31    
32    2007-09-10 Sascha L. Teichmann <[email protected]>
33    
34            * tools/formed/formed/plugins/web/form_renderer.py: values for
35              choices are generated from the document tree now. This brings
36                    the state storage of select boxes in HTML to live.
37    
38    2007-09-09 Sascha L. Teichmann <[email protected]>
39    
40            * tools/formed/formed/plugins/web/semantic.py: Fixed problems with
41              range checking of integers.
42    
43            * tools/formed/formed/plugins/web/controllers.py: Added class
44              ErrorItem to track errors. They are stored in the session.
45    
46    2007-09-09 Sascha L. Teichmann <[email protected]>
47    
48            * tools/formed/formed/model/nodecomponents.py: Fixed returning
49              wrong index in Document.indexOfcomponentByClassAndName.
50    
51            * tools/formed/formed/plugins/web/form_renderer.py: 'error' was
52              written 'errot' in renderer for textareas.
53    
54            * tools/formed/formed/plugins/web/controllers.py: Some clean-ups.
55    
56    2007-09-09 Sascha L. Teichmann <[email protected]>
57    
58            * tools/formed/formed/plugins/web/help.py: Added a 'hasHelp'
59              method. Could be cheaper for some implementations of help.
60    
61            * tools/formed/formed/plugins/web/form_renderer.py: Modified
62              FormData to have distinct getData(), getHelp() and getError()
63                    methods. Various bug fixes.
64    
65            * tools/formed/formed/plugins/web/controllers.py: Implements the
66              new FormData (trivial by now).
67    
68            * tools/formed/formed/plugins/web/renderer.py: New FormData and
69              some bug fixes.
70    
71    2007-09-09 Sascha L. Teichmann <[email protected]>
72    
73            * tools/formed/formed/model/memory.py,
74              tools/formed/formed/model/persistent.py: Add a getValue() method
75                    to dataset abstraction. This is a bit of a workaround to bring
76                    global access across pages for rule checking to work.
77    
78            * tools/formed/formed/model/data.py: Fixed: When setting a new expression
79              the compiled version was not stored in the RuleLeaf.
80    
81            * tools/formed/formed/model/expr.py: shlex lexer does not like unicode.
82              convert the expression string to ascii for compilation.
83    
84            * tools/formed/formed/plugins/web/semantic.py: Remove the 'box' because
85              valid data is stored to the dataset immediately now. Fixed a bug
86                    with integer handler.
87    
88            * tools/formed/formed/plugins/web/controllers.py: Removed the semantic 'box'
89              stuff. When a submit is done extract the rules from the tree document
90                    that are effected by the modified variables and check them.
91    
92            * tools/formed/formed/plugins/web/renderer.py: Fixed exception handling
93              when dealing with templates.
94    
95    2007-09-07 Torsten Irlaender <[email protected]>
96            * tools/formed/formed/plugins/web/controllers.py,
97              tools/formed/formed/plugins/web/renderer.py: Moved more render
98              functions into renderer.py. New render classes are:
99              DataSetDigestRenderer, DataSetNavigationRenderer,
100              DataSetFormularRenderer, ConfirmationDialogRenderer
101    
102              Note: The new methods are only called from selected handlers. Other
103              handlers call the renderes in the old way.
104    
105    2007-09-07 Torsten Irlaender <[email protected]>
106            * tools/formed/formed/plugins/web/form_renderer.py: Renamed
107              renderer.py to form_renderer.py. This file will contain formular
108              specfic render methods in the future.
109            * tools/formed/formed/plugins/web/renderer.py: Added new renderer.py
110              which will contain general render methods.
111            * tools/formed/formed/plugins/web/controllers.py: Began to move all
112              rendering into renderer.py or form_renderer.py. This file will only
113              contain teh handlers in the future.
114    
115    2007-09-07 Torsten Irlaender <[email protected]>
116            * tools/formed/formed/plugins/web/renderer.py,
117              tools/formed/formed/plugins/web/controller.py:
118              Renderes now get an instance of the formdata object to provide
119              access the data needed to render various infoboxes etc. Handler
120              instanciate the formdata.
121            
122    2007-09-06 Torsten Irlaender <[email protected]>
123            * tools/formed/formed/plugins/web/renderer.py: Mainly tried to get the
124              getFormData interface to work. Added two small semantic fixes, but
125              did not manage to get it up. Need to exime this a little bit more
126            * tools/formed/formed/plugins/web/controllers.py: Put <div> tags
127              around the menus on the right side to be able to assign different
128              styles. Added dataset actions while editing a dataset.
129            
130    2007-09-05 Torsten Irlaender <[email protected]>
131            * tools/formed/formed/model/memory.py: Fixed deleting datasets by
132              removing unwanted del method
133            * tools/formed/formed/plugins/web/controllers.py: Implemented
134              confiration dialogs for create, delete, and select aof datasets. Started to use
135              templates as well for larger information units like the dataset summary.
136            
137    2007-09-05 Sascha L. Teichmann <[email protected]>
138    
139            * tools/formed/formed/model/nodecomponents.py: Added a
140              method to document to find index of page.
141    
142            * tools/formed/formed/plugins/web/semantic.py: Added getValue()
143              to fetch data from semantic box.
144    
145            * tools/formed/formed/plugins/web/controllers.py: Added new
146              FormData implementation to support DB and semantic box.
147    
148    2007-09-05 Sascha L. Teichmann <[email protected]>
149    
150            * tools/formed/formed/plugins/web/renderer.py: escaped
151              error message.
152    
153            * tools/formed/formed/plugins/web/controllers.py: Don't fetch
154              dataset from backend each time a page is up to edit.
155    
156    2007-09-05 Sascha L. Teichmann <[email protected]>
157    
158            * tools/formed/formed/plugins/web/renderer.py: SimplePageRenderer
159              returns "Page not found" if given page is None.
160    
161            * tools/formed/formed/plugins/web/controllers.py: Added checks
162              to avoid crashing when ask for a non-existent page.
163    
164    2007-09-05 Sascha L. Teichmann <[email protected]>
165    
166            * tools/formed/formed/plugins/web/controllers.py: Some clean-ups.
167    
168    2007-09-05 Sascha L. Teichmann <[email protected]>
169    
170            * tools/formed/formed/plugins/web/plugin.py: Remove request handlers
171              and renderers.
172    
173            * tools/formed/formed/plugins/web/controllers.py: New. Contains handlers
174              and renderers now. TODO: Move renderers to renderer.py
175    
176    2007-09-05 Torsten Irlaender <[email protected]>
177    
178            * tools/formed/formed/plugins/web/www/main.tmpl: Adopted web template
179              and bound in the the new added functions to create, edit, delete and
180              show formdata.
181            
182    2007-09-05 Sascha L. Teichmann <[email protected]>
183    
184            * tools/formed/formed/model/memory.py: Removed bisect and use a
185              simple linear scan for dataset lookup now.
186    
187            * tools/formed/formed/plugins/web/plugin.py: Fixed various issues
188              of different sizes.
189    
190    2007-09-05 Torsten Irlaender <[email protected]>
191    
192            * tools/formed/formed/plugins/web/memory.py: Fixed getDataSetById
193              fuction
194                    
195            * tools/formed/formed/plugins/web/persistent.py: Added store() method
196              to the DataSet interface
197    
198            * tools/formed/formed/plugins/web/renderer.py: Added handlers and
199              renderes for create, update, delete and show actions on formular data.
200    
201    2007-09-04 Sascha L. Teichmann <[email protected]>
202    
203            * tools/formed/formed/plugins/web/server.py: The mapping
204              to methods is now driven by regualar expressions and
205                    a dictionary. Response objects are now able to send
206                    error codes.
207    
208            * tools/formed/formed/plugins/web/renderer.py: Fixed an issue
209              when help in Formdata is None. Moved text for help into
210                    a top level '''...''' variable.
211    
212            * tools/formed/test-data/simple.xml: Added test for help.
213    
214            * tools/formed/formed/plugins/web/help.py: extra None check.
215    
216            * tools/formed/formed/plugins/web/plugin.py: Uses the new
217              table driven mapping of reguest handling. TODO: split the
218                    WebPlugIn.pageHandler() method further to smaller handlers.
219                    Smaller clean ups and better exception handling.
220    
221            * tools/formed/formed/plugins/web/cache.py: Report OSErrors
222              and do not catch them.
223    
224    2007-09-04 Torsten Irlaender <[email protected]>
225    
226            * tools/formed/formed/plugins/web/renderer.py,
227            * tools/formed/formed/plugins/web/plugin.py: Added Interface to
228              the HelpProvider and inserted help icons to the html output.
229              Added decorator for Formelemnts, so textfields, choices etc. are now
230              within a <div> tag.
231              Modified the error messages.
232    
233    2007-09-04 Sascha L. Teichmann <[email protected]>
234    
235            * tools/formed/formed/plugins/web/cache.py: New. Implements
236              the server-side caching more clean. Fixes a bug with
237                    serving static content.
238    
239            * tools/formed/formed/plugins/web/plugin.py: Use the new cache.
240    
241    2007-09-04 Sascha L. Teichmann <[email protected]>
242    
243            * tools/formed/formed/plugins/web/plugin.py: Set MIME type
244              to "application/xhtml+xml" when serving help texts.
245    
246    2007-09-03 Sascha L. Teichmann <[email protected]>
247    
248            * tools/formed/formed/plugins/export/diff.py: New. Exports
249              pairwise differences between all modes.
250    
251            * tools/formed/formed/config.py: Use new export filter.
252    
253    2007-09-03 Sascha L. Teichmann <[email protected]>
254    
255            * tools/formed/formed/plugins/web/help.py: New. Parses an
256              XHTML document for id'ed divs and builds a help lookup.
257    
258            * tools/formed/formed/plugins/web/www/help.tmpl: Template for
259              the help content frame.
260    
261            * tools/formed/formed/plugins/web/www/help.xhtml: Some simple
262              help text index.
263    
264            * tools/formed/formed/plugins/web/plugin.py: Serves the help
265              texts now.
266    
267    2007-09-03 Torsten Irlaender <[email protected]>
268    
269            * tools/formed/formed/plugins/web/plugin.py: Only visible group
270              elements will be rendered in the formular navigation.
271              Formular pages in the navigation now have their own css-style
272              attributes.
273    
274    2007-09-03 Torsten Irlaender <[email protected]>
275    
276            * tools/formed/formed/plugins/web/www/main.tmpl: Added div area for page
277              errors in template
278            * tools/formed/formed/plugins/web/plugin.py: Fixed undefined
279              pageerrors variable
280    
281    2007-09-03 Frank Koormann <[email protected]>
282    
283            * tools/formed/formed/plugins/export/html.py
284            (RecursiveExporter): Added annotation to export
285            (fillRow()): Renamed old fillNine to this more generic name.
286            
287    
288    2007-09-03 Sascha L. Teichmann <[email protected]>
289    
290            * tools/formed/formed/plugins/web/renderer.py: Using the decorator
291              from model.misc now.
292    
293    2007-09-03 Sascha L. Teichmann <[email protected]>
294    
295            * tools/formed/formed/model/nodecomponents.py: Added an
296              'annotation' attribute to node components. This is to
297                    enable FormEd document authors to add comments to groups
298                    and fields.
299    
300    2007-09-03 Frank Koormann <[email protected]>
301    
302            * tools/formed/formed/model/nodecomponents.py
303            (NodeComponent.getParent): New method to get node components parent.
304    
305            * tools/formed/formed/plugins/export/html.py: Export Choice option
306            as simple list instead of collection of bools.
307    
308    2007-09-02 Sascha L. Teichmann <[email protected]>
309    
310            * tools/formed/formed/model/persistent.py: Interfaces to abstract
311              from persistent storage details.
312    
313            * tools/formed/formed/model/memory.py: In core implementation
314              of the persistent interfaces.
315    
316            * tools/formed/formed/main.py: Holds a memory data store now.
317    
318    2007-09-02 Sascha L. Teichmann <[email protected]>
319    
320            * tools/formed/formed/plugins/export/sql.py,
321              tools/formed/formed/plugins/export/html.py: Fixed constructor chains
322                    for FileDialogFilter sub classes.
323    
324    2007-09-02 Sascha L. Teichmann <[email protected]>
325    
326            * tools/formed/formed/model/misc.py: Checking the mode in recursive
327              tree traversals is a common task. To ease this a decorator function
328                    checkMode in union with sub classing ModeChecker can be used.
329                    To make it work simply subclass from ModeChecker and add the decorator
330                    to the methods that need mode tracking. Before you start the recursion
331                    call self.prepareDescent().
332    
333            * tools/formed/formed/plugins/export/html.py: Uses the new decorator scheme
334              now which replace the old. TODO: Make the web renderer use the new scheme
335                    too.
336    
337    2007-09-02 Sascha L. Teichmann <[email protected]>
338    
339            * tools/formed/formed/plugins/export/sql.py: Removed needless import.
340    
341            * tools/formed/formed/plugins/export/html.py: HTML table exporter
342              uses new FileDialogFilter base class too.
343    
344    2007-09-02 Sascha L. Teichmann <[email protected]>
345    
346            * tools/formed/formed/plugins/ui/*: New. All file exporters
347              need a file dialog. Till now each of them pulled up its
348                    own. This was silly code replication. Now there is an abstract
349                    base class 'FileDialogFilter' which implements the common
350                    behavior. The file exporters should subclass it.
351    
352            * tools/formed/formed/plugins/export/sql.py: Subclass the SQL
353              exporters from the new base class. TODO: Subclass the HTML
354                    exporter too.
355    
356    2007-08-31 Sascha L. Teichmann <[email protected]>
357    
358            * tools/formed/formed/plugins/export/html.py: Make mode check
359              work (again).
360    
361    2007-08-31 Torsten Irlaender <[email protected]>
362    
363            * tools/formed/formed/plugins/export/html.py: Rendering of the HTML
364              exprt works now in a recursive way. This change was needed because
365              the structure of the formedtree has changed to be able to render
366              full hirachically document stuctures. (nested lists)
367              TODO: Fix modechecking
368    
369    2007-08-31 Torsten Irlaender <[email protected]>
370    
371            * tools/formed/formed/plugins/web/plugin.py: Navigation rendering works
372              now in recursive way. This change was needed because the structure
373              of the formedtree has changed to be able to render full hirachically
374              document stuctures. (nested lists)
375    
376    2007-08-31 Sascha L. Teichmann <[email protected]>
377    
378            * tools/formed/formed/model/nodecomponents.py: use discard()
379              instead of remove on sets.
380    
381            * tools/formed/formed/plugins/export/sql.py: Added an
382              exporter for table views.
383    
384            * tools/formed/formed/config.py: Added the new exporter
385              to the list of export filters.
386    
387    2007-08-30 Sascha L. Teichmann <[email protected]>
388    
389            * tools/formed/formed/model/data.py: Fixed a bug in
390              Page.allWidgets()
391    
392            * tools/formed/formed/plugins/export/sql.py: Added an exporter
393              for stored procudeures.
394    
395            * tools/formed/formed/config.py: Add the new SP exporter.
396    
397    2007-08-29 Torsten Irlaender <[email protected]>
398    
399            * tools/formed/formed/plugins/web/plugin.py,
400              tools/formed/formed/plugins/web/error_renderer.py: Added interface
401              to get the errors for a whole page in te formular. These errors can
402              now be displayed on the top of the formular.
403    
404    2007-08-29 Torsten Irlaender <[email protected]>
405    
406            * tools/formed/formed/plugins/web/renderer.py: Finished implementation
407              of the getFromData interface and prepared the rederer for generating
408              nice error messages
409    
410    2007-08-28 Frank Koormann <[email protected]>
411    
412            * tools/formed/formed/plugins/export/sql.py
413            (SchemaCreator.createSchema, SchemaCreator._createGroup):
414            Fixed typo in created DDS (PRIMRAY -> PRIMARY)
415    
416    2007-08-28 Torsten Irlaender <[email protected]>
417    
418            * tools/formed/formed/plugins/export/sql.py: Added small helper
419              function to generated valid quotes within the sql statements
420    
421    2007-08-29 Sascha L. Teichmann <[email protected]>
422    
423            * tools/formed/formed/plugins/export/sql.py: Added foreign keys
424              for repeat tables.
425              
426    2007-08-29 Sascha L. Teichmann <[email protected]>
427    
428            * tools/formed/formed/plugins/export/sql.py: When generating
429              an extra table check in a table of same content exists. In
430                    this case reference the existing table.
431    
432    2007-08-29 Sascha L. Teichmann <[email protected]>
433    
434            * tools/formed/formed/plugins/export/sql.py: Rewritten to produce
435              _real_ SQL and respect repeat groups.
436    
437            * tools/formed/formed/model/data.py: Fixed bug with Group.isRepeat()
438    
439            * tools/formed/formed/plugins/web/renderer.py: Use "".join([])
440              instead of expensive += string concat in some places.
441    
442    2007-08-29 Sascha L. Teichmann <[email protected]>
443    
444            * tools/formed/formed/model/data.py: Renamed GroupNode.getRepeat()
445              to .isRepeat and return a bool. Fixed a bug in Page.allWidgets().
446    
447    2007-08-28 Torsten Irlaender <[email protected]>
448    
449            * tools/formed/plugins/web/renderer.py: Added Formdata interface.
450            * tools/formed/model/data.py: Implements Formadata interface to
451              textfields. Fieldset generated depends now on the "invisible"
452              attribute of the groupnode. Field-label generation slightly changed.
453              Added error indication to textfields
454    
455    2007-08-28 Sascha L. Teichmann <[email protected]>
456    
457            * tools/formed/formed/model/data.py,
458              tools/formed/formed/io/document.py: Removed support
459                    of logical groups.
460    
461    2007-08-28 Sascha L. Teichmann <[email protected]>
462    
463            * tools/formed/formed/io/document.py: Avoid saving empty
464              attributes.
465    
466            * tools/formed/test-data/simple.xml: Applied.
467    
468    2007-08-28 Sascha L. Teichmann <[email protected]>
469    
470            * tools/formed/formed/model/data.py: Added 'repeat' and
471              'invisible' attributes to group. TODO: remove logical group.
472    
473    2007-08-27 Torsten Irlaender <[email protected]>
474    
475            * tools/formed/plugins/web/plugin.py,
476              tools/formed/plugins/web/renderer.py: Started to  include stylesheet
477              depending tags in the html generation.
478    
479    2007-08-27 Sascha L. Teichmann <[email protected]>
480    
481            * tools/formed/formed/model/data.py,
482              tools/formed/formed/io/document.py: Added a logical group.
483                    It has an attribute 'repeat' to indicate that it might
484                    be worthy an external table in DB schema.
485    
486    2007-08-27 Sascha L. Teichmann <[email protected]>
487    
488            * tools/formed/formed/plugins/web/plugin.py: Support
489              serving of static content.
490    
491            * tools/formed/formed/plugins/web/server.py: Removed
492              old send code.
493    
494    2007-08-27 Sascha L. Teichmann <[email protected]>
495    
496            * tools/formed/formed/plugins/web/plugin.py: Use new
497              Response object. Fix typo.
498    
499            * tools/formed/formed/plugins/web/server.py: support
500              response object to serve different MIME types.
501    
502    2007-08-27 Sascha L. Teichmann <[email protected]>
503    
504            * tools/formed/formed/plugins/web/plugin.py: Add web.path
505              to FORMED environment  variable to specify the
506                    root of the static content.
507    
508    2007-08-26 Sascha L. Teichmann <[email protected]>
509    
510            * tools/formed/formed/model/data.py,
511              tools/formed/formed/model/nodecomponents.py: Fixed mode issues.
512    
513            * tools/formed/formed/plugins/web/www,
514              tools/formed/formed/plugins/web/www/main.tmpl: New. Contains
515                    a template for the HTML output.
516    
517            * tools/formed/formed/plugins/web/plugin.py: Fixes several smaller
518              mode issues. Introduces CSS support. Simplified the action
519                    handling.
520    
521            * tools/formed/formed/plugins/web/renderer.py: Removed the
522              nagivation code.
523    
524            * tools/formed/formed/plugins/web/server.py: Added missing import.
525    
526    2007-08-26 Sascha L. Teichmann <[email protected]>
527    
528            * tools/formed/formed/model/data.py: Added missing broadcast
529              parameter to setAttribute() of RuleLeaf.
530    
531            * tools/formed/formed/plugins/web/plugin.py: Factorize
532              HTTP server code out to separate module.
533    
534            * tools/formed/formed/plugins/web/renderer.py: Removed
535              needless -1 from pop()
536    
537            * tools/formed/formed/plugins/web/server.py: New. Contains
538              the HTTP server code now.
539    
540    2007-08-26 Sascha L. Teichmann <[email protected]>
541    
542            * tools/formed/test-data/simple.xml: Modified to contain a rule.
543    
544            * tools/formed/formed/model/expr.py: Added. A simple RPN
545              expression evaluator. To avoid the problem of eval()ing
546                    arbitrary python expressions I've decided to use a very
547                    basic and limited stack machine to support rule checking.
548    
549            * tools/formed/formed/model/data.py: Added a RuleLeaf.
550    
551            * tools/formed/formed/io/document.py: Added factories for rules.
552    
553            * tools/formed/formed/model/nodecomponents.py: Add a method
554              to find all items of a given type in document for a given
555                    mode. Usefull to find all rules in the tree.
556    
557            * tools/formed/formed/ui/controls.py: Added a listener mechanism
558              to attribute table to report exceptions when setting a value
559                    from GUI. Useful to report compilation errors when setting
560                    expr of rule leafs.
561    
562            * tools/formed/formed/main.py: Added a method to track exceptions
563              from the attribute table and pop up dialogs if they occur.
564                    Added a counter of rule modifications in tree. Useful if you
565                    want build cached data structures like rule sets and you want
566                    to know if they are still valid.
567    
568    2007-08-24 Torsten Irlaender <[email protected]>
569    
570            * tools/formed/formed/plugins/export/sql.py: Fixed CHECK-constraint
571              for checkbox values. (Syntax error).
572    
573            * tools/formed/formed/plugins/names/filter.py: Fixes in formularname
574              generation  
575    
576    2007-08-24 Torsten Irlaender <[email protected]>
577    
578            * tools/formed/formed/plugins/names/filter.py: Separated Class for
579              making the formularnames more database friendly. Added some more
580              checks.
581            * tools/formed/formed/plugins/export/sql.py: Make use of the fresh
582              separated class, and some fixes in sql generation.
583    
584    2007-08-24 Sascha L. Teichmann <[email protected]>
585    
586            * tools/formed/formed/plugins/export/html.py: Print lengths
587              of external choice list.
588    
589    2007-08-24 Sascha L. Teichmann <[email protected]>
590    
591            * tools/formed/formed/main.py: Little workaround for
592              mode selection if someone adds an removes a mode.
593    
594    2007-08-24 Sascha L. Teichmann <[email protected]>
595    
596            * tools/formed/test-data/simple.xml: Better test case for
597              mode depended leaf items.
598    
599            * tools/formed/formed/model/nodecomponents.py: Added a method
600              to calculate the effective mode of an item.
601    
602            * tools/formed/formed/plugins/export/html.py: Use effective
603              mode. TODO: the 'all' modus return false results sometimes.
604                    Cause: The modes are only cumulated over time. Removal is
605                    not done.
606    
607    2007-08-24 Sascha L. Teichmann <[email protected]>
608    
609            * tools/formed/formed/plugins/export/html.py: Dump the items
610              of radio groups and choices too.
611    
612    2007-08-24 Torsten Irlaender <[email protected]>
613    
614            * tools/formed/formed/plugins/names/filter.py: Modified the renaming
615              by formular names to make the naming more database friendly.
616              Now only alphanumeric and underscore chars is allowed.
617    
618    2007-08-24 Sascha L. Teichmann <[email protected]>
619    
620            * tools/formed/formed/plugins/export/html.py: Tweaked
621              HTML table exporter a bit to be on par with the XSLT
622                    script. TODO: Dump items in radio and choice groups.
623    
624    2007-08-23 Sascha L. Teichmann <[email protected]>
625    
626            * tools/formed/formed/plugins/names/filter.py: Removed
627              HTML and SQL exporters.
628    
629            * tools/formed/formed/plugins/export,
630              tools/formed/formed/plugins/export/__init__.py,
631              tools/formed/formed/plugins/export/sql.py,
632              tools/formed/formed/plugins/export/html.py: New: Contain
633                    the HTML and the SQL exporters now.
634    
635            * tools/formed/formed/config.py: Use exporters from different
636              package now.
637    
638    2007-08-23 Torsten Irlaender <[email protected]>
639    
640            * tools/formed/formed/plugins/names/filter.py: Added an
641              pseudo SQL export filters. TODO: Move HTML and SQL filter
642              in a new file (formed/plugins/export/htmlexport.py and
643              sqlexport.py?)
644    
645            * tools/formed/formed/config.py: Install the new SQL filter.
646    
647    2007-08-23 Sascha L. Teichmann <[email protected]>
648    
649            * tools/formed/formed/model/nodecomponents.py: Added a depth()
650              method to determine the depth of particular tree item.
651    
652            * tools/formed/formed/plugins/names/filter.py: Added an
653              HTML export filters. TODO: needs more work.
654    
655            * tools/formed/formed/config.py: Install the new HTML filter.
656    
657    2007-08-23 Torsten Irlaender <[email protected]>
658    
659            * contrib/extract-xfa-fields_and_options.xsl: Added small xsl script
660              to extract fields and options in the XFA Data in teh PDF. This
661              script might me handy to indicate changes between the different
662              formular versions.
663            
664    2007-08-23 Sascha L. Teichmann <[email protected]>
665    
666            * tools/formed/formed/main.py: Add an 'all' mode to
667              select all modes. ;-)
668    
669    2007-08-22 Sascha L. Teichmann <[email protected]>
670    
671            * tools/formed/test-data/simple.xml,
672              tools/formed/formed/model/data.py,
673              tools/formed/formed/plugins/web/plugin.py,
674              tools/formed/formed/plugins/web/renderer.py,
675              tools/formed/formed/io/document.py,
676              tools/formed/formed/main.py: Removed support for switch nodes.
677              BEWARE: This breaks compatibility with older documents!
678    
679    2007-08-22 Sascha L. Teichmann <[email protected]>
680    
681            * tools/formed/formed/plugins/web/plugin.py: Uses the
682              getSelectedMode() from main now.
683    
684            * tools/formed/formed/main.py: selected mode is now hold
685              in main.
686    
687            * tools/formed/formed/config.py: removed selected mode from
688              env configuration.
689    
690    2007-08-22 Sascha L. Teichmann <[email protected]>
691    
692            * tools/formed/formed/ui/controls.py: Attributes in GUI attribute
693              table are now alphabetically sorted.
694    
695    2007-08-22 Sascha L. Teichmann <[email protected]>
696    
697            * tools/formed/formed/model/nodecomponents.py: Added code to
698              establish the new 'modes' recursively.
699    
700            * tools/formed/formed/plugins/plugin.py: Pass main instead
701              of cfg on plug-in start-up.
702    
703            * tools/formed/formed/plugins/web/plugin.py: Use the new
704              'modes' attribute for rendering.
705    
706            * tools/formed/formed/plugins/web/renderer.py: Use decorators
707              to check the new modes.
708    
709            * tools/formed/formed/main.py: Adjusted to new infrastructure.
710    
711    2007-08-22 Sascha L. Teichmann <[email protected]>
712    
713            * tools/formed/formed/model/nodecomponents.py: Added an
714              attribute 'modes' to NodeComponents.
715    
716    2007-08-22 Sascha L. Teichmann <[email protected]>
717    
718            * tools/formed/formed/model/data.py: Small cosmetic cleanups
719    
720    2007-08-21 Sascha L. Teichmann <[email protected]>
721    
722            * tools/formed/formed/plugins/web/renderer.py: Another fix
723              for the hidden field. Argh!
724    
725    2007-08-21 Sascha L. Teichmann <[email protected]>
726    
727            * tools/formed/formed/plugins/web/renderer.py: Fixed double
728              generation of hidden page field.
729    
730    2007-08-21 Sascha L. Teichmann <[email protected]>
731    
732            * tools/formed/formed/plugins/web/semantic.py: Added semantic
733              checks for radio groups.
734    
735    2007-08-21 Sascha L. Teichmann <[email protected]>
736    
737            * tools/formed/formed/plugins/web/semantic.py: Added semantic
738              checks for choices.
739    
740    2007-08-21      Frank Koormann <[email protected]>
741    
742            * contrib/convert-formedtree2html.xsl: Display switch nodes as
743            alternatives.
744            
745    2007-08-21      Frank Koormann <[email protected]>
746    
747            * contrib/convert-formedtree2html.xsl:
748            Replace technical types with readable descriptions
749    
750    2007-08-21 Sascha L. Teichmann <[email protected]>
751    
752            * tools/formed/formed/plugins/web/plugin.py: Fix a few smaller
753              issues. 'action' looks for all widgets on a page now, goes
754                    through all passed parameters, tries to match them with the
755                    widgets of the page and put them into the semantic box.
756                    Afterwards a list of untouched page parameters are left
757                    which will be deleted from the semantic box.
758    
759            * tools/formed/formed/plugins/web/semantic.py: Simplified.
760              The NodeComponent is passed as an argument now.
761    
762            * tools/formed/formed/plugins/web/renderer.py: Generate a
763              hidden field to store the name of the page.
764    
765    2007-08-21 Sascha L. Teichmann <[email protected]>
766    
767            * tools/formed/formed/plugins/web/plugin.py: Fixed an encoding
768              issue with incoming UTF-8 data.
769    
770    2007-08-21 Sascha L. Teichmann <[email protected]>
771    
772            * tools/formed/test-data/simple.xml: Improve test for widgets
773              in switches.
774    
775            * tools/formed/formed/model/data.py: Added a method to find all
776              widgets in a given page. Fixed a bug when walking in switch
777                    with a given mode.
778    
779            * tools/formed/formed/plugins/web/plugin.py: Simple test for
780              listing all widgets in page.
781    
782    2007-08-21 Torsten Irlaender <[email protected]>
783    
784            * tools/formed/formed/plugins/names/filter.py: Fixed file-encoding to
785              latin-1
786    
787    2007-08-21 Sascha L. Teichmann <[email protected]>
788    
789            * tools/formed/formed/model/data.py: Added mode parameter to
790              walk.
791                    
792            * tools/formed/formed/model/nodecomponents.py: SwitchNode overwrites
793              walk() with usage of the new mode parameter. Added a method to
794                    give children in a given mode.
795    
796            * tools/formed/formed/plugins/web/renderer.py: Simplified to use
797              new Switch.childrenInMode() method.
798    
799    2007-08-21 Sascha L. Teichmann <[email protected]>
800    
801            * tools/formed/formed/plugins/web/semantic.py: Add checks for
802              texts and text areas.
803    
804            * tools/formed/formed/plugins/web/renderer.py: Set accept-charset
805              to UTF-8 in generated form.
806    
807    2007-08-20 Sascha L. Teichmann <[email protected]>
808    
809            * tools/formed/formed/plugins/web/semantic.py: Added semantic
810              tests for dates.
811    
812    2007-08-20 Sascha L. Teichmann <[email protected]>        
813    
814            * tools/formed/test-data/simple.xml: Tweak a bit for integer
815              range test.
816    
817            * tools/formed/formed/model/nodecomponents.py: Added a method
818              to find a tree item for a given name.
819    
820            * tools/formed/formed/plugins/web/semantic.py: New: Box for
821              semantic checking. Has check for integers.
822    
823            * tools/formed/formed/plugins/web/plugin.py: Use semantic
824              check.
825    
826    2007-08-20      Torsten Irlaender <[email protected]>
827    
828            * tools/formed/formed/plugins/web/renderer.py: Fixed Syntax in
829              selection-field generation (Removed quote)
830    
831    2007-08-18      Sascha L. Teichmann <[email protected]>
832    
833            * tools/formed/formed/plugins/web/plugin.py,
834              tools/formed/formed/plugins/web/renderer.py: Added a
835              simple cookie based session management to the HTML
836              renderer. This submit parameters are stored in the
837              session now. This will ease testing the constraint
838              tests which need to be written soon.
839                    
840              BEWARE: The session management is _not_ made for production!
841              Denial of service attacks are too easy, and the
842              cryptographical strength of the session id is doubtful.
843    
844    2007-08-18      Sascha L. Teichmann <[email protected]>
845    
846            * tools/formed/formed/plugins/web/renderer.py: Escaping text
847              coming from the document tree now when inserting it into the
848              HTML output.
849    
850    2007-08-18      Sascha L. Teichmann <[email protected]>
851    
852            * tools/formed/formed/plugins/plugin.py: Added a new kind
853              of plug-in: Filter. They have a short and a long description
854              and can be hooked automatically into the new 'Filters'
855              sub menu under 'Extra'. They got called when the user
856              selects their respective menu item.
857                    
858            * tools/formed/formed/config.py: Contains the list of
859              installed filters.
860    
861            * tools/formed/formed/main.py: Builds the Extra->Filters
862              sub menu during gui initialization. The hard wired code
863              for make unique and formular name/description -> name
864              is removed because they are implemented as filters now.
865    
866            * tools/formed/formed/model/nodecomponents.py,
867              tools/formed/formed/model/data.py: Removed the make
868              unique and formular name/description -> name code.
869    
870            * tools/formed/formed/plugins/names,
871              tools/formed/formed/plugins/names/__init__.py,
872              tools/formed/formed/plugins/names/filter.py: Added. Contains
873              the make unique and formular name/description -> name code
874              in form of filters.
875    
876            * tools/formed/test-data/simple.xml: Modified to be a better
877              test for the formular name/description -> name filter.
878    
879    2007-08-18      Sascha L. Teichmann <[email protected]>
880    
881            * tools/formed/formed.py, tools/formed/formed/main.py: First
882              command line argument is interpreted as filename of document
883              to be loaded at program startup.
884    
885    2007-08-17      Frank Koormann <[email protected]>
886    
887            * contrib/convert-formedtree2html.xsl:
888            Heading level depending on depth of group node.
889            In case of radio/choice/check only list of options.
890    
891    2007-08-17      Torsten Irlaender <[email protected]>
892    
893            * contrib/convert-formedtree2html.xsl: Output is now generated with
894              HTML doc-string and charset information in the meta-header.
895    
896    2007-08-17      Torsten Irlaender <[email protected]>
897    
898            * contrib/convert-formedtree2html.xsl: Added small script for
899              exporting the formed tree to html
900    
901    2007-08-17      Torsten Irlaender <[email protected]>
902    
903            * tools/formed/model/nodecomponents.py: Added function to rename
904              the set the name of the node to the formularname. The formularname
905              gets shorten to <=64 by removing vowels and is stored lowercase.
906              If the name is not unique and additional id value is appended.
907            
908            * tools/formed/formed/model/data.py: Overwritten renaming-function for
909              bool-leafs
910    
911            * tools/formed/formed/main.py: Added menuitem for renaming the names
912              of the element
913    
914    2007-08-16      Sascha L. Teichmann <[email protected]>
915    
916            * tools/formed/formed/main.py: Swaped order of
917              'Make names unique' and 'Selected mode...' in Extra
918                    menu and put a separator between them.
919    
920    2007-08-15      Sascha L. Teichmann <[email protected]>
921    
922            * tools/formed/formed/model/data.py: SwitchNodes can add
923              their modes to a given set now.
924    
925            * tools/formed/formed/plugins/plugin.py: Simplified
926              the plug-in interface. Only the reference to the
927                    global configuration is passed at setup time.
928    
929            * tools/formed/formed/plugins/web/plugin.py: Adjusted
930              to new plug-in setup. The traveral mode is now taken
931                    from the global configuration each time a rendering
932                    is triggered. The FORMED parameter is now named
933                    'doc.mode' instead of 'web.mode'. The parameter
934                    is not needed any more because it can be configured
935                    at runtime.
936    
937            * tools/formed/formed/main.py: Adjusted to new plugin
938              setup. Added a new menu item Extra->Select Mode...
939                    to select the traversal mode. It is stored in the
940                    global config.
941    
942            * tools/formed/formed/config.py: Simplified. Only uses
943              one env dictionary to store global configuration parameters.
944    
945            * tools/formed/formed/ui/controls.py: Add a control to
946              select one item from a list of given strings.
947    
948    2007-08-15      Sascha L. Teichmann <[email protected]>
949    
950            * tools/formed/formed/plugins/web/plugin.py,
951              tools/formed/formed/plugins/web/renderer.py: Added parameter
952                    print out in web plugin.
953    
954    2007-08-15      Torsten Irlaender <[email protected]>
955    
956            * contrib/convert-formedtree2csv.xsl: Added small script for
957              exporting the formed tree to csv
958    
959    2007-08-14      Sascha L. Teichmann <[email protected]>
960    
961            * tools/formed/formed/model/data.py,
962              tools/formed/formed/model/nodecomponents.py,
963              tools/formed/formed/io/document.py: Added a 'switch' node.
964    
965            * tools/formed/formed/plugins/web/renderer.py:Render the
966              new 'switch' node.
967    
968            * tools/formed/formed/plugins/web/plugin.py,
969              tools/formed/formed/config.py: Added a 'web.mode' parameter
970                    to FORMED environment variable.
971                    e.g. 'FORMED=web.mode:modeX' sets the mode 'modeX'.
972                    Defaults to 'default'.
973    
974            * tools/formed/test-data/simple.xml: Added test for switch.
975    
976    2007-08-14      Sascha L. Teichmann <[email protected]>
977    
978            * tools/formed/formed/model/nodecomponents.py: Added an
979              attribute 'formularname' to base class of node components.
980    
981    2007-08-13      Sascha L. Teichmann <[email protected]>
982    
983            * tools/formed/formed/io/document.py,
984              tools/formed/formed/model/data.py,
985              tools/formed/formed/model/nodecomponents.py: Added an item
986                    to model external item lists.
987    
988            * tools/formed/formed/plugins/web/renderer.py: Render new item
989              list.
990            * tools/formed/formed/main.py: Added a forgotten 'self.'
991    
992            * contrib/extract-xfa-items.sh: Modified to generate
993              documents to be loadable from new item lists
994    
995    2007-08-13      Sascha L. Teichmann <[email protected]>
996    
997            * tools/formed/formed/main.py: Fixed typo
998    
999    2007-08-13      Sascha L. Teichmann <[email protected]>
1000    
1001            * contrib/extract-xfa-items.sh: New. Can be used to extract longer
1002              choice item lists for a given field from XFA files. e.g. with
1003                    './contrib/extract-xfa-items.sh Muttersprache alles.xml'
1004    
1005    2007-08-12      Sascha L. Teichmann <[email protected]>
1006    
1007            * tools/formed/formed/model/data.py,
1008              tools/formed/formed/plugins/web/renderer.py,
1009                    tools/formed/formed/io/document.py: Changed the structure
1010                    of choice constructs. The idea to hold the different items
1011                    of a particular choice in a semicolon separated list was bad.
1012                    Now choices are groups and  the option items are modelled as
1013                    embedded bools. (mainly Torsten Irländer's idea).
1014    
1015                    WARNING: this makes old document files containing choices incompatible!!!
1016                    Use the following XSLT to reestablish compatibility.
1017                    
1018            * contrib/itemize-choices.xsl: New converts old to new structure.
1019              Needs exslt.org's string extensions (which xsltproc includes)
1020    
1021            * tools/formed/test-data/simple.xml: Ajusted to new structure
1022    
1023            * tools/formed/formed/plugins/web/plugin.py: remove debug output
1024    
1025            * tools/formed/formed/model/nodecomponents.py: fixed a small bug in
1026              node finding code. It now uses the walk() generator, too.
1027    
1028    2007-08-12      Sascha L. Teichmann <[email protected]>
1029    
1030            * tools/formed/formed/main.py: Added a clone item on the toolbar which
1031              copies the currently selected item and appends it after the selection.
1032    
1033            * tools/formed/formed/model/nodecomponents.py: Added code to clone parts
1034              of the tree.
1035                    
1036            * tools/formed/formed/ui/controls.py: Added a getSelected method.
1037    
1038            * tools/formed/formed/model/misc.py: Fixed a programming bug.
1039              forgot a 'self.' prefix.
1040    
1041    2007-08-12      Sascha L. Teichmann <[email protected]>
1042    
1043            * tools/formed/formed/model/nodecomponents.py: Added a method to append
1044              a second document to the current.
1045    
1046            * tools/formed/formed/main.py: Added an 'Import' file menu item to load
1047              a second document to be appended to the current.
1048    
1049    2007-08-12      Sascha L. Teichmann <[email protected]>
1050    
1051            * tools/formed/formed/main.py: Added a 'New' item in file menu which creates
1052              a new document when triggered.
1053    
1054    2007-08-12      Sascha L. Teichmann <[email protected]>
1055    
1056            * tools/formed/formed/model/nodecomponents.py: Added walk generator over all
1057              items in the document tree. Added a method to eliminated duplicated names
1058                    in document tree.
1059    
1060            * tools/formed/formed/model/misc.py: Added update mechanism for id generator
1061              after names collisions are eliminated.
1062    
1063            * tools/formed/formed/main.py: Added an 'Extra' menu with item
1064              'Make names   unique'.
1065    
1066    2007-08-11      Sascha L. Teichmann <[email protected]>
1067    
1068            * tools/formed/formed/model/data.py,
1069              tools/formed/formed/plugins/web/renderer.py: Removed support
1070                    for 'text' attributes in bool items. They were never really
1071                    used and the 'description' attributes fulfill the same
1072                    purpose.
1073    
1074            * contrib/remove-bool-text.xsl: Transform to remove the
1075              'text' attributes from bool items. Apply with:
1076                    'xsltproc contrib/remove-bool-text.xsl old.xml > new.xml'
1077    
1078            * tools/formed/test-data/simple.xml: Removed 'text' attributes
1079              from bool items.
1080    
1081    2007-08-11      Sascha L. Teichmann <[email protected]>
1082    
1083            * contrib/convert-choices.xsl: Simpified.
1084    
1085    2007-08-11      Sascha L. Teichmann <[email protected]>
1086    
1087            * tools/formed/formed/model/data.py: Removed 'options' attribute
1088              from ChoiceLeaf. Use 'value' instead, please!
1089    
1090            * tools/formed/formed/plugins/web/renderer.py: use 'value' attribute
1091              instead of 'options' to render choices.
1092    
1093            * contrib/convert-choices.xsl: Added to convert document files
1094              which use the choice 'option' attribute to usage of 'value'.
1095                    Apply with e.g. 'xsltproc convert-choices.xsl old.xml > new.xml'
1096    
1097    2007-08-10      Sascha L. Teichmann <[email protected]>
1098    
1099            * tools/formed/formed/plugins/web/renderer.py: radio buttons
1100              are selected by 'checked' and not by 'selected'. Fixed.
1101    
1102    2007-08-10      Sascha L. Teichmann <[email protected]>
1103    
1104            * tools/formed/formed/model/data.py: ChoiceLeafs are now
1105              initialized with size = 1.
1106    
1107    2007-08-10      Sascha L. Teichmann <[email protected]>
1108    
1109            * tools/formed/formed/model/data.py: TextLeafs are now
1110              initialized with size = 40, maxlength = 60
1111    
1112    2007-08-10      Sascha L. Teichmann <[email protected]>
1113    
1114            * tools/formed/formed/plugins/web/renderer.py: Fixed: choices
1115              are renderered with description now.
1116    
1117    2007-08-10      Sascha L. Teichmann <[email protected]>
1118    
1119            * tools/formed/formed/plugins/web/renderer.py: Added rendering
1120              for date items. Added missing ids for texts and textareas.
1121    
1122    2007-08-10      Sascha L. Teichmann <[email protected]>
1123    
1124            * tools/formed/formed/config.py: Evaluate the environment
1125              variable 'FORMED'. Snytax: FORMED='key1:value1;key2:value2'
1126    
1127            * tools/formed/formed/plugins/plugin.py: Give a reference
1128              to the config at setup time.
1129    
1130            * tools/formed/formed/plugins/web/plugin.py: To determine
1131              the port look at FORMED dictionary first. Key is 'web.port'.
1132                    e.g. FORMED='web.port:8888'
1133    
1134            * tools/formed/formed/main.py: Call the plugin setup with
1135              the reference to the config.
1136    
1137    2007-08-10      Sascha L. Teichmann <[email protected]>
1138    
1139            * tools/formed/test-data/simple.xml: removed 'text' attributes from
1140              info tags. Use the 'value' attributes for same purpose now, please!
1141    
1142            * tools/formed/formed/model/data.py: removed text attributes from
1143              InfoLeaf.
1144    
1145            * tools/formed/formed/plugins/web/renderer.py: Rendering of info
1146              now uses the 'value' instead of the 'text' attributes.
1147    
1148    2007-08-09      Sascha L. Teichmann <[email protected]>
1149    
1150            * tools/formed/formed/model/data.py: next/prevPage() are
1151              methods of PageNode now.
1152    
1153            * tools/formed/formed/model/nodecomponents.py: findByClassAndName()
1154              is method of Document now.
1155    
1156            * tools/formed/formed/plugins/web/plugin.py: Factored out
1157              the HTML renderer.
1158    
1159            * tools/formed/formed/plugins/web/renderer.py: New: contains
1160              the HTML renderer now.
1161    
1162            * tools/formed/test-data/simple.xml: Fixed typo
1163    
1164    2007-08-09      Sascha L. Teichmann <[email protected]>
1165    
1166            * tools/formed/formed/plugins/web/plugin.py: Fixed a bug
1167              in calculation of width of bounded int fields.
1168    
1169    2007-08-09      Sascha L. Teichmann <[email protected]>
1170    
1171            * tools/formed/test-data/simple.xml: Make demo Int fancier.
1172    
1173            * tools/formed/formed/model/data.py: Added attributes to IntLeaf
1174    
1175            * tools/formed/formed/plugins/web/plugin.py: Added rendering for
1176              Ints
1177    
1178    2007-08-09      Sascha L. Teichmann <[email protected]>
1179    
1180            * tools/formed/test-data/simple.xml: Added demo textarea
1181    
1182            * tools/formed/formed/model/data.py: Added TextAreaLeaf
1183    
1184            * tools/formed/formed/io/document.py: register builder
1185              for loading of textareas
1186    
1187            * tools/formed/formed/plugins/web/plugin.py: Added rendering
1188              for textareas.
1189    
1190    2007-08-09      Sascha L. Teichmann <[email protected]>
1191    
1192            * tools/formed/test-data/simple.xml: Make demo choice fancier.
1193    
1194            * tools/formed/formed/model/data.py: Added attributes for texts
1195            
1196            * tools/formed/formed/plugins/web/plugin.py: Added rendering
1197              for texts
1198    
1199    2007-08-09      Sascha L. Teichmann <[email protected]>
1200    
1201            * tools/formed/test-data/simple.xml: Make demo choice fancier.
1202    
1203            * tools/formed/formed/model/data.py: Added attributes for choices.
1204    
1205            * tools/formed/formed/plugins/web/plugin.py: Added rendering
1206              for choices
1207    
1208    2007-08-09      Sascha L. Teichmann <[email protected]>
1209    
1210            * tools/formed/formed/model/data.py,
1211              tools/formed/formed/model/nodecomponents.py: Added new
1212                    attributes.
1213    
1214            * tools/formed/formed/plugins/web/plugin.py: Added rendering
1215              for checkboxes and radio buttons.
1216    
1217    2007-08-08      Sascha L. Teichmann <[email protected]>
1218    
1219            * tools/formed/test-data/simple.xml: Added some descriptions
1220    
1221            * tools/formed/formed/model/data.py: set attributes in constructors
1222              directly.
1223    
1224            * tools/formed/formed/model/nodecomponents.py: Added description
1225              attribute in the NodeComponent base class.
1226    
1227            * tools/formed/formed/plugins/web/plugin.py: Render description
1228              as legend in fieldset for GroupNodes.
1229    
1230  2007-08-08      Sascha L. Teichmann <[email protected]>  2007-08-08      Sascha L. Teichmann <[email protected]>
1231    
1232          * tools/formed/formed/plugins/web/plugin.py: make UTF-8          * tools/formed/formed/plugins/web/plugin.py: make UTF-8

Legend:
Removed from v.14  
changed lines
  Added in v.161

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26