summaryrefslogtreecommitdiff
path: root/editeng
diff options
context:
space:
mode:
authorBjoern Michaelsen <bjoern.michaelsen@canonical.com>2011-07-24 19:22:59 +0200
committerBjoern Michaelsen <bjoern.michaelsen@canonical.com>2011-07-24 19:22:59 +0200
commit0ef7b7cec59c0082bccff882f5bf20214ff792a5 (patch)
tree5385dd21e86a182891ea0a3b3acf0179ab74cd39 /editeng
parenteac26998ca7458314420efe9e0ae29cfa92dbf4b (diff)
parentdbf2ca3d9c034866546f40c13c5b2c7020e35725 (diff)
Merge branch 'master' into feature/gnumake4
Diffstat (limited to 'editeng')
-rw-r--r--editeng/source/editeng/eehtml.cxx130
-rw-r--r--editeng/source/editeng/eehtml.hxx21
2 files changed, 71 insertions, 80 deletions
diff --git a/editeng/source/editeng/eehtml.cxx b/editeng/source/editeng/eehtml.cxx
index 30bc31feb6da..ed290b5236b0 100644
--- a/editeng/source/editeng/eehtml.cxx
+++ b/editeng/source/editeng/eehtml.cxx
@@ -52,21 +52,20 @@
#define STYLE_PRE 101
EditHTMLParser::EditHTMLParser( SvStream& rIn, const String& rBaseURL, SvKeyValueIterator* pHTTPHeaderAttrs )
- : HTMLParser( rIn, true )
- , aBaseURL( rBaseURL )
+ : HTMLParser( rIn, true ),
+ aBaseURL( rBaseURL ),
+ pImpEditEngine(NULL),
+ pCurAnchor(NULL),
+ bInPara(false),
+ bWasInPara(false),
+ bFieldsInserted(false),
+ bInTitle(false),
+ nInTable(0),
+ nInCell(0),
+ nDefListLevel(0),
+ nBulletLevel(0),
+ nNumberingLevel(0)
{
- pImpEditEngine = 0;
- pCurAnchor = 0;
- bInPara = sal_False;
- bWasInPara = sal_False;
- nInTable = 0;
- nInCell = 0;
- bInTitle = sal_False;
- nDefListLevel = 0;
- nBulletLevel = 0;
- nNumberingLevel = 0;
- bFieldsInserted = sal_False;
-
DBG_ASSERT( RTL_TEXTENCODING_DONTKNOW == GetSrcEncoding( ), "EditHTMLParser::EditHTMLParser: Where does the encoding come from?" );
DBG_ASSERT( !IsSwitchToUCS2(), "EditHTMLParser::::EditHTMLParser: Switch to UCS2?" );
@@ -75,7 +74,7 @@ EditHTMLParser::EditHTMLParser( SvStream& rIn, const String& rBaseURL, SvKeyValu
SetSrcEncoding( GetExtendedCompatibilityTextEncoding( RTL_TEXTENCODING_ISO_8859_1 ) );
// If the file starts with a BOM, switch to UCS2.
- SetSwitchToUCS2( sal_True );
+ SetSwitchToUCS2( true );
if ( pHTTPHeaderAttrs )
SetEncodingByHTTPHeader( pHTTPHeaderAttrs );
@@ -128,24 +127,24 @@ void EditHTMLParser::NextToken( int nToken )
{
case HTML_META:
{
- const HTMLOptions *_pOptions = GetOptions();
- sal_uInt16 nArrLen = _pOptions->Count();
- sal_Bool bEquiv = sal_False;
- for ( sal_uInt16 i = 0; i < nArrLen; i++ )
+ const HTMLOptions& aOptions = GetOptions();
+ size_t nArrLen = aOptions.size();
+ bool bEquiv = false;
+ for ( size_t i = 0; i < nArrLen; i++ )
{
- const HTMLOption *pOption = (*_pOptions)[i];
- switch( pOption->GetToken() )
+ const HTMLOption& aOption = aOptions[i];
+ switch( aOption.GetToken() )
{
case HTML_O_HTTPEQUIV:
{
- bEquiv = sal_True;
+ bEquiv = true;
}
break;
case HTML_O_CONTENT:
{
if ( bEquiv )
{
- rtl_TextEncoding eEnc = GetEncodingByMIME( pOption->GetString() );
+ rtl_TextEncoding eEnc = GetEncodingByMIME( aOption.GetString() );
if ( eEnc != RTL_TEXTENCODING_DONTKNOW )
SetSrcEncoding( eEnc );
}
@@ -158,11 +157,11 @@ void EditHTMLParser::NextToken( int nToken )
break;
case HTML_PLAINTEXT_ON:
case HTML_PLAINTEXT2_ON:
- bInPara = sal_True;
+ bInPara = true;
break;
case HTML_PLAINTEXT_OFF:
case HTML_PLAINTEXT2_OFF:
- bInPara = sal_False;
+ bInPara = false;
break;
case HTML_LINEBREAK:
@@ -195,7 +194,7 @@ void EditHTMLParser::NextToken( int nToken )
if (!bInTitle)
{
if ( !bInPara )
- StartPara( sal_False );
+ StartPara( false );
String aText = aToken;
if ( aText.Len() && ( aText.GetChar( 0 ) == ' ' )
@@ -244,13 +243,13 @@ void EditHTMLParser::NextToken( int nToken )
case HTML_PARABREAK_ON:
if( bInPara && HasTextInCurrentPara() )
- EndPara( sal_True );
- StartPara( sal_True );
+ EndPara( true );
+ StartPara( true );
break;
case HTML_PARABREAK_OFF:
if( bInPara )
- EndPara( sal_True );
+ EndPara( true );
break;
case HTML_HEAD1_ON:
@@ -279,7 +278,7 @@ void EditHTMLParser::NextToken( int nToken )
case HTML_XMP_ON:
case HTML_LISTING_ON:
{
- StartPara( sal_True );
+ StartPara( true );
ImpSetStyleSheet( STYLE_PRE );
}
break;
@@ -318,10 +317,10 @@ void EditHTMLParser::NextToken( int nToken )
case HTML_ORDERLIST_ON:
case HTML_UNORDERLIST_ON:
{
- sal_Bool bHasText = HasTextInCurrentPara();
+ bool bHasText = HasTextInCurrentPara();
if ( bHasText )
ImpInsertParaBreak();
- StartPara( sal_False );
+ StartPara( false );
}
break;
@@ -337,7 +336,7 @@ void EditHTMLParser::NextToken( int nToken )
case HTML_DD_OFF:
case HTML_DT_OFF:
case HTML_ORDERLIST_OFF:
- case HTML_UNORDERLIST_OFF: EndPara( sal_False );
+ case HTML_UNORDERLIST_OFF: EndPara( false );
break;
case HTML_TABLEROW_ON:
@@ -353,10 +352,10 @@ void EditHTMLParser::NextToken( int nToken )
break;
case HTML_TITLE_ON:
- bInTitle = sal_True;
+ bInTitle = true;
break;
case HTML_TITLE_OFF:
- bInTitle = sal_False;
+ bInTitle = false;
break;
// globals
@@ -524,7 +523,6 @@ void EditHTMLParser::ImpInsertParaBreak()
pImpEditEngine->aImportHdl.Call( &aImportInfo );
}
aCurSel = pImpEditEngine->ImpInsertParaBreak( aCurSel );
- nLastAction = ACTION_INSERTPARABRK;
}
void EditHTMLParser::ImpSetAttribs( const SfxItemSet& rItems, EditSelection* pSel )
@@ -683,7 +681,6 @@ void EditHTMLParser::ImpInsertText( const String& rText )
}
aCurSel = pImpEditEngine->ImpInsertText( aCurSel, aText );
- nLastAction = ACTION_INSERTTEXT;
}
void EditHTMLParser::SkipGroup( int nEndToken )
@@ -710,25 +707,24 @@ void EditHTMLParser::SkipGroup( int nEndToken )
}
}
-void EditHTMLParser::StartPara( sal_Bool bReal )
+void EditHTMLParser::StartPara( bool bReal )
{
if ( bReal )
{
- const HTMLOptions *_pOptions = GetOptions();
- sal_uInt16 nArrLen = _pOptions->Count();
+ const HTMLOptions& aOptions = GetOptions();
SvxAdjust eAdjust = SVX_ADJUST_LEFT;
- for ( sal_uInt16 i = 0; i < nArrLen; i++ )
+ for ( size_t i = 0, n = aOptions.size(); i < n; ++i )
{
- const HTMLOption *pOption = (*_pOptions)[i];
- switch( pOption->GetToken() )
+ const HTMLOption& aOption = aOptions[i];
+ switch( aOption.GetToken() )
{
case HTML_O_ALIGN:
{
- if ( pOption->GetString().CompareIgnoreCaseToAscii( OOO_STRING_SVTOOLS_HTML_AL_right ) == COMPARE_EQUAL )
+ if ( aOption.GetString().CompareIgnoreCaseToAscii( OOO_STRING_SVTOOLS_HTML_AL_right ) == COMPARE_EQUAL )
eAdjust = SVX_ADJUST_RIGHT;
- else if ( pOption->GetString().CompareIgnoreCaseToAscii( OOO_STRING_SVTOOLS_HTML_AL_middle ) == COMPARE_EQUAL )
+ else if ( aOption.GetString().CompareIgnoreCaseToAscii( OOO_STRING_SVTOOLS_HTML_AL_middle ) == COMPARE_EQUAL )
eAdjust = SVX_ADJUST_CENTER;
- else if ( pOption->GetString().CompareIgnoreCaseToAscii( OOO_STRING_SVTOOLS_HTML_AL_center ) == COMPARE_EQUAL )
+ else if ( aOption.GetString().CompareIgnoreCaseToAscii( OOO_STRING_SVTOOLS_HTML_AL_center ) == COMPARE_EQUAL )
eAdjust = SVX_ADJUST_CENTER;
else
eAdjust = SVX_ADJUST_LEFT;
@@ -740,33 +736,33 @@ void EditHTMLParser::StartPara( sal_Bool bReal )
aItemSet.Put( SvxAdjustItem( eAdjust, EE_PARA_JUST ) );
ImpSetAttribs( aItemSet );
}
- bInPara = sal_True;
+ bInPara = true;
}
-void EditHTMLParser::EndPara( sal_Bool )
+void EditHTMLParser::EndPara( bool )
{
if ( bInPara )
{
- sal_Bool bHasText = HasTextInCurrentPara();
+ bool bHasText = HasTextInCurrentPara();
if ( bHasText )
ImpInsertParaBreak();
}
- bInPara = sal_False;
+ bInPara = false;
}
-sal_Bool EditHTMLParser::ThrowAwayBlank()
+bool EditHTMLParser::ThrowAwayBlank()
{
// A blank must be thrown away if the new text begins with a Blank and
// if the current paragraph is empty or ends with a Blank...
ContentNode* pNode = aCurSel.Max().GetNode();
if ( pNode->Len() && ( pNode->GetChar( pNode->Len()-1 ) != ' ' ) )
- return sal_False;
- return sal_True;
+ return false;
+ return true;
}
-sal_Bool EditHTMLParser::HasTextInCurrentPara()
+bool EditHTMLParser::HasTextInCurrentPara()
{
- return aCurSel.Max().GetNode()->Len() ? sal_True : sal_False;
+ return aCurSel.Max().GetNode()->Len() ? true : false;
}
void EditHTMLParser::AnchorStart()
@@ -774,18 +770,16 @@ void EditHTMLParser::AnchorStart()
// ignore anchor in anchor
if ( !pCurAnchor )
{
- const HTMLOptions* _pOptions = GetOptions();
- sal_uInt16 nArrLen = _pOptions->Count();
-
+ const HTMLOptions& aOptions = GetOptions();
String aRef;
- for ( sal_uInt16 i = 0; i < nArrLen; i++ )
+ for ( size_t i = 0, n = aOptions.size(); i < n; ++i )
{
- const HTMLOption* pOption = (*_pOptions)[i];
- switch( pOption->GetToken() )
+ const HTMLOption& aOption = aOptions[i];
+ switch( aOption.GetToken() )
{
case HTML_O_HREF:
- aRef = pOption->GetString();
+ aRef = aOption.GetString();
break;
}
}
@@ -813,9 +807,9 @@ void EditHTMLParser::AnchorEnd()
// Insert as URL-Field...
SvxFieldItem aFld( SvxURLField( pCurAnchor->aHRef, pCurAnchor->aText, SVXURLFORMAT_REPR ), EE_FEATURE_FIELD );
aCurSel = pImpEditEngine->InsertField( aCurSel, aFld );
- bFieldsInserted = sal_True;
+ bFieldsInserted = true;
delete pCurAnchor;
- pCurAnchor = 0;
+ pCurAnchor = NULL;
if ( pImpEditEngine->aImportHdl.IsSet() )
{
@@ -828,7 +822,7 @@ void EditHTMLParser::AnchorEnd()
void EditHTMLParser::HeadingStart( int nToken )
{
bWasInPara = bInPara;
- StartPara( sal_False );
+ StartPara( false );
if ( bWasInPara && HasTextInCurrentPara() )
ImpInsertParaBreak();
@@ -841,13 +835,13 @@ void EditHTMLParser::HeadingStart( int nToken )
void EditHTMLParser::HeadingEnd( int )
{
- EndPara( sal_False );
+ EndPara( false );
ImpSetStyleSheet( 0 );
if ( bWasInPara )
{
- bInPara = sal_True;
- bWasInPara = sal_False;
+ bInPara = true;
+ bWasInPara = false;
}
}
diff --git a/editeng/source/editeng/eehtml.hxx b/editeng/source/editeng/eehtml.hxx
index 94d386ff71cb..6025f0a9acda 100644
--- a/editeng/source/editeng/eehtml.hxx
+++ b/editeng/source/editeng/eehtml.hxx
@@ -53,29 +53,26 @@ private:
ImpEditEngine* pImpEditEngine;
AnchorInfo* pCurAnchor;
- sal_Bool bInPara;
- sal_Bool bWasInPara; // Remember bInPara before HeadingStart, because afterwards it will be gone.
- sal_Bool bFieldsInserted;
+ bool bInPara:1;
+ bool bWasInPara:1; // Remember bInPara before HeadingStart, because afterwards it will be gone.
+ bool bFieldsInserted:1;
+ bool bInTitle:1;
+
sal_uInt8 nInTable;
sal_uInt8 nInCell;
- sal_Bool bInTitle;
-
sal_uInt8 nDefListLevel;
sal_uInt8 nBulletLevel;
sal_uInt8 nNumberingLevel;
- sal_uInt8 nLastAction;
-
- void StartPara( sal_Bool bReal );
- void EndPara( sal_Bool bReal );
+ void StartPara( bool bReal );
+ void EndPara( bool bReal );
void AnchorStart();
void AnchorEnd();
void HeadingStart( int nToken );
void HeadingEnd( int nToken );
void SkipGroup( int nEndToken );
- sal_Bool ThrowAwayBlank();
- sal_Bool HasTextInCurrentPara();
- void ProcessUnknownControl( sal_Bool bOn );
+ bool ThrowAwayBlank();
+ bool HasTextInCurrentPara();
void ImpInsertParaBreak();
void ImpInsertText( const String& rText );