suffix and prefix in <number:number-style> and <number:text-style>
Jos van den Oever
jos.van.den.oever at kogmbh.com
Mon Aug 5 12:23:16 BST 2013
Look what I found in libs/odf/KoOdfNumberStyles.cpp:
===
//This is an extension of numeric style. For the moment we used namespace of
//oasis format for specific calligra extension. Change it for the future.
void addCalligraNumericStyleExtension(KoXmlWriter &elementWriter, const
QString &_suffix, const QString &_prefix)
===
This function write tags <number:suffix> and <number:prefix> in the
<number:number-style> elements and the <number:text-style> elements.
It was introduced in 2005:
===
commit 9964ed1963bbf629d0f6d54d83ab9f1d423db3fc
Author: Laurent Montel <montel at kde.org>
Date: Sun Feb 27 12:21:40 2005 +0000
Allow to store prefix/suffix into numeric style
(koffice extension)
===
This feature is used in Sheets:
- create empty spreadsheet
- choose 'Cell Format ..." from the context menu of a cell
- write 'PREFIX' in the 'Prefix:' field
- write 'SUFFIX' in the 'Postfix:' field
- close the dialog
- The cell now contains this text: "PREFIX 0 SUFFIX"
- save the file
Saving gives this ODF fragment:
<number:number-style style:name="N1">
<number:text>PREFIX</number:text>
<number:number number:min-integer-digits="1"/>
<number:text>SUFFIX</number:text>
<number:suffix>SUFFIX</number:suffix>
<number:prefix>PREFIX</number:prefix>
</number:number-style>
Opening it in LibreOffice shows: "PREFIX0SUFFIX" which is correct
interpretation of the XML. Looking at the cell format dialog shows this
formatting string:
"PREFIX"General"SUFFIX"
Saving the spreadsheet again, gives this:
<number:number-style style:name="N120">
<number:text>PREFIX</number:text>
<number:number number:min-integer-digits="1"/>
<number:text>SUFFIX</number:text>
</number:number-style>
As expected, the non-standard, prefix and suffix are removed.
Gnumeric can load the file too but does not show the prefix and suffix.
Since the prefix and postfix behavior can be obtained with the
<number:text/> element, I propose that Calligra removes the code for
writing <text:suffix> and <text:prefix>.
Cheers,
Jos
More information about the calligra-devel
mailing list