[Libreoffice-commits] core.git: sw/source
Jens Carl
j.carl43 at gmx.de
Tue Jun 20 11:06:21 UTC 2017
sw/source/filter/html/swhtml.cxx | 136 ++++++++++++++++++---------------------
1 file changed, 65 insertions(+), 71 deletions(-)
New commits:
commit 0e950e102c994d5e9ee73471ef93df1c0054aba9
Author: Jens Carl <j.carl43 at gmx.de>
Date: Tue Jun 20 07:46:43 2017 +0000
tdf#39468 Translate German comments/terms in sw/source/filter/html/swhtml.cxx
Eleventh and final set of translations.
Change-Id: I62876e2b05ddc4879951bd2788e9eb1087b59b19
Reviewed-on: https://gerrit.libreoffice.org/39003
Reviewed-by: Michael Stahl <mstahl at redhat.com>
Tested-by: Michael Stahl <mstahl at redhat.com>
diff --git a/sw/source/filter/html/swhtml.cxx b/sw/source/filter/html/swhtml.cxx
index 3b4e77d6b937..7b1e42963dad 100644
--- a/sw/source/filter/html/swhtml.cxx
+++ b/sw/source/filter/html/swhtml.cxx
@@ -4779,7 +4779,7 @@ void SwHTMLParser::NewCharFormat( HtmlTokenId nToken )
void SwHTMLParser::InsertSpacer()
{
- // und es ggf. durch die Optionen veraendern
+ // and if applicable change it via the options
OUString aId;
sal_Int16 eVertOri = text::VertOrientation::TOP;
sal_Int16 eHoriOri = text::HoriOrientation::NONE;
@@ -4810,17 +4810,17 @@ void SwHTMLParser::InsertSpacer()
eHoriOri );
break;
case HtmlOptionId::WIDTH:
- // erstmal nur als Pixelwerte merken!
+ // First only save as pixel value!
bPrcWidth = (rOption.GetString().indexOf('%') != -1);
aSize.Width() = (long)rOption.GetNumber();
break;
case HtmlOptionId::HEIGHT:
- // erstmal nur als Pixelwerte merken!
+ // First only save as pixel value!
bPrcHeight = (rOption.GetString().indexOf('%') != -1);
aSize.Height() = (long)rOption.GetNumber();
break;
case HtmlOptionId::SIZE:
- // erstmal nur als Pixelwerte merken!
+ // First only save as pixel value!
nSize = rOption.GetNumber();
break;
default: break;
@@ -4831,18 +4831,18 @@ void SwHTMLParser::InsertSpacer()
{
case HTML_SPTYPE_BLOCK:
{
- // einen leeren Textrahmen anlegen
+ // create an empty text frame
- // den Itemset holen
+ // fetch the ItemSet
SfxItemSet aFrameSet( m_xDoc->GetAttrPool(),
svl::Items<RES_FRMATR_BEGIN, RES_FRMATR_END-1>{} );
if( !IsNewDoc() )
Reader::ResetFrameFormatAttrs( aFrameSet );
- // den Anker und die Ausrichtung setzen
+ // set the anchor and the adjustment
SetAnchorAndAdjustment( eVertOri, eHoriOri, aFrameSet );
- // und noch die Groesse des Rahmens
+ // and the size of the frame
Size aDfltSz( MINFLY, MINFLY );
Size aSpace( 0, 0 );
SfxItemSet aDummyItemSet( m_xDoc->GetAttrPool(),
@@ -4853,17 +4853,17 @@ void SwHTMLParser::InsertSpacer()
aDummyItemSet, aDummyPropInfo, aFrameSet );
SetSpace( aSpace, aDummyItemSet, aDummyPropInfo, aFrameSet );
- // den Inhalt schuetzen
+ // protect the content
SvxProtectItem aProtectItem( RES_PROTECT) ;
aProtectItem.SetContentProtect( true );
aFrameSet.Put( aProtectItem );
- // der Rahmen anlegen
+ // create the frame
RndStdIds eAnchorId =
static_cast<const SwFormatAnchor &>(aFrameSet.Get(RES_ANCHOR)).GetAnchorId();
SwFrameFormat *pFlyFormat = m_xDoc->MakeFlySection( eAnchorId,
m_pPam->GetPoint(), &aFrameSet );
- // Ggf Frames anlegen und auto-geb. Rahmen registrieren
+ // Possibly create frames and register auto-bound frames.
RegisterFlyFrame( pFlyFormat );
}
break;
@@ -4877,21 +4877,21 @@ void SwHTMLParser::InsertSpacer()
MapMode(MapUnit::MapTwip) ).Height();
}
- // einen Absatz-Abstand setzen
+ // set a paragraph margin
SwTextNode *pTextNode = nullptr;
if( !m_pPam->GetPoint()->nContent.GetIndex() )
{
- // den unteren Absatz-Abstand des vorherigen Nodes aendern,
- // wenn moeglich
+ // if possible change the bottom paragraph margin
+ // of previous node
- SetAttr(); // noch offene Absatz-Attribute setzen
+ SetAttr(); // set still open paragraph attributes
pTextNode = m_xDoc->GetNodes()[m_pPam->GetPoint()->nNode.GetIndex()-1]
->GetTextNode();
- // Wenn der Abstz davor kein Textenode ist, dann wird jetzt
- // ein leere Absatz angelegt, der eh schon eine Zeilenhoehe
- // Abstand erzeugt.
+ // If the previous paragraph isn't a text node, then now an
+ // empty paragraph is created, which already generates a single
+ // line of spacing.
if( !pTextNode )
nSize = nSize>HTML_PARSPACE ? nSize-HTML_PARSPACE : 0;
}
@@ -4908,15 +4908,15 @@ void SwHTMLParser::InsertSpacer()
NewAttr( &m_aAttrTab.pULSpace, SvxULSpaceItem( 0, (sal_uInt16)nSize, RES_UL_SPACE ) );
EndAttr( m_aAttrTab.pULSpace, false );
- AppendTextNode(); // nicht am Abstand drehen!
+ AppendTextNode(); // Don't change spacing!
}
}
break;
case HTML_SPTYPE_HORI:
if( nSize > 0 )
{
- // wenn der Absatz noch leer ist, einen Erstzeilen-Einzug
- // setzen, sondern Sperrschrift ueber einem Space aufspannen
+ // If the paragraph is still empty, set first line
+ // indentation, otherwise apply letter spacing over a space.
if( nSize && Application::GetDefaultDevice() )
{
@@ -5009,27 +5009,23 @@ void SwHTMLParser::InsertIDOption()
void SwHTMLParser::InsertLineBreak()
{
- // <BR CLEAR=xxx> wird wie folgt behandelt:
- // 1.) Es werden nur nur absatzgebundene Rahmen betrachtet, die
- // im aktuellen Absatz verankert sind.
- // 2.) Fuer linksbuendig ausgerichtete Rahmen wird bei CLEAR=LEFT
- // oder ALL und auf rechtsbuendige ausgerichtete Rahmen bei
- // CLEAR=RIGHT oder ALL der Durchlauf wie folgt geaendert:
- // 3.) Wenn der Absatz keinen Text enthaelt, bekommt der Rahmen keinen
- // Umlauf
- // 4.) sonst erhaelt ein links ausgerichteter Rahmen eine rechten
- // "nur Anker" Umlauf und recht rechst ausg. Rahmen einen linken
- // "nur Anker" Umlauf.
- // 5.) wenn in einem nicht-leeren Absatz der Umlauf eines Rahmens
- // geaendert wird, wird ein neuer Absatz aufgemacht
- // 6.) Wenn von keinem Rahmen der Umlauf geaendert wird, wird ein
- // harter Zeilenumbruch eingefuegt
-
- OUString aId, aStyle, aClass; // die ID der Bookmark
+ // <BR CLEAR=xxx> is handled as:
+ // 1.) Only regard the paragraph-bound frames anchored in current paragraph.
+ // 2.) For left-justified aligned frames, CLEAR=LEFT or ALL, and for right-
+ // justified aligned frames, CLEAR=RIGHT or ALL, the wrap-through is
+ // changed as following:
+ // 3.) If the paragraph contains no text, then the frames don't get a wrapping
+ // 4.) otherwise a left aligned frame gets a right "only anchor" wrapping
+ // and a right aligned frame gets a left "only anchor" wrapping.
+ // 5.) if in a non-empty paragraph the wrapping of a frame is changed,
+ // then a new paragraph is opened
+ // 6.) If no wrappings of frames are changed, a hard line break is inserted.
+
+ OUString aId, aStyle, aClass; // the id of bookmark
bool bClearLeft = false, bClearRight = false;
- bool bCleared = false; // wurde ein CLEAR ausgefuehrt?
+ bool bCleared = false; // Was a CLEAR executed?
- // dann holen wir mal die Optionen
+ // then we fetch the options
const HTMLOptions& rHTMLOptions = GetOptions();
for (size_t i = rHTMLOptions.size(); i; )
{
@@ -5063,7 +5059,7 @@ void SwHTMLParser::InsertLineBreak()
}
}
- // CLEAR wird nur fuer den aktuellen Absaetz unterstuetzt
+ // CLEAR is only supported for the current paragraph
if( bClearLeft || bClearRight )
{
SwNodeIndex& rNodeIdx = m_pPam->GetPoint()->nNode;
@@ -5109,10 +5105,10 @@ void SwHTMLParser::InsertLineBreak()
pFormat->SetFormatAttr( aSurround );
bCleared = true;
}
- } // Anker ist nicht im Node
- } // Schleife ueber Fly-Frames
- } // kein Text-Node
- } // kein CLEAR
+ }
+ }
+ }
+ }
// parse styles
SvxFormatBreakItem aBreakItem( SvxBreak::NONE, RES_BREAK );
@@ -5142,18 +5138,17 @@ void SwHTMLParser::InsertLineBreak()
if( !bCleared && !bBreakItem )
{
- // wenn kein CLEAR ausgefuehrt werden sollte oder konnte, wird
- // ein Zeilenumbruch eingef?gt
+ // If no CLEAR could or should be executed, a line break will be inserted
OUString sTmp( u'\x000a' ); // make the Mac happy :-)
m_xDoc->getIDocumentContentOperations().InsertString( *m_pPam, sTmp );
}
else if( m_pPam->GetPoint()->nContent.GetIndex() )
{
- // wenn ein clear in einem nicht-leeren Absatz ausgefuehrt wurde,
- // muss anschliessen ein neuer Absatz aufgemacht werden
- // MIB 21.02.97: Eigentlich muesste man hier den unteren Absatz-
- // Absatnd auf 0 drehen. Das geht aber bei sowas wie <BR ..><P>
- // schief (>Netscape). Deshalb lassen wir das erstmal.
+ // If a CLEAR is executed in a non-empty paragraph, then after it
+ // a new paragraph has to be opened.
+ // MIB 21.02.97: Here actually we should change the bottom paragraph
+ // margin to zero. This will fail for something like this <BR ..><P>
+ // (>Netscape). That's why we don't do it.
AppendTextNode( AM_NOSPACE );
}
if( bBreakItem && SvxBreak::PageBefore==aBreakItem.GetBreak() )
@@ -5177,7 +5172,7 @@ void SwHTMLParser::InsertHorzRule()
Color aColor;
OUString aId;
- // dann holen wir mal die Optionen
+ // let's fetch the options
const HTMLOptions& rHTMLOptions = GetOptions();
for (size_t i = rHTMLOptions.size(); i; )
{
@@ -5195,7 +5190,7 @@ void SwHTMLParser::InsertHorzRule()
nWidth = (sal_uInt16)rOption.GetNumber();
if( bPrcWidth && nWidth>=100 )
{
- // 100%-Linien sind der default-Fall (keine Attrs neotig)
+ // the default case are 100% lines (no attributes necessary)
nWidth = 0;
bPrcWidth = false;
}
@@ -5221,22 +5216,22 @@ void SwHTMLParser::InsertHorzRule()
AppendTextNode();
m_pPam->Move( fnMoveBackward );
- // ... und in einem Kontext merken
+ // ...and save in a context
HTMLAttrContext *pCntxt =
new HTMLAttrContext( HtmlTokenId::HORZRULE, RES_POOLCOLL_HTML_HR, aEmptyOUStr );
PushContext( pCntxt );
- // die neue Vorlage setzen
+ // set the new style
SetTextCollAttrs( pCntxt );
- // die harten Attribute an diesem Absatz werden nie mehr ungueltig
+ // the hard attributes of the current paragraph will never become invalid
if( !m_aParaAttrs.empty() )
m_aParaAttrs.clear();
if( nSize>0 || bColor || bNoShade )
{
- // Farbe und/oder Breite der Linie setzen
+ // set line colour and/or width
if( !bColor )
aColor.SetColor( COL_GRAY );
@@ -5269,14 +5264,13 @@ void SwHTMLParser::InsertHorzRule()
}
if( nWidth )
{
- // Wenn wir in keiner Tabelle sind, wird die Breitenangabe durch
- // Absatz-Einzuege "getuerkt". In einer Tabelle macht das wenig
- // Sinn. Um zu Vermeiden, dass die Linie bei der Breitenberechnung
- // beruecksichtigt wird, bekommt sie aber trotzdem entsprechendes
- // LRSpace-Item verpasst.
+ // If we aren't in a table, then the width value will be "faked" with
+ // paragraph indents. That makes little sense in a table. In order to
+ // avoid that the line is considered during the width calculation, it
+ // still gets an appropriate LRSpace-Item.
if( !m_pTable )
{
- // Laenge und Ausrichtung der Linie ueber Absatz-Einzuege "tuerken"
+ // fake length and alignment of line above paragraph indents
long nBrowseWidth = GetCurrentBrowseWidth();
nWidth = bPrcWidth ? (sal_uInt16)((nWidth*nBrowseWidth) / 100)
: ToTwips( (sal_uInt16)nBrowseWidth );
@@ -5311,18 +5305,18 @@ void SwHTMLParser::InsertHorzRule()
}
}
- // Bookmarks koennen nicht in Hyperlinks eingefueht werden
+ // it's not possible to insert bookmarks in links
if( !aId.isEmpty() )
InsertBookmark( aId );
// pop current context of stack
HTMLAttrContext *pPoppedContext = PopContext( HtmlTokenId::HORZRULE );
- OSL_ENSURE( pPoppedContext==pCntxt, "wo kommt denn da ein HR-Kontext her?" );
+ OSL_ENSURE( pPoppedContext==pCntxt, "Where does the HR context come from?" );
delete pPoppedContext;
m_pPam->Move( fnMoveForward );
- // und im Absatz danach die dort aktuelle Vorlage setzen
+ // and set the current style in the next paragraph
SetTextCollAttrs();
}
@@ -5352,10 +5346,10 @@ void SwHTMLParser::ParseMoreMetaOptions()
}
}
- // Hier wird es etwas tricky: Wir wissen genau, da? die Dok-Info
- // nicht geaendert wurde. Deshalb genuegt es, auf Generator und
- // auf refresh abzufragen, um noch nicht verarbeitete Token zu finden,
- // denn das sind die einzigen, die die Dok-Info nicht modifizieren.
+ // Here things get a little tricky: We know for sure, that the Doc-Info
+ // wasn't changed. Therefore it's enough to query for Generator and Refresh
+ // to find a not processed Token. These are the only ones which won't change
+ // the Doc-Info.
if( aName.equalsIgnoreAsciiCase( OOO_STRING_SVTOOLS_HTML_META_generator ) ||
aName.equalsIgnoreAsciiCase( OOO_STRING_SVTOOLS_HTML_META_refresh ) ||
aName.equalsIgnoreAsciiCase( OOO_STRING_SVTOOLS_HTML_META_content_type ) ||
More information about the Libreoffice-commits
mailing list