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