Hi,
I have submitted a patch for review:
https://gerrit.libreoffice.org/4203
To pull it, you can do:
git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/03/4203/1
fdo#39468: Translate German comments in sw/source/core/edit
Change-Id: I48682db4a27be298b8c0392603879d2e12f24cd7
---
M sw/source/core/edit/autofmt.cxx
M sw/source/core/edit/eddel.cxx
M sw/source/core/edit/edfcol.cxx
M sw/source/core/edit/edfld.cxx
M sw/source/core/edit/edglbldc.cxx
M sw/source/core/edit/edglss.cxx
M sw/source/core/edit/editsh.cxx
M sw/source/core/edit/edlingu.cxx
M sw/source/core/edit/ednumber.cxx
M sw/source/core/edit/edtab.cxx
M sw/source/core/edit/edtox.cxx
M sw/source/core/edit/edundo.cxx
M sw/source/core/edit/edws.cxx
13 files changed, 433 insertions(+), 681 deletions(-)
diff --git a/sw/source/core/edit/autofmt.cxx b/sw/source/core/edit/autofmt.cxx
index e8a553b..eb6e8cf 100644
--- a/sw/source/core/edit/autofmt.cxx
+++ b/sw/source/core/edit/autofmt.cxx
@@ -249,7 +249,7 @@
{
// get the Frame
const SwCntntFrm *pFrm = rTxtNd.getLayoutFrm( pEditShell->GetLayout() );
- OSL_ENSURE( pFrm, "zum Autoformat muss das Layout vorhanden sein" );
+ OSL_ENSURE( pFrm, "For Autoformat a Layout is needed" );
if( aFlags.bAFmtByInput && !pFrm->IsValid() )
{
SwRect aTmpFrm( pFrm->Frm() );
@@ -298,7 +298,7 @@
}
#if OSL_DEBUG_LEVEL > 0
else
- sTxt = OUString("Action-Text fehlt");
+ sTxt = OUString("Action text is missing");
#endif
pDoc->SetAutoFmtRedlineComment( &sTxt, nSeqNo );
@@ -516,8 +516,7 @@
const String& rStr = rNd.GetTxt();
if( !rStr.Len() )
return sal_False;
- // oder besser: ueber die Anzahl von Alpha/Num- und !AN-Zeichen
- // bestimmen.
+ // or better: determine via number of AlphaNum and !AlphaNum characters
xub_StrLen nANChar = 0, nBlnk = 0;
CharClass& rCC = GetCharClass( rNd.GetSwAttrSet().GetLanguage().GetLanguage() );
@@ -527,7 +526,7 @@
else if( rCC.isLetterNumeric( rStr, n ))
++nANChar;
- // sind zu 75% keine Alpha-Nummerische-Zeichen, dann sal_True
+ // If there are 75% of non-alphanumeric characters, then sal_True
sal_uLong nLen = rStr.Len() - nBlnk;
nLen = ( nLen * 3 ) / 4; // long overflow, if the strlen > sal_uInt16
return xub_StrLen(nLen) < (rStr.Len() - nANChar - nBlnk);
@@ -566,7 +565,7 @@
if( 2 < nCnt )
{
- // dann unterstreiche mal den vorherigen Absatz, wenn es diesen gibt!
+ // then underline the previous paragraph if one exists
DelEmptyLine( false );
aDelPam.SetMark();
aDelPam.GetMark()->nContent = 0;
@@ -662,7 +661,7 @@
if( 1 < aPosArr.size() )
{
- // Ausrichtung vom Textnode besorgen:
+ // get the text node's alignment
sal_uInt16 nColCnt = aPosArr.size() - 1;
SwTwips nSttPos = aPosArr[ 0 ];
sal_Int16 eHori;
@@ -675,8 +674,7 @@
if( nSttPos )
{
eHori = text::HoriOrientation::NONE;
- // dann muss als letztes noch die akt. FrameBreite
- // ins Array
+ // then - as last - we need to add the current frame width into the array
aPosArr.push_back( static_cast<sal_uInt16>(pAktTxtFrm->Frm().Width()) );
}
else
@@ -684,7 +682,7 @@
break;
}
- // dann erzeuge eine Tabelle, die den Zeichen entspricht
+ // then create a table that matches the character
DelEmptyLine();
SwNodeIndex aIdx( aDelPam.GetPoint()->nNode );
aDelPam.Move( fnMoveForward );
@@ -704,7 +702,7 @@
for( nL = rStr.Len(), n = 0; n < nL && IsSpace( rStr.GetChar(n) ); ++n )
;
- if( n ) // keine Spaces
+ if( n ) // no Spaces
rStr.Erase( 0, n );
return rStr;
}
@@ -718,7 +716,7 @@
while( --n && IsSpace( rStr.GetChar( n ) ) )
;
- if( n+1 != nL ) // keine Spaces
+ if( n+1 != nL ) // no Spaces
rStr.Erase( n+1 );
return rStr;
}
@@ -767,7 +765,7 @@
sal_uInt16 SwAutoFormat::GetDigitLevel( const SwTxtNode& rNd, xub_StrLen& rPos,
String* pPreFix, String* pPostFix, String* pNumTypes ) const
{
- // Teste auf 1.) / 1. / 1.1.1 / (1). / (1) / ....
+ // check for 1.) / 1. / 1.1.1 / (1). / (1) / ....
const OUString& rTxt = rNd.GetTxt();
xub_StrLen nPos = rPos;
int eScan = NONE;
@@ -788,7 +786,7 @@
{
if( eScan & DELIM )
{
- if( eScan & CHG ) // nicht wenns mit einer Zahl beginnt
+ if( eScan & CHG ) // not if it starts with a number
{
++nDigitLvl;
if( pPostFix )
@@ -803,12 +801,12 @@
else if( pNumTypes && !(eScan & DIGIT) )
*pNumTypes += (sal_Unicode)('0' + SVX_NUM_ARABIC);
- eScan &= ~DELIM; // Delim raus
+ eScan &= ~DELIM; // remvoe Delim
if( 0 != (eScan & ~CHG) && DIGIT != (eScan & ~CHG))
return USHRT_MAX;
- eScan |= DIGIT; // Digit rein
- if( 3 == ++nDigitCnt ) // mehr als 2 Nummern sind kein Enum mehr
+ eScan |= DIGIT; // add Digit
+ if( 3 == ++nDigitCnt ) // more than 2 numbers are not an enum anymore
return USHRT_MAX;
nStart *= 10;
@@ -822,9 +820,8 @@
sal_Unicode cLow = rCC.lowercase(rTxt, nPos, 1)[0], cNumTyp;
int eTmpScan;
- // roemische Zeichen sind "mdclxvi". Da man aber eher mal eine
- // Numerierung mit c oder d anfangen will, werden diese erstmal
- // zu chars und spaeter ggfs. zu romischen Zeichen!
+ // Roman numbers are "mdclxvi". Since we want to start numbering with c or d more
often,
+ // convert first to characters and later to roman numbers if needed.
#ifdef WITH_ALPHANUM_AS_NUMFMT
//detection of 'c' and 'd' a ROMAN numbering should not be done here
if( 256 > cLow &&( (eScan & (LOWER_ROMAN|UPPER_ROMAN))
@@ -845,7 +842,7 @@
cNumTyp = '0' + SVX_NUM_CHARS_LOWER_LETTER, eTmpScan = LOWER_ALPHA;
- //ggfs. auf roemische Zeichen umschalten (nur bei c/d!)?
+ // Switch to roman numbers (only for c/d!)
if( 1 == nDigitCnt && ( eScan & (UPPER_ALPHA|LOWER_ALPHA) ) &&
( 3 == nStart || 4 == nStart) && 256 > cLow &&
strchr( "mdclxvi", cLow ) &&
@@ -866,7 +863,7 @@
if( eScan & DELIM )
{
- if( eScan & CHG ) // nicht wenns mit einer Zahl beginnt
+ if( eScan & CHG ) // not if it starts with a number
{
++nDigitLvl;
if( pPostFix )
@@ -880,20 +877,20 @@
else if( pNumTypes && !(eScan & eTmpScan) )
*pNumTypes += cNumTyp;
- eScan &= ~DELIM; // Delim raus
+ eScan &= ~DELIM; // remove Delim
- // falls ein andere Type gesetzt ist, brechen wir ab
+ // if another type is set, stop here
if( 0 != ( eScan & ~CHG ) && eTmpScan != ( eScan & ~CHG ))
return USHRT_MAX;
if( eTmpScan & (UPPER_ALPHA | LOWER_ALPHA) )
{
- // Buchstaben nur zulassen, wenn sie einmalig vorkommen
+ // allow characters only if they appear once
return USHRT_MAX;
}
else
{
- // roemische Zahlen: checke ob das gueltige Zeichen sind
+ // roman numbers, check if valid characters
sal_uInt16 nVal;
bool bError = false;
switch( cLow )
@@ -956,7 +953,7 @@
if( bError )
return USHRT_MAX;
}
- eScan |= eTmpScan; // Digit rein
+ eScan |= eTmpScan; // add Digit
++nDigitCnt;
}
else if( (256 > cCurrentChar &&
@@ -970,7 +967,7 @@
nOpeningParentheses++;
else if(cCurrentChar == ')'|| cCurrentChar == 0xFF08)
nClosingParentheses++;
- // nur wenn noch keine Zahlen gelesen wurden!
+ // only if no numbers were read until here
if( pPreFix && !( eScan & ( NO_DELIM | CHG )) )
*pPreFix += rTxt[nPos];
else if( pPostFix )
@@ -983,8 +980,8 @@
(*pPreFix += (sal_Unicode)1)
+= OUString::number( nStart );
}
- eScan &= ~NO_DELIM; // Delim raus
- eScan |= DELIM; // Digit rein
+ eScan &= ~NO_DELIM; // remove Delim
+ eScan |= DELIM; // add Digit
nDigitCnt = 0;
nStart = 0;
}
@@ -997,7 +994,7 @@
(nOpeningParentheses > nClosingParentheses))
return USHRT_MAX;
- if( (NO_DELIM & eScan) && pPreFix ) // den letzen nicht vergessen
+ if( (NO_DELIM & eScan) && pPreFix ) // do not forget the last one
(*pPreFix += (sal_Unicode)1) += OUString::number( nStart );
rPos = nPos;
@@ -1011,8 +1008,7 @@
aDelPam.GetPoint()->nNode = aNdIdx;
aDelPam.GetPoint()->nContent.Assign( pAktTxtNd, 0 );
- // behalte harte Tabs, Ausrichtung, Sprache, Silbentrennung,
- // DropCaps und fast alle Frame-Attribute
+ // keep hard tabs, alignment, language, hyphenation, DropCaps and nearly all frame attributes
SfxItemSet aSet( pDoc->GetAttrPool(),
RES_PARATR_ADJUST, RES_PARATR_ADJUST,
RES_PARATR_TABSTOP, RES_PARATR_DROP,
@@ -1023,9 +1019,7 @@
if( pAktTxtNd->HasSwAttrSet() )
{
aSet.Put( *pAktTxtNd->GetpSwAttrSet() );
- // einige Sonderbedingungen:
- // HeaderLine/Textkoerper: nur zentriert oder rechts mitnehmem
- // sonst nur den Blocksatz
+ // take HeaderLine/TextBody only if centered or right aligned, otherwise only justification
SvxAdjustItem* pAdj;
if( SFX_ITEM_SET == aSet.GetItemState( RES_PARATR_ADJUST,
sal_False, (const SfxPoolItem**)&pAdj ))
@@ -1044,8 +1038,8 @@
bool SwAutoFormat::HasSelBlanks( SwPaM& rPam ) const
{
- // noch ein Blank am Anfang oder Ende ?
- // nicht loeschen, wird wieder eingefuegt.
+ // Is there a Blank at the beginning or end?
+ // Do not delete it, it will be inserted again.
SwPosition * pPos = rPam.End();
xub_StrLen nBlnkPos = pPos->nContent.GetIndex();
SwTxtNode* pTxtNd = pPos->nNode.GetNode().GetTxtNode();
@@ -1086,7 +1080,7 @@
}
-// ist ein Punkt am Ende ??
+/// Is there a dot at the end?
bool SwAutoFormat::IsSentenceAtEnd( const SwTxtNode& rTxtNd ) const
{
const String& rStr = rTxtNd.GetTxt();
@@ -1100,14 +1094,14 @@
}
-// loesche im Node Anfang oder/und Ende
+/// Delete beginning and/or end in a node
void SwAutoFormat::DeleteAktPara( bool bStart, bool bEnd )
{
if( aFlags.bAFmtByInput
? aFlags.bAFmtByInpDelSpacesAtSttEnd
: aFlags.bAFmtDelSpacesAtSttEnd )
{
- // Loesche Blanks am Ende vom akt. und am Anfang vom naechsten
+ // delete blanks at the end of the current and at the beginning of the next one
aDelPam.DeleteMark();
aDelPam.GetPoint()->nNode = aNdIdx;
xub_StrLen nPos(0);
@@ -1136,8 +1130,7 @@
{
if( aFlags.bWithRedlining )
{
- // damit der DelPam auch verschoben wird, in den Shell-Cursr-Ring
- // mit aufnehmen !!
+ // Add to Shell-Cursor-Ring so that DelPam will be moved as well!
SwPaM* pShCrsr = pEditShell->_GetCrsr();
SwPaM aTmp( *pAktTxtNd, 0, pShCrsr );
@@ -1146,7 +1139,7 @@
pEditShell->DeleteSel( rDelPam );
- // und den Pam wieder herausnehmen:
+ // and remove Pam again:
Ring *p, *pNext = (Ring*)&rDelPam;
do {
p = pNext;
@@ -1163,7 +1156,7 @@
bool SwAutoFormat::DeleteAktNxtPara( const String& rNxtPara )
{
- // Loesche Blanks am Ende vom akt. und am Anfang vom naechsten
+ // delete blanks at the end of the current and at the beginning of the next one
aDelPam.DeleteMark();
aDelPam.GetPoint()->nNode = aNdIdx;
aDelPam.GetPoint()->nContent.Assign( pAktTxtNd,
@@ -1174,7 +1167,7 @@
SwTxtNode* pTNd = aDelPam.GetNode()->GetTxtNode();
if( !pTNd )
{
- // dann nur bis zum Ende von Absatz loeschen
+ // then delete only up to end of the paragraph
aDelPam.GetPoint()->nNode--;
aDelPam.GetPoint()->nContent = pAktTxtNd->GetTxt().getLength();
}
@@ -1182,8 +1175,8 @@
aDelPam.GetPoint()->nContent.Assign( pTNd,
GetLeadingBlanks( rNxtPara ));
- // noch ein Blank am Anfang oder Ende ?
- // nicht loeschen, wird wieder eingefuegt.
+ // Is there a Blank at the beginning or end?
+ // Do not delete it, it will be inserted again.
bool bHasBlnks = HasSelBlanks( aDelPam );
if( *aDelPam.GetPoint() != *aDelPam.GetMark() )
@@ -1197,7 +1190,7 @@
void SwAutoFormat::DelEmptyLine( bool bTstNextPara )
{
SetRedlineTxt( STR_AUTOFMTREDL_DEL_EMPTY_PARA );
- // Loesche Blanks den leeren Absatz
+ // delete blanks in empty paragraph
aDelPam.DeleteMark();
aDelPam.GetPoint()->nNode = aNdIdx;
aDelPam.GetPoint()->nContent.Assign(
@@ -1207,12 +1200,11 @@
aDelPam.GetMark()->nNode--;
SwTxtNode* pTNd = aDelPam.GetNode( sal_False )->GetTxtNode();
if( pTNd )
- // erstmal den vorherigen Textnode benutzen.
+ // first use the previous text node
aDelPam.GetMark()->nContent.Assign(pTNd, pTNd->GetTxt().getLength());
else if( bTstNextPara )
{
- // dann versuche den naechsten (am Anfang vom Dok, Tabellen-Zellen,
- // Rahmen, ...
+ // then try the next (at the beginning of a Doc, table cells, borders, ...)
aDelPam.GetMark()->nNode += 2;
pTNd = aDelPam.GetNode( sal_False )->GetTxtNode();
if( pTNd )
@@ -1241,7 +1233,7 @@
? aFlags.bAFmtByInpDelSpacesBetweenLines
: aFlags.bAFmtDelSpacesBetweenLines )
{
- // loesche alle "Blanks" Links und Rechts vom Einzug
+ // delete all blanks on the left and right of the indentation
aDelPam.DeleteMark();
aDelPam.GetPoint()->nNode = aNdIdx;
aDelPam.GetPoint()->nContent.Assign( pAktTxtNd, 0 );
@@ -1272,7 +1264,7 @@
}
- // loesche den vorherigen Absatz
+// delete the previous paragraph
void SwAutoFormat::DelPrevPara()
{
aDelPam.DeleteMark();
@@ -1296,7 +1288,7 @@
{
SetRedlineTxt( STR_AUTOFMTREDL_SET_TMPL_INDENT );
- // lese alle nachfolgenden Absaetze die zu diesem Einzug gehoeren
+ // read all succeeding paragraphs that belong to this indentation
bool bBreak = true;
if( bMoreLines )
DelMoreLinesBlanks( true );
@@ -1334,7 +1326,7 @@
void SwAutoFormat::BuildTextIndent()
{
SetRedlineTxt( STR_AUTOFMTREDL_SET_TMPL_TEXT_INDENT);
- // lese alle nachfolgenden Absaetze die zu diesem Einzug gehoeren
+ // read all succeeding paragraphs that belong to this indentation
bool bBreak = true;
if( bMoreLines )
DelMoreLinesBlanks( true );
@@ -1373,8 +1365,7 @@
void SwAutoFormat::BuildText()
{
SetRedlineTxt( STR_AUTOFMTREDL_SET_TMPL_TEXT );
- // lese alle nachfolgenden Absaetze die zu diesem Text
- // ohne Einzug gehoeren
+ // read all succeeding paragraphs that belong to this text without indentation
bool bBreak = true;
if( bMoreLines )
DelMoreLinesBlanks();
@@ -1415,7 +1406,7 @@
bool bBreak = true;
- // als erstes den akt. Einzug bestimmen und die Framebreite bestimmen
+ // first, determine current indentation and frame width
SwTwips nFrmWidth = pAktTxtFrm->Prt().Width();;
SwTwips nLeftTxtPos;
{
@@ -1443,7 +1434,7 @@
bool bChgBullet = false, bChgEnum = false;
xub_StrLen nAutoCorrPos = 0;
- // falls die Numerierung gesetzt werden, die akt. besorgen
+ // if numbering is set, get the current one
SwNumRule aRule( pDoc->GetUniqueNumRuleName(),
// #i89178#
numfunc::GetDefaultPositionAndSpaceMode() );
@@ -1452,7 +1443,7 @@
if( aFlags.bSetNumRule && 0 != (pCur = pAktTxtNd->GetNumRule()) )
aRule = *pCur;
- // ersetze das Bullet-Zeichen mit dem definiertem
+ // replace bullet character with defined one
const String& rStr = pAktTxtNd->GetTxt();
xub_StrLen nTxtStt = 0, nOrigTxtStt = 0;
const sal_Unicode* pFndBulletChr;
@@ -1468,7 +1459,7 @@
SwCharFmt* pCFmt = pDoc->GetCharFmtFromPool(
RES_POOLCHR_BUL_LEVEL );
bChgBullet = true;
- // wurde das Format schon mal angepasst?
+ // Was the format already somewhere adjusted?
if( !aRule.GetNumFmt( nLvl ) )
{
int nBulletPos = pFndBulletChr - pBulletChar;
@@ -1530,11 +1521,10 @@
}
else
{
- // dann ist das eine Nummerierung
+ // Then it is a numbering
- //JP 21.11.97: Der NumLevel wird entweder der DigitLevel oder
- // wenn der nicht vorhanden oder 0 ist, durch den
- // (Einrueckungs-)Level.
+ //JP 21.11.97: The NumLevel is either the DigitLevel or, if the latter is not existent or
0,
+ // it is determined by the indentation level.
String aPostFix, aPreFix, aNumTypes;
if( USHRT_MAX != ( nDigitLevel = GetDigitLevel( *pAktTxtNd, nTxtStt,
@@ -1542,8 +1532,7 @@
{
bChgEnum = true;
- // Ebene 0 und Einrueckung dann wird die Ebene durch den linken
- // Einzug und der default NumEinrueckung bestimmt.
+ // Level 0 and Indentation, determine level by left indentation and default NumIndent
if( !nDigitLevel && nLeftTxtPos )
nLvl = std::min( sal_uInt16( nLeftTxtPos / lNumIndent ),
sal_uInt16( MAXLEVEL - 1 ) );
@@ -1553,7 +1542,7 @@
if( bChgEnum && aFlags.bSetNumRule )
{
- if( !pCur ) // NumRule anpassen, wenn sie neu ist
+ if( !pCur ) // adjust NumRule if it is new
{
SwCharFmt* pCFmt = pDoc->GetCharFmtFromPool(
RES_POOLCHR_NUM_LEVEL );
@@ -1604,7 +1593,7 @@
aRule.Set( n, aFmt );
}
- // passt alles vollstaendig in den Frame?
+ // Does it fit completely into the frame?
bool bDefStep = nFrmWidth < (nSpaceSteps * MAXLEVEL);
for( ; n < MAXLEVEL; ++n )
{
@@ -1697,7 +1686,7 @@
if( bBreak )
{
- AutoCorrect( nAutoCorrPos ); /* Offset wegen Bullet + Tab */
+ AutoCorrect( nAutoCorrPos ); /* Offset due to Bullet + Tab */
return;
}
@@ -1727,11 +1716,9 @@
void SwAutoFormat::BuildNegIndent( SwTwips nSpaces )
{
SetRedlineTxt( STR_AUTOFMTREDL_SET_TMPL_NEG_INDENT );
- // Test auf Gegenueberstellung:
- // (n Worte, durch Space/Tabs getrennt, mit gleicher
- // Einrueckung in der 2.Zeile)
+ // Test of contraposition (n words, divided by spaces/tabs, with same indentation in 2nd line)
- // lese alle nachfolgenden Absaetze die zu dieser Aufzaehlung gehoeren
+ // read all succeeding paragraphs that belong to this enumeration
bool bBreak = true;
xub_StrLen nSpacePos, nTxtPos = GetBigIndent( nSpacePos );
if( bMoreLines )
@@ -1772,7 +1759,7 @@
aDelPam.GetPoint()->nNode = aNdIdx;
aDelPam.GetPoint()->nContent.Assign( pAktTxtNd, nSpacePos );
- // alten Spaces, usw. loeschen
+ // delete old Spaces, etc.
if( nSpaceStt < nSpacePos )
{
aDelPam.SetMark();
@@ -1846,7 +1833,7 @@
}
- // dann lasse doch mal das AutoCorrect auf den akt. TextNode los
+/// Start autocorrection for the current TextNode
void SwAutoFormat::AutoCorrect( xub_StrLen nPos )
{
SvxAutoCorrect* pATst = SvxAutoCorrCfg::Get().GetAutoCorrect();
@@ -1948,8 +1935,7 @@
case '\'':
if( ( cChar == '\"' && bReplaceQuote ) || ( cChar == '\'' && bReplaceSglQuote ) )
{
- // --------------------------------------
- // beachte: Sonderfall Symbolfonts !!!
+ // consider Symbolfonts!
if( !aFInfo.GetFrm() )
aFInfo.SetFrm( GetFrm( *pAktTxtNd ) );
if( !aFInfo.IsBullet( nPos ))
@@ -1996,8 +1982,7 @@
case '_':
if( aFlags.bChgWeightUnderl )
{
- // --------------------------------------
- // beachte: Sonderfall Symbolfonts !!!
+ // consider Symbolfonts!
if( !aFInfo.GetFrm() )
aFInfo.SetFrm( GetFrm( *pAktTxtNd ) );
if( !aFInfo.IsBullet( nPos ))
@@ -2024,7 +2009,7 @@
//#125102# in case of the mode REDLINE_SHOW_DELETE the ** are still
contained in pTxt
if(0 == (pDoc->GetRedlineMode() &
nsRedlineMode_t::REDLINE_SHOW_DELETE))
nPos = aDelPam.GetPoint()->nContent.GetIndex() - 1;
- // wurde vorm Start ein Zeichen entfernt?
+ // Was a character deleted before starting?
if (cBlank && cBlank != (*pTxt)[nSttPos - 1])
--nSttPos;
}
@@ -2053,7 +2038,7 @@
if( !( rAppCC.isLetterNumeric( *pTxt, nPos )
|| '/' == cChar )) // '/' should not be a word separator (e.g. '1/2'
needs to be handled as one word for replacement)
{
- --nPos; // ++nPos von dem for ungueltig machen !
+ --nPos; // revert ++nPos which was decremented in for loop
++bBreak;
}
break;
@@ -2087,7 +2072,7 @@
aDelPam.DeleteMark();
}
- continue; // nichts weiter mehr abpruefen
+ continue; // do not check further
}
LanguageType eLang = (bGetLanguage && pAktTxtNd)
@@ -2113,13 +2098,13 @@
nPos = aDelPam.GetPoint()->nContent.GetIndex();
else
{
- // Zwei Grossbuchstaben am Wort-Anfang ??
+ // two capital letters at the beginning of a word?
if( aFlags.bCptlSttWrd )
{
SetRedlineTxt( STR_AUTOFMTREDL_CPTL_STT_WORD );
pATst->FnCptlSttWrd( aACorrDoc, *pTxt, nSttPos, nPos, eLang );
}
- // Grossbuchstabe am Satz-Anfang ??
+ // capital letter at the beginning of a sentence?
if( aFlags.bCptlSttSntnc && bFirst )
{
SetRedlineTxt( STR_AUTOFMTREDL_CPTL_STT_SENT );
@@ -2158,7 +2143,7 @@
nRedlAutoFmtSeqId( 0 )
{
OSL_ENSURE( (pSttNd && pEndNd) || (!pSttNd && !pEndNd),
- "Kein Bereich angegeben" );
+ "Got no area" );
if( aFlags.bSetNumRule && !aFlags.bAFmtByInput )
aFlags.bSetNumRule = sal_False;
@@ -2170,26 +2155,26 @@
sal_Bool bNxtAlpha = sal_False;
sal_uInt16 nNxtLevel = 0;
- // setze den Bereich zum Autoformatieren
+ // set area for autoformatting
if( pSttNd )
{
aNdIdx = *pSttNd;
- aNdIdx--; // fuer GoNextPara, ein Absatz davor
+ aNdIdx--; // for GoNextPara, one paragraph prior to that
aEndNdIdx = *pEndNd;
aEndNdIdx++;
- // teste den vorhergehenden TextNode
+ // check the previous TextNode
pNxtNd = aNdIdx.GetNode().GetTxtNode();
bEmptyLine = !pNxtNd ||
IsEmptyLine( *pNxtNd ) ||
IsNoAlphaLine( *pNxtNd );
}
else
- bEmptyLine = true; // am Dokument Anfang
+ bEmptyLine = true; // at document beginning
bEnde = false;
- // setze die Werte fuer die Prozent-Anzeige
+ // set value for percentage display
nEndNdIdx = aEndNdIdx.GetIndex();
if( !aFlags.bAFmtByInput )
@@ -2210,8 +2195,7 @@
// save undo state (might be turned off)
bool const bUndoState = pDoc->GetIDocumentUndoRedo().DoesUndo();
- // wenn mehrere Zeilen, dann erstmal nicht mit
- // dem nachfolgenden Absatz zusammenfassen.
+ // If multiple lines, then do not merge with next paragraph
bMoreLines = false;
nLastCalcHeadLvl = nLastCalcEnumLvl = 0;
@@ -2219,10 +2203,10 @@
sal_uInt16 nLevel = 0;
sal_uInt16 nDigitLvl = 0;
- // defaulten
+ // set defaults
SwTxtFrmInfo aFInfo( 0 );
- // das ist unser Automat fuer die Auto-Formatierung
+ // This is the automat for autoformatting
eStat = READ_NEXT_PARA;
while( !bEnde )
{
@@ -2243,9 +2227,9 @@
bEmptyLine = true;
sal_uLong nOldCnt = pDoc->GetNodes().Count();
DelEmptyLine();
- // wurde wiklich ein Node geloescht ?
+ // Was there really a deletion of a node?
if( nOldCnt != pDoc->GetNodes().Count() )
- aNdIdx--; // nicht den naechsten Absatz ueberspringen
+ aNdIdx--; // do not skip the next paragraph
}
eStat = READ_NEXT_PARA;
}
@@ -2256,11 +2240,10 @@
case TST_ALPHA_LINE:
if( IsNoAlphaLine( *pAktTxtNd ))
{
- // erkenne eine Tabellendefinition +---+---+
+ // recognize a table definition +---+---+
if( aFlags.bAFmtByInput && aFlags.bCreateTable && DoTable() )
{
- //JP 30.09.96: das DoTable() verlaesst sich auf das
- // Pop und Move - Crsr nach dem AutoFormat!
+ //JP 30.09.96: DoTable() builds on PopCrsr and MoveCrsr after AutoFormat!
pEdShell->Pop( sal_False );
*pEdShell->GetCrsr() = aDelPam;
pEdShell->Push();
@@ -2269,9 +2252,8 @@
break;
}
- // dann teste mal auf 3 "---" oder "===". In dem Fall
- // soll der vorherige Absatz unterstrichen und dieser
- // geloescht werden!
+ // Check for 3 "---" or "===". In this case, the previous paragraph should be
+ // underlined and the current be deleted!
if( !DoUnderline() && bReplaceStyles )
{
SetColl( RES_POOLCOLL_STANDARD, true );
@@ -2287,21 +2269,18 @@
{
if( pAktTxtNd->GetNumRule() )
{
- // in Numerierung nichts machen, zum naechsten
+ // do nothing in numbering, go to next
bEmptyLine = false;
eStat = READ_NEXT_PARA;
- // loesche alle Blanks am Anfang/Ende
- // und alle mitten drin
- //JP 29.04.98: erstmal nur alle "mitten drin".
+ // delete all blanks at beginning/end and in between
+ //JP 29.04.98: first only "all in between"
DelMoreLinesBlanks( false );
break;
}
aFInfo.SetFrm( pAktTxtFrm );
- // erstmal: wurden schon mal entsprechende Vorlagen
- // vergeben, so behalte die bei, gehe zum
- // naechsten Node.
+ // so far: if there were templates assigned, keep these and go to next node
sal_uInt16 nPoolId = pAktTxtNd->GetTxtColl()->GetPoolFmtId();
if( IsPoolUserFmt( nPoolId )
? !aFlags.bChgUserColl
@@ -2314,7 +2293,7 @@
break;
}
- // teste auf Harte oder aus Vorlagen gesetzte LRSpaces
+ // check for hard spaces or LRSpaces set by the template
if( IsPoolUserFmt( nPoolId ) ||
RES_POOLCOLL_STANDARD == nPoolId )
{
@@ -2326,8 +2305,7 @@
( 0 != (nSz = pLRSpace->GetTxtFirstLineOfst()) ||
0 != pLRSpace->GetTxtLeft() ) )
{
- // Ausnahme: Numerierun/Aufzaehlung kann mit Einzug
- // existieren!!
+ // exception: numbering/enumation can have an indentation
if( IsEnumericChar( *pAktTxtNd ))
{
nLevel = CalcLevel( *pAktTxtNd, &nDigitLvl );
@@ -2338,19 +2316,17 @@
break;
}
-
- // nie zusammenfassen, so belassen
- // (Opt. vielleicht als Ausnahmen nur Einzug)
+ // never merge (maybe only indent as exception)
bMoreLines = true;
if( bReplaceStyles )
{
- // dann setze doch eine unserer Vorlagen
- if( 0 < nSz ) // positiver 1. Zeileneinzug
+ // then use one of our templates
+ if( 0 < nSz ) // positive 1st line indentation
BuildIndent();
- else if( 0 > nSz ) // negativer 1. Zeileneinzug
+ else if( 0 > nSz ) // negative 1st line indentation
BuildNegIndent( aFInfo.GetLineStart() );
- else if( pLRSpace->GetTxtLeft() ) // ist ein Einzug
+ else if( pLRSpace->GetTxtLeft() ) // is indentation
BuildTextIndent();
}
eStat = READ_NEXT_PARA;
@@ -2395,10 +2371,10 @@
{
bEmptyLine = true;
eStat = READ_NEXT_PARA;
- break; // naechsten Absatz lesen
+ break; // read next paragraph
}
- // Teste auf Ueberschrift
+ // check if headline
if( !bEmptyLine || !IsFirstCharCapital( *pAktTxtNd ) ||
IsBlanksInString( *pAktTxtNd ) )
break;
@@ -2407,7 +2383,7 @@
String sEndClrStr( sClrStr );
xub_StrLen nLen = DelTrailingBlanks( sEndClrStr ).Len();
- // nicht, dann teste auf Ueberschrift
+ // not, then check if headline
if( ':' == sEndClrStr.GetChar( nLen - 1 ) )
{
{
@@ -2425,7 +2401,7 @@
)
{
- // eine Ebene runter ?
+ // one level below?
if( nLevel >= MAXLEVEL )
nLevel = MAXLEVEL-1;
@@ -2436,7 +2412,7 @@
if( nLastHeadLvl+1 < MAXLEVEL )
++nLastHeadLvl;
}
- // eine Ebene hoch ?
+ // one level above?
else if( nLastCalcHeadLvl > nLevel )
{
if( nLastHeadLvl )
@@ -2473,15 +2449,15 @@
break;
case TST_IDENT:
- // Spaces am Anfang, dann teste doch mal auf Einzuege
+ // Spaces at the beginning, check again for indentation
if( bMoreLines && nLevel )
{
SwTwips nSz = aFInfo.GetFirstIndent();
- if( 0 < nSz ) // positiver 1. Zeileneinzug
+ if( 0 < nSz ) // positive 1st line indentation
BuildIndent();
- else if( 0 > nSz ) // negativer 1. Zeileneinzug
+ else if( 0 > nSz ) // negative 1st line indentation
BuildNegIndent( aFInfo.GetLineStart() );
- else // ist ein Einzug
+ else // is indentation
BuildTextIndent();
eStat = READ_NEXT_PARA;
}
@@ -2489,7 +2465,7 @@
!bNxtEmpty && !bNxtAlpha && !nNxtLevel &&
!IsEnumericChar( *pNxtNd ) )
{
- // ist ein Einzug
+ // is an indentation
BuildIndent();
eStat = READ_NEXT_PARA;
}
@@ -2498,16 +2474,16 @@
break;
case TST_NEG_IDENT:
- // keine Spaces am Anfang, dann teste doch mal auf neg. Einzuege
+ // no spaces at the beginning, check again for negative indentation
{
if( bMoreLines && !nLevel )
{
SwTwips nSz = aFInfo.GetFirstIndent();
- if( 0 < nSz ) // positiver 1. Zeileneinzug
+ if( 0 < nSz ) // positive 1st line indentation
BuildIndent();
- else if( 0 > nSz ) // negativer 1. Zeileneinzug
+ else if( 0 > nSz ) // negative 1st line indentation
BuildNegIndent( aFInfo.GetLineStart() );
- else // ist ein kein Einzug
+ else // is _no_ indentation
BuildText();
eStat = READ_NEXT_PARA;
}
@@ -2515,7 +2491,7 @@
!bNxtEmpty && !bNxtAlpha && nNxtLevel &&
!IsEnumericChar( *pNxtNd ) )
{
- // ist ein neg. Einzug
+ // is a negative indentation
BuildNegIndent( aFInfo.GetLineStart() );
eStat = READ_NEXT_PARA;
}
@@ -2529,11 +2505,11 @@
if( bMoreLines )
{
SwTwips nSz = aFInfo.GetFirstIndent();
- if( 0 < nSz ) // positiver 1. Zeileneinzug
+ if( 0 < nSz ) // positive 1st line indentation
BuildIndent();
- else if( 0 > nSz ) // negativer 1. Zeileneinzug
+ else if( 0 > nSz ) // negative 1st line indentation
BuildNegIndent( aFInfo.GetLineStart() );
- else if( nLevel ) // ist ein Einzug
+ else if( nLevel ) // is indentation
BuildTextIndent();
else
BuildText();
@@ -2548,17 +2524,14 @@
case HAS_FMTCOLL:
{
- // erstmal: wurden schon mal entsprechende Vorlagen
- // vergeben, so behalte die bei, gehe zum
- // naechsten Node.
+ // so far: if there were templates assigned, keep these and go to next node
bEmptyLine = false;
eStat = READ_NEXT_PARA;
- // loesche alle Blanks am Anfang/Ende
- // und alle mitten drin
- //JP 29.04.98: erstmal nur alle "mitten drin".
+ // delete all blanks at beginning/end and in between
+ //JP 29.04.98: first only "all in between"
DelMoreLinesBlanks( false );
- // behandel die harte Attributierung
+ // handle hard attributes
if( pAktTxtNd->HasSwAttrSet() )
{
short nSz;
@@ -2570,14 +2543,14 @@
( 0 != (nSz = pLRSpace->GetTxtFirstLineOfst()) ||
0 != pLRSpace->GetTxtLeft() ) )
{
- // dann setze doch eine unserer Vorlagen
- if( 0 < nSz ) // positiver 1. Zeileneinzug
+ // then use one of our templates
+ if( 0 < nSz ) // positive 1st line indentation
BuildIndent();
- else if( 0 > nSz ) // negativer 1. Zeileneinzug
+ else if( 0 > nSz ) // negative 1st line indentation
{
BuildNegIndent( aFInfo.GetLineStart() );
}
- else if( pLRSpace->GetTxtLeft() ) // ist ein Einzug
+ else if( pLRSpace->GetTxtLeft() ) // is indentation
BuildTextIndent();
else
BuildText();
@@ -2599,7 +2572,7 @@
// restore undo (in case it has been changed)
pDoc->GetIDocumentUndoRedo().DoUndo(bUndoState);
- // Prozent-Anzeige wieder abschalten
+ // disable display of percentage again
if( !aFlags.bAFmtByInput )
::EndProgress( pDoc->GetDocShell() );
}
@@ -2612,8 +2585,8 @@
StartAllAction();
StartUndo( UNDO_AUTOFORMAT );
- SvxSwAutoFmtFlags aAFFlags; // erst mal default - Werte
- if( pAFlags ) // oder doch angegeben ??
+ SvxSwAutoFmtFlags aAFFlags; // use default values or add params?
+ if( pAFlags )
{
aAFFlags = *pAFlags;
if( !aAFFlags.bAFmtByInput )
@@ -2621,7 +2594,7 @@
}
SwPaM* pCrsr = GetCrsr();
- // es gibt mehr als einen oder ist eine Selektion offen
+ // There are more than one or a selection is open
if( pCrsr->GetNext() != pCrsr || pCrsr->HasMark() )
{
FOREACHPAM_START(this)
@@ -2663,7 +2636,7 @@
}
else
{
- // dann einen Node zurueckspringen
+ // then go one node backwards
SwNodeIndex aNdIdx( pCrsr->GetMark()->nNode, -1 );
SwTxtNode* pTxtNd = aNdIdx.GetNode().GetTxtNode();
if (pTxtNd && !pTxtNd->GetTxt().isEmpty())
@@ -2676,15 +2649,14 @@
if( bRange )
{
- Push(); // Cursor sichern
+ Push(); // save cursor
- SvxSwAutoFmtFlags aAFFlags = *GetAutoFmtFlags(); // erst mal default - Werte
+ SvxSwAutoFmtFlags aAFFlags = *GetAutoFmtFlags(); // use default values so far
SwAutoFormat aFmt( this, aAFFlags, &pCrsr->GetMark()->nNode,
&pCrsr->GetPoint()->nNode );
- //JP 30.09.96: das DoTable() verlaesst sich auf das PopCrsr
- // und MoveCrsr!
+ //JP 30.09.96: DoTable() builds on PopCrsr and MoveCrsr!
Pop( sal_False );
pCrsr = GetCrsr();
}
@@ -2718,8 +2690,8 @@
pEditFlags->bAFmtByInpDelSpacesBetweenLines =
pFlags->bAFmtByInpDelSpacesBetweenLines;
- //JP 15.12.98: BulletZeichen und Font in die "normalen" kopieren,
- // weil beim Autoformat nur mit diesen gearbeitet wird!
+ //JP 15.12.98: copy BulletChar and Font into "normal" ones
+ // because AutoFormat can only work with the latter!
pEditFlags->cBullet = pFlags->cByInputBullet;
pEditFlags->aBulletFont = pFlags->aByInputBulletFont;
pEditFlags->cByInputBullet = pFlags->cByInputBullet;
diff --git a/sw/source/core/edit/eddel.cxx b/sw/source/core/edit/eddel.cxx
index ca20b2d..62862fc 100644
--- a/sw/source/core/edit/eddel.cxx
+++ b/sw/source/core/edit/eddel.cxx
@@ -33,27 +33,21 @@
#include <comcore.hrc>
#include <list>
-/************************************************************
- * Loeschen
- ************************************************************/
-
void SwEditShell::DeleteSel( SwPaM& rPam, sal_Bool* pUndo )
{
- // nur bei Selektion
+ // only for selections
if( !rPam.HasMark() || *rPam.GetPoint() == *rPam.GetMark())
return;
- // besteht eine Selection in einer Tabelle ?
- // dann nur den Inhalt der selektierten Boxen loeschen
- // jetzt gibt es 2 Faelle die beachtet werden muessen:
- // 1. Point und Mark stehen in einer Box, Selection normal loeschen
- // 2. Point und Mark stehen in unterschiedlichen Boxen, alle
- // selektierten Boxen suchen in den Inhalt loeschen
+ // Is the selection in a table? Then delete only the content of the selected boxes.
+ // Here, there are two cases:
+ // 1. Point and Mark are in one box, delete selection as usual
+ // 2. Point and Mare are in different boxes, search all selected boxes and delete content
if( rPam.GetNode()->FindTableNode() &&
rPam.GetNode()->StartOfSectionNode() !=
rPam.GetNode(sal_False)->StartOfSectionNode() )
{
- // in Tabellen das Undo gruppieren
+ // group the Undo in the table
if( pUndo && !*pUndo )
{
GetDoc()->GetIDocumentUndoRedo().StartUndo( UNDO_START, NULL );
@@ -68,37 +62,37 @@
if( pEndSelPos->nNode.GetIndex() <= rEndNd.GetIndex() )
{
*aDelPam.GetPoint() = *pEndSelPos;
- pEndSelPos = 0; // Pointer als Flag missbrauchen
+ pEndSelPos = 0; // misuse a pointer as a flag
}
else
{
- // dann ans Ende der Section
+ // then go to the end of the selection
aDelPam.GetPoint()->nNode = rEndNd;
aDelPam.Move( fnMoveBackward, fnGoCntnt );
}
- // geschuetze Boxen ueberspringen !
+ // skip protected boxes
if( !pNd->IsCntntNode() ||
!pNd->IsInProtectSect() )
{
- // alles loeschen
+ // delete everything
GetDoc()->DeleteAndJoin( aDelPam );
SaveTblBoxCntnt( aDelPam.GetPoint() );
}
- if( !pEndSelPos ) // am Ende der Selection
+ if( !pEndSelPos ) // at the end of a selection
break;
aDelPam.DeleteMark();
- aDelPam.Move( fnMoveForward, fnGoCntnt ); // naechste Box
+ aDelPam.Move( fnMoveForward, fnGoCntnt ); // next box
} while( pEndSelPos );
}
else
{
- // alles loeschen
+ // delete everything
GetDoc()->DeleteAndJoin( rPam );
SaveTblBoxCntnt( rPam.GetPoint() );
}
- // Selection wird nicht mehr benoetigt.
+ // Selection is not needed anymore
rPam.DeleteMark();
}
@@ -112,7 +106,7 @@
StartAllAction();
sal_Bool bUndo = GetCrsr()->GetNext() != GetCrsr();
- if( bUndo ) // mehr als eine Selection ?
+ if( bUndo ) // more than one selection?
{
SwRewriter aRewriter;
aRewriter.AddRule(UndoArg1, SW_RESSTR(STR_MULTISEL));
@@ -124,7 +118,7 @@
DeleteSel( *PCURCRSR, &bUndo );
FOREACHPAM_END()
- // falls eine Undo-Klammerung, dann hier beenden
+ // If undo container then close here
if( bUndo )
{
GetDoc()->GetIDocumentUndoRedo().EndUndo(UNDO_END, 0);
@@ -223,14 +217,13 @@
GetDoc()->SplitNode( *pPos, false );
}
- // nur bei Selektion (nicht Textnodes haben Selection,
- // aber Point/GetMark sind gleich
+ // Only for a selection (non-text nodes have selection but Point/GetMark are equal)
if( !PCURCRSR->HasMark() || *PCURCRSR->GetPoint() == *PCURCRSR->GetMark() )
continue;
if( bFirstMove )
{
- // Anfangs-Position vom neuen Bereich merken
+ // Store start position of the new area
aSttNdIdx = pPos->nNode.GetIndex()-1;
nSttCntIdx = pPos->nContent.GetIndex();
bFirstMove = false;
@@ -258,27 +251,26 @@
}
else
{
- // falls beim Move der Cursor "gewandert" ist, so setze hier auch
- // seinen GetMark um, damit dieser nie in den Wald zeigt.
+ // If the cursor moved during move process, move also its GetMark
pDestShell->GetCrsr()->SetMark();
pDestShell->GetCrsr()->DeleteMark();
}
#if OSL_DEBUG_LEVEL > 0
-// pruefe ob die Indizies auch in den richtigen Nodes angemeldet sind
+// check if the indices are registered in the correct nodes
{
- SwPaM* pCmp = (SwPaM*)pDestShell->GetCrsr(); // sicher den Pointer auf Cursor
+ SwPaM* pCmp = (SwPaM*)pDestShell->GetCrsr(); // store pointer to cursor
do {
OSL_ENSURE( pCmp->GetPoint()->nContent.GetIdxReg()
- == pCmp->GetCntntNode(), "Point im falschen Node" );
+ == pCmp->GetCntntNode(), "Point in wrong Node" );
OSL_ENSURE( pCmp->GetMark()->nContent.GetIdxReg()
- == pCmp->GetCntntNode(sal_False), "Mark im falschen Node" );
+ == pCmp->GetCntntNode(sal_False), "Mark in wrong Node" );
bool bTst = *pCmp->GetPoint() == *pCmp->GetMark();
(void) bTst;
} while( pDestShell->GetCrsr() != ( pCmp = (SwPaM*)pCmp->GetNext() ) );
}
#endif
- // Undo-Klammerung hier beenden
+ // close Undo container here
pDestShell->GetDoc()->GetIDocumentUndoRedo().EndUndo( UNDO_END, NULL );
pDestShell->EndAllAction();
@@ -287,13 +279,13 @@
return (long)bRet;
}
-
- // Ersetz einen selektierten Bereich in einem TextNode mit dem
- // String. Ist fuers Suchen&Ersetzen gedacht.
- // bRegExpRplc - ersetze Tabs (\\t) und setze den gefundenen String
- // ein ( nicht \& )
- // z.B.: Fnd: "zzz", Repl: "xx\t\\t..&..\&"
- // --> "xx\t<Tab>..zzz..&"
+/** Replace a selected area in a text node with a given string.
+ *
+ * Intended for "search & replace".
+ *
+ * @param bRegExpRplc if <true> replace tabs (\\t) and replace with found string (not \&).
+ * E.g. [Fnd: "zzz", Repl: "xx\t\\t..&..\&"] --> "xx\t<Tab>..zzz..&"
+ */
sal_Bool SwEditShell::Replace( const String& rNewStr, sal_Bool bRegExpRplc )
{
SET_CURR_SHELL( this );
@@ -313,22 +305,21 @@
}
FOREACHPAM_END()
- // Undo-Klammerung hier beenden
+ // close Undo container here
GetDoc()->GetIDocumentUndoRedo().EndUndo(UNDO_EMPTY, NULL);
EndAllAction();
}
return bRet;
}
-
- // Special-Methode fuer JOE's- Wizzards
+/// special method for JOE's wizards
sal_Bool SwEditShell::DelFullPara()
{
sal_Bool bRet = sal_False;
if( !IsTableMode() )
{
SwPaM* pCrsr = GetCrsr();
- // keine Mehrfach-Selection
+ // no multi selection
if( pCrsr->GetNext() == pCrsr && !HasReadonlySel() )
{
SET_CURR_SHELL( this );
diff --git a/sw/source/core/edit/edfcol.cxx b/sw/source/core/edit/edfcol.cxx
index 8008b54..a4b8903 100644
--- a/sw/source/core/edit/edfcol.cxx
+++ b/sw/source/core/edit/edfcol.cxx
@@ -107,12 +107,11 @@
const SfxItemSet* pSet = pCnt->GetpSwAttrSet();
if( pSet )
{
- // JP 05.10.98: falls eines der Attribute Break/PageDesc/NumRule(auto)
- // im ItemSet steht, so entferne die VORM setzen an der Collection.
- // Ansonst wird zu viel gemacht oder falsche gemacht (NumRules!)
+ // JP 05.10.98: Special treatment if one of the attribues Break/PageDesc/NumRule(auto) is
+ // in the ItemSet. Otherwise there will be too much or wrong processing (NumRules!)
// Bug 57568
- // AutoNumRules NICHT in die Vorlagen uebernehmen
+ // Do NOT copy AutoNumRules into the template
const SfxPoolItem* pItem;
const SwNumRule* pRule = 0;
if( SFX_ITEM_SET == pSet->GetItemState( RES_BREAK, sal_False ) ||
diff --git a/sw/source/core/edit/edfld.cxx b/sw/source/core/edit/edfld.cxx
index ede37d0..279d3d1 100644
--- a/sw/source/core/edit/edfld.cxx
+++ b/sw/source/core/edit/edfld.cxx
@@ -36,11 +36,7 @@
#include <switerator.hxx>
#include <fieldhint.hxx>
-/*--------------------------------------------------------------------
- Beschreibung: Feldtypen zu einer ResId zaehlen
- wenn 0 alle zaehlen
- --------------------------------------------------------------------*/
-
+/// count field types with a ResId, if 0 count all
sal_uInt16 SwEditShell::GetFldTypeCount(sal_uInt16 nResId, sal_Bool bUsed ) const
{
const SwFldTypes* pFldTypes = GetDoc()->GetFldTypes();
@@ -62,10 +58,10 @@
}
}
- // Alle Typen mit gleicher ResId
+ // all types with the same ResId
sal_uInt16 nIdx = 0;
for(sal_uInt16 i = 0; i < nSize; ++i)
- { // Gleiche ResId -> Index erhoehen
+ { // same ResId -> increment index
SwFieldType& rFldType = *((*pFldTypes)[i]);
if(rFldType.Which() == nResId)
nIdx++;
@@ -73,10 +69,7 @@
return nIdx;
}
-/*--------------------------------------------------------------------
- Beschreibung: Feldtypen zu einer ResId finden
- wenn 0 alle finden
- --------------------------------------------------------------------*/
+/// get field types with a ResId, if 0 get all
SwFieldType* SwEditShell::GetFldType(sal_uInt16 nFld, sal_uInt16 nResId, sal_Bool bUsed ) const
{
const SwFldTypes* pFldTypes = GetDoc()->GetFldTypes();
@@ -104,7 +97,7 @@
sal_uInt16 nIdx = 0;
for(sal_uInt16 i = 0; i < nSize; ++i)
- { // Gleiche ResId -> Index erhoehen
+ { // same ResId -> increment index
SwFieldType* pFldType = (*pFldTypes)[i];
if(pFldType->Which() == nResId)
{
@@ -119,17 +112,13 @@
return 0;
}
-/*--------------------------------------------------------------------
- Beschreibung: Den ersten Typen mit ResId und Namen finden
- --------------------------------------------------------------------*/
+/// get first type with given ResId and name
SwFieldType* SwEditShell::GetFldType(sal_uInt16 nResId, const String& rName) const
{
return GetDoc()->GetFldType( nResId, rName, false );
}
-/*--------------------------------------------------------------------
- Beschreibung: Feldtypen loeschen
- --------------------------------------------------------------------*/
+/// delete field type
void SwEditShell::RemoveFldType(sal_uInt16 nFld, sal_uInt16 nResId)
{
if( USHRT_MAX == nResId )
@@ -151,9 +140,7 @@
}
}
-/*--------------------------------------------------------------------
- Beschreibung: FieldType ueber Name loeschen
- --------------------------------------------------------------------*/
+/// delete field type based on its name
void SwEditShell::RemoveFldType(sal_uInt16 nResId, const String& rStr)
{
const SwFldTypes* pFldTypes = GetDoc()->GetFldTypes();
@@ -164,7 +151,7 @@
for(sal_uInt16 i = 0; i < nSize; ++i)
{
- // Gleiche ResId -> Index erhoehen
+ // same ResId -> increment index
SwFieldType* pFldType = (*pFldTypes)[i];
if( pFldType->Which() == nResId )
{
@@ -202,14 +189,7 @@
EndUndo( UNDO_DELETE );
}
-/*************************************************************************
-|*
-|* SwEditShell::Insert( SwField )
-|*
-|* Beschreibung an der Cursorposition ein Feld einfuegen
-|* Quelle: vgl. SwEditShell::Insert( String )
-|*
-*************************************************************************/
+/// add a field at the cursor position
void SwEditShell::Insert2(SwField& rFld, const bool bForceExpandHints)
{
SET_CURR_SHELL( this );
@@ -220,24 +200,16 @@
? nsSetAttrMode::SETATTR_FORCEHINTEXPAND
: nsSetAttrMode::SETATTR_DEFAULT;
- FOREACHPAM_START(this) // fuer jeden PaM
+ FOREACHPAM_START(this) // for each PaM
bool bSuccess(GetDoc()->InsertPoolItem(*PCURCRSR, aFld, nInsertFlags));
OSL_ENSURE( bSuccess, "Doc->Insert(Field) failed");
(void) bSuccess;
- FOREACHPAM_END() // fuer jeden PaM
+ FOREACHPAM_END()
EndAllAction();
}
-/*************************************************************************
-|*
-|* SwEditShell::GetCurFld()
-|*
-|* Beschreibung Stehen die PaMs auf Feldern ?
-|* Quelle: edtfrm.cxx:
-|*
-*************************************************************************/
-
+/// Are the PaMs positioned on fields?
inline SwTxtFld *GetDocTxtFld( const SwPosition* pPos )
{
SwTxtNode * const pNode = pPos->nNode.GetNode().GetTxtNode();
@@ -249,8 +221,7 @@
SwField* SwEditShell::GetCurFld() const
{
- // Wenn es keine Selektionen gibt, gilt der Wert der aktuellen
- // Cursor-Position.
+ // If there are no selections so take the value of the current cursor position.
SwPaM* pCrsr = GetCrsr();
SwTxtFld *pTxtFld = GetDocTxtFld( pCrsr->Start() );
@@ -266,7 +237,7 @@
pCrsr->Start()->nContent.GetIndex()) <= 1)
{
pCurFld = (SwField*)pTxtFld->GetFld().GetFld();
- // TabellenFormel ? wandel internen in externen Namen um
+ // Table formula? Convert internal into external name:
if( RES_TABLEFLD == pCurFld->GetTyp()->Which() )
{
const SwTableNode* pTblNd = IsCrsrInTbl();
@@ -281,17 +252,10 @@
}
-/*************************************************************************
-|*
-|* SwEditShell::UpdateFlds()
-|*
-|* Beschreibung Stehen die PaMs auf Feldern ?
-|*
-*************************************************************************/
+/// Are the PaMs positioned on fields?
static SwTxtFld* lcl_FindInputFld( SwDoc* pDoc, SwField& rFld )
{
- // suche das Feld ueber seine Addresse. Muss fuer InputFelder in
- // geschuetzten Feldern erfolgen
+ // Search field via its address. For input fields this needs to be done in protected fields.
SwTxtFld* pTFld = 0;
if( RES_INPUTFLD == rFld.Which() || ( RES_SETEXPFLD == rFld.Which() &&
((SwSetExpField&)rFld).GetInputFlag() ) )
@@ -317,8 +281,7 @@
StartAllAction();
{
- // Wenn es keine Selektionen gibt, gilt der Wert der aktuellen
- // Cursor-Position.
+ // // If there are no selections so take the value of the current cursor position.
SwMsgPoolItem* pMsgHnt = 0;
SwRefMarkFldUpdate aRefMkHt( GetOut() );
sal_uInt16 nFldWhich = rFld.GetTyp()->Which();
@@ -340,36 +303,34 @@
GetDoc()->UpdateFld(pTxtFld, rFld, pMsgHnt, sal_True);
}
- // bOkay (statt return wg. EndAllAction) wird false,
- // 1) wenn nur ein Pam mehr als ein Feld enthaelt oder
- // 2) bei gemischten Feldtypen
+ // bOkay (instead of return because of EndAllAction) becomes false,
+ // 1) if only one PaM has more than one field or
+ // 2) if there are mixed field types
bool bOkay = true;
sal_Bool bTblSelBreak = sal_False;
- SwMsgPoolItem aHint( RES_TXTATR_FIELD ); // Such-Hint
- FOREACHPAM_START(this) // fuer jeden PaM
- if( PCURCRSR->HasMark() && bOkay ) // ... mit Selektion
+ SwMsgPoolItem aHint( RES_TXTATR_FIELD ); // Search-Hint
+ FOREACHPAM_START(this) // for each PaM
+ if( PCURCRSR->HasMark() && bOkay ) // ... with selection
{
- // Kopie des PaM
+ // copy of the PaM
SwPaM aCurPam( *PCURCRSR->GetMark(), *PCURCRSR->GetPoint() );
SwPaM aPam( *PCURCRSR->GetPoint() );
SwPosition *pCurStt = aCurPam.Start(), *pCurEnd =
aCurPam.End();
/*
- * Fuer den Fall, dass zwei aneinanderliegende Felder in einem
- * PaM liegen, hangelt sich aPam portionsweise bis zum Ende.
- * aCurPam wird dabei nach jeder Schleifenrunde verkuerzt.
- * Wenn aCurPam vollstaendig durchsucht wurde, ist Start = End
- * und die Schleife terminiert.
+ * In case that there are two contiguous fields in a PaM, the aPam goes step by
step
+ * to the end. aCurPam is reduced in each loop. If aCurPam was searched completely,
+ * the loop terminates because Start = End.
*/
- // Suche nach SwTxtFld ...
+ // Search for SwTxtFld ...
while( bOkay
&& pCurStt->nContent != pCurEnd->nContent
&& aPam.Find( aHint, sal_False, fnMoveForward, &aCurPam ) )
{
- // wenn nur ein Pam mehr als ein Feld enthaelt ...
+ // if only one PaM has more than one field ...
if( aPam.Start()->nContent != pCurStt->nContent )
bOkay = false;
@@ -378,7 +339,7 @@
pFmtFld = (SwFmtFld*)&pTxtFld->GetFld();
SwField *pCurFld = pFmtFld->GetFld();
- // bei gemischten Feldtypen
+ // if there are mixed field types
if( pCurFld->GetTyp()->Which() !=
rFld.GetTyp()->Which() )
bOkay = false;
@@ -386,24 +347,19 @@
bTblSelBreak = GetDoc()->UpdateFld(pTxtFld, rFld,
pMsgHnt, sal_False);
}
- // Der Suchbereich wird um den gefundenen Bereich
- // verkuerzt.
+ // The search area is reduced by the found area:
pCurStt->nContent++;
}
}
- if( bTblSelBreak ) // wenn Tabellen Selektion und Tabellen-
- break; // Formel aktualisiert wurde -> beenden
+ if( bTblSelBreak ) // If table section and table formula are updated -> finish
+ break;
- FOREACHPAM_END() // fuer jeden PaM
+ FOREACHPAM_END()
}
GetDoc()->SetModified();
EndAllAction();
}
-
-/*--------------------------------------------------
- Liefert den logischen fuer die Datenbank zurueck
- --------------------------------------------------*/
SwDBData SwEditShell::GetDBData() const
{
@@ -432,16 +388,14 @@
GetDoc()->ChangeDBFields( rOldNames, rNewName );
}
-/*--------------------------------------------------------------------
- Beschreibung: Alle Expression-Felder erneuern
- --------------------------------------------------------------------*/
+/// Update all expression fields
void SwEditShell::UpdateExpFlds(sal_Bool bCloseDB)
{
SET_CURR_SHELL( this );
StartAllAction();
GetDoc()->UpdateExpFlds(NULL, true);
if (bCloseDB)
- GetDoc()->GetNewDBMgr()->CloseAll(); // Alle Datenbankverbindungen dichtmachen
+ GetDoc()->GetNewDBMgr()->CloseAll(); // close all database connections
EndAllAction();
}
@@ -450,9 +404,7 @@
return GetDoc()->GetNewDBMgr();
}
-/*--------------------------------------------------------------------
- Beschreibung: Feldtypen einfuegen
- --------------------------------------------------------------------*/
+/// insert field type
SwFieldType* SwEditShell::InsertFldType(const SwFieldType& rFldType)
{
return GetDoc()->InsertFldType(rFldType);
diff --git a/sw/source/core/edit/edglbldc.cxx b/sw/source/core/edit/edglbldc.cxx
index 31045e0..b1be289 100644
--- a/sw/source/core/edit/edglbldc.cxx
+++ b/sw/source/core/edit/edglbldc.cxx
@@ -25,7 +25,7 @@
#include <ndtxt.hxx>
#include <docary.hxx>
#include <swwait.hxx>
-#include <swundo.hxx> // fuer die UndoIds
+#include <swundo.hxx> // for UndoIds
#include <section.hxx>
#include <doctxm.hxx>
#include <edglbldc.hxx>
@@ -58,7 +58,7 @@
if( !getIDocumentSettingAccess()->get(IDocumentSettingAccess::GLOBAL_DOCUMENT) )
return 0;
- // dann alle gelinkten Bereiche auf der obersten Ebene
+ // then all linked areas on the topmost level
SwDoc* pMyDoc = GetDoc();
const SwSectionFmts& rSectFmts = pMyDoc->GetSections();
sal_uInt16 n;
@@ -73,7 +73,7 @@
{
case TOX_HEADER_SECTION: break; // ignore
case TOX_CONTENT_SECTION:
- OSL_ENSURE( pSect->ISA( SwTOXBaseSection ), "keine TOXBaseSection!" );
+ OSL_ENSURE( pSect->ISA( SwTOXBaseSection ), "no TOXBaseSection!" );
pNew = new SwGlblDocContent( (SwTOXBaseSection*)pSect );
break;
@@ -86,14 +86,14 @@
}
}
- // und als letztes die Dummies (sonstiger Text) einfuegen
+ // and finally add the dummies (other text)
SwNode* pNd;
sal_uLong nSttIdx = pMyDoc->GetNodes().GetEndOfExtras().GetIndex() + 2;
for( n = 0; n < rArr.size(); ++n )
{
const SwGlblDocContent& rNew = *rArr[ n ];
- // suche von StartPos bis rNew.DocPos nach einem Content Node.
- // Existiert dieser, so muss ein DummyEintrag eingefuegt werden.
+ // Search from StartPos until rNew.DocPos for a content node.
+ // If one exists then a dummy entry is needed.
for( ; nSttIdx < rNew.GetDocPos(); ++nSttIdx )
if( ( pNd = pMyDoc->GetNodes()[ nSttIdx ])->IsCntntNode()
|| pNd->IsSectionNode() || pNd->IsTableNode() )
@@ -102,16 +102,16 @@
if( !rArr.insert( pNew ).second )
delete pNew;
else
- ++n; // auf die naechste Position
+ ++n; // to the next position
break;
}
- // StartPosition aufs Ende setzen
+ // set StartPosition to the end
nSttIdx = pMyDoc->GetNodes()[ rNew.GetDocPos() ]->EndOfSectionIndex();
++nSttIdx;
}
- // sollte man das Ende auch noch setzen??
+ // Should the end also be set?
if( !rArr.empty() )
{
sal_uLong nNdEnd = pMyDoc->GetNodes().GetEndOfContent().GetIndex();
@@ -259,7 +259,7 @@
sal_uLong nDelIdx = rDelPos.GetDocPos();
if( 1 == rArr.size() )
{
- // ein Node muss aber da bleiben!
+ // we need at least one node!
rPos.nNode = nDelIdx - 1;
rPos.nContent.Assign( 0, 0 );
diff --git a/sw/source/core/edit/edglss.cxx b/sw/source/core/edit/edglss.cxx
index f63912e..d769b9b 100644
--- a/sw/source/core/edit/edglss.cxx
+++ b/sw/source/core/edit/edglss.cxx
@@ -28,16 +28,12 @@
#include <editsh.hxx>
#include <edimp.hxx>
#include <frmfmt.hxx>
-#include <swundo.hxx> // fuer die UndoIds
+#include <swundo.hxx> // for UndoIds
#include <ndtxt.hxx>
-#include <swtable.hxx> // fuers kopieren von Tabellen
+#include <swtable.hxx> // for table copying
#include <shellio.hxx> // SwTextBlocks
#include <acorrect.hxx>
#include <swerror.h> // SwTextBlocks
-
-/******************************************************************************
- * jetzt mit einem verkappten Reader/Writer/Dokument
- ******************************************************************************/
void SwEditShell::InsertGlossary( SwTextBlocks& rGlossary, const String& rStr )
{
@@ -46,13 +42,7 @@
EndAllAction();
}
-
-/******************************************************************************
- * aktuelle Selektion zum Textbaustein machen und ins
- * Textbausteindokument einfuegen, einschliesslich Vorlagen
- ******************************************************************************/
-
-
+/// convert current selection into text block and add to the text block document, incl. templates
sal_uInt16 SwEditShell::MakeGlossary( SwTextBlocks& rBlks, const String& rName, const String&
rShortName,
sal_Bool bSaveRelFile, const String* pOnlyTxt )
{
@@ -124,7 +114,7 @@
pCrsr->GetPoint()->nContent.Assign( pCntntNd, 0 );
pCrsr->SetMark();
- // dann bis zum Ende vom Nodes Array
+ // then until the end of the Node array
pCrsr->GetPoint()->nNode = pMyDoc->GetNodes().GetEndOfContent().GetIndex()-1;
pCntntNd = pCrsr->GetCntntNode();
if( pCntntNd )
@@ -163,14 +153,10 @@
return nRet;
}
-/******************************************************************************
- * kopiere alle Selectionen und das Doc
- ******************************************************************************/
-
-
+/// copy all selections and the doc
sal_Bool SwEditShell::_CopySelToDoc( SwDoc* pInsDoc, SwNodeIndex* pSttNd )
{
- OSL_ENSURE( pInsDoc, "kein Ins.Dokument" );
+ OSL_ENSURE( pInsDoc, "no Ins.Document" );
SwNodes& rNds = pInsDoc->GetNodes();
@@ -178,7 +164,7 @@
SwCntntNode * pNd = aIdx.GetNode().GetCntntNode();
SwPosition aPos( aIdx, SwIndex( pNd, pNd->Len() ));
- // soll der Index auf Anfang returnt werden ?
+ // Should the index be reset to start?
if( pSttNd )
{
*pSttNd = aPos.nNode;
@@ -192,18 +178,17 @@
if( IsTableMode() )
{
- // kopiere Teile aus einer Tabelle: lege eine Tabelle mit der Breite
- // von der Originalen an und kopiere die selectierten Boxen.
- // Die Groessen werden prozentual korrigiert.
+ // Copy parts of a table: create a table with the width of the original one and copy the
+ // selected boxes. The sizes are corrected on a percentage basis.
- // lasse ueber das Layout die Boxen suchen
+ // search boxes using the layout
SwTableNode* pTblNd;
SwSelBoxes aBoxes;
GetTblSel( *this, aBoxes );
if( !aBoxes.empty() && 0 != (pTblNd = (SwTableNode*)aBoxes[0]
->GetSttNd()->FindTableNode() ))
{
- // teste ob der TabellenName kopiert werden kann
+ // check if the table name can be copied
sal_Bool bCpyTblNm = aBoxes.size() == pTblNd->GetTable().GetTabSortBoxes().size();
if( bCpyTblNm )
{
@@ -255,23 +240,20 @@
if( !pInsDoc->IsExpFldsLocked() )
pInsDoc->UpdateExpFlds(NULL, true);
- // die gemerkte Node-Position wieder auf den richtigen Node
+ // set the saved Node position back to the correct Node
if( bRet && pSttNd )
++(*pSttNd);
-
return bRet;
}
-/*------------------------------------------------------------------------
- Beschreibung: Text innerhalb der Selektion erfragen
- Returnwert: liefert sal_False, wenn der selektierte Bereich
- zu gross ist, um in den Stringpuffer kopiert zu werden.
-------------------------------------------------------------------------*/
-
+/** Get text in a Selection
+ *
+ * @return sal_False if the selected area is too big for being copied into the string buffer
+ */
sal_Bool SwEditShell::GetSelectedText( String &rBuf, int nHndlParaBrk )
{
- GetCrsr(); // ggfs. alle Cursor erzeugen lassen
+ GetCrsr(); // creates all cursors if needed
if( IsSelOnePara() )
{
rBuf = GetSelTxt();
@@ -304,7 +286,7 @@
SwReaderWriter::GetWriter( OUString(FILTER_TEXT), String(), xWrt );
if( xWrt.Is() )
{
- // Selektierte Bereiche in ein ASCII Dokument schreiben
+ // write selected areas into a ASCII document
SwWriter aWriter( aStream, *this);
xWrt->SetShowProgress( sal_False );
diff --git a/sw/source/core/edit/editsh.cxx b/sw/source/core/edit/editsh.cxx
index 8185efb..a335ba5 100644
--- a/sw/source/core/edit/editsh.cxx
+++ b/sw/source/core/edit/editsh.cxx
@@ -37,11 +37,11 @@
#include <frame.hxx>
#include <cntfrm.hxx>
#include <pam.hxx>
-#include <ndtxt.hxx> // fuer SwTxtNode
+#include <ndtxt.hxx> // for SwTxtNode
#include <grfatr.hxx>
#include <flyfrm.hxx>
#include <swtable.hxx>
-#include <swundo.hxx> // UNDO_START, UNDO_END
+#include <swundo.hxx> // UNDO_START, UNDO_END
#include <calc.hxx>
#include <edimp.hxx>
#include <ndgrf.hxx>
@@ -200,7 +200,7 @@
GetDoc()->GetIDocumentUndoRedo().StartUndo(UNDO_EMPTY, NULL);
FOREACHPAM_START(this)
- // eine Tabellen Zelle wird jetzt zu einer normalen Textzelle!
+ // Here, a table cell becomes a normal text cell.
GetDoc()->ClearBoxNumAttrs( PCURCRSR->GetPoint()->nNode );
GetDoc()->SplitNode( *PCURCRSR->GetPoint(), bCheckTableStart );
FOREACHPAM_END()
@@ -235,12 +235,7 @@
return bRet;
}
-/******************************************************************************
- * liefert einen Pointer auf einen SwGrfNode; dieser wird von
- * GetGraphic() und GetGraphicSize() verwendet.
- ******************************************************************************/
-
-
+// the returned SwGrfNode pointer is used in GetGraphic() and GetGraphicSize()
SwGrfNode * SwEditShell::_GetGrfNode() const
{
SwGrfNode *pGrfNode = 0;
@@ -251,12 +246,9 @@
return pGrfNode;
}
-/******************************************************************************
- * liefert Pointer auf eine Graphic, wenn CurCrsr->GetPoint() auf
- * einen SwGrfNode zeigt (und GetMark nicht gesetzt ist
- * oder auf die gleiche Graphic zeigt)
- ******************************************************************************/
+// returns a Graphic pointer if CurCrsr->GetPoint() points to a SwGrfNode and
+// GetMark is not set or points to the same Graphic
const Graphic* SwEditShell::GetGraphic( sal_Bool bWait ) const
{
SwGrfNode* pGrfNode = _GetGrfNode();
@@ -311,12 +303,8 @@
return static_cast<sal_uInt16>(pGrfNode ? pGrfNode->GetGrfObj().GetType() : GRAPHIC_NONE);
}
-/******************************************************************************
- * liefert die Groesse der Graphic, wenn CurCrsr->GetPoint() auf
- * einen SwGrfNode zeigt (und GetMark nicht gesetzt ist
- * oder auf die gleiche Graphic zeigt)
- ******************************************************************************/
-
+// returns the size of a graphic in <rSz> if CurCrsr->GetPoint() points to a SwGrfNode and
+// GetMark is not set or points to the same graphic
sal_Bool SwEditShell::GetGrfSize(Size& rSz) const
{
SwNoTxtNode* pNoTxtNd;
@@ -331,11 +319,8 @@
return sal_False;
}
-/******************************************************************************
- * erneutes Einlesen, falls Graphic nicht Ok ist. Die
- * aktuelle wird durch die neue ersetzt.
- ******************************************************************************/
+/// Read again if graphic is not OK and replace old one
void SwEditShell::ReRead( const String& rGrfName, const String& rFltName,
const Graphic* pGraphic, const GraphicObject* pGrfObj )
{
@@ -344,18 +329,12 @@
EndAllAction();
}
-
-/******************************************************************************
- * liefert den Namen und den FilterNamen einer Graphic, wenn der Cursor
- * auf einer Graphic steht
- * Ist ein String-Ptr != 0 dann returne den entsp. Namen
- ******************************************************************************/
-
-
+/// Returns the name and the filter name of a graphic if the pointer is on a graphic.
+/// If a String-pointer is != 0 then return corresponding name.
void SwEditShell::GetGrfNms( String* pGrfName, String* pFltName,
const SwFlyFrmFmt* pFmt ) const
{
- OSL_ENSURE( pGrfName || pFltName, "was wird denn nun erfragt?" );
+ OSL_ENSURE( pGrfName || pFltName, "No parameters" );
if( pFmt )
GetDoc()->GetGrfNms( *pFmt, pGrfName, pFltName );
else
@@ -402,24 +381,22 @@
}
}
-/******************************************************************************
- * liefert Pointer auf ein SvInPlaceObjectRef, wenn CurCrsr->GetPoint() auf
- * einen SwOLENode zeigt (und GetMark nicht gesetzt ist
- * oder auf das gleiche SvInPlaceObjectRef zeigt)
- * besorgt den Pointer vom Doc wenn das Objekt per Namen gesucht werden
- * soll
- ******************************************************************************/
-
+/** Get OLE object at pointer.
+ *
+ * Returns a pointer to a SvInPlaceObjectRef if CurCrsr->GetPoint() points to a SwOLENode and
+ * GetMark is not set or points to the same object reference. Gets this pointer from the Doc
+ * if the object should be searched by name.
+ */
svt::EmbeddedObjectRef& SwEditShell::GetOLEObject() const
{
- OSL_ENSURE( CNT_OLE == GetCntType(), "GetOLEObj: kein OLENode." );
+ OSL_ENSURE( CNT_OLE == GetCntType(), "GetOLEObj: no OLENode." );
OSL_ENSURE( !GetCrsr()->HasMark() ||
(GetCrsr()->HasMark() &&
GetCrsr()->GetPoint()->nNode == GetCrsr()->GetMark()->nNode),
- "GetOLEObj: kein OLENode." );
+ "GetOLEObj: no OLENode." );
SwOLENode *pOLENode = GetCrsr()->GetNode()->GetOLENode();
- OSL_ENSURE( pOLENode, "GetOLEObj: kein OLENode." );
+ OSL_ENSURE( pOLENode, "GetOLEObj: no OLENode." );
SwOLEObj& rOObj = pOLENode->GetOLEObj();
return rOObj.GetObject();
}
@@ -456,18 +433,13 @@
GetDoc()->UpdateCharts( rName );
}
-
-/******************************************************************************
- * Aenderung des Tabellennamens
- ******************************************************************************/
-
+/// change table name
void SwEditShell::SetTableName( SwFrmFmt& rTblFmt, const String &rNewName )
{
GetDoc()->SetTableName( rTblFmt, rNewName );
}
-// erfragen des akt. Wortes
-
+/// request current word
String SwEditShell::GetCurWord()
{
const SwPaM& rPaM = *GetCrsr();
@@ -500,14 +472,13 @@
// OPT: eddocinl.cxx
-
- // returne zum Namen die im Doc gesetzte Referenz
+/// get the reference of a given name in the Doc
const SwFmtRefMark* SwEditShell::GetRefMark( const String& rName ) const
{
return GetDoc()->GetRefMark( rName );
}
- // returne die Namen aller im Doc gesetzten Referenzen
+/// get the names of all references in a Doc
sal_uInt16 SwEditShell::GetRefMarks( std::vector<OUString>* pStrings ) const
{
return GetDoc()->GetRefMarks( pStrings );
@@ -586,9 +557,9 @@
String SwEditShell::Calculate()
{
- String aFormel; // die entgueltige Formel
+ String aFormel; // the final formula
SwPaM *pPaMLast = (SwPaM*)GetCrsr()->GetNext(),
- *pPaM = pPaMLast; // die Pointer auf Cursor
+ *pPaM = pPaMLast; // cursor pointers
SwCalc aCalc( *GetDoc() );
const CharClass& rCC = GetAppCharClass();
@@ -659,8 +630,7 @@
void *SwEditShell::GetIMapInventor() const
{
- //Als eindeutige Identifikation sollte der Node, auf dem der Crsr steht
- //genuegen.
+ // The node on which the cursor points should be sufficient as a unique identifier
return (void*)GetCrsr()->GetNode();
}
@@ -668,7 +638,7 @@
// remove default parameter, because method is always called this default value
Graphic SwEditShell::GetIMapGraphic() const
{
- //Liefert immer eine Graphic, wenn der Crsr in einem Fly steht.
+ // returns always a graphic if the cursor is in a Fly
SET_CURR_SHELL( (ViewShell*)this );
Graphic aRet;
SwPaM* pCrsr = GetCrsr();
@@ -705,7 +675,7 @@
sal_Bool SwEditShell::InsertURL( const SwFmtINetFmt& rFmt, const String& rStr, sal_Bool
bKeepSelection )
{
- // URL und Hinweistext (direkt oder via Selektion) notwendig
+ // URL and hint text (directly or via selection) necessary
if( !rFmt.GetValue().Len() || ( !rStr.Len() && !HasSelection() ) )
return sal_False;
StartAllAction();
@@ -717,7 +687,7 @@
SwPaM* pCrsr = GetCrsr();
if( pCrsr->HasMark() && *pCrsr->GetPoint() != *pCrsr->GetMark() )
{
- // Selection vorhanden, MehrfachSelektion?
+ // Selection existent, multi selection?
bool bDelTxt = true;
if( pCrsr->GetNext() == pCrsr )
{
@@ -726,7 +696,7 @@
if( sTxt == rStr )
bDelTxt = bInsTxt = false;
}
- else if( rFmt.GetValue() == rStr ) // Name und URL gleich?
+ else if( rFmt.GetValue() == rStr ) // Are Name and URL equal?
bDelTxt = bInsTxt = false;
if( bDelTxt )
@@ -790,9 +760,8 @@
return rArr.size();
}
-
- // ist der Cursor in eine INetAttribut, dann wird das komplett
- // geloescht; inclusive des Hinweistextes (wird beim Drag&Drop gebraucht)
+/// If the cursor is in a INetAttribute then it will be deleted completely (incl. hint text, the
+/// latter is needed for drag & drop)
sal_Bool SwEditShell::DelINetAttrWithText()
{
sal_Bool bRet = SelectTxtAttr( RES_TXTATR_INETFMT, sal_False );
@@ -802,7 +771,7 @@
}
-// setzen an den Textzeichenattributen das DontExpand-Flag
+/// Set the DontExpand flag at the text character attributes
bool SwEditShell::DontExpandFmt()
{
bool bRet = false;
@@ -922,7 +891,7 @@
if( !bActPos )
aStart = 0;
else if( rPtIdx > ( nTmpPos = GetDoc()->GetNodes().GetEndOfExtras().GetIndex()) )
- // BodyBereich => Start ist EndOfIcons + 1
+ // BodyArea => Start is EndOfIcons + 1
aStart = nTmpPos + 1;
else
{
@@ -1033,9 +1002,7 @@
getIDocumentSettingAccess()->setLinkUpdateMode( nMode );
}
-
-// Schnittstelle fuer die TextInputDaten - ( fuer die Texteingabe
-// von japanischen/chinesischen Zeichen)
+// Interface for TextInputData - (for text input of japanese/chinese characters)
SwExtTextInput* SwEditShell::CreateExtTextInput(LanguageType eInputLanguage)
{
SwExtTextInput* pRet = GetDoc()->CreateExtTextInput( *GetCrsr() );
@@ -1094,11 +1061,11 @@
if( !rData.IsOnlyCursorChanged() )
pInput->SetInputData( rData );
- // Cursor positionieren:
+ // position cursor
const SwPosition& rStt = *pInput->Start();
xub_StrLen nNewCrsrPos = rStt.nContent.GetIndex() + rData.GetCursorPos();
- // zwar unschoen aber was hilfts
+ // ugly but works
ShowCrsr();
long nDiff = nNewCrsrPos - rPos.nContent.GetIndex();
if( 0 > nDiff )
diff --git a/sw/source/core/edit/edlingu.cxx b/sw/source/core/edit/edlingu.cxx
index 4a77c70..0101486 100644
--- a/sw/source/core/edit/edlingu.cxx
+++ b/sw/source/core/edit/edlingu.cxx
@@ -41,12 +41,12 @@
#include <IDocumentUndoRedo.hxx>
#include <rootfrm.hxx> // SwRootFrm
#include <pam.hxx>
-#include <swundo.hxx> // fuer die UndoIds
+#include <swundo.hxx> // for the UndoIds
#include <ndtxt.hxx> // AdjHyphPos
#include <viewopt.hxx> // HyphStart/End
#include <viscrs.hxx> // SwShellCrsr
-#include <SwGrammarMarkUp.hxx> // SwWrongList
-#include <mdiexp.hxx> // Statusanzeige
+#include <SwGrammarMarkUp.hxx> // SwWrongList
+#include <mdiexp.hxx> // status display
#include <statstr.hrc> // StatLine-String
#include <cntfrm.hxx>
#include <crsskip.hxx>
@@ -95,7 +95,7 @@
inline sal_uInt16& GetCrsrCnt(){ return nCrsrCnt; }
- // Der UI-Bauchladen:
+ // for the UI:
void _Start( SwEditShell *pSh, SwDocPositions eStart,
SwDocPositions eEnd );
void _End(bool bRestoreSelection = true);
@@ -191,8 +191,8 @@
static SwConvIter* pConvIter = 0;
static SwHyphIter* pHyphIter = 0;
-// Wir ersparen uns in Hyphenate ein GetFrm()
-// Achtung: in txtedt.cxx stehen extern-Deklarationen auf diese Pointer!
+// With that we save a GetFrm() in Hyphenate.
+// Caution: There are external declaration to these pointers in txtedt.cxx!
const SwTxtNode *pLinguNode;
SwTxtFrm *pLinguFrm;
@@ -203,7 +203,7 @@
SwLinguIter::SwLinguIter()
: pSh( 0 ), pStart( 0 ), pEnd( 0 ), pCurr( 0 ), pCurrX( 0 )
{
- // @@@ es fehlt: Sicherstellen der Reentrance, OSL_ENSURE( etc.
+ // TODO missing: ensurance of re-entrance, OSL_ENSURE( etc.
}
/*************************************************************************
@@ -215,7 +215,7 @@
void SwLinguIter::_Start( SwEditShell *pShell, SwDocPositions eStart,
SwDocPositions eEnd )
{
- // es fehlt: Sicherstellen der Reentrance, Locking
+ // TODO missing: ensurance of re-entrance, locking
if( pSh )
return;
@@ -225,7 +225,7 @@
SET_CURR_SHELL( pSh );
- OSL_ENSURE( !pEnd, "LinguStart ohne End?");
+ OSL_ENSURE( !pEnd, "SwLinguIter::_Start without End?");
SwPaM *pCrsr = pSh->GetCrsr();
@@ -284,7 +284,7 @@
if( !pSh )
return;
- OSL_ENSURE( pEnd, "SwEditShell::SpellEnd() ohne Start?");
+ OSL_ENSURE( pEnd, "SwLinguIter::_End without end?");
if(bRestoreSelection)
{
while( nCrsrCnt-- )
@@ -320,13 +320,7 @@
aLastPositions.clear();
}
-/*************************************************************************
- * SwSpellIter::Continue
- *************************************************************************/
-
-// SwSpellIter::Continue ist das alte Original von
-// SwEditShell::SpellContinue()
-
+// This method is the origin of SwEditShell::SpellContinue()
uno::Any SwSpellIter::Continue( sal_uInt16* pPageCnt, sal_uInt16* pPageSt )
{
//!!
@@ -338,7 +332,7 @@
if( !pMySh )
return aSpellRet;
- OSL_ENSURE( GetEnd(), "SwEditShell::SpellContinue() ohne Start?");
+ OSL_ENSURE( GetEnd(), "SwSpellIter::Continue without start?");
uno::Reference< uno::XInterface > xSpellRet;
bool bGoOn = true;
@@ -412,7 +406,7 @@
if( !pMySh )
return aConvRet;
- OSL_ENSURE( GetEnd(), "SwConvIter::Continue() ohne Start?");
+ OSL_ENSURE( GetEnd(), "SwConvIter::Continue() without Start?");
OUString aConvText;
bool bGoOn = true;
@@ -481,9 +475,8 @@
if( pMySh )
{
pMySh->StartAction();
- // Ganz fatal: durch das EndAction() werden Formatierungen
- // angeregt, die dazu fuehren koennen, dass im Hyphenator
- // neue Worte eingestellt werden. Deswegen sichern!
+ // Caution! Due to EndAction() formatting is started which can lead to the fact that new
+ // words are added to/set in the Hyphenator. Thus: save!
pMySh->EndAction();
}
}
@@ -509,14 +502,7 @@
_Start( pShell, eStart, eEnd );
}
-/*************************************************************************
- * virtual SwHyphIter::End
- *************************************************************************/
-
-// Selektionen wiederherstellen
-
-
-
+// restore selections
void SwHyphIter::End()
{
if( !GetSh() )
@@ -542,7 +528,7 @@
do {
SwPaM *pCrsr;
do {
- OSL_ENSURE( GetEnd(), "SwEditShell::SpellContinue() ohne Start?" );
+ OSL_ENSURE( GetEnd(), "SwHyphIter::Continue without Start?" );
pCrsr = pMySh->GetCrsr();
if ( !pCrsr->HasMark() )
pCrsr->SetMark();
@@ -556,7 +542,7 @@
{
*pCrsr->GetMark() = *GetEnd();
- // Muss an der aktuellen Cursorpos das Wort getrennt werden ?
+ // Do we need to break the word at the current cursor position?
const Point aCrsrPos( pMySh->GetCharRect().Pos() );
xHyphWord = pMySh->GetDoc()->Hyphenate( pCrsr, aCrsrPos,
pPageCnt, pPageSt );
@@ -585,21 +571,16 @@
return aHyphRet;
}
-/*************************************************************************
- * SwHyphIter::HyphIgnore
- *************************************************************************/
-
-// Beschreibung: Trennstelle ignorieren
-
+/// ignore hyphenation
void SwHyphIter::Ignore()
{
SwEditShell *pMySh = GetSh();
SwPaM *pCrsr = pMySh->GetCrsr();
- // Alten SoftHyphen loeschen
+ // delete old SoftHyphen
DelSoftHyph( *pCrsr );
- // und weiter
+ // and continue
pCrsr->Start()->nContent = pCrsr->End()->nContent;
pCrsr->SetMark();
}
@@ -652,17 +633,12 @@
pSttPos->nContent += nHyphPos;
SwPaM aRg( *pSttPos );
pDoc->InsertString( aRg, OUString(CHAR_SOFTHYPHEN) );
- // Durch das Einfuegen des SoftHyphs ist ein Zeichen hinzugekommen
-//JP 18.07.95: warum, ist doch ein SwIndex, dieser wird doch mitverschoben !!
-// pSttPos->nContent++;
}
- // Die Selektion wird wieder aufgehoben
+ // revoke selection
pCrsr->DeleteMark();
pMySh->EndAction();
pCrsr->SetMark();
}
-
-// --------------------- Methoden der SwEditShell ------------------------
bool SwEditShell::HasLastSentenceGotGrammarChecked() const
{
@@ -775,12 +751,7 @@
}
}
-/*************************************************************************
- * SwEditShell::SpellContinue
- *************************************************************************/
-
-// liefert Rueckgabewerte entsprechend SPL_ in splchk.hxx
-
+/// @returns SPL_ return values as in splchk.hxx
uno::Any SwEditShell::SpellContinue(
sal_uInt16* pPageCnt, sal_uInt16* pPageSt,
SwConversionArgs *pConvArgs )
@@ -802,9 +773,8 @@
OSL_ENSURE( pConvArgs || pSpellIter, "SpellIter missing" );
OSL_ENSURE( !pConvArgs || pConvIter, "ConvIter missing" );
- //JP 18.07.95: verhinder bei Fehlermeldungen die Anzeige der Selektionen
- // KEIN StartAction, da damit auch die Paints abgeschaltet
- // werden !!!!!
+ //JP 18.07.95: prevent displaying selection on error messages. NO StartAction so that all
+ // Paints are also disabled.
++mnStartAction;
OUString aRet;
uno::Reference< uno::XInterface > xRet;
@@ -822,7 +792,7 @@
if( !aRet.isEmpty() || xRet.is() )
{
- // dann die awt::Selection sichtbar machen
+ // then make awt::Selection again visible
StartAction();
EndAction();
}
@@ -832,31 +802,28 @@
* SwEditShell::HyphStart
*************************************************************************/
-/* Interaktive Trennung, BP 10.03.93
+/* Interactive Hyphenation (BP 10.03.93)
*
* 1) HyphStart
- * - Aufheben aller Selektionen
- * - Sichern des aktuellen Cursors
- * - falls keine Selektion vorhanden:
- * - neue Selektion bis zum Dokumentende
+ * - Revoke all Selections
+ * - Save current Cursor
+ * - if no selections existant:
+ * - create new selection reaching until document end
* 2) HyphContinue
- * - nLastHyphLen wird auf den Selektionsstart addiert
- * - iteriert ueber alle selektierten Bereiche
- * - pDoc->Hyphenate() iteriert ueber alle Nodes der Selektion
- * - pTxtNode->Hyphenate() ruft das SwTxtFrm::Hyphenate zur EditShell
- * - SwTxtFrm:Hyphenate() iteriert ueber die Zeilen des Pams
- * - LineIter::Hyphenate() stellt den Hyphenator
- * und den Pam auf das zu trennende Wort ein.
- * - Es gibt nur zwei Returnwerte sal_True, wenn eine Trennstelle anliegt
- * und sal_False, wenn der Pam abgearbeitet wurde.
- * - Bei sal_True wird das selektierte Wort zur Anzeige gebracht und
- * nLastHyphLen gesetzt.
- * - Bei sal_False wird die aktuelle Selektion geloescht und die naechste
- * zur aktuellen gewaehlt. Return HYPH_OK, wenn keine mehr vorhanden.
- * 3) InsertSoftHyph (wird ggf. von der UI gerufen)
- * - Der aktuelle Cursor wird plaziert und das Attribut eingefuegt.
+ * - add nLastHyphLen onto SelectionStart
+ * - iterate over all selected areas
+ * - pDoc->Hyphenate() iterates over all Nodes of a selection
+ * - pTxtNode->Hyphenate() calls SwTxtFrm::Hyphenate of the EditShell
+ * - SwTxtFrm:Hyphenate() iterates over all rows of the Pam
+ * - LineIter::Hyphenate() sets the Hyphenator and the Pam based on
+ * the to be separated word.
+ * - Returns sal_True if there is a hyphenation and sal_False if the Pam is processed.
+ * - If sal_True, show the selected word and set nLastHyphLen.
+ * - If sal_False, delete current selection and select next one. Returns HYPH_OK if no more.
+ * 3) InsertSoftHyph (might be called by UI if needed)
+ * - Place current cursor and add attribute.
* 4) HyphEnd
- * - Wiederherstellen des alten Cursors, EndAction
+ * - Restore old cursor, EndAction
*/
@@ -872,33 +839,18 @@
}
}
-/*************************************************************************
- * SwEditShell::HyphEnd
- *************************************************************************/
-
-// Selektionen wiederherstellen
-
-
-
+/// restore selections
void SwEditShell::HyphEnd()
{
if (pHyphIter->GetSh() == this)
{
- OSL_ENSURE( pHyphIter, "wo ist mein Iterator?" );
+ OSL_ENSURE( pHyphIter, "No Iterator" );
pHyphIter->End();
delete pHyphIter, pHyphIter = 0;
}
}
-/*************************************************************************
- * SwEditShell::HyphContinue
- *************************************************************************/
-
-// Returnwerte: (BP: ich wuerde es genau umdrehen, aber die UI wuenscht es so)
-// HYPH_CONTINUE, wenn eine Trennstelle anliegt
-// HYPH_OK, wenn der selektierte Bereich abgearbeitet wurde.
-
-
+/// @returns HYPH_CONTINUE if hyphenation, HYPH_OK if selected area was processed.
uno::Reference< uno::XInterface >
SwEditShell::HyphContinue( sal_uInt16* pPageCnt, sal_uInt16* pPageSt )
{
@@ -914,14 +866,13 @@
*pPageCnt = nEndPage;
::StartProgress( STR_STATSTR_HYPHEN, 0, nEndPage, GetDoc()->GetDocShell());
}
- else // Hiermit unterdruecken wir ein fuer allemal
- *pPageSt = 1; // das StatLineStartPercent
+ else // here we once and for all suppress StatLineStartPercent
+ *pPageSt = 1;
}
- OSL_ENSURE( pHyphIter, "wo ist mein Iterator?" );
- //JP 18.07.95: verhinder bei Fehlermeldungen die Anzeige der Selektionen
- // KEIN StartAction, da damit auch die Paints abgeschaltet
- // werden !!!!!
+ OSL_ENSURE( pHyphIter, "No Iterator" );
+ //JP 18.07.95: prevent displaying selection on error messages. NO StartAction so that all
+ // Paints are also disabled.
++mnStartAction;
uno::Reference< uno::XInterface > xRet;
pHyphIter->Continue( pPageCnt, pPageSt ) >>= xRet;
@@ -934,33 +885,22 @@
}
-/*************************************************************************
- * SwEditShell::InsertSoftHyph
- *************************************************************************/
-
-// Zum Einfuegen des SoftHyphens, Position ist der Offset
-// innerhalb des getrennten Wortes.
-
-
+/** Insert soft hyphen
+ *
+ * @param nHyphPos Offset in the to be separated word
+ */
void SwEditShell::InsertSoftHyph( const xub_StrLen nHyphPos )
{
OSL_ENSURE( pHyphIter, "wo ist mein Iterator?" );
pHyphIter->InsertSoftHyph( nHyphPos );
}
-
-/*************************************************************************
- * SwEditShell::HyphIgnore
- *************************************************************************/
-
-// Beschreibung: Trennstelle ignorieren
-
+/// ignore hyphenation
void SwEditShell::HyphIgnore()
{
- OSL_ENSURE( pHyphIter, "wo ist mein Iterator?" );
- //JP 18.07.95: verhinder bei Fehlermeldungen die Anzeige der Selektionen
- // KEIN StartAction, da damit auch die Paints abgeschaltet
- // werden !!!!!
+ OSL_ENSURE( pHyphIter, "No Iterator" );
+ //JP 18.07.95: prevent displaying selection on error messages. NO StartAction so that all
+ // Paints are also disabled.
++mnStartAction;
pHyphIter->Ignore();
--mnStartAction;
@@ -968,15 +908,14 @@
pHyphIter->ShowSelection();
}
-/*************************************************************************
- * SwEditShell::GetCorrection()
- * liefert eine Liste von Vorschlaegen fuer falsch geschriebene Worte,
- * ein NULL-Pointer signalisiert, dass das Wort richtig geschrieben ist,
- * eine leere Liste, dass das Wort zwar unbekannt ist, aber keine Alternativen
- * geliefert werden koennen.
- *************************************************************************/
-
-
+/** Get a list of potential corrections for misspelled word.
+ *
+ * If empty, word is unknown but there are no corrections available.
+ * If NULL then the word is not misspelled but correct.
+ *
+ * @brief SwEditShell::GetCorrection
+ * @return list or NULL pointer
+ */
uno::Reference< XSpellAlternatives >
SwEditShell::GetCorrection( const Point* pPt, SwRect& rSelectRect )
{
@@ -1031,7 +970,7 @@
if ( xSpellAlt.is() ) // error found?
{
- //save the start and end positons of the line and the starting point
+ // save the start and end positons of the line and the starting point
Push();
LeftMargin();
xub_StrLen nLineStart = GetCrsr()->GetPoint()->nContent.GetIndex();
@@ -1500,7 +1439,7 @@
if( !pMySh )
return false;
- OSL_ENSURE( GetEnd(), "SwEditShell::SpellSentence() ohne Start?");
+ OSL_ENSURE( GetEnd(), "SwSpellIter::SpellSentence without Start?");
uno::Reference< XSpellAlternatives > xSpellRet;
linguistic2::ProofreadingResult aGrammarResult;
diff --git a/sw/source/core/edit/ednumber.cxx b/sw/source/core/edit/ednumber.cxx
index 3fa8bf9..4566903 100644
--- a/sw/source/core/edit/ednumber.cxx
+++ b/sw/source/core/edit/ednumber.cxx
@@ -112,14 +112,11 @@
return rPam;
}
-
-
-// Numerierung Outline Regelwerk
-
+// Rule book for outline numbering
void SwEditShell::SetOutlineNumRule(const SwNumRule& rRule)
{
- StartAllAction(); // Klammern fuers Updaten !!
+ StartAllAction(); // bracketing for updating!
GetDoc()->SetOutlineNumRule(rRule);
EndAllAction();
}
@@ -130,18 +127,17 @@
return GetDoc()->GetOutlineNumRule();
}
-// setzt, wenn noch keine Numerierung, sonst wird geaendert
-// arbeitet mit alten und neuen Regeln, nur Differenzen aktualisieren
+// Set if there is no numbering yet, else update.
+// Works with old and new rules. Update only differences.
-// Absaetze ohne Numerierung, aber mit Einzuegen
-
+// paragraphs without numbering, with indentations
bool SwEditShell::NoNum()
{
bool bRet = true;
StartAllAction();
SwPaM* pCrsr = GetCrsr();
- if( pCrsr->GetNext() != pCrsr ) // Mehrfachselektion ?
+ if( pCrsr->GetNext() != pCrsr ) // Multiple selection?
{
GetDoc()->GetIDocumentUndoRedo().StartUndo( UNDO_START, NULL );
SwPamRanges aRangeArr( *pCrsr );
@@ -156,7 +152,7 @@
EndAllAction();
return bRet;
}
-// Loeschen, Splitten der Aufzaehlungsliste
+
sal_Bool SwEditShell::SelectionHasNumber() const
{
sal_Bool bResult = HasNumber();
@@ -281,12 +277,13 @@
}
// <- #i29560#
+/// delete, split list
void SwEditShell::DelNumRules()
{
StartAllAction();
SwPaM* pCrsr = GetCrsr();
- if( pCrsr->GetNext() != pCrsr ) // Mehrfachselektion ?
+ if( pCrsr->GetNext() != pCrsr ) // multi-selection?
{
GetDoc()->GetIDocumentUndoRedo().StartUndo( UNDO_START, NULL );
SwPamRanges aRangeArr( *pCrsr );
@@ -300,28 +297,24 @@
else
GetDoc()->DelNumRules( *pCrsr );
- // rufe das AttrChangeNotify auf der UI-Seite. Sollte eigentlich
- // ueberfluessig sein, aber VB hatte darueber eine Bugrep.
+ // Call AttrChangeNotify on the UI-side. Should actually be redundant but there was a bug once.
CallChgLnk();
- // cursor can not be anymore in front of a label,
- // because numbering/bullet is deleted.
+ // Cursor cannot be in front of a label anymore, because numbering/bullet is deleted.
SetInFrontOfLabel( false );
GetDoc()->SetModified();
EndAllAction();
}
-// Hoch-/Runterstufen
-
-
+// up- & downgrading
bool SwEditShell::NumUpDown( bool bDown )
{
StartAllAction();
bool bRet = true;
SwPaM* pCrsr = GetCrsr();
- if( pCrsr->GetNext() == pCrsr ) // keine Mehrfachselektion ?
+ if( pCrsr->GetNext() == pCrsr ) // no multiple selection ?
bRet = GetDoc()->NumUpDown( *pCrsr, bDown );
else
{
@@ -431,7 +424,7 @@
SwPaM *pCrsr = GetCrsr();
if( !pCrsr->HasMark() )
{
- // sorge dafuer, das Bound1 und Bound2 im gleichen Node stehen
+ // Ensures that Bound1 and Bound2 are in the same Node
pCrsr->SetMark();
pCrsr->DeleteMark();
}
@@ -471,7 +464,7 @@
{
StartAllAction();
- // auf alle Selektionen ??
+ // On all selections?
SwPaM* pCrsr = GetCrsr();
SwPaM aCrsr( *pCrsr->Start() );
aCrsr.SetMark();
@@ -486,11 +479,11 @@
{
if( bUpperLower )
{
- // ueber die naechste Nummerierung
+ // on top of the next numbering
long nOffset = 0;
const SwNode* pNd;
- if( bUpperLeft ) // verschiebe nach oben
+ if( bUpperLeft ) // move up
{
SwPosition aPos( *aCrsr.GetMark() );
if( GetDoc()->GotoPrevNum( aPos, false ) )
@@ -507,7 +500,7 @@
nOffset = nIdx - nStt;
}
}
- else // verschiebe nach unten
+ else // move down
{
const SwNumRule* pOrig = aCrsr.GetNode(sal_False)->GetTxtNode()->GetNumRule();
if( aCrsr.GetNode()->IsTxtNode() &&
@@ -566,7 +559,7 @@
bool bRet = true;
SwPaM* pCrsr = GetCrsr();
- if( pCrsr->GetNext() == pCrsr ) // keine Mehrfachselektion ?
+ if( pCrsr->GetNext() == pCrsr ) // no multi selection?
bRet = GetDoc()->OutlineUpDown( *pCrsr, nOffset );
else
{
@@ -683,7 +676,7 @@
sal_Bool SwEditShell::IsNoNum( sal_Bool bChkStart ) const
{
- // ein Backspace im Absatz ohne Nummer wird zum Delete
+ // a Backspace in the paragraph without number becomes a Delete
sal_Bool bResult = sal_False;
SwPaM* pCrsr = GetCrsr();
@@ -703,7 +696,7 @@
sal_uInt8 SwEditShell::GetNumLevel() const
{
- // gebe die akt. Ebene zurueck, auf der sich der Point vom Cursor befindet
+ // return current level where the point of the cursor is
sal_uInt8 nLevel = MAXLEVEL; //end,zhaojianwei
SwPaM* pCrsr = GetCrsr();
@@ -741,7 +734,7 @@
GetDoc()->GetIDocumentUndoRedo().StartUndo( UNDO_START, NULL );
SwPaM* pCrsr = GetCrsr();
- if( pCrsr->GetNext() != pCrsr ) // Mehrfachselektion ?
+ if( pCrsr->GetNext() != pCrsr ) // multiple selection ?
{
SwPamRanges aRangeArr( *pCrsr );
SwPaM aPam( *pCrsr->GetPoint() );
@@ -790,7 +783,7 @@
{
StartAllAction();
SwPaM* pCrsr = pPaM ? pPaM : GetCrsr();
- if( pCrsr->GetNext() != pCrsr ) // Mehrfachselektion ?
+ if( pCrsr->GetNext() != pCrsr ) // multiple selection ?
{
GetDoc()->GetIDocumentUndoRedo().StartUndo( UNDO_START, NULL );
SwPamRanges aRangeArr( *pCrsr );
@@ -820,7 +813,7 @@
StartAllAction();
SwPaM* pCrsr = pPaM ? pPaM : GetCrsr();
- if( pCrsr->GetNext() != pCrsr ) // Mehrfachselektion ?
+ if( pCrsr->GetNext() != pCrsr ) // multiple selection ?
{
GetDoc()->GetIDocumentUndoRedo().StartUndo( UNDO_START, NULL );
SwPamRanges aRangeArr( *pCrsr );
diff --git a/sw/source/core/edit/edtab.cxx b/sw/source/core/edit/edtab.cxx
index c10e243..97e999e 100644
--- a/sw/source/core/edit/edtab.cxx
+++ b/sw/source/core/edit/edtab.cxx
@@ -155,13 +155,12 @@
StartAllAction();
- // verschiebe den akt. Cursor aus dem Tabellen Bereich
- // angemeldet ist
+ // move current Cursor out of the listing area
SwNodeIndex aTabIdx( *pTblNd );
pCrsr->DeleteMark();
pCrsr->GetPoint()->nNode = *pTblNd->EndOfSectionNode();
pCrsr->GetPoint()->nContent.Assign( 0, 0 );
- // SPoint und Mark aus dem Bereich verschieben !!!
+ // move sPoint and Mark out of the area!
pCrsr->SetMark();
pCrsr->DeleteMark();
@@ -190,7 +189,7 @@
{
bOnlyText = sal_True;
- // pruefe ob in der Selection eine Tabelle liegt
+ // check if selection is in listing
sal_uLong nStt = PCURCRSR->GetMark()->nNode.GetIndex(),
nEnd = PCURCRSR->GetPoint()->nNode.GetIndex();
if( nStt > nEnd ) { sal_uLong n = nStt; nStt = nEnd; nEnd = n; }
@@ -242,9 +241,7 @@
EndAllAction();
}
-/*--------------------------------------------------------------------
- Beschreibung: Tabellenfelder einer Tabelle updaten
- --------------------------------------------------------------------*/
+/** update fields of a listing */
void SwEditShell::UpdateTable()
{
const SwTableNode* pTblNd = IsCrsrInTbl();
@@ -264,7 +261,8 @@
}
}
- // Change Modus erfragen/setzen
+// get/set Change Mode
+
TblChgMode SwEditShell::GetTblChgMode() const
{
TblChgMode eMode;
@@ -280,7 +278,6 @@
{
const SwTableNode* pTblNd = IsCrsrInTbl();
- // Keine Arme keine Kekse
if( pTblNd )
{
((SwTable&)pTblNd->GetTable()).SetTblChgMode( eMode );
@@ -318,7 +315,7 @@
const SwTableBoxFmt* pTblFmt = (SwTableBoxFmt*)pSelBox->GetFrmFmt();
if( !n )
{
- // Formeln in die externe Darstellung bringen!
+ // Convert formulae into external presentation
const SwTable& rTbl = pSelBox->GetSttNd()->FindTableNode()->GetTable();
SwTableFmlUpdate aTblUpdate( (SwTable*)&rTbl );
@@ -354,7 +351,7 @@
} while( false );
}
- // beim setzen einer Formel keine Ueberpruefung mehr vornehmen!
+ // When setting a formula, do not check further!
if( SFX_ITEM_SET == rSet.GetItemState( RES_BOXATR_FORMULA ))
ClearTblBoxCntnt();
@@ -482,13 +479,13 @@
bNew == pChkNd->GetTable().IsNewModel() &&
// Consider table in table case
pChkNd->EndOfSectionIndex() == pTblNd->GetIndex() - 1 )
- *pChkNxtPrv = sal_True, bRet = sal_True; // mit Prev ist moeglich
+ *pChkNxtPrv = sal_True, bRet = sal_True; // using Prev is possible
else
{
pChkNd = rNds[ pTblNd->EndOfSectionIndex() + 1 ]->GetTableNode();
if( pChkNd && !pChkNd->GetTable().ISA( SwDDETable ) &&
bNew == pChkNd->GetTable().IsNewModel() )
- *pChkNxtPrv = sal_False, bRet = sal_True; // mit Next ist moeglich
+ *pChkNxtPrv = sal_False, bRet = sal_True; // using Next is possible
}
}
else
@@ -512,7 +509,7 @@
return bRet;
}
- // setze das InsertDB als Tabelle Undo auf:
+/** create InsertDB as table Undo */
void SwEditShell::AppendUndoForInsertFromDB( sal_Bool bIsTable )
{
GetDoc()->AppendUndoForInsertFromDB( *GetCrsr(), bIsTable );
diff --git a/sw/source/core/edit/edtox.cxx b/sw/source/core/edit/edtox.cxx
index d4f8781..f919129 100644
--- a/sw/source/core/edit/edtox.cxx
+++ b/sw/source/core/edit/edtox.cxx
@@ -54,10 +54,7 @@
using namespace ::com::sun::star::lang;
using namespace ::com::sun::star::util;
-/*--------------------------------------------------------------------
- Beschreibung: Verzeichnismarkierung ins Dokument einfuegen/loeschen
- --------------------------------------------------------------------*/
-
+// Add/delete listing markers to a document
void SwEditShell::Insert(const SwTOXMark& rMark)
{
@@ -94,11 +91,7 @@
EndAllAction();
}
-
-/*--------------------------------------------------------------------
- Beschreibung: Alle Verzeichnismarkierungen am SPoint zusammensuchen
- --------------------------------------------------------------------*/
-
+/// Collect all listing markers
sal_uInt16 SwEditShell::GetCurTOXMarks(SwTOXMarks& rMarks) const
{
return GetDoc()->GetCurTOXMark( *GetCrsr()->Start(), rMarks );
@@ -133,10 +126,7 @@
GetDoc()->SetDefaultTOXBase(rBase);
}
-/*--------------------------------------------------------------------
- Beschreibung: Verzeichnis einfuegen, und Inhalt erzeugen
- --------------------------------------------------------------------*/
-
+/// Insert listing and create content
void SwEditShell::InsertTableOf( const SwTOXBase& rTOX, const SfxItemSet* pSet )
{
SET_CURR_SHELL( this );
@@ -146,36 +136,33 @@
::StartProgress( STR_STATSTR_TOX_INSERT, 0, 0, pDocSh );
::SetProgressText( STR_STATSTR_TOX_INSERT, pDocSh );
- // Einfuegen des Verzeichnisses
+ // Insert listing
const SwTOXBaseSection* pTOX = mpDoc->InsertTableOf(
*GetCrsr()->GetPoint(), rTOX, pSet, true );
- OSL_ENSURE(pTOX, "Kein aktuelles Verzeichnis");
+ OSL_ENSURE(pTOX, "No current TOx");
- // Formatierung anstossen
+ // start formatting
CalcLayout();
- // Seitennummern eintragen
+ // insert page numbering
((SwTOXBaseSection*)pTOX)->UpdatePageNum();
pTOX->SetPosAtStartEnd( *GetCrsr()->GetPoint() );
- // Fix fuer leere Verzeichnisse
+ // Fix for empty listing
InvalidateWindows( maVisArea );
::EndProgress( pDocSh );
EndAllAction();
}
-/*--------------------------------------------------------------------
- Beschreibung: Verzeichnisinhalt erneuern
- --------------------------------------------------------------------*/
-
+/// update tables of content
sal_Bool SwEditShell::UpdateTableOf( const SwTOXBase& rTOX, const SfxItemSet* pSet )
{
sal_Bool bRet = sal_False;
- OSL_ENSURE( rTOX.ISA( SwTOXBaseSection ), "keine TOXBaseSection!" );
+ OSL_ENSURE( rTOX.ISA( SwTOXBaseSection ), "no TOXBaseSection!" );
SwTOXBaseSection* pTOX = (SwTOXBaseSection*)&rTOX;
- OSL_ENSURE(pTOX, "Keine aktuelles Verzeichnis");
+ OSL_ENSURE(pTOX, "no current listing");
const SwSectionNode* pSectNd;
if( pTOX && 0 != ( pSectNd = pTOX->GetFmt()->GetSectionNode() ) )
{
@@ -191,17 +178,17 @@
pMyDoc->GetIDocumentUndoRedo().StartUndo(UNDO_TOXCHANGE, NULL);
- // Verzeichnisrumpf erzeugen
+ // create listing stub
pTOX->Update(pSet);
- // Cursor korrigieren
+ // correct Cursor
if( bInIndex )
pTOX->SetPosAtStartEnd( *GetCrsr()->GetPoint() );
- // Formatierung anstossen
+ // start formatting
CalcLayout();
- // Seitennummern eintragen
+ // insert page numbering
pTOX->UpdatePageNum();
pMyDoc->GetIDocumentUndoRedo().EndUndo(UNDO_TOXCHANGE, NULL);
@@ -212,11 +199,7 @@
return bRet;
}
-/*--------------------------------------------------------------------
- Beschreibung: Aktuelles Verzeichnis vor oder in dem der Cursor
- steht
- --------------------------------------------------------------------*/
-
+/// Get current listing before or at the Cursor
const SwTOXBase* SwEditShell::GetCurTOX() const
{
return GetDoc()->GetCurTOX( *GetCrsr()->GetPoint() );
@@ -227,18 +210,14 @@
return GetDoc()->DeleteTOX( (SwTOXBase&)rTOXBase, bDelNodes );
}
-/*--------------------------------------------------------------------
- Beschreibung: Typen der Verzeichnisse verwalten
- --------------------------------------------------------------------*/
+// manage types of listings
const SwTOXType* SwEditShell::GetTOXType(TOXTypes eTyp, sal_uInt16 nId) const
{
return mpDoc->GetTOXType(eTyp, nId);
}
-/*--------------------------------------------------------------------
- Beschreibung: Schluessel fuer Stichwortverzeichnisse verwalten
- --------------------------------------------------------------------*/
+// manage keys for the alphabetical index
sal_uInt16 SwEditShell::GetTOIKeys( SwTOIKeyType eTyp, std::vector<String>& rArr ) const
{
@@ -271,15 +250,14 @@
pSect->GetFmt()->GetSectionNode() &&
nCnt++ == nPos )
{
- OSL_ENSURE( pSect->ISA( SwTOXBaseSection ), "keine TOXBaseSection!" );
+ OSL_ENSURE( pSect->ISA( SwTOXBaseSection ), "no TOXBaseSection!" );
return (SwTOXBaseSection*)pSect;
}
}
return 0;
}
-
- // nach einlesen einer Datei alle Verzeichnisse updaten
+/** Update of all listings after reading-in a file */
void SwEditShell::SetUpdateTOX( sal_Bool bFlag )
{
GetDoc()->SetUpdateTOX( bFlag );
diff --git a/sw/source/core/edit/edundo.cxx b/sw/source/core/edit/edundo.cxx
index 5baad3c..09537fe 100644
--- a/sw/source/core/edit/edundo.cxx
+++ b/sw/source/core/edit/edundo.cxx
@@ -106,24 +106,21 @@
StartAllAction();
{
- // eigentlich muesste ja nur der aktuelle Cursor berarbeitet
- // werden, d.H. falls ein Ring besteht, diesen temporaer aufheben,
- // damit nicht bei Einfuge-Operationen innerhalb von Undo
- // an allen Bereichen eingefuegt wird.
+ // Actually it should be enough to just work on the current Cursor, i.e. if there is a
cycle
+ // cancel the latter temporarily, so that an insert during Undo is not done in all areas.
KillPams();
- SetMark(); // Bound1 und Bound2 in den gleichen Node
+ SetMark(); // Bound1 and Bound2 in the same Node
ClearMark();
- // JP 02.04.98: Cursor merken - beim Auto-Format/-Korrektur
- // soll dieser wieder an die Position
+ // Keep Cursor - so that we're able to set it at
+ // the same position for autoformat or autocorrection
SwUndoId nLastUndoId(UNDO_EMPTY);
GetDoc()->GetIDocumentUndoRedo().GetLastUndoInfo(0, & nLastUndoId);
bool bRestoreCrsr = 1 == nCount && (UNDO_AUTOFORMAT == nLastUndoId ||
UNDO_AUTOCORRECT == nLastUndoId );
Push();
- //JP 18.09.97: gesicherten TabellenBoxPtr zerstoeren, eine autom.
- // Erkennung darf nur noch fuer die neue "Box" erfolgen!
+ // Destroy stored TableBoxPtr. A dection is only permitted for the new "Box"!
ClearTblBoxCntnt();
RedlineMode_t eOld = GetDoc()->GetRedlineMode();
@@ -149,7 +146,7 @@
GetDoc()->SetRedlineMode( eOld );
GetDoc()->CompressRedlines();
- // autom. Erkennung fuer die neue "Box"
+ // automatic detection of the new "Box"
SaveTblBoxCntnt();
}
EndAllAction();
@@ -169,16 +166,13 @@
StartAllAction();
{
- // eigentlich muesste ja nur der aktuelle Cursor berarbeitet
- // werden, d.H. falls ein Ring besteht, diesen temporaer aufheben,
- // damit nicht bei Einfuge-Operationen innerhalb von Undo
- // an allen Bereichen eingefuegt wird.
+ // Actually it should be enough to just work on the current Cursor, i.e. if there is a
cycle
+ // cancel the latter temporarily, so that an insert during Undo is not done in all areas.
KillPams();
- SetMark(); // Bound1 und Bound2 in den gleichen Node
+ SetMark(); // Bound1 and Bound2 in the same Node
ClearMark();
- //JP 18.09.97: gesicherten TabellenBoxPtr zerstoeren, eine autom.
- // Erkennung darf nur noch fuer die neue "Box" erfolgen!
+ // Destroy stored TableBoxPtr. A dection is only permitted for the new "Box"!
ClearTblBoxCntnt();
RedlineMode_t eOld = GetDoc()->GetRedlineMode();
@@ -198,7 +192,7 @@
GetDoc()->SetRedlineMode( eOld );
GetDoc()->CompressRedlines();
- // autom. Erkennung fuer die neue "Box"
+ // automatic detection of the new "Box"
SaveTblBoxCntnt();
}
diff --git a/sw/source/core/edit/edws.cxx b/sw/source/core/edit/edws.cxx
index 48a7eab..0c646f9 100644
--- a/sw/source/core/edit/edws.cxx
+++ b/sw/source/core/edit/edws.cxx
@@ -31,12 +31,7 @@
#include <swundo.hxx>
#include <SwRewriter.hxx>
-/********************************************************
- * Ctor/Dtor
- ********************************************************/
-// verkleideter Copy-Constructor
-
-
+// masqueraded copy constructor
SwEditShell::SwEditShell( SwEditShell& rEdSH, Window *pWindow )
: SwCrsrShell( rEdSH, pWindow )
{
@@ -145,15 +140,12 @@
EndAllAction();
}
-/******************************************************************************
- * Inhaltsform bestimmen, holen
- ******************************************************************************/
-// OPT: wird fuer jedes Attribut gerufen?
-
-
+/** Get the content type of a shell
+ *
+ * @todo Is this called for every attribute?
+ */
sal_uInt16 SwEditShell::GetCntType() const
{
- // nur noch am SPoint ist der Inhalt interessant
sal_uInt16 nRet = 0;
if( IsTableMode() )
nRet = CNT_TXT;
@@ -192,10 +184,7 @@
return sal_False;
}
-/******************************************************************************
- * Zugriffsfunktionen fuer Filename-Behandlung
- ******************************************************************************/
-
+// access controll functions for file name handling
SwActContext::SwActContext(SwEditShell *pShell)
: pSh(pShell)
@@ -222,16 +211,13 @@
pSh->EndCrsrMove();
}
-
-SwFrmFmt *SwEditShell::GetTableFmt() // OPT: schnellster Test auf Tabelle?
+SwFrmFmt *SwEditShell::GetTableFmt() // fastest test on a table
{
const SwTableNode* pTblNd = IsCrsrInTbl();
return pTblNd ? (SwFrmFmt*)pTblNd->GetTable().GetFrmFmt() : 0;
}
-// OPT: wieso 3x beim neuen Dokument
-
-
+// TODO: Why is this called 3x for a new document?
sal_uInt16 SwEditShell::GetTOXTypeCount(TOXTypes eTyp) const
{
return mpDoc->GetTOXTypeCount(eTyp);
@@ -266,19 +252,23 @@
GetDoc()->GetIDocumentUndoRedo().DelAllUndoObj();
}
-// Zusammenfassen von Kontinuierlichen Insert/Delete/Overwrite von
-// Charaktern. Default ist sdbcx::Group-Undo.
+// Combine continuous calls of Insert/Delete/Overwrite on characters. Default: sdbcx::Group-Undo.
-// setzt Undoklammerung auf, liefert nUndoId der Klammerung
-
-
+/** open undo container
+ *
+ * @return nUndoId ID of the container
+ */
SwUndoId SwEditShell::StartUndo( SwUndoId eUndoId,
const SwRewriter *pRewriter )
{ return GetDoc()->GetIDocumentUndoRedo().StartUndo( eUndoId, pRewriter ); }
-// schliesst Klammerung der nUndoId, nicht vom UI benutzt
-
-
+/** close undo container
+ *
+ * not used by UI
+ *
+ * @param eUndoId ID of the undo container
+ * @param pRewriter ?
+*/
SwUndoId SwEditShell::EndUndo(SwUndoId eUndoId,
const SwRewriter *pRewriter)
{ return GetDoc()->GetIDocumentUndoRedo().EndUndo(eUndoId, pRewriter); }
@@ -294,9 +284,7 @@
SwUndoId SwEditShell::GetRepeatInfo(OUString *const o_pStr) const
{ return GetDoc()->GetIDocumentUndoRedo().GetRepeatInfo(o_pStr); }
-
-
-// AutoKorrektur - JP 27.01.94
+/** Auto correction */
void SwEditShell::AutoCorrect( SvxAutoCorrect& rACorr, sal_Bool bInsert,
sal_Unicode cChar )
{
--
To view, visit https://gerrit.libreoffice.org/4203
To unsubscribe, visit https://gerrit.libreoffice.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I48682db4a27be298b8c0392603879d2e12f24cd7
Gerrit-PatchSet: 1
Gerrit-Project: core
Gerrit-Branch: master
Gerrit-Owner: Philipp Riemer <ruderphilipp@gmail.com>
Context
- [PATCH] fdo#39468: Translate German comments in sw/source/core/edit · Philipp Riemer (via Code Review)
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.