[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KOFFICE_1_3_BRANCH: koffice/filters/kword/oowriter
From: Nicolas Goutte <nicolasg () snafu ! de>
Date: 2004-08-04 18:10:51
Message-ID: 20040804181051.7C8939A68 () office ! kde ! org
[Download RAW message or body]
CVS commit by goutte:
Fix generation of spaces (Backport, #86561)
M +13 -16 ExportFilter.cc 1.29.2.17
--- koffice/filters/kword/oowriter/ExportFilter.cc #1.29.2.16:1.29.2.17
@@ -69,10 +69,8 @@ QString OOWriterWorker::escapeOOText(con
QString OOWriterWorker::escapeOOSpan(const QString& strText) const
// We need not only to escape the classical XML stuff but also to take care of \
spaces and tabs.
-// Also we must take care about not falling into the rules in XML about white space \
between 2 opening tags or between 2 closing tags {
QString strReturn;
QChar ch;
int spaceNumber = 0; // How many spaces should be written
- uint spaceSequenceStart = 9999; // Where does the space sequence start (start \
value must be non-null)
for (uint i=0; i<strText.length(); i++)
@@ -85,11 +83,7 @@ QString OOWriterWorker::escapeOOSpan(con
if ( spaceNumber > 0 )
{
- if ( spaceSequenceStart )
- { // Generate a real space only if we are not at start
-
strReturn += ' ';
--spaceNumber;
- }
- if ( spaceNumber > 1 )
+ if ( spaceNumber > 0 )
{
strReturn += "<text:s text:c=\"";
@@ -97,7 +91,7 @@ QString OOWriterWorker::escapeOOSpan(con
strReturn += "\"/>";
}
- }
spaceNumber = 0;
}
+ }
// ### TODO: would be switch/case or if/elseif the best?
@@ -123,5 +117,4 @@ QString OOWriterWorker::escapeOOSpan(con
{
spaceNumber = 1;
- spaceSequenceStart = i;
}
break;
@@ -178,8 +171,12 @@ QString OOWriterWorker::escapeOOSpan(con
{
// The last characters were spaces
- // We do not care about writing a real space (also to avoid to have <tag> \
</tag>)
- strReturn+="<text:s text:c=\"";
- strReturn+=QString::number(spaceNumber);
- strReturn+="\"/>";
+ strReturn += ' ';
+ --spaceNumber;
+ if ( spaceNumber > 0 )
+ {
+ strReturn += "<text:s text:c=\"";
+ strReturn += QString::number( spaceNumber );
+ strReturn += "\"/>";
+ }
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic