diff options
author | Michele Calgaro <michele.calgaro@yahoo.it> | 2021-05-23 20:48:35 +0900 |
---|---|---|
committer | Michele Calgaro <michele.calgaro@yahoo.it> | 2021-05-29 15:16:28 +0900 |
commit | 8b78a8791bc539bcffe7159f9d9714d577cb3d7d (patch) | |
tree | 1328291f966f19a22d7b13657d3f01a588eb1083 /filters/kword/libexport/KWEFUtil.cpp | |
parent | 95834e2bdc5e01ae1bd21ac0dfa4fa1d2417fae9 (diff) | |
download | koffice-8b78a8791bc539bcffe7159f9d9714d577cb3d7d.tar.gz koffice-8b78a8791bc539bcffe7159f9d9714d577cb3d7d.zip |
Renaming of files in preparation for code style tools.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
Diffstat (limited to 'filters/kword/libexport/KWEFUtil.cpp')
-rw-r--r-- | filters/kword/libexport/KWEFUtil.cpp | 205 |
1 files changed, 205 insertions, 0 deletions
diff --git a/filters/kword/libexport/KWEFUtil.cpp b/filters/kword/libexport/KWEFUtil.cpp new file mode 100644 index 000000000..a02a45ece --- /dev/null +++ b/filters/kword/libexport/KWEFUtil.cpp @@ -0,0 +1,205 @@ +/* + This file is part of the KDE project + Copyright (C) 2001 Nicolas GOUTTE <goutte@kde.org> + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ + +#include <tqstring.h> +#include <tqtextcodec.h> + +#include <KoPageLayout.h> + +#include "KWEFUtil.h" + +TQString KWEFUtil::EscapeSgmlText(const TQTextCodec* codec, + const TQString& strIn, + const bool quot /* = false */ , + const bool apos /* = false */ ) +{ + TQString strReturn; + TQChar ch; + + for (uint i=0; i<strIn.length(); i++) + { + ch=strIn[i]; + switch (ch.unicode()) + { + case 38: // & + { + strReturn+="&"; + break; + } + case 60: // < + { + strReturn+="<"; + break; + } + case 62: // > + { + strReturn+=">"; + break; + } + case 34: // " + { + if (quot) + strReturn+="""; + else + strReturn+=ch; + break; + } + case 39: // ' + { + // NOTE: HTML does not define ' by default (only XML/XHTML does) + if (apos) + strReturn+="'"; + else + strReturn+=ch; + break; + } + default: + { + // verify that the character ch can be expressed in the + // encoding in which we will write the HTML file. + if (codec) + { + if (!codec->canEncode(ch)) + { + strReturn+=TQString("&#%1;").arg(ch.unicode()); + break; + } + } + strReturn+=ch; + break; + } + } + } + + return strReturn; +} + +void KWEFUtil::GetNativePaperFormat(const int format, + TQString& width, TQString& height, TQString& units) +// Find data for paper format, as needed for AbiWord and CSS +{ + switch (format) + { + // ISO A formats + case PG_DIN_A0: // ISO A0 + { + width="84.1"; height="118.0"; units="cm"; + break; + } + case PG_DIN_A1: // ISO A1 + { + width="59.4"; height="84.1"; units="cm"; + break; + } + case PG_DIN_A2: // ISO A2 + { + width="42.0"; height="59.4"; units="cm"; + break; + } + case PG_DIN_A3: // ISO A3 + { + width="29.7"; height="42.0"; units="cm"; + break; + } + case PG_DIN_A4: // ISO A4 + { + width="21.0"; height="29.7"; units="cm"; + break; + } + case PG_DIN_A5: // ISO A5 + { + width="14.8"; height="21.0"; units="cm"; + break; + } + case PG_DIN_A6: // ISO A6 + { + width="10.5"; height="14.8"; units="cm"; + break; + } + // ISO B formats + case PG_DIN_B0: // ISO B0 + { + width="100.0"; height="141.0"; units="cm"; + break; + } + case PG_DIN_B1: // ISO B1 + { + width="70.7"; height="100.0"; units="cm"; + break; + } + case PG_DIN_B2: // ISO B2 + { + width="50.0"; height="70.7"; units="cm"; + break; + } + case PG_DIN_B3: // ISO B3 + { + width="35.3"; height="50.0"; units="cm"; + break; + } + case PG_DIN_B4: // ISO B4 + { + width="25.8"; height="35.3"; units="cm"; + break; + } + case PG_DIN_B5: // ISO B5 + { + width="17.6"; height="25.0"; units="cm"; + break; + } + case PG_DIN_B6: // ISO B6 + { + width="12.5"; height="17.6"; units="cm"; + break; + } + // American formats + case PG_US_LETTER: // US Letter + { + width="8.5"; height="11.0"; units="inch"; + break; + } + case PG_US_LEGAL: // US Legal + { + width="8.5"; height="14.0"; units="inch"; + break; + } + case PG_US_EXECUTIVE: // US Executive + { + width="7.5"; height="10.0"; units="inch"; + break; + } + // Other format not supported yet by AbiWord CVS 2001-04-25) + case PG_DIN_A7: // ISO A7 + case PG_DIN_A8: // ISO A8 + case PG_DIN_A9: // ISO A9 + case PG_DIN_B10: // ISO B10 + // Other formats + case PG_SCREEN: // Screen + case PG_CUSTOM: // Custom + default: + { + // TODO + width=TQString(); + height=TQString(); + units=TQString(); + break; + } + } +} |