I've spent some time coding the initial implementation of the Fields.
Currently mostly all the features required by the official GSOC task are completed.
Fields that are fully functional:
- TextInput
- VariableSet
- PageNumber
- DateField
- Placeholder
I've also created a series of tests and made some improvements to the Forms.
At present time both export and import of Fields are supported :)
Tuesday, June 26, 2007
Wednesday, June 20, 2007
Here is my preliminary vision of Fields:
- All the fields-related classes are located in AODL.Document.Fields namespace
- All the Fields classes that represent the appropriate 'content' snippets implement the IContent interface.
- Placeholder and TextInput classes stand for text:placeholder and text:text-input fields respectively.
- Placeholder class has such properties as PlaceholderType, Value, Description and some others. PlaceholderType is an enumeration.
- TextInput class has such Value, Descriptions properties etc.
- Implementation of text:variable-set will be separated in two classes: VariableDecl and VariableSet. VariableDeclCollection will be a class deriving from CollectionWithEvents to handle variable declaration lists.
- VariableDecl will stand for variable declaration snippet. Main properties besides Name and Node: Name and VariableValueType
- TextDocument is augmented with a variable declaration list property
- TextDocument has methods to find any VariableDecl. For example, by its name.
- VariableSet is a class that implements the text:variable-set. It has a series of properties bound to the possible attributes of text:variable-set tag.
- Of course, there will be some kind of synchronization between the two last mentioned classes
- Import/export handlers will support fields.
Saturday, June 16, 2007
Hi everybody who reads this blog,
this week I gonna be a little more busy than before because of my summer exams at the University. So I will probably be posting to this blog more rarely :)
My AODL Forms implementation (first part of my GSOC objective) is nearly finished. After some discussions with my mentor Lars Behrmann we decided that the thing I will concentrate now on is fixing bugs, writing tests and creating a demo application.
The first two points are in progress now. The third one is almost completed, but I've changed the initial goal - it was writing a demo application that loads any ODF file and creates a panel with controls corresponding to them. However, there could be a lot of problems with their positioning (ponder about a 100-page document with ODF Forms on every page). Of course, a scrollable panel could be created, but I decided to make a little bit simplier app that just creates a panel with a fixed set of controls and then "exports" and "imports" its values from the similar ODF Form.
Nevertheless, if I have enough time I will add extra features to it :)
The next step is ODF Fields - my second part of the GSoC!
I will be creating a detailed overview of their implementation soon.
Cheers!
Upd. I've just found a nasty bug producing an error while performing New-Load-Save, New-New-Save or Load-Load-Save with the same TextDocument instance.
It's already fixed :)
this week I gonna be a little more busy than before because of my summer exams at the University. So I will probably be posting to this blog more rarely :)
My AODL Forms implementation (first part of my GSOC objective) is nearly finished. After some discussions with my mentor Lars Behrmann we decided that the thing I will concentrate now on is fixing bugs, writing tests and creating a demo application.
The first two points are in progress now. The third one is almost completed, but I've changed the initial goal - it was writing a demo application that loads any ODF file and creates a panel with controls corresponding to them. However, there could be a lot of problems with their positioning (ponder about a 100-page document with ODF Forms on every page). Of course, a scrollable panel could be created, but I decided to make a little bit simplier app that just creates a panel with a fixed set of controls and then "exports" and "imports" its values from the similar ODF Form.
Nevertheless, if I have enough time I will add extra features to it :)
The next step is ODF Fields - my second part of the GSoC!
I will be creating a detailed overview of their implementation soon.
Cheers!
Upd. I've just found a nasty bug producing an error while performing New-Load-Save, New-New-Save or Load-Load-Save with the same TextDocument instance.
It's already fixed :)
Subscribe to:
Posts (Atom)