diff options
author | Caolán McNamara <caolanm@redhat.com> | 2011-08-16 23:38:10 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2011-08-17 09:54:13 +0100 |
commit | f7cb4edec2786421df8813b3ed29b04b22fbc9e1 (patch) | |
tree | c1472fa02453af383c4e18ae3f59f76af0d5d368 /vcl | |
parent | callcatcher: remove some methods (diff) | |
download | core-f7cb4edec2786421df8813b3ed29b04b22fbc9e1.tar.gz core-f7cb4edec2786421df8813b3ed29b04b22fbc9e1.zip |
calculate lengths at compile time
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/unx/generic/printer/jobdata.cxx | 44 |
1 files changed, 27 insertions, 17 deletions
diff --git a/vcl/unx/generic/printer/jobdata.cxx b/vcl/unx/generic/printer/jobdata.cxx index 872e880adc61..7f27d8551fd8 100644 --- a/vcl/unx/generic/printer/jobdata.cxx +++ b/vcl/unx/generic/printer/jobdata.cxx @@ -198,54 +198,64 @@ bool JobData::constructFromStreamBuffer( void* pData, int bytes, JobData& rJobDa bool bColorDevice = false; bool bPSLevel = false; bool bPDFDevice = false; + + const char printerEquals[] = "printer="; + const char orientatationEquals[] = "orientation="; + const char copiesEquals[] = "copies="; + const char margindajustmentEquals[] = "margindajustment="; + const char colordepthEquals[] = "colordepth="; + const char colordeviceEquals[] = "colordevice="; + const char pslevelEquals[] = "pslevel="; + const char pdfdeviceEquals[] = "pdfdevice="; + while( ! aStream.IsEof() ) { aStream.ReadLine( aLine ); - if( aLine.CompareTo( "JobData", 7 ) == COMPARE_EQUAL ) + if( aLine.CompareTo(RTL_CONSTASCII_STRINGPARAM("JobData")) == COMPARE_EQUAL ) bVersion = true; - else if( aLine.CompareTo( "printer=", 8 ) == COMPARE_EQUAL ) + else if( aLine.CompareTo(RTL_CONSTASCII_STRINGPARAM(printerEquals)) == COMPARE_EQUAL ) { bPrinter = true; - rJobData.m_aPrinterName = String( aLine.Copy( 8 ), RTL_TEXTENCODING_UTF8 ); + rJobData.m_aPrinterName = String( aLine.Copy(RTL_CONSTASCII_LENGTH(printerEquals)), RTL_TEXTENCODING_UTF8 ); } - else if( aLine.CompareTo( "orientation=", 12 ) == COMPARE_EQUAL ) + else if( aLine.CompareTo(RTL_CONSTASCII_STRINGPARAM(orientatationEquals)) == COMPARE_EQUAL ) { bOrientation = true; - rJobData.m_eOrientation = aLine.Copy( 12 ).EqualsIgnoreCaseAscii( "landscape" ) ? orientation::Landscape : orientation::Portrait; + rJobData.m_eOrientation = aLine.Copy(RTL_CONSTASCII_LENGTH(orientatationEquals)).EqualsIgnoreCaseAscii( "landscape" ) ? orientation::Landscape : orientation::Portrait; } - else if( aLine.CompareTo( "copies=", 7 ) == COMPARE_EQUAL ) + else if( aLine.CompareTo(RTL_CONSTASCII_STRINGPARAM(copiesEquals)) == COMPARE_EQUAL ) { bCopies = true; - rJobData.m_nCopies = aLine.Copy( 7 ).ToInt32(); + rJobData.m_nCopies = aLine.Copy(RTL_CONSTASCII_LENGTH(copiesEquals)).ToInt32(); } - else if( aLine.CompareTo( "margindajustment=",17 ) == COMPARE_EQUAL ) + else if( aLine.CompareTo(RTL_CONSTASCII_STRINGPARAM(margindajustmentEquals)) == COMPARE_EQUAL ) { bMargin = true; - ByteString aValues( aLine.Copy( 17 ) ); + ByteString aValues( aLine.Copy(RTL_CONSTASCII_LENGTH(margindajustmentEquals)) ); rJobData.m_nLeftMarginAdjust = aValues.GetToken( 0, ',' ).ToInt32(); rJobData.m_nRightMarginAdjust = aValues.GetToken( 1, ',' ).ToInt32(); rJobData.m_nTopMarginAdjust = aValues.GetToken( 2, ',' ).ToInt32(); rJobData.m_nBottomMarginAdjust = aValues.GetToken( 3, ',' ).ToInt32(); } - else if( aLine.CompareTo( "colordepth=", 11 ) == COMPARE_EQUAL ) + else if( aLine.CompareTo(RTL_CONSTASCII_STRINGPARAM(colordepthEquals)) == COMPARE_EQUAL ) { bColorDepth = true; - rJobData.m_nColorDepth = aLine.Copy( 11 ).ToInt32(); + rJobData.m_nColorDepth = aLine.Copy(RTL_CONSTASCII_LENGTH(colordepthEquals)).ToInt32(); } - else if( aLine.CompareTo( "colordevice=", 12 ) == COMPARE_EQUAL ) + else if( aLine.CompareTo(RTL_CONSTASCII_STRINGPARAM(colordeviceEquals)) == COMPARE_EQUAL ) { bColorDevice = true; - rJobData.m_nColorDevice = aLine.Copy( 12 ).ToInt32(); + rJobData.m_nColorDevice = aLine.Copy(RTL_CONSTASCII_LENGTH(colordeviceEquals)).ToInt32(); } - else if( aLine.CompareTo( "pslevel=", 8 ) == COMPARE_EQUAL ) + else if( aLine.CompareTo(RTL_CONSTASCII_STRINGPARAM(pslevelEquals)) == COMPARE_EQUAL ) { bPSLevel = true; - rJobData.m_nPSLevel = aLine.Copy( 8 ).ToInt32(); + rJobData.m_nPSLevel = aLine.Copy(RTL_CONSTASCII_LENGTH(pslevelEquals)).ToInt32(); } - else if( aLine.CompareTo( "pdfdevice=", 10 ) == COMPARE_EQUAL ) + else if( aLine.CompareTo(RTL_CONSTASCII_STRINGPARAM(pdfdeviceEquals)) == COMPARE_EQUAL ) { bPDFDevice = true; - rJobData.m_nPDFDevice = aLine.Copy( 10 ).ToInt32(); + rJobData.m_nPDFDevice = aLine.Copy(RTL_CONSTASCII_LENGTH(pdfdeviceEquals)).ToInt32(); } else if( aLine.Equals( "PPDContexData" ) ) { |