[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [office] Proposal for table templates
We discussed today the need to include paragraph styles in table templates, so that it's clear which paragraph styles will be used in every cell when creating a table using a table template. Currently it looks like <table:table-template> <table:first-row text:style-name="blueish"/> <table:first-column text:style-name="lightgray"/> <table:body text:style-name="default"/> </table:table-template> where the styles referenced by name are expected to be table-cell styles. Solution A Referencing both the cell style and the paragraph style from the table template. <table:table-template> <table:first-row text:style-name="blueish" text:paragraph-style-name="Heading_1"/> <table:first-column text:style-name="lightgray" text:paragraph-style-name="Normal"/> <table:body text:style-name="default" text:paragraph-style-name="Body text"/> </table:table-template> This reads a bit strange since "style-name" should rather be "cell-style-name", and it doesn't integrate the paragraph style into the cell style like the next solution does: Solution B Referencing the paragraph style from the cell style If the user himself can define named styles for table-cells, then it is expected that those styles include the name of a paragraph style. (See "Table / Table Style Manager" in KWord) So the cell style "blueish" from the table template would refer to a cell style defined as <style:style style:name="blueish" style:display-name="Blueish cell" style:family="table-cell"> <style:table-cell-properties [....] text:paragraph-style-name="Heading_1"/> </style:style> To go even further, the current cell styles in KOffice look like: <style:style style:name="blueish" style:display-name="Blueish cell" style:family="table-cell"> <style:table-cell-properties koffice:frame-style-name="fr6" koffice:paragraph-style-name="U3"/> </style:style> where the frame style "fr6" is a style with family="graphic", which defines background color and border, instead of defining those properties into the table-cell-properties directly. For automatic styles this makes no difference, it's just as easy to generate an automatic style that refers to another one. But for named styles created by the user, this allows to have cell styles which refer to an existing frame style as well as an existing paragraph style. The format shouldn't mandate how users should work with named styles in an application though, so one could say that the format should allow both ways of defining table-cell styles: either by defining all the properties into the table cell style (which can certainly be useful for actual table cells), or defining the properties in graphic and paragraph styles refered by the table cell style, by name. But in fact, an application which simply stores the border and background properties into the table-cell style, could do that with the first model, by simply generating an automatic frame-style and reference it from the table-cell style... so we don't really need both ways, except to preserve compatibility with OpenDocument-1.0, which seems useless for table templates since they haven't been used yet in either OOo or KWord. So actually... forget solutions A and B: my proposal is to make table templates point to a new kind of style, let's say table-cell-template, which would point to a graphic style and a paragraph style by name. <table:table-template> <table:first-row text:style-name="blueish"/> <table:first-column text:style-name="lightgray"/> <table:body text:style-name="default"/> </table:table-template> just like currently, but <style:style style:name="blueish" style:display-name="Blueish cell" style:family="table-cell-template"> <!-- note the family --> <style:table-cell-properties text:graphic-style-name="blue_with_border" text:paragraph-style-name="Heading_1"/> </style:style> where blue_with_border could either be a real (named) graphic style, or an automatic one. That style would be used to define background and borders in particular. -- David Faure -- faure@kde.org, dfaure@klaralvdalens-datakonsult.se KDE/KOffice developer, Qt consultancy projects Klarälvdalens Datakonsult AB, Platform-independent software solutions
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]