/[formed]/trunk/ChangeLog
ViewVC logotype

Diff of /trunk/ChangeLog

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

revision 94 by teichmann, Sun Aug 26 16:39:32 2007 UTC revision 432 by torsten, Mon Dec 13 11:50:48 2010 UTC
# Line 1  Line 1 
1  2007-08-26 Sascha L. Teichmann <[email protected]>  2010-12-13  Torsten Irlaender <[email protected]>
2    
3            * formed/formed/model/data.py (GroupNode.isRepeat): Issue1565: Fixed
4            isRepeat function. Check typ instead of repeat attribute. Removed
5            setRepeat function (not used anywhere)
6    
7    2010-11-24  Bernhard Herzog  <[email protected]>
8    
9            * formed/formed/plugins/export/rules_sh.py (generate_tagging):
10            Remove unused variable "inserts" and corresponding commented out
11            code.
12    
13    2010-11-24  Bernhard Herzog  <[email protected]>
14    
15            * formed/formed/plugins/export/rules_sh.py: Remove some commented
16            out code.
17    
18    2010-11-24  Bernhard Herzog  <[email protected]>
19    
20            * formed/formed/plugins/export/rules_sh.py: expand star-import.
21    
22    2010-11-24  Bernhard Herzog  <[email protected]>
23    
24            * formed/formed/plugins/export/rules_sh.py (sql_OperatorUnary):
25            Put parentheses around the comparison for the KNOWN operator in
26            the generated SQL to ensure correct evaluation order.
27    
28    2010-11-24  Bernhard Herzog  <[email protected]>
29    
30            * formed/formed/plugins/export/rules_sh.py (binary_operator_map):
31            New.  Map binary formed expr operators to their SQL counterparts.
32            (sql_OperatorBinary): Use binary_operator_map instead of a cascade
33            of if-statements with lots of code duplication.  Also, put
34            parentheses around the resulting SQL expression to make sure the
35            expression is correctly.  This fixes a problem with WASKO tagging
36            rules, where the a FormEd expression of the form like "2 1 1980
37            date 1 1 1980 date - 93 *" would be incorrectly converted to the
38            SQL expression "93 * '1980-01-02'::date - '1980-01-01'::date"
39    
40    2010-11-24  Bernhard Herzog  <[email protected]>
41    
42            * formed/formed/plugins/export/rules_sh.py: Fix formatting.
43    
44    2010-11-15  Torsten Irlaender <[email protected]>
45    
46            * formed/formed/model/data.py: Do not set attribute "repeat" for
47            Repeat-Groups.
48    
49    2010-11-10  Torsten Irlaender <[email protected]>
50    
51            * formed/formed/plugins/modify/rules.py: Fixed date sequence rule
52            checks for date in future.
53    
54    2010-11-08  Roland Geider <[email protected]>
55    
56            * formed/formed/plugins/export/xsd.py: validate formedtree.xml
57    
58    2010-11-08  Roland Geider <[email protected]>
59    
60            * formed/formed/model/data.py,
61              formed/formed/plugins/export/xsd.py,
62              formed/formed/config.py: issue1131: generate XSD for case exports
63    
64    2010-10-21  Torsten Irlaender <[email protected]>
65    
66            * formed/formed/plugins/export/rules_sh.py: Added new LE-Operator
67            * formed/formed/plugins/modify/rules.py: Add error rule to force phase
68              relevant datefields not to be "unknown".
69    
70    2010-10-12  Roland Geider <[email protected]>
71    
72            * formed/formed/plugins/export/rules_sh.py: Ignore rules if any fields
73              in the rule are in a repeat group
74    
75    2010-10-11  Roland Geider <[email protected]>
76    
77            * formed/plugins/export/rules_sh.py: Added support to more opperators
78              to be able to export the WASKO case
79    
80    2010-10-06  Torsten Irlaender <[email protected]>
81    
82            * formed/formed/plugins/export/rules_sh.py (generate_tagging): Fixed
83            gerating SQL for Rules
84            * formed/formed/plugins/export/rules_sh.py (sql_date): Fixed sql_date
85            function.
86    
87    2010-10-05  Torsten Irländer <[email protected]>
88    
89            * formed/formed/model/data.py: Fixed error when setting tag attribute.
90            * formed/formed/plugins/export/rules_sh.py: Added generating exporting
91              tagging-xml
92            * formed/formed/plugins/modify/rules.py: Do not generate automatic
93              tagids for rules.
94    
95    2010-10-04  Torsten Irländer <[email protected]>
96    
97            * formed/formed/model/data.py (RuleLeaf.__init__): Added new attribute
98            "tag" for rule-leafs
99            * formed/formed/config.py: Added export rules as XML to Menu
100            * formed/formed/plugins/modify/rules.py
101            (GenerateRequiredRules.generateDateSequenceRules): Generate automatic
102            tag ids for date-sequence rules
103    
104    2010-09-30  Torsten Irländer <[email protected]>
105    
106            * formed/formed/plugins/export/rules_sh.py
107            (ExportRulesAsSH.doExport): Filter out duplicted rules.
108    
109    2010-09-20  Frank Koormann   <[email protected]>
110    
111            * formed/formed/plugins/export/latex.py (RecursiveExporter):
112            Add "required"-field information to output and include
113            choice list contents.
114    
115    2010-09-16  Bernhard Herzog  <[email protected]>
116    
117            Avoid database deadlocks that can happen when database clients try
118            to work with the same case using two separate database
119            connections.  See mpuls/issue1145 for details.
120    
121            * formed/formed/plugins/export/rg_sql.py (SQL_TEMPLATE): Split the
122            computation of the new json structure description into the new
123            database function compute_case_structure
124            (TRIGGER_TMPL): Change the trigger functions to immediately update
125            the cached json structure description instead of just setting the
126            modified flag.  This avoids the lazy recomputation that makes what
127            seems like a read-only access (calling get_case_structure) into a
128            writing access (updates of the cache).  The writes lock the row in
129            the case_structure table which prevent other connections from
130            accessing the same case.  As part of this, the delete triggers are
131            now AFTER triggers because the repeat groups instance must have
132            been removed when the structure is recomputed.
133            (SUBSELECT_TMPL): Since the delete trigger is now an after
134            trigger, we need to change the way the master id is computed.  We
135            cannot join with the repeatgroup table in question because the row
136            has already been deleted.  However, we can use the master_id
137            column of the OLD row to select the row of the parent table.
138            (create_triggers): Avoid the inner joins with the current repeat
139            group for the above mentioned reasons.  In the very common case of
140            repeat groups which are direct children of the master_tbl, we can
141            compare the master_tbl.id directly with the row's master_id.
142    
143    2010-09-14 Roland Geider <[email protected]>
144    
145            * formed/formed/plugins/export/xsd.py: issue1131: update XSD for new
146              formedtree structure
147    
148    2010-09-01 Roland Geider <[email protected]>
149    
150            * formed/formed/plugins/modify/rules.py: issue1050: mandatory fields
151              appearing double.
152              The problem was that the way the formEditor handled fields with
153              manually created rules changed. Instead of ignoring fields (very
154              early behaviour) or always generating them (early behaviour), now the
155              formED will only ignore fields with rules which name starts with
156              'required-rule-manual'. This is helpful when the rules for mandatory
157              fields are more complex (e.g. mother's name is only required if
158              mother is known).
159    
160    2010-08-10  Torsten Irländer <[email protected]>
161    
162            * contrib/diff_formed.py: New helperscript to diff to given
163              formedtrees
164    
165    2010-08-09      Roland Geider <[email protected]>
166    
167            * formed/model/exprtree.py: fixed typo
168    
169    2010-08-04  Bernhard Herzog  <[email protected]>
170    
171            * formed/po/de_DE.po: Update translations
172    
173    2010-08-04  Bernhard Herzog  <[email protected]>
174    
175            * formed/po/formed.pot: Regenerated.
176    
177            * formed/po/de_DE.po: Update.
178    
179    2010-08-04  Bernhard Herzog  <[email protected]>
180    
181            * formed/po/Makefile: Use correct filename of the pot-file in the
182            usage message
183    
184    2010-08-04  Bernhard Herzog  <[email protected]>
185    
186            * formed/po/Makefile (LIST_POTFILES): Sort the file names to make
187            the order of entries in the .pot-file more predictable.
188    
189    2010-08-04  Bernhard Herzog  <[email protected]>
190    
191            * formed/formed/model/nodecomponents.py (RootNode.__init__)
192            (RootNode.getVersion, RootNode.setVersion): Add attribute
193            "version" and accessor methods.
194    
195            * formed/formed/main.py (MainFrame.OnSetDocumentVersion): New. Let
196            the user set the document version.
197            (MainFrame._createMenuBar): Add menu item for OnSetDocumentVersion
198    
199    2010-08-02  Bernhard Herzog  <[email protected]>
200    
201            * formed/formed.py, formed/formed/io/document.py,
202            formed/formed/io/factories.py, formed/formed/io/parser.py,
203            formed/formed/model/data.py, formed/formed/model/event.py,
204            formed/formed/model/expr.py, formed/formed/model/exprtree.py,
205            formed/formed/model/memory.py, formed/formed/model/misc.py,
206            formed/formed/model/nodecomponents.py,
207            formed/formed/model/persistent.py: Fix coding declaration to be
208            acceptable to both python and Emacs.
209    
210    2010-07-29  Torsten Irländer <[email protected]>
211    
212            * formed/formed/model/data.py: Added "invisible" attribute to
213            BoolLeafs. This can be used to hide options in choicelists. so the
214            user can not select the value in the user interface. But the db will
215            have this option so is ist still present in the db an can be used
216            * formed/formed/model/exprtree.py: Added "days" function.
217    
218    2010-07-26      Roland Geider <[email protected]>
219    
220            * formed/formed/model/nodecomponents.py,
221              formed/formed/plugins/modify/rules.py: generated date rules take
222              into consideration repeat groups
223    
224    2010-07-21  Torsten Irländer <[email protected]>
225    
226            Issue870
227    
228            * formed/formed/plugins/modify/rules.py (descriptions): Do not collect
229            all headers to the referenced fields. Only list labels of the error
230            fields, which should be distinct enough.
231    
232            Issue851
233    
234            * formed/formed/model/data.py
235              formed/formed/plugins/export/new_sql.py
236              formed/formed/plugins/web/view_renderer.py
237              formed/formed/io/document.py
238              formed/formed/config.py: Added Float-Field to Formed
239    
240    2010-06-11  Bernhard Herzog  <[email protected]>
241    
242            * formed/formed/plugins/export/rg_sql.py
243            (CREATE_DELETE_MASTER_TMPL): In create_master_tbl, call
244            create_master_ds to create the master tbl entry.  This way we can
245            add SQL code that's specific to an MPuls instance to
246            create_master_ds and still have create_master_tbl use that new
247            code.  This is useful for e.g. the JMD-Struktur part.
248    
249    2010-06-02      Roland Geider <[email protected]>
250    
251            * formed/formed/plugins/modify/rules.py: make the names of generated
252              date-sequence-rules unique
253    
254    2010-06-02      Roland Geider <[email protected]>
255    
256            * formed/plugins/export/xls.py: updated regular expression
257    
258    2010-05-17      Frank Koormann <[email protected]>
259    
260            * formed/formed/plugins/export/latex.py: Improved section labeling.
261    
262            * formed/formed/plugins/export/xls.py:
263              Export references (ie where are the lists used).
264    
265    2010-04-30  Torsten Irländer <[email protected]>
266    
267            * formed/formed/plugins/modify/rules.py (VariableType.substitute): Do
268            not generate "%"-rules for required fields in repeat-groups.
269    
270    2010-04-28      Roland Geider <[email protected]>
271    
272            * formed/plugins/export/xls.py: Radiogroups are exported
273            * formed/plugins/export/xsd.py: WASKA formedtree.xml validates XSD
274              JMD formedtree.xml validates XSD
275    
276    2010-04-08  Torsten Irländer <[email protected]>
277    
278            * formed/formed/plugins/modify/rules.py
279            (GenerateRequiredRules.generateDateSequenceRules): Add error mark to
280            rules. Generete each rule twice to be able to render errors at both
281            datefields.
282    
283    2010-04-07  Torsten Irländer <[email protected]>
284    
285            * formed/formed/plugins/export/rg_sql.py: Added "Revision"-Tag.
286    
287    2010-04-06  Torsten Irländer <[email protected]>
288    
289            * formed/formed/io/document.py (_toXML): Added comment with
290            "$Revision"-tag. This tag will/can then be substituted by the VCS.
291            * formed/formed/plugins/export/new_sql.py
292            (ExportAsSQLFilter.doExport): Added comment with
293            "$Revision"-tag. This tag will/can then be substituted by the VCS.
294            * formed/formed/model/exprtree.py: Added years operator.
295    
296    2010-03-30      Roland Geider <[email protected]>
297    
298            * formed/formed/plugins/export/latex.py: Added filter
299    
300    2010-03-25      Roland Geider <[email protected]>
301    
302            * formed/formed/plugins/export/xsd.py: Generate valid XML
303    
304    2010-02-11      Frank Koormann <[email protected]>
305    
306            * formed/formed/plugins/export/xls.py: Allow groups in choices.
307    
308    2009-12-02      Torsten Irländer <[email protected]>
309    
310            * formed/formed/plugins/export/typemap.py: do not ignore conditional
311              nodes on traversal.
312    
313    2009-11-17      Sascha L. Teichmann <[email protected]>
314    
315            * formed/formed/model/exprtree.py: Recognize '%' vars
316              in compilation. Does not eval it!
317    
318            * formed/formed/plugins/modify/rules.py: Generate '%' vars
319              for variables in repeat groups.
320    
321    2009-11-13      Sascha L. Teichmann <[email protected]>
322    
323            * formed/formed/plugins/export/typemap.py: Fixed to work
324            with new repeat group nodes.
325    
326    2009-10-28      Sascha L. Teichmann <[email protected]>
327    
328            * formed/formed/plugins/export/xsd.py,
329            formed/formed/plugins/export/sql.py,
330            formed/formed/plugins/export/new_sql.py: Allow groups in choices.
331    
332    2009-10-07      Frank Koormann <[email protected]>
333    
334            * formed/formed/plugins/export/latex.py:
335            Adjusted textprocessing to escape tex-active characters.
336    
337    2009-10-07      Sascha L. Teichmann <[email protected]>
338    
339            * formed/formed/plugins/export/html.py, formed/formed/plugins/export/latex.py,
340            formed/formed/plugins/export/html2.py: Adjusted to cope with
341            "semi-complete" implementation of logbook tree structure.
342    
343    2009-06-18      Torsten Irländer <[email protected]>
344    
345            * formed/formed/plugins/export/new_sql.py,
346              formed/formed/plugins/export/rg_sql.py: Fixed some sql errors, and
347              added permissions.
348    
349    2009-06-18      Torsten Irländer <[email protected]>
350    
351            * formed/formed/plugins/export/new_sql.py: Commented out generation of
352            page_views, as they do not work with rgroups.
353    
354    2009-06-17      Torsten Irländer <[email protected]>
355    
356            * formed/formed/plugins/export/new_sql.py: Fixed anonymize function
357            and rolenames.
358    
359    2009-06-17      Sascha L. Teichmann <[email protected]>
360    
361            * formed/formed/plugins/export/new_sql.py: s/-/_/ in relation names.
362    
363    2009-05-26      Sascha L. Teichmann <[email protected]>
364    
365            * formed/formed/plugins/names/filter.py: small optimization.
366    
367    2009-05-26      Sascha L. Teichmann <[email protected]>
368    
369            * formed/formed/plugins/names/filter.py: Repaired unique filter for
370              nodecomponent names.
371    
372    2009-05-06      Sascha L. Teichmann <[email protected]>
373    
374            * formed/formed/plugins/export/rg_sql.py: Only create depending
375              repeat groups if no uuid is given. If a uuid is given then
376              the creation is triggered by an xml import.
377    
378    2009-04-28      Sascha L. Teichmann <[email protected]>
379    
380            * formed/formed/plugins/export/new_sql.py: New SQL schema generator to
381              replace the old one. The new one faciliates the new RepeatNode instead
382              of the Group.isRepeat() method to tell if something is to be repeated.
383    
384            * formed/formed/config.py: Use new SQL schema generator plug-in by default.
385              The old one is deactivated.
386    
387            * formed/formed/plugins/export/rg_sql.py: Fix 'rg_' naming of repeat groups.
388    
389    2009-04-28      Sascha L. Teichmann <[email protected]>
390    
391            * formed/formed/plugins/export/rg_sql.py: Added delete functions.
392              TODO: Adjust execution rights.
393    
394    2009-04-27      Sascha L. Teichmann <[email protected]>
395    
396            * formed/formed/plugins/export/rg_sql.py: Fixed $$$$ -> $$ template problems.
397              Add functions to create dataset.
398    
399    2009-04-24      Sascha L. Teichmann <[email protected]>
400    
401            * formed/formed/plugins/export/rg_sql.py: new plug-in to generate
402              tree structure functions in database.
403    
404            * formed/formed/config.py: load plug-in.
405    
406    2009-04-16      Sascha L. Teichmann <[email protected]>
407    
408            * formed/formed/model/data.py: Added 'digest' attribute to
409              RepeatNode. Removed needless methods
410    
411    2009-04-16      Sascha L. Teichmann <[email protected]>
412    
413            * formed/formed/model/exprtree.py: make 'equal' and 'not equal'
414              more readable with '=' and '<>'.
415    
416    2009-04-02      Sascha L. Teichmann <[email protected]>
417    
418            * formed/formed/plugins/export/sql.py: call anonymization
419              of uuid on anonymization of case.
420    
421    2009-03-31      Sascha L. Teichmann <[email protected]>
422    
423            * formed/formed/plugins/export/sql.py: Set uuid_id to NULL in
424              case_anonymize().
425    
426    2009-03-31      Sascha L. Teichmann <[email protected]>
427    
428            * formed/formed/model/exprtree.py: Add some code to pretty print
429              the trees infix.
430    
431            * formed/formed/plugins/export/rules.py: New. Exporter for human
432              readable rules.
433    
434            * formed/formed/plugins/export/html.py: Fixed HTML generation.
435    
436            * formed/formed/config.py: Added new new Rule export plug-in.
437    
438    2009-03-31      Sascha L. Teichmann <[email protected]>
439    
440            * formed/formed/model/exprtree.py: Fixes from server. Raise
441              exceptions if there is less or more than one element on stack
442              after compilation of expression.
443    
444    2009-03-20      Sascha L. Teichmann <[email protected]>
445    
446            * formed/formed/model/data.py: Removed debug output
447    
448            * formed/formed/plugins/modify/rules.py: Fixed error message.
449              Generate past and future rules.
450    
451    2009-03-16      Sascha L. Teichmann <[email protected]>
452    
453            * formed/formed/model/exprtree.py: Forget to call today with context.
454    
455    2009-03-16      Sascha L. Teichmann <[email protected]>
456    
457            * formed/formed/io/document.py: Fixed syntax typo.
458    
459    2009-03-16      Sascha L. Teichmann <[email protected]>
460    
461            * formed/formed/model/data.py: ConditionalNode inherits from Node directly.
462    
463    2009-03-16      Sascha L. Teichmann <[email protected]>
464    
465            * formed/formed/model/data.py: Added ConditionalNode
466    
467            * formed/formed/io/document.py: Make ConditionalNode loadable.
468    
469    2009-03-13      Sascha L. Teichmann <[email protected]>
470    
471            * formed/formed/plugins/modify/rules.py: Make the error descriptions
472              in date sequence rules more precise.
473    
474    2009-03-13      Sascha L. Teichmann <[email protected]>
475    
476            * formed/formed/plugins/modify/rules.py: generate date sequence rules.
477    
478    2009-03-13      Sascha L. Teichmann <[email protected]>
479    
480            * formed/formed/model/exprtree.py: New tree based expression engine.
481    
482            * formed/formed/model/__init__.py, formed/formed/model/data.py:
483              Adjusted imports.
484    
485    2009-03-12      Torsten Irländer <[email protected]>
486    2009-06-17      Sascha L. Teichmann <[email protected]>
487    
488            * formed/formed/plugins/export/new_sql.py: s/-/_/ in relation names.
489    
490    2009-05-26      Sascha L. Teichmann <[email protected]>
491    
492            * formed/formed/plugins/names/filter.py: small optimization.
493    
494    2009-05-26      Sascha L. Teichmann <[email protected]>
495    
496            * formed/formed/plugins/names/filter.py: Repaired unique filter for
497              nodecomponent names.
498    
499    2009-05-06      Sascha L. Teichmann <[email protected]>
500    
501            * formed/formed/plugins/export/rg_sql.py: Only create depending
502              repeat groups if no uuid is given. If a uuid is given then
503              the creation is triggered by an xml import.
504    
505    2009-04-28      Sascha L. Teichmann <[email protected]>
506    
507            * formed/formed/plugins/export/new_sql.py: New SQL schema generator to
508              replace the old one. The new one faciliates the new RepeatNode instead
509              of the Group.isRepeat() method to tell if something is to be repeated.
510    
511            * formed/formed/config.py: Use new SQL schema generator plug-in by default.
512              The old one is deactivated.
513    
514            * formed/formed/plugins/export/rg_sql.py: Fix 'rg_' naming of repeat groups.
515    
516    2009-04-28      Sascha L. Teichmann <[email protected]>
517    
518            * formed/formed/plugins/export/rg_sql.py: Added delete functions.
519              TODO: Adjust execution rights.
520    
521    2009-04-27      Sascha L. Teichmann <[email protected]>
522    
523            * formed/formed/plugins/export/rg_sql.py: Fixed $$$$ -> $$ template problems.
524              Add functions to create dataset.
525    
526    2009-04-24      Sascha L. Teichmann <[email protected]>
527    
528            * formed/formed/plugins/export/rg_sql.py: new plug-in to generate
529              tree structure functions in database.
530    
531            * formed/formed/config.py: load plug-in.
532    
533    2009-04-16      Sascha L. Teichmann <[email protected]>
534    
535            * formed/formed/model/data.py: Added 'digest' attribute to
536              RepeatNode. Removed needless methods
537    
538    2009-04-16      Sascha L. Teichmann <[email protected]>
539    
540            * formed/formed/model/exprtree.py: make 'equal' and 'not equal'
541              more readable with '=' and '<>'.
542    
543    2009-04-02      Sascha L. Teichmann <[email protected]>
544    
545            * formed/formed/plugins/export/sql.py: call anonymization
546              of uuid on anonymization of case.
547    
548    2009-03-31      Sascha L. Teichmann <[email protected]>
549    
550            * formed/formed/plugins/export/sql.py: Set uuid_id to NULL in
551              case_anonymize().
552    
553    2009-03-31      Sascha L. Teichmann <[email protected]>
554    
555            * formed/formed/model/exprtree.py: Add some code to pretty print
556              the trees infix.
557    
558            * formed/formed/plugins/export/rules.py: New. Exporter for human
559              readable rules.
560    
561            * formed/formed/plugins/export/html.py: Fixed HTML generation.
562    
563            * formed/formed/config.py: Added new new Rule export plug-in.
564    
565    2009-03-31      Sascha L. Teichmann <[email protected]>
566    
567            * formed/formed/model/exprtree.py: Fixes from server. Raise
568              exceptions if there is less or more than one element on stack
569              after compilation of expression.
570    
571    2009-03-20      Sascha L. Teichmann <[email protected]>
572    
573            * formed/formed/model/data.py: Removed debug output
574    
575            * formed/formed/plugins/modify/rules.py: Fixed error message.
576              Generate past and future rules.
577    
578    2009-03-16      Sascha L. Teichmann <[email protected]>
579    
580            * formed/formed/model/exprtree.py: Forget to call today with context.
581    
582    2009-03-16      Sascha L. Teichmann <[email protected]>
583    
584            * formed/formed/io/document.py: Fixed syntax typo.
585    
586    2009-03-16      Sascha L. Teichmann <[email protected]>
587    
588            * formed/formed/model/data.py: ConditionalNode inherits from Node directly.
589    
590    2009-03-16      Sascha L. Teichmann <[email protected]>
591    
592            * formed/formed/model/data.py: Added ConditionalNode
593    
594            * formed/formed/io/document.py: Make ConditionalNode loadable.
595    
596    2009-03-13      Sascha L. Teichmann <[email protected]>
597    
598            * formed/formed/plugins/modify/rules.py: Make the error descriptions
599              in date sequence rules more precise.
600    
601    2009-03-13      Sascha L. Teichmann <[email protected]>
602    
603            * formed/formed/plugins/modify/rules.py: generate date sequence rules.
604    
605    2009-03-13      Sascha L. Teichmann <[email protected]>
606    
607            * formed/formed/model/exprtree.py: New tree based expression engine.
608    
609            * formed/formed/model/__init__.py, formed/formed/model/data.py:
610              Adjusted imports.
611    
612    2009-03-12      Torsten Irländer <[email protected]>
613    2009-06-17      Sascha L. Teichmann <[email protected]>
614    
615            * formed/formed/plugins/export/new_sql.py: s/-/_/ in relation names.
616    
617    2009-05-26      Sascha L. Teichmann <[email protected]>
618    
619            * formed/formed/plugins/names/filter.py: small optimization.
620    
621    2009-05-26      Sascha L. Teichmann <[email protected]>
622    
623            * formed/formed/plugins/names/filter.py: Repaired unique filter for
624              nodecomponent names.
625    
626    2009-05-06      Sascha L. Teichmann <[email protected]>
627    
628            * formed/formed/plugins/export/rg_sql.py: Only create depending
629              repeat groups if no uuid is given. If a uuid is given then
630              the creation is triggered by an xml import.
631    
632    2009-04-28      Sascha L. Teichmann <[email protected]>
633    
634            * formed/formed/plugins/export/new_sql.py: New SQL schema generator to
635              replace the old one. The new one faciliates the new RepeatNode instead
636              of the Group.isRepeat() method to tell if something is to be repeated.
637    
638            * formed/formed/config.py: Use new SQL schema generator plug-in by default.
639              The old one is deactivated.
640    
641            * formed/formed/plugins/export/rg_sql.py: Fix 'rg_' naming of repeat groups.
642    
643    2009-04-28      Sascha L. Teichmann <[email protected]>
644    
645            * formed/formed/plugins/export/rg_sql.py: Added delete functions.
646              TODO: Adjust execution rights.
647    
648    2009-04-27      Sascha L. Teichmann <[email protected]>
649    
650            * formed/formed/plugins/export/rg_sql.py: Fixed $$$$ -> $$ template problems.
651              Add functions to create dataset.
652    
653    2009-04-24      Sascha L. Teichmann <[email protected]>
654    
655            * formed/formed/plugins/export/rg_sql.py: new plug-in to generate
656              tree structure functions in database.
657    
658            * formed/formed/config.py: load plug-in.
659    
660    2009-04-16      Sascha L. Teichmann <[email protected]>
661    
662            * formed/formed/model/data.py: Added 'digest' attribute to
663              RepeatNode. Removed needless methods
664    
665    2009-04-16      Sascha L. Teichmann <[email protected]>
666    
667            * formed/formed/model/exprtree.py: make 'equal' and 'not equal'
668              more readable with '=' and '<>'.
669    
670    2009-04-02      Sascha L. Teichmann <[email protected]>
671    
672            * formed/formed/plugins/export/sql.py: call anonymization
673              of uuid on anonymization of case.
674    
675    2009-03-31      Sascha L. Teichmann <[email protected]>
676    
677            * formed/formed/plugins/export/sql.py: Set uuid_id to NULL in
678              case_anonymize().
679    
680    2009-03-31      Sascha L. Teichmann <[email protected]>
681    
682            * formed/formed/model/exprtree.py: Add some code to pretty print
683              the trees infix.
684    
685            * formed/formed/plugins/export/rules.py: New. Exporter for human
686              readable rules.
687    
688            * formed/formed/plugins/export/html.py: Fixed HTML generation.
689    
690            * formed/formed/config.py: Added new new Rule export plug-in.
691    
692    2009-03-31      Sascha L. Teichmann <[email protected]>
693    
694            * formed/formed/model/exprtree.py: Fixes from server. Raise
695              exceptions if there is less or more than one element on stack
696              after compilation of expression.
697    
698    2009-03-20      Sascha L. Teichmann <[email protected]>
699    
700            * formed/formed/model/data.py: Removed debug output
701    
702            * formed/formed/plugins/modify/rules.py: Fixed error message.
703              Generate past and future rules.
704    
705    2009-03-16      Sascha L. Teichmann <[email protected]>
706    
707            * formed/formed/model/exprtree.py: Forget to call today with context.
708    
709    2009-03-16      Sascha L. Teichmann <[email protected]>
710    
711            * formed/formed/io/document.py: Fixed syntax typo.
712    
713    2009-03-16      Sascha L. Teichmann <[email protected]>
714    
715            * formed/formed/model/data.py: ConditionalNode inherits from Node directly.
716    
717    2009-03-16      Sascha L. Teichmann <[email protected]>
718    
719            * formed/formed/model/data.py: Added ConditionalNode
720    
721            * formed/formed/io/document.py: Make ConditionalNode loadable.
722    
723    2009-03-13      Sascha L. Teichmann <[email protected]>
724    
725            * formed/formed/plugins/modify/rules.py: Make the error descriptions
726              in date sequence rules more precise.
727    
728    2009-03-13      Sascha L. Teichmann <[email protected]>
729    
730            * formed/formed/plugins/modify/rules.py: generate date sequence rules.
731    
732    2009-03-13      Sascha L. Teichmann <[email protected]>
733    
734            * formed/formed/model/exprtree.py: New tree based expression engine.
735    
736            * formed/formed/model/__init__.py, formed/formed/model/data.py:
737              Adjusted imports.
738    
739    2009-03-12      Torsten Irländer <[email protected]>
740    
741            Introduced new order attribute for date fields
742    
743            * formed/formed/model/data.py: Order fields can be used to define to
744            ordering of datefields withing the document. Needed for automatic
745            generation of consistency rules.
746    
747    2009-02-09      Sascha L. Teichmann <[email protected]>
748    
749            * formed/formed/model/data.py: Allow pages to be 'invisible'.
750    
751    2009-02-09      Sascha L. Teichmann <[email protected]>
752    
753            * formed/formed/plugins/export/sql.py: Fixed problem with
754              description reference tables of radio groups.
755    
756    2009-02-09      Sascha L. Teichmann <[email protected]>
757    
758            * formed/formed/plugins/export/sql.py: replace '-' in names
759              by '_'.
760              
761    2009-02-09      Sascha L. Teichmann <[email protected]>
762    
763            * formed/formed/plugins/export/sql.py: to figure ou which
764              tables are equal the insert statememnts are lower cased
765              and sorted before they are compared. This reduces the number
766              of generated referfence tables.
767    
768    2009-02-09      Sascha L. Teichmann <[email protected]>
769    
770            Repair SQL schema creation for radio groups.
771    
772            * formed/formed/plugins/export/sql.py: radio groups are handled
773              like choices now.
774    
775    2009-02-09      Sascha L. Teichmann <[email protected]>
776    
777            Make it startable again.
778    
779            * formed/formed/plugins/export/xls.py: Import pyExcelerator only
780              when plug-in is called.
781    
782            * formed/formed/model/nodecomponents.py: Event routing was messed up.
783              Rewired root node with document.
784    
785            * formed/formed/plugins/web/help.py: Removed old xml.ext import.
786              XXX: This breaks creating help by now!
787    
788            * formed/formed/io/parser.py: Replace old deprecated base class
789              by new one.
790    
791            * formed/formed/main.py: Do not crash if locale cannot be set.
792    
793            * formed/formed/ui/controls.py: Use document.getCase() instead
794              of document.case to prevent uninitialized dereferences.
795    
796    2009-01-22      Torsten Irländer <[email protected]>
797    
798            Implemented new XML-Format for formed xml files.
799    
800            * formed/formed/model/nodecomponents.py,
801              formed/formed/io/document.py,
802              formed/formed/main.py,
803              formed/formed/ui/controls.py: Introduced new "case" and "logbook"
804              node. Under case is the definition of the formular. logbook will
805              hold the defintion of logboog entrys. For now only the part under
806              "case" can be modified.  
807    
808    2009-01-21      Torsten Irländer <[email protected]>
809    
810            Changed way how XSD-Scheme is generated
811    
812            * formed/formed/plugins/export/xsd.py: Enhanced xsd schema to support
813              logbookentrys. The scheme definiton is now hardcoded in the
814              exporter as it will rarely change. It logbookpart will not be
815              generated from the formedtree anymore.
816    
817    2009-01-20      Torsten Irländer <[email protected]>
818    
819            Support Logbook entrys in xsd schema export
820    
821            * formed/formed/model/data.py: Repeatnode are now handeld as
822              repeatgroups in xsd-export
823            * formed/formed/plugins/export/xsd.py: Enhanced xsd schema to support
824              logbookentrys. The scheme will now validate against an xmlfile from
825              the offlineclient.
826    
827    2009-01-09      Torsten Irländer <[email protected]>
828    
829            Added new repeat node
830    
831            * formed/formed/model/data.py,
832              formed/formed/io/document.py: Added repeatnode to the formedtree.
833              TODO: Remove repeatgroup handling from the groupnode.
834    
835    2009-01-08      Torsten Irländer <[email protected]>
836    
837            Add isset operator to autogenerated rules.
838    
839            * formed/formed/plugins/modify/rules.py: Add issed operator to standard
840              autogenerated rules.
841    
842    2008-12-17      Frank Koormann <[email protected]>
843    
844            * formed/formed/plugins/export/latex.py: Export form as set of
845            latex tables to be included into a master document. The export
846            generates section marks to structure the form and placeholders for
847            help texts to be merged in by a post processing step.
848    
849    2008-12-04      Sascha L. Teichmann <[email protected]>
850    
851            * formed/formed/model/expr.py: Added 'today' which pushes the current date
852              on the stack.
853    
854    2008-12-03      Sascha L. Teichmann <[email protected]>
855    
856            * formed/formed/plugins/web/controllers.py: compute changeset more correctly in
857              storage of fields.
858    
859            * formed/formed/plugins/export/xsd.py: Added unknown int -999999 to integer
860              fields as an accepted value. Generate schema for radio groups too.
861    
862    2008-12-01      Torsten Irländer <[email protected]>
863    
864            Added autmatic generation of required rules
865    
866            * formed/formed/model/data.py,
867              formed/formed/model/expr.py,
868              formed/formed/plugins/modify/rules.py: Default rules for required
869              fields can now be generated.
870    
871    2008-11-28      Sascha L. Teichmann <[email protected]>
872    
873            * formed/formed/model/data.py, formed/formed/model/nodecomponents.py:
874              Ported WidgetCollector from Offline client.
875    
876            * formed/formed/plugins/modify/__init__.py, formed/formed/plugins/modify,
877              formed/formed/plugins/modify/rules.py: Stub for required rules generator.
878    
879            * formed/formed/config.py: Bind new filter to FormEd
880    
881    2008-11-27      Torsten Irländer <[email protected]>
882    
883            * formed/formed/model/data.py: Added new attribute mark for rules
884    
885    2008-11-10      Torsten Irländer <[email protected]>
886    
887            Implemented radio-matrix elements. radio elelement having the same
888            options can now be rendered in table form.
889    
890            * formed/formed/model/data.py,
891              formed/formed/io/document.py: Added new radio-matrix element to the
892              model and gui
893            * formed/formed/plugins/web/view_renderer.py: Write html-renderer for
894              the radio-matrix element.
895    
896    2008-11.03      Torsten Irländer <[email protected]>
897    
898            * formed/formed/model/data.py: Fixed import error
899    
900    2008-10-29      Sascha L. Teichmann <[email protected]>
901    
902            Relative paths in external choices are now possible. Relative paths are
903            relative to path of the master document.
904    
905            * formed/model/data.py: external choice are now storing the path to the
906              master document.
907    
908            * formed/formed/io/document.py: Pass context to SAX builder.
909    
910            * formed/formed/io/factories.py: For new created nodes look if there
911              is a method 'setLoadContext' and call it.
912    
913    2008-09-04      Sascha L. Teichmann <[email protected]>
914    
915            * doc/beschreibung.txt: New. Initial description of FormEd (german).
916    
917    2008-08-22      Sascha L. Teichmann <[email protected]>
918    
919            * formed/formed/model/nodecomponents.py: Added attribute 'flags'.
920    
921    2008-08-21      Sascha L. Teichmann <[email protected]>
922    
923            * formed/formed/io/document.py: Indent tree while saving
924            * formed/formed/main.py: removed needless print
925    
926    2008-08-15      Sascha L. Teichmann <[email protected]>
927    
928            * LICENSE: New GPLv3
929            * */*.py, *.sh: Added reference to LICENSE
930    
931    2008-08-15      Sascha L. Teichmann <[email protected]>
932    
933            * tools: removed because there a no tools any more.
934    
935    2008-08-15      Sascha L. Teichmann <[email protected]>
936    
937            * tools/formed: moved one level up because its the only
938              part of this project now.
939    
940    2008-08-15      Sascha L. Teichmann <[email protected]>
941    
942            * tools/anonym/*: Removed as it belongs to mpuls WASKA
943    
944    2008-08-15      Sascha L. Teichmann <[email protected]>
945    
946            * pdf2xfa/*: removed. It belongs to mpuls
947    
948    2008-08-13 L. Teichmann <[email protected]>
949    
950            i18n of the plug-ins:
951            * tools/formed/formed/plugins/export/diff.py,
952              tools/formed/formed/plugins/export/data.py,
953              tools/formed/formed/plugins/export/old_sql.py,
954              tools/formed/formed/plugins/export/latex.py,
955              tools/formed/formed/plugins/export/xsd.py,
956              tools/formed/formed/plugins/export/sql.py,
957              tools/formed/formed/plugins/export/typemap.py,
958              tools/formed/formed/plugins/export/html.py,
959              tools/formed/formed/plugins/export/mode.py,
960              tools/formed/formed/plugins/export/html2.py,
961              tools/formed/formed/plugins/export/xls.py,
962              tools/formed/formed/plugins/names/filter.py,
963              tools/formed/formed/plugins/plugin.py,
964              tools/formed/formed/plugins/web/help.py,
965              tools/formed/formed/plugins/web/form_renderer.py,
966              tools/formed/formed/plugins/web/plugin.py,
967              tools/formed/formed/plugins/web/error_renderer.py,
968              tools/formed/formed/plugins/web/view_renderer.py,
969              tools/formed/formed/plugins/web/semantic.py,
970              tools/formed/formed/plugins/web/cache.py,
971              tools/formed/formed/plugins/web/server.py,
972              tools/formed/formed/plugins/web/controllers.py,
973              tools/formed/formed/plugins/web/renderer.py,
974              tools/formed/formed/plugins/ui/controls.py,
975              tools/formed/formed/config.py: _("")s the stuff
976              tools/formed/po/formed.pot, tools/formed/po/de_DE.po:
977              extracted and translated.
978    
979    2008-08-08      Sascha L. Teichmann <[email protected]>
980    
981            First version of FormEd i18n. After checkout go to tools/formed/po/ and
982            say 'make mo'. Afterwards you can start FormEd as usual.
983    
984            * tools/formed/resources: New. Place to places ressources like *.mo files
985            * tools/formed/formed/main.py, tools/formed/formed/ui/controls.py: Add _("")s
986              
987            * tools/formed/po,
988              tools/formed/po/Makefile,
989              tools/formed/po/formed.pot,
990              tools/formed/po/de_DE.po: i18n stuff.
991    
992    2008-08-08      Sascha L. Teichmann <[email protected]>
993    
994            * tools/anonym/xmlexport.py: Only export cases which are not
995              'schwebend geloescht'.
996    
997    2008-07-23      Sascha L. Teichmann <[email protected]>
998    
999            Fixed issue472
1000    
1001            * tools/anonym/xmlimport.py: Regenerate dicts from current form ed tree.
1002    
1003    2008-07-17      Sascha L. Teichmann <[email protected]>
1004    
1005            * tools/anonym/xmlimport.py: removed marking of invalid cases
1006            * tools/anonym/cron.importAnonXml.sh: re-inserted here.
1007    
1008    2008-07.07      Torsten Irländer <[email protected]>
1009    
1010            * tools/formed/formed/plugins/export/latex.py
1011              tools/formed/formed/config.py: Added new LaTex Export. Beware this
1012              is even more ugly the HTML Export.
1013            * tools/formed/formed/plugins/export/html.py: Added information on
1014              anonymisation to the html export.
1015    
1016    2008-07-07      Sascha L. Teichmann <[email protected]>
1017    
1018            * tools/anonym/xmlimport.py: Mark cases if they are inconsistent.
1019    
1020    2008-07-07      Sascha L. Teichmann <[email protected]>
1021    
1022            * tools/anonym/xmlimport.py: Updated to schema 1.5. (Which is incompatible to 1.4)
1023    
1024    2008-07-07      Sascha L. Teichmann <[email protected]>  
1025            
1026            * tools/formed/formed/plugins/export/html.py: Added additional column
1027            to the html export with information how each field will get
1028            anonymized.
1029    
1030    2008-07-07      Sascha L. Teichmann <[email protected]>  
1031    
1032            * tools/anonym/xmlimport.py: sync with productive version.
1033    
1034    2008-06-10      Torsten Irländer <[email protected]>
1035    
1036            * tools/formed/formed/plugins/export/sql.py: grant admin permission to
1037              call anonymize function
1038    
1039    2008-05-21      Sascha L. Teichmann <[email protected]>  
1040    
1041            * tools/formed/formed/plugins/export/xsd.py: Brought encoding
1042              back to UTF-8.
1043    
1044    2008-05-21      Frank Koormann <[email protected]>
1045    
1046            * tools/formed/formed/plugins/export/xls.py: New, export key value
1047            tables as excel workbook with one sheet per table.
1048    
1049            * tools/formed/formed/config.py: ExportKeyValueTableAsXLS added.
1050    
1051    2008-05-21      Frank Koormann <[email protected]>
1052    
1053            * tools/formed/formed/plugins/export/xsd.py
1054            (SchemaCreator._createChoice): Fix use of choices name.
1055    
1056    2008-04-29      Sascha L. Teichmann <[email protected]>
1057    
1058            * tools/formed/formed/plugins/export/xsd.py: Use substitution group
1059              to allow arbitrary order of repeat groups.
1060    
1061    2008-04-29      Sascha L. Teichmann <[email protected]>
1062    
1063            * tools/formed/formed/plugins/export/xsd.py: Removed a needless
1064              character.
1065    
1066    2008-04-29      Sascha L. Teichmann <[email protected]>
1067    
1068            * tools/formed/formed/plugins/export/xsd.py: Added annotations
1069              to fields.
1070    
1071    2008-04-29      Sascha L. Teichmann <[email protected]>
1072    
1073            * tools/formed/formed/plugins/export/xsd.py: Added for
1074              choice fields.
1075    
1076    2008-04-29      Sascha L. Teichmann <[email protected]>
1077    
1078            * tools/formed/formed/plugins/export/xsd.py: Added support for
1079              boolean fields based on enumerations.
1080    
1081    2008-04-28      Sascha L. Teichmann <[email protected]>
1082    
1083            * tools/formed/formed/plugins/export/xsd.py: Added support for
1084              date, text and textarea fields.
1085    
1086    2008-04-28      Sascha L. Teichmann <[email protected]>
1087    
1088            * tools/formed/formed/plugins/export/xsd.py: Added support for
1089              repeat groups and integer fields.
1090    
1091    2008-04-28      Sascha L. Teichmann <[email protected]>
1092    
1093            * tools/formed/formed/plugins/export/xsd.py: New. plug-in for
1094              exporting as XML schema. not ready, yet.
1095    
1096            * tools/formed/formed/config.py: Use new plug-in.
1097    
1098            * tools/formed/formed/plugins/export/sql.py: Fixed wrong GUI text.
1099    
1100    2008-04-17      Torsten Irländer <[email protected]>
1101    
1102            * tools/formed/formed/plugins/export/sql.py: Changed WHERE clause in
1103            for the views because of the new group permissions.
1104    
1105    2008-04-09      Sascha L. Teichmann <[email protected]>
1106    
1107            * tools/anonym/cron.deleteOldAnonymized.sh: New. cron job to delete
1108              old anonymized cases.
1109    
1110    2008-04-01      Sascha L. Teichmann <[email protected]>
1111    
1112            * tools/anonym/xmlexport.py: Removed "WHERE einverstaendniserklaerung = 1"
1113              from clause to select datasets.
1114              Replace ']]>' in CDATA sections with correct splitted replacement.
1115    
1116    2008-03-12      Sascha L. Teichmann <[email protected]>
1117            
1118            * tools/anonym/cron.importAnonXml.sh: Added absolut path to  xmlimport
1119              script.
1120    
1121            * tools/anonym/xmlimport.py: commented out database port from
1122              connectionstring.
1123    
1124    2008-03-12      Sascha L. Teichmann <[email protected]>
1125    
1126            * tools/formed/formed/plugins/export/sql.py: Fixed bug in generation
1127              of anonymization of repeat groups (wrong id was given).
1128    
1129    2008-03-11      Sascha L. Teichmann <[email protected]>
1130    
1131            * tools/formed/formed/plugins/export/sql.py: Generate no update
1132              statements for relations which have no anonym functions applied.
1133    
1134    2008-03-11      Sascha L. Teichmann <[email protected]>
1135    
1136            * tools/formed/formed/plugins/export/sql.py: Added a newline after
1137              'COMMIT;' in the last line.
1138    
1139    2008-03-11      Sascha L. Teichmann <[email protected]>
1140    
1141            * tools/formed/formed/plugins/export/sql.py: Fixed syntax of
1142              generated anonymize_case() function.
1143              
1144    2008-03-11      Sascha L. Teichmann <[email protected]>
1145    
1146            * tools/formed/formed/plugins/export/sql.py: Added code to
1147              generate a plpgsql function anonymize_case() that anonymized
1148              a given case and all of its depending repeat groups.
1149    
1150    2008-03-06      Sascha L. Teichmann <[email protected]>
1151    
1152            * tools/anonym/xmlimport.py: remove print of insert statement.
1153    
1154            * tools/formed/formed/plugins/export/sql.py: Print generation date in ISO.
1155    
1156    2008-03-03      Torsten Irländer <[email protected]>
1157    
1158            * anonym/cron.sendAnonXml.sh,
1159              anonym/getDbList.sh: Modified script to be used directly in the
1160              production environment (Copied running scripts from production
1161              server)
1162    
1163            * cron.importAnonXml.sh: Added deleting of ols cases. Modified script
1164              to be used in a production environment (Cpoied running script from
1165              production server)
1166    
1167            * tools/anonym/xmlexport.py: Added "WHERE" clause to SQL-Statement to
1168              ensure that only valid cases get exported
1169    
1170    2008-02-27      Sascha L. Teichmann <[email protected]>
1171    
1172            * tools/anonym/xmlimport.py: Fixed bug in date converter.
1173    
1174    2008-02-27      Sascha L. Teichmann <[email protected]>
1175    
1176            * tools/anonym/xmlimport.py: Simpilied version
1177    
1178    2008-02-27      Sascha L. Teichmann <[email protected]>
1179    
1180            * tools/anonym/cron.importAnonXml.sh: Add sudo call for
1181              xmlimport.py and parameters.
1182    
1183            * tools/anonym/xmlimport.py: Various bug fixes. Not working yet. :-/
1184    
1185            * tools/anonym/xmlexport.py: Use python interpreter without env
1186              because of sudo context.
1187    
1188    2008-02-26      Sascha L. Teichmann <[email protected]>
1189    
1190            * tools/anonym/xmlimport.py: added support for getopt. add
1191              support to force in fkz in import of case.
1192    
1193    2008-02-26      Sascha L. Teichmann <[email protected]>
1194    
1195            * tools/anonym/xmlimport.py: Implemented logic to create/update cases.
1196    
1197            * tools/anonym/html.awk: produces valid HTML.
1198    
1199    2008-02-25      Sascha L. Teichmann <[email protected]>
1200    
1201            * tools/anonym/joincsv.py: Fix a logic bug.
1202    
1203    2008-02-25      Torsten Irlaender <[email protected]>
1204    
1205            * tools/anonym/cron.importAnonXml.sh: Added shellscript for importing
1206              exportted cases. It will read all files from a directory and import
1207              the files into the DB. After that the script will cleanup the
1208              directory.
1209    
1210    2008-02-25      Torsten Irländer <[email protected]>
1211            
1212            * tools/anonym/cron.sendAnonXml.sh,
1213              tools/anonym/xmlexport.py,
1214              tools/anonym/getDbList.sh: Added shell-scripts for exporting cases
1215    
1216    2008-02-25      Sascha L. Teichmann <[email protected]>
1217    
1218            * tools/anonym/joincsv.py: Fixed typo which generated wrong number of cols.
1219    
1220    2008-02-25      Sascha L. Teichmann <[email protected]>
1221    
1222            * tools/anonym/joincsv.py: New. Joins CSV files.
1223    
1224            * tools/anonym/html.awk: New. Converts CSV to HTML
1225    
1226    2008-02-25      Sascha L. Teichmann <[email protected]>
1227    
1228            * tools/anonym/xmlimport.py: New. Added generation of
1229              update statements.
1230    
1231    2008-02-25      Sascha L. Teichmann <[email protected]>
1232    
1233            * tools/anonym/xmlimport.py: New. Base for importing
1234              XML from cron.
1235    
1236    2008-02-24      Sascha L. Teichmann <[email protected]>
1237    
1238            * tools/formed/formed/plugins/export/html2.py: New. plug-in
1239              for a simplified HTML output
1240    
1241            * tools/formed/formed/plugins/export/typemap.py: New. plug-in
1242              for dump schema as python dictionary.
1243    
1244            * tools/formed/formed/config.py: Enable new plug-ins. Out comment
1245              old stored procedure and view generators.
1246    
1247    2008-02-19      Sascha L. Teichmann <[email protected]>
1248    
1249            * tools/anonym/xmlexport.py: New. Export all cases in database
1250              as XML.
1251    
1252    2008-02-18      Sascha L. Teichmann <[email protected]>
1253    
1254            * tools/anonym/anoymncsv.py: separate field with '\t' now.
1255              all '\t's are replaced by '   ' before. '\r\n' are removed too.
1256    
1257    2008-02-15      Sascha L. Teichmann <[email protected]>
1258    
1259            * tools/anonym/anoymncsv.py: simple script to fetch anonymous
1260              data from database.
1261    
1262    2008-02-14      Sascha L. Teichmann <[email protected]>
1263    
1264            * tools/formed/formed/plugins/export/sql.py: Exchanged name
1265              erase_value with suppress_value/suppress_value2.
1266    
1267    2008-02-13      Sascha L. Teichmann <[email protected]>
1268    
1269            * tools/formed/formed/plugins/export/sql.py: output id, master_id
1270              substitute 'erase_value' with NULL value.
1271    
1272    2008-02-13      Sascha L. Teichmann <[email protected]>
1273    
1274            * tools/formed/formed/plugins/export/sql.py: output id, master_id
1275              and uuid_id in anonymiziation views too.
1276    
1277    2008-02-13      Sascha L. Teichmann <[email protected]>
1278    
1279            * tools/formed/formed/plugins/export/sql.py: Added generation
1280              of anonymiziation views for master table views and repeat group
1281              views.
1282    
1283    2008-02-13      Sascha L. Teichmann <[email protected]>
1284    
1285            * tools/formed/formed/model/nodecomponents.py: Added attribute
1286              "function"
1287    
1288            * tools/formed/formed/io/document.py: Save attributes in
1289              alphabetical order.
1290    
1291    2008-02-02      Sascha L. Teichmann <[email protected]>
1292    
1293            * tools/formed/formed/plugins/export/sql.py: Added update rule
1294              for master table and repeat groups views. Granted update right
1295              to :cm_ka_group.
1296    
1297    2008-02-01      Sascha L. Teichmann <[email protected]>
1298    
1299            * tools/formed/formed/plugins/export/sql.py: Added a column 'uuid_id'
1300              for master table and repeat groups. Also added unique constraints
1301              to these columns.
1302    
1303    2007-12-10      Sascha L. Teichmann <[email protected]>
1304    
1305            * pdf2xfa/src/de/intevation/pdfimport/ClientHandler.java: Added a system
1306              property 'root.element' to specify the name of the XML root.
1307    
1308            * pdf2xfa/startup/pdf2xfa.sh, pdf2xfa/README.TXT: Adjusted.
1309    
1310    2007-11-22      Sascha L. Teichmann <[email protected]>
1311    
1312            * pdf2xfa/startup, */pdf2xfa.sh, */pdf2xfa.init: boot scripts
1313              for GNU/Linux (tested Debian 'Etch' 4.0) by Sascha Wilde.
1314    
1315            * pdf2xfa/README.TXT: Add a remark to new boot scripts.
1316    
1317    2007-11-21      Sascha L. Teichmann <[email protected]>
1318    
1319            * pdf2xfa/src/de/intevation/pdfimport/Log.java: New.
1320              Sends logging to file.
1321    
1322            * pdf2xfa/src/de/intevation/pdfimport/Server.java,
1323              pdf2xfa/src/de/intevation/pdfimport/ClientHandler.java: Adjusted
1324              to use new logging.
1325    
1326            * pdf2xfa/README.TXT: Added remark how to use logging.
1327    
1328    2007-11-16      Frank Koormann <[email protected]>
1329    
1330            * tools/formed/formed/plugins/export/sql.py (createSchema):
1331            Append only column "bearbeiter_id", standins are modelled by a
1332            separate table.
1333    
1334    2007-11-16      Sascha L. Teichmann <[email protected]>
1335    
1336            * tools/formed/formed/model/data.py,
1337              tools/formed/formed/plugins/web/view_renderer.py:
1338              Added an invisible flag for info fields.
1339    
1340    2007-11-07      Sascha L. Teichmann <[email protected]>
1341    
1342            * tools/formed/formed/model/nodecomponents.py: Fixed a few small bugs
1343              (calling a wrong method).
1344    
1345    2007-11-07      Sascha L. Teichmann <[email protected]>
1346    
1347            * tools/formed/formed/model/nodecomponents.py: Added a field
1348              'alternative' to all node components. This might be of help to
1349              match PDF imports where the descriptions do not match.
1350    
1351    2007-10-23      Frank Koormann <[email protected]>
1352    
1353            * tools/formed/formed/plugins/export/sql.py: New WHERE-Clause for views
1354    
1355    2007-10-23      Frank Koormann <[email protected]>
1356    
1357            * tools/formed/formed/plugins/export/sql.py: Set default
1358            value (-1) for choices and bools.
1359    
1360    2007-10-21      Frank Koormann <[email protected]>
1361    
1362            * tools/formed/formed/plugins/export/sql.py: Grant statements for
1363            descriptive tables added.
1364            (Table.getName): new
1365    
1366    2007-10-21      Frank Koormann <[email protected]>
1367    
1368            * tools/formed/formed/plugins/export/sql.py: "CREATE OR REPLACE"
1369            statements for views and roles to make updates easier.
1370            Add "admin_ka" membership as third option to VIEW_WHERE_CLAUSE.
1371    
1372    2007-10-19      Frank Koormann <[email protected]>
1373    
1374            * tools/formed/formed/plugins/export/sql.py: Added GRANT statements
1375            for views. The statements are prepared for variable substitution
1376            when executing the SQL-scripts by psql.
1377    
1378    2007-10-18      Sascha L. Teichmann <[email protected]>
1379    
1380            * pdf2xfa/src/de/intevation/pdfimport/ClientHandler.java: Fixed:
1381              End of result XML was truncated because of an unflushed buffer.
1382    
1383    2007-10-17      Sascha L. Teichmann <[email protected]>
1384    
1385            * pdf2xfa/bin/build-jar.sh: New. Build production jar file.
1386    
1387            * pdf2xfa/README.TXT: Adjusted how to build production jar file
1388              and how to use it.
1389    
1390            * pdf2xfa/etc, pdf2xfa/etc/manifest.txt: New. Defines main class
1391              and iText dependency.
1392    
1393    2007-10-16      Sascha L. Teichmann <[email protected]>
1394    
1395            * tools/formed/formed/plugins/export/sql.py: Model 'Ja, Nein, Keine Angabe'
1396              are not modeled as BOOLEANs any more. That simpifies the conversion
1397              process web vs. db.
1398    
1399    2007-10-07      Sascha L. Teichmann <[email protected]>
1400    
1401            * tools/formed/formed/plugins/export/sql.py: Added the remaining
1402              UPDATE rules.
1403    
1404    2007-10-07      Sascha L. Teichmann <[email protected]>
1405    
1406            * tools/formed/formed/plugins/export/sql.py: Added UPDATE rules for some
1407              views. TODO: Test'em and implement the rest.
1408    
1409    2007-10-07      Sascha L. Teichmann <[email protected]>
1410    
1411            * tools/formed/formed/plugins/export/sql.py: Bug fix. DELETE and INSERT
1412              rules referenced none existing views.
1413    
1414    2007-10-07      Sascha L. Teichmann <[email protected]>
1415    
1416            * tools/formed/formed/plugins/export/sql.py: Added DELETE and INSERT
1417              rules for views. TODO: add UPDATE rules.
1418    
1419    2007-10-07      Sascha L. Teichmann <[email protected]>
1420    
1421            * tools/formed/formed/plugins/export/old_sql.py: New. Contains
1422              the legacy SQL export filters.
1423    
1424            * tools/formed/formed/plugins/export/sql.py: Factored out the
1425              legacy SQL export filters to old_sql.
1426    
1427            * tools/formed/formed/config.py: Adjusted to fetch legacy
1428              filters from old_sql.
1429    
1430    2007-10-06      Sascha L. Teichmann <[email protected]>
1431    
1432            * pdf2xfa/**: Initial import of the PDF to XFA server.
1433    
1434    2007-10-06      Sascha L. Teichmann <[email protected]>
1435    
1436            * tools/formed/formed/plugins/export/sql.py: Fixed bug
1437              that made choices of three elements to booleans if
1438              they have other meanings than 'Ja', 'Nein', 'keine Angabe'.
1439    
1440    2007-10-05      Sascha L. Teichmann <[email protected]>
1441    
1442            * tools/formed/formed/plugins/export/sql.py: Select ids of
1443              underlaying tables in views too.
1444    
1445    2007-10-04      Sascha L. Teichmann <[email protected]>
1446    
1447            * tools/formed/formed/plugins/export/sql.py: Create schema inside transaction.
1448              Various bug fixes.
1449    
1450    2007-10-04      Sascha L. Teichmann <[email protected]>
1451    
1452            * tools/formed/formed/model/data.py: Added GroupNode.allWidgets()
1453              to extract fields from embedded repeat groups.
1454    
1455            * tools/formed/formed/plugins/export/sql.py: The SQL exporter exports
1456              views per page too. Result not tested yet.
1457    
1458    2007-10-01      Sascha L. Teichmann <[email protected]>
1459    
1460            * tools/formed/formed/plugins/web/view_renderer.py: Ignore
1461              in-page repeat groups while rendering pages.
1462    
1463    2007-10-01      Sascha L. Teichmann <[email protected]>
1464    
1465            * tools/formed/formed/model/nodecomponents.py: Added visitor
1466              traversals for document trees.
1467    
1468            * tools/formed/formed/model/data.py: Rewrote the
1469              Page.allWidgets() method to use new visitor for
1470              tree traversal.
1471    
1472    2007-09-27      Torsten Irlaender <[email protected]>
1473    
1474            * tools/formed/formed/plugins/names/filter.py: Pages are now included
1475              in the rename by formular name  algorithm
1476    
1477    2007-09-26      Sascha L. Teichmann <[email protected]>
1478    
1479            * tools/formed/formed/model/data.py: Removed old {next|prev}Page()
1480              TODO: rewrite Page.allWidgets().
1481    
1482            * tools/formed/formed/model/nodecomponents.py: Added a method
1483              Node.firstLevel(criterion) to walk a defined line in the tree.
1484    
1485            * tools/formed/formed/plugins/export/sql.py: Extract data suitable to
1486              build views and respective joins.
1487    
1488    2007-09-26      Sascha L. Teichmann <[email protected]>
1489    
1490            * tools/formed/formed/plugins/web/plugin.py: add 'web.tidy:' flag to
1491              FORMED environment variable. If set to true tidylib is used to
1492              filter HTML content to be W3C valid. To use this feature install
1493              uTidylib.
1494    
1495            * tools/formed/formed/plugins/web/server.py: Check if MIME type is
1496              text/html and filters content through tidy if requested.
1497    
1498    2007-09-25      Torsten Irlaender <[email protected]>
1499    
1500            * tools/formed/formed/plugins/web/view_renderer.py: Small fix and
1501              cleanup of the form generation code.
1502    
1503    2007-09-21      Sascha L. Teichmann <[email protected]>
1504    
1505            * tools/formed/formed/plugins/export/sql.py: Added generation time
1506              and DROP TABLE statements to schema export.
1507    
1508    2007-09-20      Sascha L. Teichmann <[email protected]>
1509    
1510            * tools/formed/formed/plugins/export/sql.py: The tables are generated
1511              in correct topolocial order now.
1512    
1513    2007-09-20      Sascha L. Teichmann <[email protected]>
1514    
1515            * tools/formed/formed/plugins/export/mode.py: New. Filter to export
1516              a document with items that are in given mode.
1517    
1518            * tools/formed/formed/model/nodecomponents.py: Added methods to clone
1519              trees depending on selected modes.
1520    
1521            * tools/formed/formed/model/data.py, tools/formed/formed/model/expr.py:
1522              Fixed clone issue with RuleNodes.
1523    
1524            * tools/formed/formed/config.py: Use new plug-in.
1525    
1526    2007-09-17      Sascha L. Teichmann <[email protected]>
1527    
1528            * tools/formed/formed/plugins/web/view_renderer.py: Make the
1529              view renderer a real view renderer. It takes a list of
1530              items now and not only a single page.
1531    
1532            * tools/formed/formed/plugins/web/renderer.py: Feed a list
1533              of items to the view renderer.
1534    
1535    2007-09-17      Torsten Irlaender <[email protected]>
1536    
1537            * tools/formed/formed/plugins/web/view_renderer.py:
1538              Small tweaks in rendering bools.
1539              RadioNodes (with all its children) can now be placed in a container.
1540              The radiobools will not get a surrounding <div> anymore.
1541              I am not sure if the new way results in the wanted behaivor, but the
1542              rendering results are much better now :)
1543              Maybe we need a similar approach for checkboxes?
1544              Rendering groups is still broken in some way.
1545    
1546    2007-09-17      Sascha L. Teichmann <[email protected]>
1547    
1548            * tools/formed/formed/plugins/web/view_renderer.py: Fixed
1549              a few bugs: Do not render empty containers, do not
1550              generate misplaced <br class="newline"> in choices.
1551              Add a nameless container to catch the items that are
1552              nor explicitly assigned to a target. Removed FormData.
1553    
1554            * tools/formed/formed/plugins/web/renderer.py: Removed
1555              a needless import
1556    
1557    2007-09-17      Sascha L. Teichmann <[email protected]>
1558    
1559            * tools/formed/formed/plugins/web/view_renderer.py: Implemented
1560              usage of 'containers' and 'target' attributes.
1561    
1562            * tools/formed/formed/plugins/web/controllers.py: Modified import.
1563    
1564            * tools/formed/formed/plugins/web/renderer.py: Use
1565              new ViewRenderer.
1566    
1567    2007-09-17      Sascha L. Teichmann <[email protected]>
1568    
1569            * tools/formed/formed/model/nodecomponents.py: Added attributes
1570              'target' to NodeComponent and 'containers' to Node.
1571    
1572            * tools/formed/formed/plugins/web/view_renderer.py: New. Aimed
1573              to be a replacement for form_renderer. Not ready yet!
1574    
1575            * ChangeLog: Fixed some indention glitches.
1576    
1577    2007-09-13      Torsten Irlaender <[email protected]>
1578    
1579            * tools/formed/formed/plugins/names/filter.py: Fixed bug in the
1580              renaming algorithm.
1581    
1582    2007-09-12      Torsten Irlaender <[email protected]>
1583    
1584            * tools/formed/formed/plugins/web/form_renderer.py: Renamed header
1585              from formular navigation to "Fallakte Inhalt"
1586    
1587    2007-09-12      Torsten Irlaender <[email protected]>
1588    
1589            * tools/formed/formed/plugins/ui/controls.py: Fixed bug that bad
1590              values (dates)  were not pretty printed.
1591    
1592            * tools/formed/formed/plugins/web/form_renderer.py: Added errormsg to
1593              label rendering for choicelists.
1594    
1595    2007-09-12      Torsten Irlaender <[email protected]>
1596    
1597            * tools/formed/formed/plugins/ui/controls.py: Fixed bug that
1598              choicelist did not get selected when the value is set to "0"
1599    
1600    2007-09-12      Torsten Irlaender <[email protected]>
1601    
1602            * tools/formed/formed/plugins/web/form_renderer.py: Added
1603              "getPrintableData" method, for the formdata Class which will return
1604              the description rather than the value of element in the ID. This is
1605              need for displaying the choises in a right way.
1606            
1607            * tools/formed/formed/plugins/web/renderer.py: Changed string
1608              "Fallnummer" into "Kundennummer" in the templates. Added
1609              Kundennummer to the dataset digest output. Bound in the new
1610              "getPrintableData" call for the digest.
1611    
1612    2007-10-11      Sascha L. Teichmann <[email protected]>
1613    
1614            * tools/formed/formed/plugins/export/data.py: The import/export
1615              of data is now implemented with filters (the most consequent
1616              way in terms of design of FormEd). The support of the 'persistent'
1617              FORMED env-variable support has been removed.
1618    
1619            * tools/formed/formed/plugins/ui/controls.py: Added a flag to the
1620              filter file dialog to double as import dialog.
1621    
1622            * tools/formed/formed/main.py: Removed the the FORMED-var support
1623              for persistence.
1624            
1625            * tools/formed/formed/config.py: Add the two new filters to the filters
1626              list.
1627    
1628    2007-10-11      Sascha L. Teichmann <[email protected]>
1629    
1630            * tools/formed/formed/model/memory.py: Uses XML as persistence format now.
1631              Removed pickle/unpickle stuff.
1632    
1633            * tools/formed/formed/main.py: Uses the new XML persistence.
1634    
1635            * tools/formed/formed/plugins/web/semantic.py: Fixed: choices were
1636              not converted to int indices.
1637    
1638    2007-09-11      Sascha L. Teichmann <[email protected]>
1639    
1640            * tools/formed/formed/model/memory.py: Making MemoryDataStore persistent
1641              with pickle/unpickle.
1642    
1643            * tools/formed/formed/main.py: Added a env FORMED parameter 'persistent'.
1644              Set to a file name it is tried to unpickle a MemoryDataStore from
1645              that file. When exiting the program this file is used to store the
1646              current MemoryDataStore state. The storing only works if you exit
1647              the program through the Menu File->Exit.
1648              usage: FORMED=persistent:test.db ./formed.sh
1649    
1650    2007-09-11      Torsten Irlaender <[email protected]>
1651    
1652            * tools/formed/formed/plugins/web/renderer.py: Changed Name of the
1653              application on the welcome page from "Formed" to "WASKA"
1654    
1655    2007-09-11      Torsten Irlaender <[email protected]>
1656    
1657            * tools/formed/formed/plugins/web/plugin.py,
1658            * tools/formed/formed/plugins/web/controllers.py,
1659            * tools/formed/formed/plugins/web/renderer.py: Added InfoPageHandler.
1660              The infopage provides information on all project participants.
1661    
1662    2007-09-11      Sascha L. Teichmann <[email protected]>
1663    
1664            * tools/formed/formed/plugins/web/controllers.py: Fix unicode conversion
1665              issues with error messages (once again).
1666    
1667    2007-09-11      Torsten Irlaender <[email protected]>
1668    
1669            * tools/formed/formed/plugins/web/form_renderer.py,
1670            * tools/formed/formed/plugins/web/renderer.py: Added alt tag for
1671              icons in error and confirmation dialogs.
1672    
1673    2007-09-11      Sascha L. Teichmann <[email protected]>
1674    
1675            * tools/formed/formed/plugins/web/form_renderer.py: Fixed label
1676              generation for ints, texts and textareas. Fixed h depths of infos.
1677    
1678    2007-09-11      Sascha L. Teichmann <[email protected]>
1679    
1680            * tools/formed/formed/plugins/web/form_renderer.py: Removed
1681              debug output for help.
1682    
1683            * tools/formed/formed/plugins/web/semantic.py: Added forgotten
1684              check for bools.
1685    
1686            * tools/formed/formed/plugins/web/controllers.py:  Added correct
1687              HTML output of data for bools.
1688    
1689    2007-09-11      Torsten Irlaender <[email protected]>
1690    
1691            * tools/formed/formed/plugins/web/form_renderer.py: Changed size of
1692              textfields for int values. Changed Label for submitbuttons to
1693              "Speichern"
1694    
1695            * tools/formed/formed/plugins/web/plugin.py,
1696              tools/formed/formed/plugins/web/controllers.py: Added new
1697              NotImplementedHandler to show up a dummysite for not implemented
1698              functions.
1699    
1700            * tools/formed/formed/plugins/web/renderer.py: Added
1701              NotImplementedRenderer. Various small fixes. Mostly renaming the
1702              labels of some context menus. Error messages are now generated
1703              dynamically depending on num errors. Formular navigation has now
1704              colored indication for errors.
1705    
1706    2007-09-11      Torsten Irlaender <[email protected]>
1707    
1708            * tools/formed/formed/plugins/web/renderer.py: Implemented "LookAhead"
1709              algorithm for the formular navigation to get rid of the problem
1710              that some of the items within the navigation are not linked.  Now
1711              structural group elements are linked with the next page found in the
1712              formular structure.
1713    
1714    2007-09-10      Torsten Irlaender <[email protected]>
1715            * tools/formed/formed/plugins/web/form_renderer.py: Changed order of
1716              div and formtag.
1717    
1718            * tools/formed/formed/plugins/web/controllers.py: Added DataSet action
1719              menu in the conformation dialog when creating a new dataset.
1720    
1721            * tools/formed/formed/plugins/web/renderer.py: Fixed error when
1722              rendering the default welcome page. Changed rendering of the
1723              overview and the digest table of the datasets. Added icon for
1724              confirmation dialog, moved the icon in the <h1> tags.  
1725    
1726    2007-09-10      Torsten Irlaender <[email protected]>
1727    
1728            * tools/formed/formed/plugins/web/form_renderer.py: Some html
1729              generation cleanup. Added error icons to formelements
1730    
1731            * tools/formed/formed/plugins/web/controllers.py: Fixed initialisation
1732              of ErrorStatus. Fixed generated of the help tags in the formular
1733    
1734            * tools/formed/formed/plugins/web/renderer.py: Added error icon for
1735              pageerrors. An "!" now indicates errors on pages in the formular
1736              navigation. Added new <div> "content" around confirmation dialogss.
1737              Links in confimation dialogs are now rendered as buttons. Removed
1738              old obsolete OverviewRenderer.
1739    
1740    2007-09-10      Sascha L. Teichmann <[email protected]>
1741    
1742            * tools/formed/formed/plugins/web/renderer.py: Highlight selected
1743              page in page navigation.
1744    
1745    2007-09-10      Torsten Irlaender <[email protected]>
1746    
1747            * tools/formed/formed/plugins/web/controllers.py: Fixed issues on
1748              displaying formdata when changing datasets. Loading the right
1749              formdata was not handled in a correct way. Hope it is all fixed now.
1750              Left some commented code because not all sideeffects of the changes
1751              are tested yet.
1752    
1753            * tools/formed/formed/plugins/web/renderer.py: DataSetDigestRenderer
1754              now uses the correct data out of the formdata.
1755    
1756    2007-09-10      Sascha L. Teichmann <[email protected]>
1757    
1758            * tools/formed/formed/plugins/web/controllers.py: Pretty
1759              print format data (dates e.g)
1760    
1761    2007-09-10      Sascha L. Teichmann <[email protected]>
1762    
1763            * tools/formed/formed/plugins/web/controllers.py: Modified
1764              ErrorStats a bit to avoid mysterious extra error on page.
1765              No clue why this works.
1766    
1767    2007-09-10      Sascha L. Teichmann <[email protected]>
1768    
1769            * tools/formed/formed/plugins/web/form_renderer.py: Fixed value
1770              problem with radio groups, too.
1771    
1772    2007-09-10      Torsten Irlaender <[email protected]>
1773            * tools/formed/formed/plugins/web/controllers.py: Sessions are now
1774              really removed when deleting a dataset.
1775            
1776    2007-09-10      Torsten Irlaender <[email protected]>
1777    
1778            * tools/formed/formed/plugins/web/controllers.py: Added new Class
1779              ErrorStats which provides Information on remaining errors per page.
1780    
1781            * tools/formed/formed/plugins/web/renderers.py: Finished movement of
1782              the renderer methods from controllers.py to renderers.py.
1783    
1784            * tools/formed/formed/plugins/web/plugin.py: Removed render_session
1785              handlers
1786    
1787    2007-09-10      Sascha L. Teichmann <[email protected]>
1788    
1789            * tools/formed/formed/plugins/web/form_renderer.py: values for
1790              choices are generated from the document tree now. This brings
1791              the state storage of select boxes in HTML to live.
1792    
1793    2007-09-09      Sascha L. Teichmann <[email protected]>
1794    
1795            * tools/formed/formed/plugins/web/semantic.py: Fixed problems with
1796              range checking of integers.
1797    
1798            * tools/formed/formed/plugins/web/controllers.py: Added class
1799              ErrorItem to track errors. They are stored in the session.
1800    
1801    2007-09-09      Sascha L. Teichmann <[email protected]>
1802    
1803            * tools/formed/formed/model/nodecomponents.py: Fixed returning
1804              wrong index in Document.indexOfcomponentByClassAndName.
1805    
1806            * tools/formed/formed/plugins/web/form_renderer.py: 'error' was
1807              written 'errot' in renderer for textareas.
1808    
1809            * tools/formed/formed/plugins/web/controllers.py: Some clean-ups.
1810    
1811    2007-09-09      Sascha L. Teichmann <[email protected]>
1812    
1813            * tools/formed/formed/plugins/web/help.py: Added a 'hasHelp'
1814              method. Could be cheaper for some implementations of help.
1815    
1816            * tools/formed/formed/plugins/web/form_renderer.py: Modified
1817              FormData to have distinct getData(), getHelp() and getError()
1818              methods. Various bug fixes.
1819    
1820            * tools/formed/formed/plugins/web/controllers.py: Implements the
1821              new FormData (trivial by now).
1822    
1823            * tools/formed/formed/plugins/web/renderer.py: New FormData and
1824              some bug fixes.
1825    
1826    2007-09-09      Sascha L. Teichmann <[email protected]>
1827    
1828            * tools/formed/formed/model/memory.py,
1829              tools/formed/formed/model/persistent.py: Add a getValue() method
1830              to dataset abstraction. This is a bit of a workaround to bring
1831              global access across pages for rule checking to work.
1832    
1833            * tools/formed/formed/model/data.py: Fixed: When setting a new expression
1834              the compiled version was not stored in the RuleLeaf.
1835    
1836            * tools/formed/formed/model/expr.py: shlex lexer does not like unicode.
1837              convert the expression string to ascii for compilation.
1838    
1839            * tools/formed/formed/plugins/web/semantic.py: Remove the 'box' because
1840              valid data is stored to the dataset immediately now. Fixed a bug
1841              with integer handler.
1842    
1843            * tools/formed/formed/plugins/web/controllers.py: Removed the semantic 'box'
1844              stuff. When a submit is done extract the rules from the tree document
1845              that are effected by the modified variables and check them.
1846    
1847            * tools/formed/formed/plugins/web/renderer.py: Fixed exception handling
1848              when dealing with templates.
1849    
1850    2007-09-07      Torsten Irlaender <[email protected]>
1851            * tools/formed/formed/plugins/web/controllers.py,
1852              tools/formed/formed/plugins/web/renderer.py: Moved more render
1853              functions into renderer.py. New render classes are:
1854              DataSetDigestRenderer, DataSetNavigationRenderer,
1855              DataSetFormularRenderer, ConfirmationDialogRenderer
1856    
1857              Note: The new methods are only called from selected handlers. Other
1858              handlers call the renderes in the old way.
1859    
1860    2007-09-07      Torsten Irlaender <[email protected]>
1861            * tools/formed/formed/plugins/web/form_renderer.py: Renamed
1862              renderer.py to form_renderer.py. This file will contain formular
1863              specfic render methods in the future.
1864            * tools/formed/formed/plugins/web/renderer.py: Added new renderer.py
1865              which will contain general render methods.
1866            * tools/formed/formed/plugins/web/controllers.py: Began to move all
1867              rendering into renderer.py or form_renderer.py. This file will only
1868              contain teh handlers in the future.
1869    
1870    2007-09-07      Torsten Irlaender <[email protected]>
1871            * tools/formed/formed/plugins/web/renderer.py,
1872              tools/formed/formed/plugins/web/controller.py:
1873              Renderes now get an instance of the formdata object to provide
1874              access the data needed to render various infoboxes etc. Handler
1875              instanciate the formdata.
1876            
1877    2007-09-06      Torsten Irlaender <[email protected]>
1878            * tools/formed/formed/plugins/web/renderer.py: Mainly tried to get the
1879              getFormData interface to work. Added two small semantic fixes, but
1880              did not manage to get it up. Need to exime this a little bit more
1881            * tools/formed/formed/plugins/web/controllers.py: Put <div> tags
1882              around the menus on the right side to be able to assign different
1883              styles. Added dataset actions while editing a dataset.
1884            
1885    2007-09-05      Torsten Irlaender <[email protected]>
1886            * tools/formed/formed/model/memory.py: Fixed deleting datasets by
1887              removing unwanted del method
1888            * tools/formed/formed/plugins/web/controllers.py: Implemented
1889              confiration dialogs for create, delete, and select aof datasets. Started to use
1890              templates as well for larger information units like the dataset summary.
1891            
1892    2007-09-05      Sascha L. Teichmann <[email protected]>
1893    
1894            * tools/formed/formed/model/nodecomponents.py: Added a
1895              method to document to find index of page.
1896    
1897            * tools/formed/formed/plugins/web/semantic.py: Added getValue()
1898              to fetch data from semantic box.
1899    
1900            * tools/formed/formed/plugins/web/controllers.py: Added new
1901              FormData implementation to support DB and semantic box.
1902    
1903    2007-09-05      Sascha L. Teichmann <[email protected]>
1904    
1905            * tools/formed/formed/plugins/web/renderer.py: escaped
1906              error message.
1907    
1908            * tools/formed/formed/plugins/web/controllers.py: Don't fetch
1909              dataset from backend each time a page is up to edit.
1910    
1911    2007-09-05      Sascha L. Teichmann <[email protected]>
1912    
1913            * tools/formed/formed/plugins/web/renderer.py: SimplePageRenderer
1914              returns "Page not found" if given page is None.
1915    
1916            * tools/formed/formed/plugins/web/controllers.py: Added checks
1917              to avoid crashing when ask for a non-existent page.
1918    
1919    2007-09-05      Sascha L. Teichmann <[email protected]>
1920    
1921            * tools/formed/formed/plugins/web/controllers.py: Some clean-ups.
1922    
1923    2007-09-05      Sascha L. Teichmann <[email protected]>
1924    
1925            * tools/formed/formed/plugins/web/plugin.py: Remove request handlers
1926              and renderers.
1927    
1928            * tools/formed/formed/plugins/web/controllers.py: New. Contains handlers
1929              and renderers now. TODO: Move renderers to renderer.py
1930    
1931    2007-09-05      Torsten Irlaender <[email protected]>
1932    
1933            * tools/formed/formed/plugins/web/www/main.tmpl: Adopted web template
1934              and bound in the the new added functions to create, edit, delete and
1935              show formdata.
1936            
1937    2007-09-05      Sascha L. Teichmann <[email protected]>
1938    
1939            * tools/formed/formed/model/memory.py: Removed bisect and use a
1940              simple linear scan for dataset lookup now.
1941    
1942            * tools/formed/formed/plugins/web/plugin.py: Fixed various issues
1943              of different sizes.
1944    
1945    2007-09-05      Torsten Irlaender <[email protected]>
1946    
1947            * tools/formed/formed/plugins/web/memory.py: Fixed getDataSetById
1948              fuction
1949              
1950            * tools/formed/formed/plugins/web/persistent.py: Added store() method
1951              to the DataSet interface
1952    
1953            * tools/formed/formed/plugins/web/renderer.py: Added handlers and
1954              renderes for create, update, delete and show actions on formular data.
1955    
1956    2007-09-04      Sascha L. Teichmann <[email protected]>
1957    
1958            * tools/formed/formed/plugins/web/server.py: The mapping
1959              to methods is now driven by regualar expressions and
1960              a dictionary. Response objects are now able to send
1961              error codes.
1962    
1963            * tools/formed/formed/plugins/web/renderer.py: Fixed an issue
1964              when help in Formdata is None. Moved text for help into
1965              a top level '''...''' variable.
1966    
1967            * tools/formed/test-data/simple.xml: Added test for help.
1968    
1969            * tools/formed/formed/plugins/web/help.py: extra None check.
1970    
1971            * tools/formed/formed/plugins/web/plugin.py: Uses the new
1972              table driven mapping of reguest handling. TODO: split the
1973              WebPlugIn.pageHandler() method further to smaller handlers.
1974              Smaller clean ups and better exception handling.
1975    
1976            * tools/formed/formed/plugins/web/cache.py: Report OSErrors
1977              and do not catch them.
1978    
1979    2007-09-04      Torsten Irlaender <[email protected]>
1980    
1981            * tools/formed/formed/plugins/web/renderer.py,
1982            * tools/formed/formed/plugins/web/plugin.py: Added Interface to
1983              the HelpProvider and inserted help icons to the html output.
1984              Added decorator for Formelemnts, so textfields, choices etc. are now
1985              within a <div> tag.
1986              Modified the error messages.
1987    
1988    2007-09-04      Sascha L. Teichmann <[email protected]>
1989    
1990            * tools/formed/formed/plugins/web/cache.py: New. Implements
1991              the server-side caching more clean. Fixes a bug with
1992              serving static content.
1993    
1994            * tools/formed/formed/plugins/web/plugin.py: Use the new cache.
1995    
1996    2007-09-04      Sascha L. Teichmann <[email protected]>
1997    
1998            * tools/formed/formed/plugins/web/plugin.py: Set MIME type
1999              to "application/xhtml+xml" when serving help texts.
2000    
2001    2007-09-03      Sascha L. Teichmann <[email protected]>
2002    
2003            * tools/formed/formed/plugins/export/diff.py: New. Exports
2004              pairwise differences between all modes.
2005    
2006            * tools/formed/formed/config.py: Use new export filter.
2007    
2008    2007-09-03      Sascha L. Teichmann <[email protected]>
2009    
2010            * tools/formed/formed/plugins/web/help.py: New. Parses an
2011              XHTML document for id'ed divs and builds a help lookup.
2012    
2013            * tools/formed/formed/plugins/web/www/help.tmpl: Template for
2014              the help content frame.
2015    
2016            * tools/formed/formed/plugins/web/www/help.xhtml: Some simple
2017              help text index.
2018    
2019            * tools/formed/formed/plugins/web/plugin.py: Serves the help
2020              texts now.
2021    
2022    2007-09-03      Torsten Irlaender <[email protected]>
2023    
2024            * tools/formed/formed/plugins/web/plugin.py: Only visible group
2025              elements will be rendered in the formular navigation.
2026              Formular pages in the navigation now have their own css-style
2027              attributes.
2028    
2029    2007-09-03      Torsten Irlaender <[email protected]>
2030    
2031            * tools/formed/formed/plugins/web/www/main.tmpl: Added div area for page
2032              errors in template
2033            * tools/formed/formed/plugins/web/plugin.py: Fixed undefined
2034              pageerrors variable
2035    
2036    2007-09-03      Frank Koormann <[email protected]>
2037    
2038            * tools/formed/formed/plugins/export/html.py
2039            (RecursiveExporter): Added annotation to export
2040            (fillRow()): Renamed old fillNine to this more generic name.
2041            
2042    
2043    2007-09-03      Sascha L. Teichmann <[email protected]>
2044    
2045            * tools/formed/formed/plugins/web/renderer.py: Using the decorator
2046              from model.misc now.
2047    
2048    2007-09-03      Sascha L. Teichmann <[email protected]>
2049    
2050            * tools/formed/formed/model/nodecomponents.py: Added an
2051              'annotation' attribute to node components. This is to
2052              enable FormEd document authors to add comments to groups
2053              and fields.
2054    
2055    2007-09-03      Frank Koormann <[email protected]>
2056    
2057            * tools/formed/formed/model/nodecomponents.py
2058            (NodeComponent.getParent): New method to get node components parent.
2059    
2060            * tools/formed/formed/plugins/export/html.py: Export Choice option
2061            as simple list instead of collection of bools.
2062    
2063    2007-09-02      Sascha L. Teichmann <[email protected]>
2064    
2065            * tools/formed/formed/model/persistent.py: Interfaces to abstract
2066              from persistent storage details.
2067    
2068            * tools/formed/formed/model/memory.py: In core implementation
2069              of the persistent interfaces.
2070    
2071            * tools/formed/formed/main.py: Holds a memory data store now.
2072    
2073    2007-09-02      Sascha L. Teichmann <[email protected]>
2074    
2075            * tools/formed/formed/plugins/export/sql.py,
2076              tools/formed/formed/plugins/export/html.py: Fixed constructor chains
2077              for FileDialogFilter sub classes.
2078    
2079    2007-09-02      Sascha L. Teichmann <[email protected]>
2080    
2081            * tools/formed/formed/model/misc.py: Checking the mode in recursive
2082              tree traversals is a common task. To ease this a decorator function
2083              checkMode in union with sub classing ModeChecker can be used.
2084              To make it work simply subclass from ModeChecker and add the decorator
2085              to the methods that need mode tracking. Before you start the recursion
2086              call self.prepareDescent().
2087    
2088            * tools/formed/formed/plugins/export/html.py: Uses the new decorator scheme
2089              now which replace the old. TODO: Make the web renderer use the new scheme
2090              too.
2091    
2092    2007-09-02      Sascha L. Teichmann <[email protected]>
2093    
2094            * tools/formed/formed/plugins/export/sql.py: Removed needless import.
2095    
2096            * tools/formed/formed/plugins/export/html.py: HTML table exporter
2097              uses new FileDialogFilter base class too.
2098    
2099    2007-09-02      Sascha L. Teichmann <[email protected]>
2100    
2101            * tools/formed/formed/plugins/ui/*: New. All file exporters
2102              need a file dialog. Till now each of them pulled up its
2103              own. This was silly code replication. Now there is an abstract
2104              base class 'FileDialogFilter' which implements the common
2105              behavior. The file exporters should subclass it.
2106    
2107            * tools/formed/formed/plugins/export/sql.py: Subclass the SQL
2108              exporters from the new base class. TODO: Subclass the HTML
2109              exporter too.
2110    
2111    2007-08-31      Sascha L. Teichmann <[email protected]>
2112    
2113            * tools/formed/formed/plugins/export/html.py: Make mode check
2114              work (again).
2115    
2116    2007-08-31      Torsten Irlaender <[email protected]>
2117    
2118            * tools/formed/formed/plugins/export/html.py: Rendering of the HTML
2119              exprt works now in a recursive way. This change was needed because
2120              the structure of the formedtree has changed to be able to render
2121              full hirachically document stuctures. (nested lists)
2122              TODO: Fix modechecking
2123    
2124    2007-08-31      Torsten Irlaender <[email protected]>
2125    
2126            * tools/formed/formed/plugins/web/plugin.py: Navigation rendering works
2127              now in recursive way. This change was needed because the structure
2128              of the formedtree has changed to be able to render full hirachically
2129              document stuctures. (nested lists)
2130    
2131    2007-08-31      Sascha L. Teichmann <[email protected]>
2132    
2133            * tools/formed/formed/model/nodecomponents.py: use discard()
2134              instead of remove on sets.
2135    
2136            * tools/formed/formed/plugins/export/sql.py: Added an
2137              exporter for table views.
2138    
2139            * tools/formed/formed/config.py: Added the new exporter
2140              to the list of export filters.
2141    
2142    2007-08-30      Sascha L. Teichmann <[email protected]>
2143    
2144            * tools/formed/formed/model/data.py: Fixed a bug in
2145              Page.allWidgets()
2146    
2147            * tools/formed/formed/plugins/export/sql.py: Added an exporter
2148              for stored procudeures.
2149    
2150            * tools/formed/formed/config.py: Add the new SP exporter.
2151    
2152    2007-08-29      Torsten Irlaender <[email protected]>
2153    
2154            * tools/formed/formed/plugins/web/plugin.py,
2155              tools/formed/formed/plugins/web/error_renderer.py: Added interface
2156              to get the errors for a whole page in te formular. These errors can
2157              now be displayed on the top of the formular.
2158    
2159    2007-08-29      Torsten Irlaender <[email protected]>
2160    
2161            * tools/formed/formed/plugins/web/renderer.py: Finished implementation
2162              of the getFromData interface and prepared the rederer for generating
2163              nice error messages
2164    
2165    2007-08-28      Frank Koormann <[email protected]>
2166    
2167            * tools/formed/formed/plugins/export/sql.py
2168            (SchemaCreator.createSchema, SchemaCreator._createGroup):
2169            Fixed typo in created DDS (PRIMRAY -> PRIMARY)
2170    
2171    2007-08-28      Torsten Irlaender <[email protected]>
2172    
2173            * tools/formed/formed/plugins/export/sql.py: Added small helper
2174              function to generated valid quotes within the sql statements
2175    
2176    2007-08-29      Sascha L. Teichmann <[email protected]>
2177    
2178            * tools/formed/formed/plugins/export/sql.py: Added foreign keys
2179              for repeat tables.
2180              
2181    2007-08-29      Sascha L. Teichmann <[email protected]>
2182    
2183            * tools/formed/formed/plugins/export/sql.py: When generating
2184              an extra table check in a table of same content exists. In
2185              this case reference the existing table.
2186    
2187    2007-08-29      Sascha L. Teichmann <[email protected]>
2188    
2189            * tools/formed/formed/plugins/export/sql.py: Rewritten to produce
2190              _real_ SQL and respect repeat groups.
2191    
2192            * tools/formed/formed/model/data.py: Fixed bug with Group.isRepeat()
2193    
2194            * tools/formed/formed/plugins/web/renderer.py: Use "".join([])
2195              instead of expensive += string concat in some places.
2196    
2197    2007-08-29      Sascha L. Teichmann <[email protected]>
2198    
2199            * tools/formed/formed/model/data.py: Renamed GroupNode.getRepeat()
2200              to .isRepeat and return a bool. Fixed a bug in Page.allWidgets().
2201    
2202    2007-08-28      Torsten Irlaender <[email protected]>
2203    
2204            * tools/formed/plugins/web/renderer.py: Added Formdata interface.
2205            * tools/formed/model/data.py: Implements Formadata interface to
2206              textfields. Fieldset generated depends now on the "invisible"
2207              attribute of the groupnode. Field-label generation slightly changed.
2208              Added error indication to textfields
2209    
2210    2007-08-28      Sascha L. Teichmann <[email protected]>
2211    
2212            * tools/formed/formed/model/data.py,
2213              tools/formed/formed/io/document.py: Removed support
2214              of logical groups.
2215    
2216    2007-08-28      Sascha L. Teichmann <[email protected]>
2217    
2218            * tools/formed/formed/io/document.py: Avoid saving empty
2219              attributes.
2220    
2221            * tools/formed/test-data/simple.xml: Applied.
2222    
2223    2007-08-28      Sascha L. Teichmann <[email protected]>
2224    
2225            * tools/formed/formed/model/data.py: Added 'repeat' and
2226              'invisible' attributes to group. TODO: remove logical group.
2227    
2228    2007-08-27      Torsten Irlaender <[email protected]>
2229    
2230            * tools/formed/plugins/web/plugin.py,
2231              tools/formed/plugins/web/renderer.py: Started to  include stylesheet
2232              depending tags in the html generation.
2233    
2234    2007-08-27      Sascha L. Teichmann <[email protected]>
2235    
2236            * tools/formed/formed/model/data.py,
2237              tools/formed/formed/io/document.py: Added a logical group.
2238              It has an attribute 'repeat' to indicate that it might
2239              be worthy an external table in DB schema.
2240    
2241    2007-08-27      Sascha L. Teichmann <[email protected]>
2242    
2243            * tools/formed/formed/plugins/web/plugin.py: Support
2244              serving of static content.
2245    
2246            * tools/formed/formed/plugins/web/server.py: Removed
2247              old send code.
2248    
2249    2007-08-27      Sascha L. Teichmann <[email protected]>
2250    
2251            * tools/formed/formed/plugins/web/plugin.py: Use new
2252              Response object. Fix typo.
2253    
2254            * tools/formed/formed/plugins/web/server.py: support
2255              response object to serve different MIME types.
2256    
2257    2007-08-27      Sascha L. Teichmann <[email protected]>
2258    
2259            * tools/formed/formed/plugins/web/plugin.py: Add web.path
2260              to FORMED environment  variable to specify the
2261              root of the static content.
2262    
2263    2007-08-26      Sascha L. Teichmann <[email protected]>
2264    
2265            * tools/formed/formed/model/data.py,
2266              tools/formed/formed/model/nodecomponents.py: Fixed mode issues.
2267    
2268            * tools/formed/formed/plugins/web/www,
2269              tools/formed/formed/plugins/web/www/main.tmpl: New. Contains
2270              a template for the HTML output.
2271    
2272            * tools/formed/formed/plugins/web/plugin.py: Fixes several smaller
2273              mode issues. Introduces CSS support. Simplified the action
2274              handling.
2275    
2276            * tools/formed/formed/plugins/web/renderer.py: Removed the
2277              nagivation code.
2278    
2279            * tools/formed/formed/plugins/web/server.py: Added missing import.
2280    
2281    2007-08-26      Sascha L. Teichmann <[email protected]>
2282    
2283          * tools/formed/formed/model/data.py: Added missing broadcast          * tools/formed/formed/model/data.py: Added missing broadcast
2284            parameter to setAttribute() of RuleLeaf.            parameter to setAttribute() of RuleLeaf.
# Line 12  Line 2292 
2292          * tools/formed/formed/plugins/web/server.py: New. Contains          * tools/formed/formed/plugins/web/server.py: New. Contains
2293            the HTTP server code now.            the HTTP server code now.
2294    
2295  2007-08-26 Sascha L. Teichmann <[email protected]>  2007-08-26      Sascha L. Teichmann <[email protected]>
2296    
2297          * tools/formed/test-data/simple.xml: Modified to contain a rule.          * tools/formed/test-data/simple.xml: Modified to contain a rule.
2298    
2299          * tools/formed/formed/model/expr.py: Added. A simple RPN          * tools/formed/formed/model/expr.py: Added. A simple RPN
2300            expression evaluator. To avoid the problem of eval()ing            expression evaluator. To avoid the problem of eval()ing
2301                  arbitrary python expressions I've decided to use a very            arbitrary python expressions I've decided to use a very
2302                  basic and limited stack machine to support rule checking.            basic and limited stack machine to support rule checking.
2303    
2304          * tools/formed/formed/model/data.py: Added a RuleLeaf.          * tools/formed/formed/model/data.py: Added a RuleLeaf.
2305    
# Line 27  Line 2307 
2307    
2308          * tools/formed/formed/model/nodecomponents.py: Add a method          * tools/formed/formed/model/nodecomponents.py: Add a method
2309            to find all items of a given type in document for a given            to find all items of a given type in document for a given
2310                  mode. Usefull to find all rules in the tree.            mode. Usefull to find all rules in the tree.
2311    
2312          * tools/formed/formed/ui/controls.py: Added a listener mechanism          * tools/formed/formed/ui/controls.py: Added a listener mechanism
2313            to attribute table to report exceptions when setting a value            to attribute table to report exceptions when setting a value
2314                  from GUI. Useful to report compilation errors when setting            from GUI. Useful to report compilation errors when setting
2315                  expr of rule leafs.            expr of rule leafs.
2316    
2317          * tools/formed/formed/main.py: Added a method to track exceptions          * tools/formed/formed/main.py: Added a method to track exceptions
2318            from the attribute table and pop up dialogs if they occur.            from the attribute table and pop up dialogs if they occur.
2319                  Added a counter of rule modifications in tree. Useful if you            Added a counter of rule modifications in tree. Useful if you
2320                  want build cached data structures like rule sets and you want            want build cached data structures like rule sets and you want
2321                  to know if they are still valid.            to know if they are still valid.
2322    
2323  2007-08-24 Torsten Irlaender <[email protected]>  2007-08-24      Torsten Irlaender <[email protected]>
2324    
2325          * tools/formed/formed/plugins/export/sql.py: Fixed CHECK-constraint          * tools/formed/formed/plugins/export/sql.py: Fixed CHECK-constraint
2326            for checkbox values. (Syntax error).            for checkbox values. (Syntax error).
# Line 48  Line 2328 
2328          * tools/formed/formed/plugins/names/filter.py: Fixes in formularname          * tools/formed/formed/plugins/names/filter.py: Fixes in formularname
2329            generation              generation  
2330    
2331  2007-08-24 Torsten Irlaender <[email protected]>  2007-08-24      Torsten Irlaender <[email protected]>
2332    
2333          * tools/formed/formed/plugins/names/filter.py: Separated Class for          * tools/formed/formed/plugins/names/filter.py: Separated Class for
2334            making the formularnames more database friendly. Added some more            making the formularnames more database friendly. Added some more
# Line 56  Line 2336 
2336          * tools/formed/formed/plugins/export/sql.py: Make use of the fresh          * tools/formed/formed/plugins/export/sql.py: Make use of the fresh
2337            separated class, and some fixes in sql generation.            separated class, and some fixes in sql generation.
2338    
2339  2007-08-24 Sascha L. Teichmann <[email protected]>  2007-08-24      Sascha L. Teichmann <[email protected]>
2340    
2341          * tools/formed/formed/plugins/export/html.py: Print lengths          * tools/formed/formed/plugins/export/html.py: Print lengths
2342            of external choice list.            of external choice list.
2343    
2344  2007-08-24 Sascha L. Teichmann <[email protected]>  2007-08-24      Sascha L. Teichmann <[email protected]>
2345    
2346          * tools/formed/formed/main.py: Little workaround for          * tools/formed/formed/main.py: Little workaround for
2347            mode selection if someone adds an removes a mode.            mode selection if someone adds an removes a mode.
2348    
2349  2007-08-24 Sascha L. Teichmann <[email protected]>  2007-08-24      Sascha L. Teichmann <[email protected]>
2350    
2351          * tools/formed/test-data/simple.xml: Better test case for          * tools/formed/test-data/simple.xml: Better test case for
2352            mode depended leaf items.            mode depended leaf items.
# Line 76  Line 2356 
2356    
2357          * tools/formed/formed/plugins/export/html.py: Use effective          * tools/formed/formed/plugins/export/html.py: Use effective
2358            mode. TODO: the 'all' modus return false results sometimes.            mode. TODO: the 'all' modus return false results sometimes.
2359                  Cause: The modes are only cumulated over time. Removal is            Cause: The modes are only cumulated over time. Removal is
2360                  not done.            not done.
2361    
2362  2007-08-24 Sascha L. Teichmann <[email protected]>  2007-08-24      Sascha L. Teichmann <[email protected]>
2363    
2364          * tools/formed/formed/plugins/export/html.py: Dump the items          * tools/formed/formed/plugins/export/html.py: Dump the items
2365            of radio groups and choices too.            of radio groups and choices too.
2366    
2367  2007-08-24 Torsten Irlaender <[email protected]>  2007-08-24      Torsten Irlaender <[email protected]>
2368    
2369          * tools/formed/formed/plugins/names/filter.py: Modified the renaming          * tools/formed/formed/plugins/names/filter.py: Modified the renaming
2370            by formular names to make the naming more database friendly.            by formular names to make the naming more database friendly.
2371            Now only alphanumeric and underscore chars is allowed.            Now only alphanumeric and underscore chars is allowed.
2372    
2373  2007-08-24 Sascha L. Teichmann <[email protected]>  2007-08-24      Sascha L. Teichmann <[email protected]>
2374    
2375          * tools/formed/formed/plugins/export/html.py: Tweaked          * tools/formed/formed/plugins/export/html.py: Tweaked
2376            HTML table exporter a bit to be on par with the XSLT            HTML table exporter a bit to be on par with the XSLT
2377                  script. TODO: Dump items in radio and choice groups.            script. TODO: Dump items in radio and choice groups.
2378    
2379  2007-08-23 Sascha L. Teichmann <[email protected]>  2007-08-23      Sascha L. Teichmann <[email protected]>
2380    
2381          * tools/formed/formed/plugins/names/filter.py: Removed          * tools/formed/formed/plugins/names/filter.py: Removed
2382            HTML and SQL exporters.            HTML and SQL exporters.
# Line 105  Line 2385 
2385            tools/formed/formed/plugins/export/__init__.py,            tools/formed/formed/plugins/export/__init__.py,
2386            tools/formed/formed/plugins/export/sql.py,            tools/formed/formed/plugins/export/sql.py,
2387            tools/formed/formed/plugins/export/html.py: New: Contain            tools/formed/formed/plugins/export/html.py: New: Contain
2388                  the HTML and the SQL exporters now.            the HTML and the SQL exporters now.
2389    
2390          * tools/formed/formed/config.py: Use exporters from different          * tools/formed/formed/config.py: Use exporters from different
2391            package now.            package now.
2392    
2393  2007-08-23 Torsten Irlaender <[email protected]>  2007-08-23      Torsten Irlaender <[email protected]>
2394    
2395          * tools/formed/formed/plugins/names/filter.py: Added an          * tools/formed/formed/plugins/names/filter.py: Added an
2396            pseudo SQL export filters. TODO: Move HTML and SQL filter            pseudo SQL export filters. TODO: Move HTML and SQL filter
# Line 119  Line 2399 
2399    
2400          * tools/formed/formed/config.py: Install the new SQL filter.          * tools/formed/formed/config.py: Install the new SQL filter.
2401    
2402  2007-08-23 Sascha L. Teichmann <[email protected]>  2007-08-23      Sascha L. Teichmann <[email protected]>
2403    
2404          * tools/formed/formed/model/nodecomponents.py: Added a depth()          * tools/formed/formed/model/nodecomponents.py: Added a depth()
2405            method to determine the depth of particular tree item.            method to determine the depth of particular tree item.
# Line 129  Line 2409 
2409    
2410          * tools/formed/formed/config.py: Install the new HTML filter.          * tools/formed/formed/config.py: Install the new HTML filter.
2411    
2412  2007-08-23 Torsten Irlaender <[email protected]>  2007-08-23      Torsten Irlaender <[email protected]>
2413    
2414          * contrib/extract-xfa-fields_and_options.xsl: Added small xsl script          * contrib/extract-xfa-fields_and_options.xsl: Added small xsl script
2415            to extract fields and options in the XFA Data in teh PDF. This            to extract fields and options in the XFA Data in teh PDF. This
2416            script might me handy to indicate changes between the different            script might me handy to indicate changes between the different
2417            formular versions.            formular versions.
2418                    
2419  2007-08-23 Sascha L. Teichmann <[email protected]>  2007-08-23      Sascha L. Teichmann <[email protected]>
2420    
2421          * tools/formed/formed/main.py: Add an 'all' mode to          * tools/formed/formed/main.py: Add an 'all' mode to
2422            select all modes. ;-)            select all modes. ;-)
2423    
2424  2007-08-22 Sascha L. Teichmann <[email protected]>  2007-08-22      Sascha L. Teichmann <[email protected]>
2425    
2426          * tools/formed/test-data/simple.xml,          * tools/formed/test-data/simple.xml,
2427            tools/formed/formed/model/data.py,            tools/formed/formed/model/data.py,
# Line 151  Line 2431 
2431            tools/formed/formed/main.py: Removed support for switch nodes.            tools/formed/formed/main.py: Removed support for switch nodes.
2432            BEWARE: This breaks compatibility with older documents!            BEWARE: This breaks compatibility with older documents!
2433    
2434  2007-08-22 Sascha L. Teichmann <[email protected]>  2007-08-22      Sascha L. Teichmann <[email protected]>
2435    
2436          * tools/formed/formed/plugins/web/plugin.py: Uses the          * tools/formed/formed/plugins/web/plugin.py: Uses the
2437            getSelectedMode() from main now.            getSelectedMode() from main now.
# Line 162  Line 2442 
2442          * tools/formed/formed/config.py: removed selected mode from          * tools/formed/formed/config.py: removed selected mode from
2443            env configuration.            env configuration.
2444    
2445  2007-08-22 Sascha L. Teichmann <[email protected]>  2007-08-22      Sascha L. Teichmann <[email protected]>
2446    
2447          * tools/formed/formed/ui/controls.py: Attributes in GUI attribute          * tools/formed/formed/ui/controls.py: Attributes in GUI attribute
2448            table are now alphabetically sorted.            table are now alphabetically sorted.
2449    
2450  2007-08-22 Sascha L. Teichmann <[email protected]>  2007-08-22      Sascha L. Teichmann <[email protected]>
2451    
2452          * tools/formed/formed/model/nodecomponents.py: Added code to          * tools/formed/formed/model/nodecomponents.py: Added code to
2453            establish the new 'modes' recursively.            establish the new 'modes' recursively.
# Line 183  Line 2463 
2463    
2464          * tools/formed/formed/main.py: Adjusted to new infrastructure.          * tools/formed/formed/main.py: Adjusted to new infrastructure.
2465    
2466  2007-08-22 Sascha L. Teichmann <[email protected]>  2007-08-22      Sascha L. Teichmann <[email protected]>
2467    
2468          * tools/formed/formed/model/nodecomponents.py: Added an          * tools/formed/formed/model/nodecomponents.py: Added an
2469            attribute 'modes' to NodeComponents.            attribute 'modes' to NodeComponents.
2470    
2471  2007-08-22 Sascha L. Teichmann <[email protected]>  2007-08-22      Sascha L. Teichmann <[email protected]>
2472    
2473          * tools/formed/formed/model/data.py: Small cosmetic cleanups          * tools/formed/formed/model/data.py: Small cosmetic cleanups
2474    
2475  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2476    
2477          * tools/formed/formed/plugins/web/renderer.py: Another fix          * tools/formed/formed/plugins/web/renderer.py: Another fix
2478            for the hidden field. Argh!            for the hidden field. Argh!
2479    
2480  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2481    
2482          * tools/formed/formed/plugins/web/renderer.py: Fixed double          * tools/formed/formed/plugins/web/renderer.py: Fixed double
2483            generation of hidden page field.            generation of hidden page field.
2484    
2485  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2486    
2487          * tools/formed/formed/plugins/web/semantic.py: Added semantic          * tools/formed/formed/plugins/web/semantic.py: Added semantic
2488            checks for radio groups.            checks for radio groups.
2489    
2490  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2491    
2492          * tools/formed/formed/plugins/web/semantic.py: Added semantic          * tools/formed/formed/plugins/web/semantic.py: Added semantic
2493            checks for choices.            checks for choices.
# Line 222  Line 2502 
2502          * contrib/convert-formedtree2html.xsl:          * contrib/convert-formedtree2html.xsl:
2503          Replace technical types with readable descriptions          Replace technical types with readable descriptions
2504    
2505  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2506    
2507          * tools/formed/formed/plugins/web/plugin.py: Fix a few smaller          * tools/formed/formed/plugins/web/plugin.py: Fix a few smaller
2508            issues. 'action' looks for all widgets on a page now, goes            issues. 'action' looks for all widgets on a page now, goes
2509                  through all passed parameters, tries to match them with the            through all passed parameters, tries to match them with the
2510                  widgets of the page and put them into the semantic box.            widgets of the page and put them into the semantic box.
2511                  Afterwards a list of untouched page parameters are left            Afterwards a list of untouched page parameters are left
2512                  which will be deleted from the semantic box.            which will be deleted from the semantic box.
2513    
2514          * tools/formed/formed/plugins/web/semantic.py: Simplified.          * tools/formed/formed/plugins/web/semantic.py: Simplified.
2515            The NodeComponent is passed as an argument now.            The NodeComponent is passed as an argument now.
# Line 237  Line 2517 
2517          * tools/formed/formed/plugins/web/renderer.py: Generate a          * tools/formed/formed/plugins/web/renderer.py: Generate a
2518            hidden field to store the name of the page.            hidden field to store the name of the page.
2519    
2520  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2521    
2522          * tools/formed/formed/plugins/web/plugin.py: Fixed an encoding          * tools/formed/formed/plugins/web/plugin.py: Fixed an encoding
2523            issue with incoming UTF-8 data.            issue with incoming UTF-8 data.
2524    
2525  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2526    
2527          * tools/formed/test-data/simple.xml: Improve test for widgets          * tools/formed/test-data/simple.xml: Improve test for widgets
2528            in switches.            in switches.
2529    
2530          * tools/formed/formed/model/data.py: Added a method to find all          * tools/formed/formed/model/data.py: Added a method to find all
2531            widgets in a given page. Fixed a bug when walking in switch            widgets in a given page. Fixed a bug when walking in switch
2532                  with a given mode.            with a given mode.
2533    
2534          * tools/formed/formed/plugins/web/plugin.py: Simple test for          * tools/formed/formed/plugins/web/plugin.py: Simple test for
2535            listing all widgets in page.            listing all widgets in page.
2536    
2537  2007-08-21 Torsten Irlaender <[email protected]>  2007-08-21      Torsten Irlaender <[email protected]>
2538    
2539          * tools/formed/formed/plugins/names/filter.py: Fixed file-encoding to          * tools/formed/formed/plugins/names/filter.py: Fixed file-encoding to
2540            latin-1            latin-1
2541    
2542  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2543    
2544          * tools/formed/formed/model/data.py: Added mode parameter to          * tools/formed/formed/model/data.py: Added mode parameter to
2545            walk.            walk.
2546                              
2547          * tools/formed/formed/model/nodecomponents.py: SwitchNode overwrites          * tools/formed/formed/model/nodecomponents.py: SwitchNode overwrites
2548            walk() with usage of the new mode parameter. Added a method to            walk() with usage of the new mode parameter. Added a method to
2549                  give children in a given mode.            give children in a given mode.
2550    
2551          * tools/formed/formed/plugins/web/renderer.py: Simplified to use          * tools/formed/formed/plugins/web/renderer.py: Simplified to use
2552            new Switch.childrenInMode() method.            new Switch.childrenInMode() method.
2553    
2554  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2555    
2556          * tools/formed/formed/plugins/web/semantic.py: Add checks for          * tools/formed/formed/plugins/web/semantic.py: Add checks for
2557            texts and text areas.            texts and text areas.
# Line 279  Line 2559 
2559          * tools/formed/formed/plugins/web/renderer.py: Set accept-charset          * tools/formed/formed/plugins/web/renderer.py: Set accept-charset
2560            to UTF-8 in generated form.            to UTF-8 in generated form.
2561    
2562  2007-08-20 Sascha L. Teichmann <[email protected]>  2007-08-20      Sascha L. Teichmann <[email protected]>
2563    
2564          * tools/formed/formed/plugins/web/semantic.py: Added semantic          * tools/formed/formed/plugins/web/semantic.py: Added semantic
2565            tests for dates.            tests for dates.
2566    
2567  2007-08-20 Sascha L. Teichmann <[email protected]>          2007-08-20      Sascha L. Teichmann <[email protected]>  
2568    
2569          * tools/formed/test-data/simple.xml: Tweak a bit for integer          * tools/formed/test-data/simple.xml: Tweak a bit for integer
2570            range test.            range test.
# Line 298  Line 2578 
2578          * tools/formed/formed/plugins/web/plugin.py: Use semantic          * tools/formed/formed/plugins/web/plugin.py: Use semantic
2579            check.            check.
2580    
2581  2007-08-20      Torsten Irlaender <[email protected]>  2007-08-20      Torsten Irlaender <[email protected]>
2582    
2583          * tools/formed/formed/plugins/web/renderer.py: Fixed Syntax in          * tools/formed/formed/plugins/web/renderer.py: Fixed Syntax in
2584            selection-field generation (Removed quote)            selection-field generation (Removed quote)
# Line 311  Line 2591 
2591            renderer. This submit parameters are stored in the            renderer. This submit parameters are stored in the
2592            session now. This will ease testing the constraint            session now. This will ease testing the constraint
2593            tests which need to be written soon.            tests which need to be written soon.
2594                              
2595            BEWARE: The session management is _not_ made for production!            BEWARE: The session management is _not_ made for production!
2596            Denial of service attacks are too easy, and the            Denial of service attacks are too easy, and the
2597            cryptographical strength of the session id is doubtful.            cryptographical strength of the session id is doubtful.
# Line 329  Line 2609 
2609            and can be hooked automatically into the new 'Filters'            and can be hooked automatically into the new 'Filters'
2610            sub menu under 'Extra'. They got called when the user            sub menu under 'Extra'. They got called when the user
2611            selects their respective menu item.            selects their respective menu item.
2612                              
2613          * tools/formed/formed/config.py: Contains the list of          * tools/formed/formed/config.py: Contains the list of
2614            installed filters.            installed filters.
2615    
# Line 390  Line 2670 
2670    
2671          * tools/formed/formed/main.py: Swaped order of          * tools/formed/formed/main.py: Swaped order of
2672            'Make names unique' and 'Selected mode...' in Extra            'Make names unique' and 'Selected mode...' in Extra
2673                  menu and put a separator between them.            menu and put a separator between them.
2674    
2675  2007-08-15      Sascha L. Teichmann <[email protected]>  2007-08-15      Sascha L. Teichmann <[email protected]>
2676    
# Line 399  Line 2679 
2679    
2680          * tools/formed/formed/plugins/plugin.py: Simplified          * tools/formed/formed/plugins/plugin.py: Simplified
2681            the plug-in interface. Only the reference to the            the plug-in interface. Only the reference to the
2682                  global configuration is passed at setup time.            global configuration is passed at setup time.
2683    
2684          * tools/formed/formed/plugins/web/plugin.py: Adjusted          * tools/formed/formed/plugins/web/plugin.py: Adjusted
2685            to new plug-in setup. The traveral mode is now taken            to new plug-in setup. The traveral mode is now taken
2686                  from the global configuration each time a rendering            from the global configuration each time a rendering
2687                  is triggered. The FORMED parameter is now named            is triggered. The FORMED parameter is now named
2688                  'doc.mode' instead of 'web.mode'. The parameter            'doc.mode' instead of 'web.mode'. The parameter
2689                  is not needed any more because it can be configured            is not needed any more because it can be configured
2690                  at runtime.            at runtime.
2691    
2692          * tools/formed/formed/main.py: Adjusted to new plugin          * tools/formed/formed/main.py: Adjusted to new plugin
2693            setup. Added a new menu item Extra->Select Mode...            setup. Added a new menu item Extra->Select Mode...
2694                  to select the traversal mode. It is stored in the            to select the traversal mode. It is stored in the
2695                  global config.            global config.
2696    
2697          * tools/formed/formed/config.py: Simplified. Only uses          * tools/formed/formed/config.py: Simplified. Only uses
2698            one env dictionary to store global configuration parameters.            one env dictionary to store global configuration parameters.
# Line 424  Line 2704 
2704    
2705          * tools/formed/formed/plugins/web/plugin.py,          * tools/formed/formed/plugins/web/plugin.py,
2706            tools/formed/formed/plugins/web/renderer.py: Added parameter            tools/formed/formed/plugins/web/renderer.py: Added parameter
2707                  print out in web plugin.            print out in web plugin.
2708    
2709  2007-08-15      Torsten Irlaender <[email protected]>  2007-08-15      Torsten Irlaender <[email protected]>
2710    
# Line 442  Line 2722 
2722    
2723          * tools/formed/formed/plugins/web/plugin.py,          * tools/formed/formed/plugins/web/plugin.py,
2724            tools/formed/formed/config.py: Added a 'web.mode' parameter            tools/formed/formed/config.py: Added a 'web.mode' parameter
2725                  to FORMED environment variable.            to FORMED environment variable.
2726                  e.g. 'FORMED=web.mode:modeX' sets the mode 'modeX'.            e.g. 'FORMED=web.mode:modeX' sets the mode 'modeX'.
2727                  Defaults to 'default'.            Defaults to 'default'.
2728    
2729          * tools/formed/test-data/simple.xml: Added test for switch.          * tools/formed/test-data/simple.xml: Added test for switch.
2730    
# Line 458  Line 2738 
2738          * tools/formed/formed/io/document.py,          * tools/formed/formed/io/document.py,
2739            tools/formed/formed/model/data.py,            tools/formed/formed/model/data.py,
2740            tools/formed/formed/model/nodecomponents.py: Added an item            tools/formed/formed/model/nodecomponents.py: Added an item
2741                  to model external item lists.            to model external item lists.
2742    
2743          * tools/formed/formed/plugins/web/renderer.py: Render new item          * tools/formed/formed/plugins/web/renderer.py: Render new item
2744            list.            list.
# Line 475  Line 2755 
2755    
2756          * contrib/extract-xfa-items.sh: New. Can be used to extract longer          * contrib/extract-xfa-items.sh: New. Can be used to extract longer
2757            choice item lists for a given field from XFA files. e.g. with            choice item lists for a given field from XFA files. e.g. with
2758                  './contrib/extract-xfa-items.sh Muttersprache alles.xml'            './contrib/extract-xfa-items.sh Muttersprache alles.xml'
2759    
2760  2007-08-12      Sascha L. Teichmann <[email protected]>  2007-08-12      Sascha L. Teichmann <[email protected]>
2761    
2762          * tools/formed/formed/model/data.py,          * tools/formed/formed/model/data.py,
2763            tools/formed/formed/plugins/web/renderer.py,            tools/formed/formed/plugins/web/renderer.py,
2764                  tools/formed/formed/io/document.py: Changed the structure            tools/formed/formed/io/document.py: Changed the structure
2765                  of choice constructs. The idea to hold the different items            of choice constructs. The idea to hold the different items
2766                  of a particular choice in a semicolon separated list was bad.            of a particular choice in a semicolon separated list was bad.
2767                  Now choices are groups and  the option items are modelled as            Now choices are groups and  the option items are modelled as
2768                  embedded bools. (mainly Torsten Irländer's idea).            embedded bools. (mainly Torsten Irländer's idea).
2769    
2770                  WARNING: this makes old document files containing choices incompatible!!!            WARNING: this makes old document files containing choices incompatible!!!
2771                  Use the following XSLT to reestablish compatibility.            Use the following XSLT to reestablish compatibility.
2772                              
2773          * contrib/itemize-choices.xsl: New converts old to new structure.          * contrib/itemize-choices.xsl: New converts old to new structure.
2774            Needs exslt.org's string extensions (which xsltproc includes)            Needs exslt.org's string extensions (which xsltproc includes)
2775    
# Line 507  Line 2787 
2787    
2788          * tools/formed/formed/model/nodecomponents.py: Added code to clone parts          * tools/formed/formed/model/nodecomponents.py: Added code to clone parts
2789            of the tree.            of the tree.
2790                              
2791          * tools/formed/formed/ui/controls.py: Added a getSelected method.          * tools/formed/formed/ui/controls.py: Added a getSelected method.
2792    
2793          * tools/formed/formed/model/misc.py: Fixed a programming bug.          * tools/formed/formed/model/misc.py: Fixed a programming bug.
# Line 530  Line 2810 
2810    
2811          * tools/formed/formed/model/nodecomponents.py: Added walk generator over all          * tools/formed/formed/model/nodecomponents.py: Added walk generator over all
2812            items in the document tree. Added a method to eliminated duplicated names            items in the document tree. Added a method to eliminated duplicated names
2813                  in document tree.            in document tree.
2814    
2815          * tools/formed/formed/model/misc.py: Added update mechanism for id generator          * tools/formed/formed/model/misc.py: Added update mechanism for id generator
2816            after names collisions are eliminated.            after names collisions are eliminated.
# Line 542  Line 2822 
2822    
2823          * tools/formed/formed/model/data.py,          * tools/formed/formed/model/data.py,
2824            tools/formed/formed/plugins/web/renderer.py: Removed support            tools/formed/formed/plugins/web/renderer.py: Removed support
2825                  for 'text' attributes in bool items. They were never really            for 'text' attributes in bool items. They were never really
2826                  used and the 'description' attributes fulfill the same            used and the 'description' attributes fulfill the same
2827                  purpose.            purpose.
2828    
2829          * contrib/remove-bool-text.xsl: Transform to remove the          * contrib/remove-bool-text.xsl: Transform to remove the
2830            'text' attributes from bool items. Apply with:            'text' attributes from bool items. Apply with:
2831                  'xsltproc contrib/remove-bool-text.xsl old.xml > new.xml'            'xsltproc contrib/remove-bool-text.xsl old.xml > new.xml'
2832    
2833          * tools/formed/test-data/simple.xml: Removed 'text' attributes          * tools/formed/test-data/simple.xml: Removed 'text' attributes
2834            from bool items.            from bool items.
# Line 567  Line 2847 
2847    
2848          * contrib/convert-choices.xsl: Added to convert document files          * contrib/convert-choices.xsl: Added to convert document files
2849            which use the choice 'option' attribute to usage of 'value'.            which use the choice 'option' attribute to usage of 'value'.
2850                  Apply with e.g. 'xsltproc convert-choices.xsl old.xml > new.xml'            Apply with e.g. 'xsltproc convert-choices.xsl old.xml > new.xml'
2851    
2852  2007-08-10      Sascha L. Teichmann <[email protected]>  2007-08-10      Sascha L. Teichmann <[email protected]>
2853    
# Line 604  Line 2884 
2884    
2885          * tools/formed/formed/plugins/web/plugin.py: To determine          * tools/formed/formed/plugins/web/plugin.py: To determine
2886            the port look at FORMED dictionary first. Key is 'web.port'.            the port look at FORMED dictionary first. Key is 'web.port'.
2887                  e.g. FORMED='web.port:8888'            e.g. FORMED='web.port:8888'
2888    
2889          * tools/formed/formed/main.py: Call the plugin setup with          * tools/formed/formed/main.py: Call the plugin setup with
2890            the reference to the config.            the reference to the config.
# Line 684  Line 2964 
2964    
2965          * tools/formed/formed/model/data.py,          * tools/formed/formed/model/data.py,
2966            tools/formed/formed/model/nodecomponents.py: Added new            tools/formed/formed/model/nodecomponents.py: Added new
2967                  attributes.            attributes.
2968    
2969          * tools/formed/formed/plugins/web/plugin.py: Added rendering          * tools/formed/formed/plugins/web/plugin.py: Added rendering
2970            for checkboxes and radio buttons.            for checkboxes and radio buttons.
# Line 713  Line 2993 
2993    
2994          * tools/formed/formed/plugins/web/plugin.py: Added a first          * tools/formed/formed/plugins/web/plugin.py: Added a first
2995            version of a recursive HTML renderer based on the document            version of a recursive HTML renderer based on the document
2996                  tree.            tree.
2997    
2998  2007-08-08      Sascha L. Teichmann <[email protected]>  2007-08-08      Sascha L. Teichmann <[email protected]>
2999    
# Line 742  Line 3022 
3022    
3023          * tools/formed/formed/main.py: Added event route document ->          * tools/formed/formed/main.py: Added event route document ->
3024            attribute table to get informed when selected item is delete            attribute table to get informed when selected item is delete
3025                  or an attribute is changed from the outside.            or an attribute is changed from the outside.
3026    
3027          * tools/formed/formed/ui/controls.py: Fixed. In older versions of          * tools/formed/formed/ui/controls.py: Fixed. In older versions of
3028            wxPython 2.6.x ListCtrl.InsertStringItem takes 2 instead            wxPython 2.6.x ListCtrl.InsertStringItem takes 2 instead
3029                  of 3 argument. Uses icons+tooltips for tree navigation now.            of 3 argument. Uses icons+tooltips for tree navigation now.
3030    
3031  2007-08-07      Sascha L. Teichmann <[email protected]>  2007-08-07      Sascha L. Teichmann <[email protected]>
3032    
# Line 794  Line 3074 
3074    
3075          * tools/formed/formed/ui/controls.py: Establish sort order          * tools/formed/formed/ui/controls.py: Establish sort order
3076            by indices of children in parent instead of alphanum.            by indices of children in parent instead of alphanum.
3077                  Code to move items up and down the document tree.            Code to move items up and down the document tree.
3078    
3079          * tools/formed/formed/io/document.py: Added missing imports.          * tools/formed/formed/io/document.py: Added missing imports.
3080    
# Line 807  Line 3087 
3087    
3088          * tools/formed/formed/main.py,          * tools/formed/formed/main.py,
3089            tools/formed/formed/ui/controls.py: Added control to            tools/formed/formed/ui/controls.py: Added control to
3090                  move items around in tree. Has no effect by now.            move items around in tree. Has no effect by now.
3091    
3092  2007-08-05      Sascha L. Teichmann <[email protected]>  2007-08-05      Sascha L. Teichmann <[email protected]>
3093    
# Line 823  Line 3103 
3103    
3104          * tools/formed/*: initial check-in of the Formular Editor.          * tools/formed/*: initial check-in of the Formular Editor.
3105            Not working yet. Only can load, view and store formular XML files.            Not working yet. Only can load, view and store formular XML files.
3106                  Start it with 'tools/formed/formed.sh'.            Start it with 'tools/formed/formed.sh'.

Legend:
Removed from v.94  
changed lines
  Added in v.432

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26