Style objects for applications and filters

Inge Wallin inge at lysator.liu.se
Fri Apr 25 11:50:15 BST 2014


I would like to have the opinion of the community for a certain issue. The 
first version of the docx export filter is now merged and it's time to take the 
next step. But this next step involves a decision which needs the input from 
the rest of the Calligra community.

The docx filter uses stream reading to parse the odf file, using 
KoXmlStreamReader in filters/libodf2, as opposed to our applications that use 
DOM reading, using the KoXmlReader in libs/odf. 

One thing that we will need is page layout properties, which has child 
elements for columns among other things and this is where decision lies. Page 
layout properties already has good support in a couple of objects in libs/odf, 
among them KoPageLayout, KoColumns and KoBorder.

Those objects are designed to be fast and use binary representation of their 
properties. On the other hand many of them are not complete, i.e. they don't 
read, store and write all the properties that are defined in the standard. And 
they don't support stream reading. The style objects in  filters/libodf2 are 
all designed to be complete if not super fast - yet.

So here is the question: When we move forward with the docx filter, should we 
either:

 - add stream reading capabilities and maybe storage of properties represented 
as text to the objects in libs/odf

or:

 - create new objects like the previous style objects in filters/libodf2

The first one makes more sense to me since we should reduce duplication in 
Calligra at large and this will also mean that the objects will be made 
complete in relation to the attributes defined by the standard.  But it may 
also mean that not all attributes will be available in binary form through 
named class methods.

Opinions?

	-Inge


 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/calligra-devel/attachments/20140425/c86f0c95/attachment.htm>


More information about the calligra-devel mailing list