summaryrefslogtreecommitdiff
path: root/editeng/source/editeng/eehtml.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'editeng/source/editeng/eehtml.cxx')
-rw-r--r--editeng/source/editeng/eehtml.cxx352
1 files changed, 153 insertions, 199 deletions
diff --git a/editeng/source/editeng/eehtml.cxx b/editeng/source/editeng/eehtml.cxx
index 50a776a5a9..351627674f 100644
--- a/editeng/source/editeng/eehtml.cxx
+++ b/editeng/source/editeng/eehtml.cxx
@@ -57,15 +57,15 @@ EditHTMLParser::EditHTMLParser( SvStream& rIn, const String& rBaseURL, SvKeyValu
{
pImpEditEngine = 0;
pCurAnchor = 0;
- bInPara = FALSE;
- bWasInPara = FALSE;
+ bInPara = sal_False;
+ bWasInPara = sal_False;
nInTable = 0;
nInCell = 0;
- bInTitle = FALSE;
+ bInTitle = sal_False;
nDefListLevel = 0;
nBulletLevel = 0;
nNumberingLevel = 0;
- bFieldsInserted = FALSE;
+ 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 +75,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( TRUE );
+ SetSwitchToUCS2( sal_True );
if ( pHTTPHeaderAttrs )
SetEncodingByHTTPHeader( pHTTPHeaderAttrs );
@@ -93,7 +93,7 @@ SvParserState EditHTMLParser::CallParser( ImpEditEngine* pImpEE, const EditPaM&
SvParserState _eState = SVPAR_NOTSTARTED;
if ( pImpEditEngine )
{
- // Umbrechmimik vom RTF-Import einbauen?
+ // Build in wrap mimic in RTF import?
aCurSel = EditSelection( rPaM, rPaM );
if ( pImpEditEngine->aImportHdl.IsSet() )
@@ -129,16 +129,16 @@ void EditHTMLParser::NextToken( int nToken )
case HTML_META:
{
const HTMLOptions *_pOptions = GetOptions();
- USHORT nArrLen = _pOptions->Count();
- BOOL bEquiv = FALSE;
- for ( USHORT i = 0; i < nArrLen; i++ )
+ sal_uInt16 nArrLen = _pOptions->Count();
+ sal_Bool bEquiv = sal_False;
+ for ( sal_uInt16 i = 0; i < nArrLen; i++ )
{
const HTMLOption *pOption = (*_pOptions)[i];
switch( pOption->GetToken() )
{
case HTML_O_HTTPEQUIV:
{
- bEquiv = TRUE;
+ bEquiv = sal_True;
}
break;
case HTML_O_CONTENT:
@@ -158,11 +158,11 @@ void EditHTMLParser::NextToken( int nToken )
break;
case HTML_PLAINTEXT_ON:
case HTML_PLAINTEXT2_ON:
- bInPara = TRUE;
+ bInPara = sal_True;
break;
case HTML_PLAINTEXT_OFF:
case HTML_PLAINTEXT2_OFF:
- bInPara = FALSE;
+ bInPara = sal_False;
break;
case HTML_LINEBREAK:
@@ -195,9 +195,7 @@ void EditHTMLParser::NextToken( int nToken )
if (!bInTitle)
{
if ( !bInPara )
- StartPara( FALSE );
-
- // if ( bInPara || pCurAnchor )
+ StartPara( sal_False );
String aText = aToken;
if ( aText.Len() && ( aText.GetChar( 0 ) == ' ' )
@@ -210,10 +208,10 @@ void EditHTMLParser::NextToken( int nToken )
}
else
{
- // Nur bis HTML mit 319 geschrieben ?!
+ // Only written until HTML with 319?
if ( IsReadPRE() )
{
- USHORT nTabPos = aText.Search( '\t', 0 );
+ sal_uInt16 nTabPos = aText.Search( '\t', 0 );
while ( nTabPos != STRING_NOTFOUND )
{
aText.Erase( nTabPos, 1 );
@@ -228,9 +226,9 @@ void EditHTMLParser::NextToken( int nToken )
break;
case HTML_CENTER_ON:
- case HTML_CENTER_OFF: // if ( bInPara )
+ case HTML_CENTER_OFF:
{
- USHORT nNode = pImpEditEngine->GetEditDoc().GetPos( aCurSel.Max().GetNode() );
+ sal_uInt16 nNode = pImpEditEngine->GetEditDoc().GetPos( aCurSel.Max().GetNode() );
SfxItemSet aItems( aCurSel.Max().GetNode()->GetContentAttribs().GetItems() );
aItems.ClearItem( EE_PARA_JUST );
if ( nToken == HTML_CENTER_ON )
@@ -246,13 +244,13 @@ void EditHTMLParser::NextToken( int nToken )
case HTML_PARABREAK_ON:
if( bInPara && HasTextInCurrentPara() )
- EndPara( TRUE );
- StartPara( TRUE );
+ EndPara( sal_True );
+ StartPara( sal_True );
break;
case HTML_PARABREAK_OFF:
if( bInPara )
- EndPara( TRUE );
+ EndPara( sal_True );
break;
case HTML_HEAD1_ON:
@@ -281,7 +279,7 @@ void EditHTMLParser::NextToken( int nToken )
case HTML_XMP_ON:
case HTML_LISTING_ON:
{
- StartPara( TRUE );
+ StartPara( sal_True );
ImpSetStyleSheet( STYLE_PRE );
}
break;
@@ -301,14 +299,14 @@ void EditHTMLParser::NextToken( int nToken )
case HTML_TABLE_ON: nInTable++;
break;
- case HTML_TABLE_OFF: DBG_ASSERT( nInTable, "Nicht in Table, aber TABLE_OFF?" );
+ case HTML_TABLE_OFF: DBG_ASSERT( nInTable, "Not in Table, but TABLE_OFF?" );
nInTable--;
break;
case HTML_TABLEHEADER_ON:
case HTML_TABLEDATA_ON:
nInCell++;
- // fallthru
+ // fall through
case HTML_BLOCKQUOTE_ON:
case HTML_BLOCKQUOTE_OFF:
case HTML_BLOCKQUOTE30_ON:
@@ -320,10 +318,10 @@ void EditHTMLParser::NextToken( int nToken )
case HTML_ORDERLIST_ON:
case HTML_UNORDERLIST_ON:
{
- BOOL bHasText = HasTextInCurrentPara();
+ sal_Bool bHasText = HasTextInCurrentPara();
if ( bHasText )
ImpInsertParaBreak();
- StartPara( FALSE );
+ StartPara( sal_False );
}
break;
@@ -333,17 +331,17 @@ void EditHTMLParser::NextToken( int nToken )
if ( nInCell )
nInCell--;
}
- // fallthru
+ // fall through
case HTML_LISTHEADER_OFF:
case HTML_LI_OFF:
case HTML_DD_OFF:
case HTML_DT_OFF:
case HTML_ORDERLIST_OFF:
- case HTML_UNORDERLIST_OFF: EndPara( FALSE );
+ case HTML_UNORDERLIST_OFF: EndPara( sal_False );
break;
case HTML_TABLEROW_ON:
- case HTML_TABLEROW_OFF: // Nur nach einem CELL ein RETURN, fuer Calc
+ case HTML_TABLEROW_OFF: // A RETURN only after a CELL, for Calc
case HTML_COL_ON:
case HTML_COLGROUP_ON:
@@ -354,14 +352,11 @@ void EditHTMLParser::NextToken( int nToken )
case HTML_FONT_OFF: // ...
break;
-
- // #58335# kein SkipGroup on/off auf inline markup etc.
-
case HTML_TITLE_ON:
- bInTitle = TRUE;
+ bInTitle = sal_True;
break;
case HTML_TITLE_OFF:
- bInTitle = FALSE;
+ bInTitle = sal_False;
break;
// globals
@@ -391,7 +386,7 @@ void EditHTMLParser::NextToken( int nToken )
// HTML 2.0
case HTML_ADDRESS_ON:
case HTML_ADDRESS_OFF:
-// case HTML_BLOCKQUOTE_ON: //! extra Behandlung
+// case HTML_BLOCKQUOTE_ON: //! special handling
// case HTML_BLOCKQUOTE_OFF:
case HTML_CITIATION_ON:
case HTML_CITIATION_OFF:
@@ -418,7 +413,7 @@ void EditHTMLParser::NextToken( int nToken )
case HTML_ACRONYM_OFF:
case HTML_AUTHOR_ON:
case HTML_AUTHOR_OFF:
-// case HTML_BLOCKQUOTE30_ON: //! extra Behandlung
+// case HTML_BLOCKQUOTE30_ON: //! special handling
// case HTML_BLOCKQUOTE30_OFF:
case HTML_DELETEDTEXT_ON:
case HTML_DELETEDTEXT_OFF:
@@ -461,20 +456,20 @@ void EditHTMLParser::NextToken( int nToken )
// misc
case HTML_DIRLIST_ON:
case HTML_DIRLIST_OFF:
- case HTML_FOOTNOTE_ON: //! landen so im Text
+ case HTML_FOOTNOTE_ON: //! land so im Text
case HTML_FOOTNOTE_OFF:
case HTML_MENULIST_ON:
case HTML_MENULIST_OFF:
-// case HTML_PLAINTEXT_ON: //! extra Behandlung
+// case HTML_PLAINTEXT_ON: //! special handling
// case HTML_PLAINTEXT_OFF:
-// case HTML_PREFORMTXT_ON: //! extra Behandlung
+// case HTML_PREFORMTXT_ON: //! special handling
// case HTML_PREFORMTXT_OFF:
case HTML_SPAN_ON:
case HTML_SPAN_OFF:
// obsolete
-// case HTML_XMP_ON: //! extra Behandlung
+// case HTML_XMP_ON: //! special handling
// case HTML_XMP_OFF:
-// case HTML_LISTING_ON: //! extra Behandlung
+// case HTML_LISTING_ON: //! special handling
// case HTML_LISTING_OFF:
// Netscape
case HTML_BLINK_ON:
@@ -488,7 +483,7 @@ void EditHTMLParser::NextToken( int nToken )
// Internet Explorer
case HTML_MARQUEE_ON:
case HTML_MARQUEE_OFF:
-// case HTML_PLAINTEXT2_ON: //! extra Behandlung
+// case HTML_PLAINTEXT2_ON: //! special handling
// case HTML_PLAINTEXT2_OFF:
break;
@@ -502,7 +497,7 @@ void EditHTMLParser::NextToken( int nToken )
}
else if ( !(nToken & 1) )
{
- DBG_ASSERT( !( nToken & 1 ), "Kein Start-Token ?!" );
+ DBG_ASSERT( !( nToken & 1 ), "No Start-Token ?!" );
SkipGroup( nToken + 1 );
}
}
@@ -534,9 +529,9 @@ void EditHTMLParser::ImpInsertParaBreak()
void EditHTMLParser::ImpSetAttribs( const SfxItemSet& rItems, EditSelection* pSel )
{
- // pSel, wenn Zeichenattribute, sonst Absatzattribute fuer den
- // aktuellen Absatz.
- DBG_ASSERT( pSel || ( aCurSel.Min().GetNode() == aCurSel.Max().GetNode() ), "ImpInsertAttribs: Selektion?" );
+ // pSel, when character attributes, otherwise paragraph attributes for
+ // the current paragraph.
+ DBG_ASSERT( pSel || ( aCurSel.Min().GetNode() == aCurSel.Max().GetNode() ), "ImpInsertAttribs: Selection?" );
EditPaM aStartPaM( pSel ? pSel->Min() : aCurSel.Min() );
EditPaM aEndPaM( pSel ? pSel->Max() : aCurSel.Max() );
@@ -556,162 +551,125 @@ void EditHTMLParser::ImpSetAttribs( const SfxItemSet& rItems, EditSelection* pSe
}
ContentNode* pSN = aStartPaM.GetNode();
- USHORT nStartNode = pImpEditEngine->GetEditDoc().GetPos( pSN );
+ sal_uInt16 nStartNode = pImpEditEngine->GetEditDoc().GetPos( pSN );
- // Wenn ein Attribut von 0 bis aktuelle Absatzlaenge geht,
- // soll es ein Absatz-Attribut sein!
+ // If an attribute goes from 0 to current Paragraph length,
+ // then it should be a paragraph attribute!
- // Achtung: Selektion kann ueber mehrere Absaetze gehen.
- // Alle vollstaendigen Absaetze sind Absatzattribute...
+ // Note: Selection can reach over several Paragraphs.
+ // All complete paragraphs are paragraph attributes ...
- // HTML eigentlich nicht:
+ // not really HTML:
#ifdef DBG_UTIL
ContentNode* pEN = aEndPaM.GetNode();
- USHORT nEndNode = pImpEditEngine->GetEditDoc().GetPos( pEN );
- DBG_ASSERT( nStartNode == nEndNode, "ImpSetAttribs: Mehrere Absaetze?" );
+ sal_uInt16 nEndNode = pImpEditEngine->GetEditDoc().GetPos( pEN );
+ DBG_ASSERT( nStartNode == nEndNode, "ImpSetAttribs: Several paragraphs?" );
#endif
-/*
- for ( USHORT z = nStartNode+1; z < nEndNode; z++ )
- {
- DBG_ASSERT( pImpEditEngine->GetEditDoc().SaveGetObject( z ), "Node existiert noch nicht(RTF)" );
- pImpEditEngine->SetParaAttribs( z, rSet.GetAttrSet() );
- }
-
- if ( aStartPaM.GetNode() != aEndPaM.GetNode() )
+ if ( ( aStartPaM.GetIndex() == 0 ) && ( aEndPaM.GetIndex() == aEndPaM.GetNode()->Len() ) )
{
- // Den Rest des StartNodes...
- if ( aStartPaM.GetIndex() == 0 )
- pImpEditEngine->SetParaAttribs( nStartNode, rSet.GetAttrSet() );
- else
- pImpEditEngine->SetAttribs( EditSelection( aStartPaM, EditPaM( aStartPaM.GetNode(), aStartPaM.GetNode()->Len() ) ), rSet.GetAttrSet() );
-
- // Den Anfang des EndNodes....
- if ( aEndPaM.GetIndex() == aEndPaM.GetNode()->Len() )
- pImpEditEngine->SetParaAttribs( nEndNode, rSet.GetAttrSet() );
- else
- pImpEditEngine->SetAttribs( EditSelection( EditPaM( aEndPaM.GetNode(), 0 ), aEndPaM ), rSet.GetAttrSet() );
+ // Has to be merged:
+ SfxItemSet aItems( pImpEditEngine->GetParaAttribs( nStartNode ) );
+ aItems.Put( rItems );
+ pImpEditEngine->SetParaAttribs( nStartNode, aItems );
}
else
-*/
- {
- if ( ( aStartPaM.GetIndex() == 0 ) && ( aEndPaM.GetIndex() == aEndPaM.GetNode()->Len() ) )
- {
- // Muesse gemergt werden:
- SfxItemSet aItems( pImpEditEngine->GetParaAttribs( nStartNode ) );
- aItems.Put( rItems );
- pImpEditEngine->SetParaAttribs( nStartNode, aItems );
- }
- else
- pImpEditEngine->SetAttribs( EditSelection( aStartPaM, aEndPaM ), rItems );
- }
+ pImpEditEngine->SetAttribs( EditSelection( aStartPaM, aEndPaM ), rItems );
}
-void EditHTMLParser::ImpSetStyleSheet( USHORT nHLevel )
+void EditHTMLParser::ImpSetStyleSheet( sal_uInt16 nHLevel )
{
/*
- nHLevel: 0: Ausschalten
+ nHLevel: 0: Turn off
1-6: Heading
STYLE_PRE: Preformatted
*/
+ // Create hard attributes ...
+ // Enough for Calc, would have to be clarified with StyleSheets
+ // that they should also be in the app so that when they are feed
+ // in a different engine still are here ...
+ sal_uInt16 nNode = pImpEditEngine->GetEditDoc().GetPos( aCurSel.Max().GetNode() );
-// if ( pImpEditEngine->GetStatus().DoImportRTFStyleSheets() )
-// {
-// SvxRTFStyleType* pS = GetStyleTbl().Get( rSet.StyleNo() );
-// DBG_ASSERT( pS, "Vorlage in RTF nicht definiert!" );
-// if ( pS )
-// pImpEditEngine->SetStyleSheet( EditSelection( aStartPaM, aEndPaM ), pS->sName, SFX_STYLE_FAMILY_ALL );
-// }
-// else
- {
- // Harte Attribute erzeugen...
- // Reicht fuer Calc, bei StyleSheets muesste noch geklaert werden,
- // dass diese auch in der App liegen sollten, damit sie beim
- // fuettern in eine andere Engine auch noch da sind...
-
- USHORT nNode = pImpEditEngine->GetEditDoc().GetPos( aCurSel.Max().GetNode() );
-// SfxItemSet aItems( pImpEditEngine->GetEmptyItemSet() );
- SfxItemSet aItems( aCurSel.Max().GetNode()->GetContentAttribs().GetItems() );
+ SfxItemSet aItems( aCurSel.Max().GetNode()->GetContentAttribs().GetItems() );
- aItems.ClearItem( EE_PARA_ULSPACE );
+ aItems.ClearItem( EE_PARA_ULSPACE );
- aItems.ClearItem( EE_CHAR_FONTHEIGHT );
- aItems.ClearItem( EE_CHAR_FONTINFO );
- aItems.ClearItem( EE_CHAR_WEIGHT );
+ aItems.ClearItem( EE_CHAR_FONTHEIGHT );
+ aItems.ClearItem( EE_CHAR_FONTINFO );
+ aItems.ClearItem( EE_CHAR_WEIGHT );
- aItems.ClearItem( EE_CHAR_FONTHEIGHT_CJK );
- aItems.ClearItem( EE_CHAR_FONTINFO_CJK );
- aItems.ClearItem( EE_CHAR_WEIGHT_CJK );
+ aItems.ClearItem( EE_CHAR_FONTHEIGHT_CJK );
+ aItems.ClearItem( EE_CHAR_FONTINFO_CJK );
+ aItems.ClearItem( EE_CHAR_WEIGHT_CJK );
- aItems.ClearItem( EE_CHAR_FONTHEIGHT_CTL );
- aItems.ClearItem( EE_CHAR_FONTINFO_CTL );
- aItems.ClearItem( EE_CHAR_WEIGHT_CTL );
+ aItems.ClearItem( EE_CHAR_FONTHEIGHT_CTL );
+ aItems.ClearItem( EE_CHAR_FONTINFO_CTL );
+ aItems.ClearItem( EE_CHAR_WEIGHT_CTL );
- // Fett in den ersten 3 Headings
- if ( ( nHLevel >= 1 ) && ( nHLevel <= 3 ) )
- {
- SvxWeightItem aWeightItem( WEIGHT_BOLD, EE_CHAR_WEIGHT );
- aItems.Put( aWeightItem );
+ // Bold in the first 3 Headings
+ if ( ( nHLevel >= 1 ) && ( nHLevel <= 3 ) )
+ {
+ SvxWeightItem aWeightItem( WEIGHT_BOLD, EE_CHAR_WEIGHT );
+ aItems.Put( aWeightItem );
- SvxWeightItem aWeightItemCJK( WEIGHT_BOLD, EE_CHAR_WEIGHT_CJK );
- aItems.Put( aWeightItem );
+ SvxWeightItem aWeightItemCJK( WEIGHT_BOLD, EE_CHAR_WEIGHT_CJK );
+ aItems.Put( aWeightItem );
- SvxWeightItem aWeightItemCTL( WEIGHT_BOLD, EE_CHAR_WEIGHT_CTL );
- aItems.Put( aWeightItem );
- }
+ SvxWeightItem aWeightItemCTL( WEIGHT_BOLD, EE_CHAR_WEIGHT_CTL );
+ aItems.Put( aWeightItem );
+ }
- // Fonthoehe und Abstaende, wenn LogicToLogic moeglich:
- MapUnit eUnit = pImpEditEngine->GetRefMapMode().GetMapUnit();
- if ( ( eUnit != MAP_PIXEL ) && ( eUnit != MAP_SYSFONT ) &&
- ( eUnit != MAP_APPFONT ) && ( eUnit != MAP_RELATIVE ) )
- {
- long nPoints = 10;
- if ( nHLevel == 1 )
- nPoints = 22;
- else if ( nHLevel == 2 )
- nPoints = 16;
- else if ( nHLevel == 3 )
- nPoints = 12;
- else if ( nHLevel == 4 )
- nPoints = 11;
+ // Font hight and margins, when LogicToLogic is possible:
+ MapUnit eUnit = pImpEditEngine->GetRefMapMode().GetMapUnit();
+ if ( ( eUnit != MAP_PIXEL ) && ( eUnit != MAP_SYSFONT ) &&
+ ( eUnit != MAP_APPFONT ) && ( eUnit != MAP_RELATIVE ) )
+ {
+ long nPoints = 10;
+ if ( nHLevel == 1 )
+ nPoints = 22;
+ else if ( nHLevel == 2 )
+ nPoints = 16;
+ else if ( nHLevel == 3 )
+ nPoints = 12;
+ else if ( nHLevel == 4 )
+ nPoints = 11;
- nPoints = OutputDevice::LogicToLogic( nPoints, MAP_POINT, eUnit );
+ nPoints = OutputDevice::LogicToLogic( nPoints, MAP_POINT, eUnit );
- SvxFontHeightItem aHeightItem( nPoints, 100, EE_CHAR_FONTHEIGHT );
- aItems.Put( aHeightItem );
+ SvxFontHeightItem aHeightItem( nPoints, 100, EE_CHAR_FONTHEIGHT );
+ aItems.Put( aHeightItem );
- SvxFontHeightItem aHeightItemCJK( nPoints, 100, EE_CHAR_FONTHEIGHT_CJK );
- aItems.Put( aHeightItemCJK );
+ SvxFontHeightItem aHeightItemCJK( nPoints, 100, EE_CHAR_FONTHEIGHT_CJK );
+ aItems.Put( aHeightItemCJK );
- SvxFontHeightItem aHeightItemCTL( nPoints, 100, EE_CHAR_FONTHEIGHT_CTL );
- aItems.Put( aHeightItemCTL );
+ SvxFontHeightItem aHeightItemCTL( nPoints, 100, EE_CHAR_FONTHEIGHT_CTL );
+ aItems.Put( aHeightItemCTL );
- // Absatzabstaende, wenn Heading:
- if ( !nHLevel || ((nHLevel >= 1) && (nHLevel <= 6)) )
- {
- SvxULSpaceItem aULSpaceItem( EE_PARA_ULSPACE );
- aULSpaceItem.SetUpper( (USHORT)OutputDevice::LogicToLogic( 42, MAP_10TH_MM, eUnit ) );
- aULSpaceItem.SetLower( (USHORT)OutputDevice::LogicToLogic( 35, MAP_10TH_MM, eUnit ) );
- aItems.Put( aULSpaceItem );
- }
- }
+ // Paragraph margins, when Heading:
+ if ( !nHLevel || ((nHLevel >= 1) && (nHLevel <= 6)) )
+ {
+ SvxULSpaceItem aULSpaceItem( EE_PARA_ULSPACE );
+ aULSpaceItem.SetUpper( (sal_uInt16)OutputDevice::LogicToLogic( 42, MAP_10TH_MM, eUnit ) );
+ aULSpaceItem.SetLower( (sal_uInt16)OutputDevice::LogicToLogic( 35, MAP_10TH_MM, eUnit ) );
+ aItems.Put( aULSpaceItem );
+ }
+ }
- // Bei Pre einen proportionalen Font waehlen
- if ( nHLevel == STYLE_PRE )
- {
- Font aFont = OutputDevice::GetDefaultFont( DEFAULTFONT_FIXED, LANGUAGE_SYSTEM, 0 );
- SvxFontItem aFontItem( aFont.GetFamily(), aFont.GetName(), XubString(), aFont.GetPitch(), aFont.GetCharSet(), EE_CHAR_FONTINFO );
- aItems.Put( aFontItem );
+ // Choose a proportional Font for Pre
+ if ( nHLevel == STYLE_PRE )
+ {
+ Font aFont = OutputDevice::GetDefaultFont( DEFAULTFONT_FIXED, LANGUAGE_SYSTEM, 0 );
+ SvxFontItem aFontItem( aFont.GetFamily(), aFont.GetName(), XubString(), aFont.GetPitch(), aFont.GetCharSet(), EE_CHAR_FONTINFO );
+ aItems.Put( aFontItem );
- SvxFontItem aFontItemCJK( aFont.GetFamily(), aFont.GetName(), XubString(), aFont.GetPitch(), aFont.GetCharSet(), EE_CHAR_FONTINFO_CJK );
- aItems.Put( aFontItemCJK );
+ SvxFontItem aFontItemCJK( aFont.GetFamily(), aFont.GetName(), XubString(), aFont.GetPitch(), aFont.GetCharSet(), EE_CHAR_FONTINFO_CJK );
+ aItems.Put( aFontItemCJK );
- SvxFontItem aFontItemCTL( aFont.GetFamily(), aFont.GetName(), XubString(), aFont.GetPitch(), aFont.GetCharSet(), EE_CHAR_FONTINFO_CTL );
- aItems.Put( aFontItemCTL );
- }
+ SvxFontItem aFontItemCTL( aFont.GetFamily(), aFont.GetName(), XubString(), aFont.GetPitch(), aFont.GetCharSet(), EE_CHAR_FONTINFO_CTL );
+ aItems.Put( aFontItemCTL );
+ }
- pImpEditEngine->SetParaAttribs( nNode, aItems );
- }
+ pImpEditEngine->SetParaAttribs( nNode, aItems );
}
void EditHTMLParser::ImpInsertText( const String& rText )
@@ -730,10 +688,10 @@ void EditHTMLParser::ImpInsertText( const String& rText )
void EditHTMLParser::SkipGroup( int nEndToken )
{
- // #69109# groups in cells are closed upon leaving the cell, because those
+ // groups in cells are closed upon leaving the cell, because those
// ******* web authors don't know their job
// for example: <td><form></td> lacks a closing </form>
- BYTE nCellLevel = nInCell;
+ sal_uInt8 nCellLevel = nInCell;
int nToken;
while( nCellLevel <= nInCell && ( (nToken = GetNextToken() ) != nEndToken ) && nToken )
{
@@ -752,14 +710,14 @@ void EditHTMLParser::SkipGroup( int nEndToken )
}
}
-void EditHTMLParser::StartPara( BOOL bReal )
+void EditHTMLParser::StartPara( sal_Bool bReal )
{
if ( bReal )
{
const HTMLOptions *_pOptions = GetOptions();
- USHORT nArrLen = _pOptions->Count();
+ sal_uInt16 nArrLen = _pOptions->Count();
SvxAdjust eAdjust = SVX_ADJUST_LEFT;
- for ( USHORT i = 0; i < nArrLen; i++ )
+ for ( sal_uInt16 i = 0; i < nArrLen; i++ )
{
const HTMLOption *pOption = (*_pOptions)[i];
switch( pOption->GetToken() )
@@ -782,50 +740,46 @@ void EditHTMLParser::StartPara( BOOL bReal )
aItemSet.Put( SvxAdjustItem( eAdjust, EE_PARA_JUST ) );
ImpSetAttribs( aItemSet );
}
- bInPara = TRUE;
+ bInPara = sal_True;
}
-void EditHTMLParser::EndPara( BOOL )
+void EditHTMLParser::EndPara( sal_Bool )
{
if ( bInPara )
{
- BOOL bHasText = HasTextInCurrentPara();
+ sal_Bool bHasText = HasTextInCurrentPara();
if ( bHasText )
ImpInsertParaBreak();
- // Nur, wenn ohne Absatzabstaende gearbeitet wird...
-// if ( !nInTable && bReal && (nNumberingLevel<=1) && (nBulletLevel<=1) )
-// ImpInsertParaBreak();
}
- bInPara = FALSE;
+ bInPara = sal_False;
}
-BOOL EditHTMLParser::ThrowAwayBlank()
+sal_Bool EditHTMLParser::ThrowAwayBlank()
{
- // Ein Blank muss weggeschmissen werden, wenn der neue Text mit einem
- // Blank beginnt und der aktuelle Absatz leer ist oder mit einem
- // Blank endet...
+ // 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 FALSE;
- return TRUE;
+ return sal_False;
+ return sal_True;
}
-BOOL EditHTMLParser::HasTextInCurrentPara()
+sal_Bool EditHTMLParser::HasTextInCurrentPara()
{
- return aCurSel.Max().GetNode()->Len() ? TRUE : FALSE;
+ return aCurSel.Max().GetNode()->Len() ? sal_True : sal_False;
}
void EditHTMLParser::AnchorStart()
{
- // Anker im Anker ignoriern
+ // ignore anchor in anchor
if ( !pCurAnchor )
{
const HTMLOptions* _pOptions = GetOptions();
- USHORT nArrLen = _pOptions->Count();
+ sal_uInt16 nArrLen = _pOptions->Count();
String aRef;
- for ( USHORT i = 0; i < nArrLen; i++ )
+ for ( sal_uInt16 i = 0; i < nArrLen; i++ )
{
const HTMLOption* pOption = (*_pOptions)[i];
switch( pOption->GetToken() )
@@ -856,10 +810,10 @@ void EditHTMLParser::AnchorEnd()
{
if ( pCurAnchor )
{
- // Als URL-Feld einfuegen...
+ // Insert as URL-Field...
SvxFieldItem aFld( SvxURLField( pCurAnchor->aHRef, pCurAnchor->aText, SVXURLFORMAT_REPR ), EE_FEATURE_FIELD );
aCurSel = pImpEditEngine->InsertField( aCurSel, aFld );
- bFieldsInserted = TRUE;
+ bFieldsInserted = sal_True;
delete pCurAnchor;
pCurAnchor = 0;
@@ -874,26 +828,26 @@ void EditHTMLParser::AnchorEnd()
void EditHTMLParser::HeadingStart( int nToken )
{
bWasInPara = bInPara;
- StartPara( FALSE );
+ StartPara( sal_False );
if ( bWasInPara && HasTextInCurrentPara() )
ImpInsertParaBreak();
- USHORT nId = sal::static_int_cast< USHORT >(
+ sal_uInt16 nId = sal::static_int_cast< sal_uInt16 >(
1 + ( ( nToken - HTML_HEAD1_ON ) / 2 ) );
- DBG_ASSERT( (nId >= 1) && (nId <= 9), "HeadingStart: ID kann nicht stimmen!" );
+ DBG_ASSERT( (nId >= 1) && (nId <= 9), "HeadingStart: ID can not be correct!" );
ImpSetStyleSheet( nId );
}
void EditHTMLParser::HeadingEnd( int )
{
- EndPara( FALSE );
+ EndPara( sal_False );
ImpSetStyleSheet( 0 );
if ( bWasInPara )
{
- bInPara = TRUE;
- bWasInPara = FALSE;
+ bInPara = sal_True;
+ bWasInPara = sal_False;
}
}