Kaydet (Commit) 2b8676b0 authored tarafından Mike Kaganski's avatar Mike Kaganski

Make parameter parsing linear, not loop

Just cleaner IMO.

Change-Id: I89c0c13b8b0be55dcbc2e5536abf982d75e4034d
Reviewed-on: https://gerrit.libreoffice.org/63401
Tested-by: Jenkins
Reviewed-by: 's avatarNoel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: 's avatarMike Kaganski <mike.kaganski@collabora.com>
üst 5b51b98b
...@@ -576,37 +576,24 @@ OUString NameFromCharSet(rtl_TextEncoding nChrSet) ...@@ -576,37 +576,24 @@ OUString NameFromCharSet(rtl_TextEncoding nChrSet)
void SwAsciiOptions::ReadUserData( const OUString& rStr ) void SwAsciiOptions::ReadUserData( const OUString& rStr )
{ {
sal_Int32 nToken = 0; sal_Int32 nToken = 0;
int nCnt = 0; OUString sToken = rStr.getToken(0, ',', nToken); // 1. Charset name
do { if (!sToken.isEmpty())
const OUString sToken = rStr.getToken( 0, ',', nToken ); eCharSet = CharSetFromName(sToken);
if (!sToken.isEmpty()) if (nToken >= 0 && !(sToken = rStr.getToken(0, ',', nToken)).isEmpty()) // 2. Line ending type
{ {
switch( nCnt ) if (sToken.equalsIgnoreAsciiCase("CRLF"))
{ eCRLF_Flag = LINEEND_CRLF;
case 0: // CharSet else if (sToken.equalsIgnoreAsciiCase("LF"))
eCharSet = CharSetFromName(sToken); eCRLF_Flag = LINEEND_LF;
break; else
case 1: // LineEnd eCRLF_Flag = LINEEND_CR;
if (sToken.equalsIgnoreAsciiCase("CRLF")) }
eCRLF_Flag = LINEEND_CRLF; if (nToken >= 0 && !(sToken = rStr.getToken(0, ',', nToken)).isEmpty()) // 3. Font name
else if (sToken.equalsIgnoreAsciiCase("LF")) sFont = sToken;
eCRLF_Flag = LINEEND_LF; if (nToken >= 0 && !(sToken = rStr.getToken(0, ',', nToken)).isEmpty()) // 4. Language tag
else nLanguage = LanguageTag::convertToLanguageTypeWithFallback(sToken);
eCRLF_Flag = LINEEND_CR; if (nToken >= 0 && !(sToken = rStr.getToken(0, ',', nToken)).isEmpty()) // 5. Include BOM?
break; bIncludeBOM = !(sToken.equalsIgnoreAsciiCase("FALSE"));
case 2: // fontname
sFont = sToken;
break;
case 3: // Language
nLanguage = LanguageTag::convertToLanguageTypeWithFallback( sToken );
break;
case 4:
bIncludeBOM = !(sToken.equalsIgnoreAsciiCase("FALSE"));
break;
}
}
++nCnt;
} while( -1 != nToken );
} }
void SwAsciiOptions::WriteUserData(OUString& rStr) void SwAsciiOptions::WriteUserData(OUString& rStr)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment