summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorPhilipp Weissenbacher <p.weissenbacher@gmail.com>2011-11-25 00:45:15 +0100
committerThorsten Behrens <tbehrens@suse.com>2011-11-25 13:51:28 +0100
commit5aff8df5308d3db93dfb539fb0710e51309207d2 (patch)
tree0074190cf5b10dc91faffb9a84f7de5695afd507 /sw
parentb0c3f12261538e3b89079e3b87bb8f8f0d39e5a0 (diff)
Translate German comments and translate some english comments spelling errors
Diffstat (limited to 'sw')
-rw-r--r--sw/source/core/doc/docdraw.cxx80
-rw-r--r--sw/source/core/doc/docedt.cxx347
2 files changed, 204 insertions, 223 deletions
diff --git a/sw/source/core/doc/docdraw.cxx b/sw/source/core/doc/docdraw.cxx
index f3b02b4d8ea8..afc66fe77fb1 100644
--- a/sw/source/core/doc/docdraw.cxx
+++ b/sw/source/core/doc/docdraw.cxx
@@ -53,12 +53,12 @@
#include <doc.hxx>
#include <IDocumentUndoRedo.hxx>
#include <docsh.hxx>
-#include <rootfrm.hxx> //Damit der RootDtor gerufen wird.
+#include <rootfrm.hxx> // So that the RootDtor is called.
#include <poolfmt.hxx>
-#include <viewsh.hxx> // fuer MakeDrawView
+#include <viewsh.hxx> // for MakeDrawView
#include <drawdoc.hxx>
#include <UndoDraw.hxx>
-#include <swundo.hxx> // fuer die UndoIds
+#include <swundo.hxx> // for the UndoIds
#include <dcontact.hxx>
#include <dview.hxx>
#include <mvsave.hxx>
@@ -219,7 +219,7 @@ SwDrawContact* SwDoc::GroupSelection( SdrView& rDrawView )
SwDrawContact* pNewContact = 0;
if( bNoGroup )
{
- //Ankerattribut aufheben.
+ // Revoke anchor attribute.
SwDrawContact *pMyContact = (SwDrawContact*)GetUserCall(pObj);
const SwFmtAnchor aAnch( pMyContact->GetFmt()->GetAnchor() );
@@ -234,7 +234,7 @@ SwDrawContact* SwDoc::GroupSelection( SdrView& rDrawView )
static_cast<SwAnchoredDrawObject*>(pMyContact->GetAnchoredObj( pObj ));
bGroupMembersNotPositioned = pAnchoredDrawObj->NotYetPositioned();
}
- //ContactObjekte und Formate vernichten.
+ // Destroy ContactObjects and formats.
for( sal_uInt16 i = 0; i < rMrkList.GetMarkCount(); ++i )
{
pObj = rMrkList.GetMark( i )->GetMarkedSdrObj();
@@ -249,7 +249,7 @@ SwDrawContact* SwDoc::GroupSelection( SdrView& rDrawView )
#endif
pFmt = (SwDrawFrmFmt*)pContact->GetFmt();
- //loescht sich selbst!
+ // Deletes itself!
pContact->Changed(*pObj, SDRUSERCALL_DELETE, pObj->GetLastBoundRect() );
pObj->SetUserCall( 0 );
@@ -458,13 +458,13 @@ sal_Bool SwDoc::DeleteSelection( SwDrawView& rDrawView )
? 0
: new SwUndoDrawDelete( (sal_uInt16)rMrkList.GetMarkCount() );
- //ContactObjekte vernichten, Formate sicherstellen.
+ // Destroy ContactObjects, save formats.
for( i = 0; i < rMrkList.GetMarkCount(); ++i )
{
const SdrMark& rMark = *rMrkList.GetMark( i );
pObj = rMark.GetMarkedSdrObj();
SwDrawContact *pContact = (SwDrawContact*)pObj->GetUserCall();
- if( pContact ) // natuerlich nicht bei gruppierten Objekten
+ if( pContact ) // of course not for grouped objects
{
SwDrawFrmFmt *pFmt = (SwDrawFrmFmt*)pContact->GetFmt();
// before delete of selection is performed, marked
@@ -475,7 +475,7 @@ sal_Bool SwDoc::DeleteSelection( SwDrawView& rDrawView )
{
OSL_FAIL( "<SwDrawVirtObj> is still marked for delete. application will crash!" );
}
- //loescht sich selbst!
+ // Deletes itself!
pContact->Changed(*pObj, SDRUSERCALL_DELETE, pObj->GetLastBoundRect() );
pObj->SetUserCall( 0 );
@@ -518,14 +518,14 @@ _ZSortFly::_ZSortFly( const SwFrmFmt* pFrmFmt, const SwFmtAnchor* pFlyAn,
{
if( pFmt->getIDocumentLayoutAccess()->GetCurrentViewShell() ) //swmod 071107//swmod 071225
{
- // Schauen, ob es ein SdrObject dafuer gibt
+ // See if there is an SdrObject for it
SwFlyFrm* pFly = SwIterator<SwFlyFrm,SwFmt>::FirstElement( *pFrmFmt );
if( pFly )
nOrdNum = pFly->GetVirtDrawObj()->GetOrdNum();
}
else
{
- // Schauen, ob es ein SdrObject dafuer gibt
+ // See if there is an SdrObject for it
SwFlyDrawContact* pContact = SwIterator<SwFlyDrawContact,SwFmt>::FirstElement( *pFrmFmt );
if( pContact )
nOrdNum = pContact->GetMaster()->GetOrdNum();
@@ -533,7 +533,7 @@ _ZSortFly::_ZSortFly( const SwFrmFmt* pFrmFmt, const SwFmtAnchor* pFlyAn,
}
else if( RES_DRAWFRMFMT == pFmt->Which() )
{
- // Schauen, ob es ein SdrObject dafuer gibt
+ // See if there is an SdrObject for it
SwDrawContact* pContact = SwIterator<SwDrawContact,SwFmt>::FirstElement( *pFrmFmt );
if( pContact )
nOrdNum = pContact->GetMaster()->GetOrdNum();
@@ -544,9 +544,9 @@ _ZSortFly::_ZSortFly( const SwFrmFmt* pFrmFmt, const SwFmtAnchor* pFlyAn,
}
/*************************************************************************/
-// Wird auch vom Sw3-Reader gerufen, wenn ein Fehler beim Einlesen
-// des Drawing Layers auftrat. In diesem Fall wird der Layer komplett
-// neu aufgebaut.
+// Is also called by the Sw3 Reader, if there was an error when reading the
+// drawing layer. If it is called by the Sw3 Reader the layer is rebuilt
+// from scratch.
#include <svx/sxenditm.hxx>
@@ -554,14 +554,14 @@ void SwDoc::InitDrawModel()
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLog, "SW", "JP93722", "SwDoc::InitDrawModel" );
- //!!Achtung im sw3-Reader (sw3imp.cxx) gibt es aehnlichen Code, der
- //mitgepfelgt werden muss.
+ // !! Attention: there is similar code in the Sw3 Reader (sw3imp.cxx) that
+ // also has to be maintained!!
if ( pDrawModel )
ReleaseDrawModel();
- //DrawPool und EditEnginePool anlegen, diese gehoeren uns und werden
- //dem Drawing nur mitgegeben. Im ReleaseDrawModel werden die Pools wieder
- //zerstoert.
+ // Setup DrawPool and EditEnginePool. Ownership is ours and only gets passed
+ // to the Drawing.
+ // The pools are destroyed in the ReleaseDrawModel.
// for loading the drawing items. This must be loaded without RefCounts!
SfxItemPool *pSdrPool = new SdrItemPool( &GetAttrPool() );
// change DefaultItems for the SdrEdgeObj distance items to TWIPS.
@@ -589,8 +589,7 @@ void SwDoc::InitDrawModel()
GetAttrPool().SetPoolDefaultItem(SvxFontHeightItem( 240, 100, EE_CHAR_FONTHEIGHT ));
RTL_LOGFILE_CONTEXT_TRACE( aLog, "before create DrawDocument" );
- //Das SdrModel gehoert dem Dokument, wir haben immer zwei Layer und eine
- //Seite.
+ // The document owns the SdrModel. We always have two layers and one page.
pDrawModel = new SwDrawDocument( this );
pDrawModel->EnableUndo( GetIDocumentUndoRedo().DoesUndo() );
@@ -632,9 +631,8 @@ void SwDoc::InitDrawModel()
SetCalcFieldValueHdl(&rOutliner);
SetCalcFieldValueHdl(&pDrawModel->GetHitTestOutliner());
- //JP 16.07.98: Bug 50193 - Linkmanager am Model setzen, damit
- // dort ggfs. verlinkte Grafiken eingefuegt werden koennen
- //JP 28.01.99: der WinWord Import benoetigt ihn auch
+ // Set the LinkManager in the model so that linked graphics can be inserted.
+ // The WinWord import needs it too.
pDrawModel->SetLinkManager( &GetLinkManager() );
pDrawModel->SetAddExtLeading( get(IDocumentSettingAccess::ADD_EXT_LEADING) );
@@ -788,18 +786,18 @@ void SwDoc::ReleaseDrawModel()
{
if ( pDrawModel )
{
- //!!Den code im sw3io fuer Einfuegen Dokument mitpflegen!!
+ // !! Also maintain the code in the sw3io for inserting documents!!
delete pDrawModel; pDrawModel = 0;
SfxItemPool *pSdrPool = GetAttrPool().GetSecondaryPool();
- OSL_ENSURE( pSdrPool, "missing Pool" );
+ OSL_ENSURE( pSdrPool, "missing pool" );
SfxItemPool *pEEgPool = pSdrPool->GetSecondaryPool();
- OSL_ENSURE( !pEEgPool->GetSecondaryPool(), "i don't accept additional pools");
- pSdrPool->Delete(); //Erst die Items vernichten lassen,
- //dann erst die Verkettung loesen
- GetAttrPool().SetSecondaryPool( 0 ); //Der ist ein muss!
- pSdrPool->SetSecondaryPool( 0 ); //Der ist sicherer
+ OSL_ENSURE( !pEEgPool->GetSecondaryPool(), "I don't accept additional pools");
+ pSdrPool->Delete(); // First have the items destroyed,
+ // then destroy the chain!
+ GetAttrPool().SetSecondaryPool( 0 ); // This one's a must!
+ pSdrPool->SetSecondaryPool( 0 ); // That one's safer
SfxItemPool::Free(pSdrPool);
SfxItemPool::Free(pEEgPool);
}
@@ -821,7 +819,7 @@ SdrModel* SwDoc::_MakeDrawModel()
pTmp = (ViewShell*) pTmp->GetNext();
} while ( pTmp != pCurrentView );
- //Broadcast, damit die FormShell mit der DrawView verbunden werden kann
+ // Broadcast, so that the FormShell can be connected to the DrawView
if( GetDocShell() )
{
SfxSimpleHint aHnt( SW_BROADCAST_DRAWVIEWS_CREATED );
@@ -840,7 +838,7 @@ void SwDoc::DrawNotifyUndoHdl()
/*************************************************************************
*
-* Am Outliner Link auf Methode fuer Felddarstellung in Editobjekten setzen
+* In the Outliner, set a link to the method for field display in edit objects.
*
*************************************************************************/
@@ -851,7 +849,7 @@ void SwDoc::SetCalcFieldValueHdl(Outliner* pOutliner)
/*************************************************************************
|*
-|* Felder bzw URLs im Outliner erkennen und Darstellung festlegen
+|* Recognise fields/URLs in the Outliner and set how they are displayed.
|*
\************************************************************************/
@@ -865,7 +863,7 @@ IMPL_LINK(SwDoc, CalcFieldValueHdl, EditFieldInfo*, pInfo)
if (pField && pField->ISA(SvxDateField))
{
/******************************************************************
- * Date-Field
+ * Date field
******************************************************************/
pInfo->SetRepresentation(
((const SvxDateField*) pField)->GetFormatted(
@@ -874,12 +872,12 @@ IMPL_LINK(SwDoc, CalcFieldValueHdl, EditFieldInfo*, pInfo)
else if (pField && pField->ISA(SvxURLField))
{
/******************************************************************
- * URL-Field
+ * URL field
******************************************************************/
switch ( ((const SvxURLField*) pField)->GetFormat() )
{
- case SVXURLFORMAT_APPDEFAULT: //!!! einstellbar an App???
+ case SVXURLFORMAT_APPDEFAULT: //!!! Can be set in App???
case SVXURLFORMAT_REPR:
{
pInfo->SetRepresentation(
@@ -913,14 +911,14 @@ IMPL_LINK(SwDoc, CalcFieldValueHdl, EditFieldInfo*, pInfo)
else if (pField && pField->ISA(SdrMeasureField))
{
/******************************************************************
- * Measure-Field
+ * Measure field
******************************************************************/
pInfo->ClearFldColor();
}
else if ( pField && pField->ISA(SvxExtTimeField))
{
/******************************************************************
- * Time-Field
+ * Time field
******************************************************************/
pInfo->SetRepresentation(
((const SvxExtTimeField*) pField)->GetFormatted(
@@ -928,7 +926,7 @@ IMPL_LINK(SwDoc, CalcFieldValueHdl, EditFieldInfo*, pInfo)
}
else
{
- OSL_FAIL("unbekannter Feldbefehl");
+ OSL_FAIL("unknown field command");
pInfo->SetRepresentation( String( '?' ) );
}
}
diff --git a/sw/source/core/doc/docedt.cxx b/sw/source/core/doc/docedt.cxx
index d6736f5d9465..e0cce20b5fc2 100644
--- a/sw/source/core/doc/docedt.cxx
+++ b/sw/source/core/doc/docedt.cxx
@@ -29,7 +29,7 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
-#include <string.h> // fuer strchr()
+#include <string.h> // for strchr()
#include <hintids.hxx>
#include <vcl/sound.hxx>
@@ -44,26 +44,26 @@
#include <fmtcntnt.hxx>
#include <fmtpdsc.hxx>
#include <txtftn.hxx>
-#include <acorrect.hxx> // Autokorrektur
-#include <IMark.hxx> // fuer SwBookmark
-#include <cntfrm.hxx> // fuers Spell
+#include <acorrect.hxx> // AutoCorrect
+#include <IMark.hxx> // for SwBookmark
+#include <cntfrm.hxx> // for Spell
#include <crsrsh.hxx>
#include <doc.hxx>
#include <UndoManager.hxx>
#include <docsh.hxx>
#include <docary.hxx>
-#include <doctxm.hxx> // beim Move: Verzeichnisse korrigieren
+#include <doctxm.hxx> // when moving: correct directories
#include <ftnidx.hxx>
#include <ftninfo.hxx>
-#include <mdiexp.hxx> // Statusanzeige
-#include <mvsave.hxx> // Strukturen zum Sichern beim Move/Delete
+#include <mdiexp.hxx> // status bar
+#include <mvsave.hxx> // structures to save when moving/deleting
#include <ndtxt.hxx>
#include <pam.hxx>
#include <redline.hxx>
-#include <rootfrm.hxx> // fuers UpdateFtn
-#include <splargs.hxx> // fuer Spell
+#include <rootfrm.hxx> // for UpdateFtn
+#include <splargs.hxx> // for Spell
#include <swtable.hxx>
-#include <swundo.hxx> // fuer die UndoIds
+#include <swundo.hxx> // for the UndoIds
#include <txtfrm.hxx>
#include <hints.hxx>
#include <UndoSplitMove.hxx>
@@ -179,9 +179,9 @@ void lcl_SkipAttr( const SwTxtNode *pNode, SwIndex &rIdx, xub_StrLen &rStart )
{
if( !lcl_MayOverwrite( pNode, rStart ) )
{
- // ueberspringe alle SonderAttribute
+ // skip all special attributes
do {
- // "Beep" bei jedem ausgelassenen
+ // "Beep" for every single one we skip
Sound::Beep(SOUND_ERROR);
rIdx++;
} while( (rStart = rIdx.GetIndex()) < pNode->GetTxt().Len()
@@ -195,7 +195,7 @@ void _RestFlyInRange( _SaveFlyArr & rArr, const SwNodeIndex& rSttIdx,
SwPosition aPos( rSttIdx );
for( sal_uInt16 n = 0; n < rArr.Count(); ++n )
{
- // neuen Anker anlegen
+ // create new anchor
_SaveFly& rSave = rArr[n];
SwFrmFmt* pFmt = rSave.pFrmFmt;
@@ -272,18 +272,18 @@ void _SaveFlyInRange( const SwPaM& rPam, const SwNodeIndex& rInsPos,
if (pAPos &&
((FLY_AT_PARA == pAnchor->GetAnchorId()) ||
(FLY_AT_CHAR == pAnchor->GetAnchorId())) &&
- // nicht verschieben, wenn die InsPos im CntntBereich vom Fly ist
+ // do not move, if the InsPos is in the CntntArea of the Fly
( 0 == ( pCntntIdx = pFmt->GetCntnt().GetCntntIdx() ) ||
!( *pCntntIdx < rInsPos &&
rInsPos < pCntntIdx->GetNode().EndOfSectionIndex() )) )
{
if( !bMoveAllFlys && rEndNdIdx == pAPos->nNode )
{
- // wenn nur teil vom EndNode oder der EndNode und SttNode
- // identisch sind, chaos::Anchor nicht anfassen
+ // Do not touch chaos::Anchor, if only a part of the EndNode
+ // or the whole EndNode is identical with the SttNode
if( rSttNdIdx != pAPos->nNode )
{
- // Anker nur an Anfang/Ende haengen
+ // Only attach an anchor to the beginning or end
SwPosition aPos( rSttNdIdx );
SwFmtAnchor aAnchor( *pAnchor );
aAnchor.SetAnchor( &aPos );
@@ -305,8 +305,8 @@ void _SaveFlyInRange( const SwPaM& rPam, const SwNodeIndex& rInsPos,
}
}
-// loesche und verschiebe alle "Fly's am Absatz", die in der SSelection
-// liegen. Steht am SPoint ein Fly, wird dieser auf den Mark verschoben.
+// Delete and move all Flys at the paragraph, that are within the selection.
+// If there is a Fly at the SPoint, it is moved onto the Mark.
void DelFlyInRange( const SwNodeIndex& rMkNdIdx,
const SwNodeIndex& rPtNdIdx )
{
@@ -326,7 +326,7 @@ void DelFlyInRange( const SwNodeIndex& rMkNdIdx,
? rMkNdIdx < pAPos->nNode && pAPos->nNode <= rPtNdIdx
: rPtNdIdx <= pAPos->nNode && pAPos->nNode < rMkNdIdx ))
{
- // nur den Anker verschieben ??
+ // Only move the Anchor??
if( rPtNdIdx == pAPos->nNode )
{
SwFmtAnchor aAnch( pFmt->GetAnchor() );
@@ -336,15 +336,14 @@ void DelFlyInRange( const SwNodeIndex& rMkNdIdx,
}
else
{
- // wird der Fly geloescht muss auch im seinem Inhalt alle
- // Flys geloescht werden !!
+ // If the Fly is deleted, all Flys in it's content have to be deleted too.
const SwFmtCntnt &rCntnt = pFmt->GetCntnt();
if( rCntnt.GetCntntIdx() )
{
DelFlyInRange( *rCntnt.GetCntntIdx(),
SwNodeIndex( *rCntnt.GetCntntIdx()->
GetNode().EndOfSectionNode() ));
- // Position kann sich verschoben haben !
+ // Position could have been moved!
if( i > rTbl.Count() )
i = rTbl.Count();
else if( pFmt != rTbl[i] )
@@ -380,7 +379,7 @@ bool lcl_SaveFtn( const SwNodeIndex& rSttNd, const SwNodeIndex& rEndNd,
SwTxtFtn* pSrch;
const SwNode* pFtnNd;
- // loesche/sicher erstmal alle, die dahinter stehen
+ // Delete/save all that come after it
while( nPos < rFtnArr.Count() && ( pFtnNd =
&( pSrch = rFtnArr[ nPos ] )->GetTxtNode())->GetIndex()
<= rEndNd.GetIndex() )
@@ -393,11 +392,11 @@ bool lcl_SaveFtn( const SwNodeIndex& rSttNd, const SwNodeIndex& rEndNd,
nFtnSttIdx >= pEndCnt->GetIndex() ))
: ( &rEndNd.GetNode() == pFtnNd ))
{
- ++nPos; // weiter suchen
+ ++nPos; // continue searching
}
else
{
- // dann weg damit
+ // delete it
if( bDelFtn )
{
SwTxtNode& rTxtNd = (SwTxtNode&)pSrch->GetTxtNode();
@@ -427,7 +426,7 @@ bool lcl_SaveFtn( const SwNodeIndex& rSttNd, const SwNodeIndex& rEndNd,
{
if( bDelFtn )
{
- // dann weg damit
+ // delete it
SwTxtNode& rTxtNd = (SwTxtNode&)pSrch->GetTxtNode();
SwIndex aIdx( &rTxtNd, nFtnSttIdx );
rTxtNd.EraseText( aIdx, 1 );
@@ -585,8 +584,8 @@ void lcl_SaveRedlines( const SwNodeRange& rRg, _SaveRedlines& rArr )
{
if( pREnd->nNode > rRg.aStart && pREnd->nNode < rRg.aEnd )
{
- // Kopie erzeugen und Ende vom Original ans Ende des
- // MoveBereiches setzen. Die Kopie wird mit verschoben
+ // Create a copy and set the end of the original to the end of the MoveArea.
+ // The copy is moved too.
SwRedline* pNewRedl = new SwRedline( *pTmp );
SwPosition* pTmpPos = pNewRedl->Start();
pTmpPos->nNode = rRg.aStart;
@@ -615,13 +614,13 @@ void lcl_SaveRedlines( const SwNodeRange& rRg, _SaveRedlines& rArr )
if( pREnd->nNode < rRg.aEnd ||
( pREnd->nNode == rRg.aEnd && !pREnd->nContent.GetIndex()) )
{
- // gesamt verschieben
+ // move everything
_SaveRedline* pSave = new _SaveRedline( pTmp, rRg.aStart );
rArr.C40_INSERT( _SaveRedline, pSave, rArr.Count() );
}
else
{
- // aufsplitten
+ // split
SwRedline* pNewRedl = new SwRedline( *pTmp );
SwPosition* pTmpPos = pNewRedl->End();
pTmpPos->nNode = rRg.aEnd;
@@ -709,22 +708,22 @@ void _SaveRedlEndPosForRestore::_Restore()
}
}
-// Loeschen einer vollstaendigen Section des NodesArray.
-// Der uebergebene Node steht irgendwo in der gewuenschten Section
+// Delete a full Section of the NodeArray.
+// The passed Node is located somewhere in the designated Section.
void SwDoc::DeleteSection( SwNode *pNode )
{
- OSL_ENSURE( pNode, "Kein Node uebergeben." );
+ OSL_ENSURE( pNode, "Didn't pass a Node." );
SwStartNode* pSttNd = pNode->IsStartNode() ? (SwStartNode*)pNode
: pNode->StartOfSectionNode();
SwNodeIndex aSttIdx( *pSttNd ), aEndIdx( *pNode->EndOfSectionNode() );
- // dann loesche mal alle Fly's, text::Bookmarks, ...
+ // delete all Flys, text::Bookmarks, ...
DelFlyInRange( aSttIdx, aEndIdx );
DeleteRedline( *pSttNd, true, USHRT_MAX );
_DelBookmarks(aSttIdx, aEndIdx);
{
- // alle Crsr/StkCrsr/UnoCrsr aus dem Loeschbereich verschieben
+ // move all Crsr/StkCrsr/UnoCrsr out of the to-be-deleted area
SwNodeIndex aMvStt( aSttIdx, 1 );
CorrAbs( aMvStt, aEndIdx, SwPosition( aSttIdx ), sal_True );
}
@@ -739,12 +738,12 @@ void SwDoc::SetModified(SwPaM &rPaM)
}
/*************************************************************************
- * SwDoc::Overwrite()
+ * SwDoc::Overwrite()
************************************************************************/
bool SwDoc::Overwrite( const SwPaM &rRg, const String &rStr )
{
SwPosition& rPt = *(SwPosition*)rRg.GetPoint();
- if( pACEWord ) // Aufnahme in die Autokorrektur
+ if( pACEWord ) // Add to AutoCorrect
{
if( 1 == rStr.Len() )
pACEWord->CheckChar( rPt, rStr.GetChar( 0 ) );
@@ -774,7 +773,7 @@ bool SwDoc::Overwrite( const SwPaM &rRg, const String &rStr )
for( xub_StrLen nCnt = 0; nCnt < rStr.Len(); ++nCnt )
{
- // hinter das Zeichen (zum aufspannen der Attribute !!)
+ // start behind the characters (to fix the attributes!)
nStart = rIdx.GetIndex();
if ( nStart < pNode->GetTxt().Len() )
{
@@ -803,7 +802,7 @@ bool SwDoc::Overwrite( const SwPaM &rRg, const String &rStr )
}
else
{
- // hinter das Zeichen (zum Aufspannen der Attribute !!)
+ // start behind the characters (to fix the attributes!)
if( nStart < pNode->GetTxt().Len() )
rIdx++;
pNode->InsertText( c, rIdx, INS_EMPTYEXPAND );
@@ -848,7 +847,7 @@ bool SwDoc::MoveAndJoin( SwPaM& rPaM, SwPosition& rPos, SwMoveFlags eMvFlags )
SwNodeIndex aIdx( rPaM.Start()->nNode );
sal_Bool bJoinTxt = aIdx.GetNode().IsTxtNode();
sal_Bool bOneNode = rPaM.GetPoint()->nNode == rPaM.GetMark()->nNode;
- aIdx--; // vor den Move Bereich !!
+ aIdx--; // in front of the move area!
bool bRet = MoveRange( rPaM, rPos, eMvFlags );
if( bRet && !bOneNode )
@@ -859,7 +858,7 @@ bool SwDoc::MoveAndJoin( SwPaM& rPaM, SwPosition& rPos, SwMoveFlags eMvFlags )
SwNodeIndex aNxtIdx( aIdx );
if( pTxtNd && pTxtNd->CanJoinNext( &aNxtIdx ) )
{
- { // Block wegen SwIndex in den Node !!
+ { // Add Block to the Node, because of SwIndex
CorrRel( aNxtIdx, SwPosition( aIdx, SwIndex( pTxtNd,
pTxtNd->GetTxt().Len() ) ), 0, sal_True );
}
@@ -869,17 +868,17 @@ bool SwDoc::MoveAndJoin( SwPaM& rPaM, SwPosition& rPos, SwMoveFlags eMvFlags )
return bRet;
}
-// mst: it seems that this is mostly used by SwDoc internals; the only
+// It seems that this is mostly used by SwDoc internals; the only
// way to call this from the outside seems to be the special case in
-// SwDoc::CopyRange (but i have not managed to actually hit that case)
+// SwDoc::CopyRange (but I have not managed to actually hit that case).
bool SwDoc::MoveRange( SwPaM& rPaM, SwPosition& rPos, SwMoveFlags eMvFlags )
{
- // keine Moves-Abfangen
+ // do not intercept moves
const SwPosition *pStt = rPaM.Start(), *pEnd = rPaM.End();
if( !rPaM.HasMark() || *pStt >= *pEnd || (*pStt <= rPos && rPos < *pEnd))
return false;
- // sicher die absatzgebundenen Flys, damit sie verschoben werden koennen.
+ // Save the paragraph-bound Flys, so that they can be moved.
_SaveFlyArr aSaveFlyArr;
_SaveFlyInRange( rPaM, rPos.nNode, aSaveFlyArr, 0 != ( DOC_MOVEALLFLYS & eMvFlags ) );
@@ -906,7 +905,7 @@ bool SwDoc::MoveRange( SwPaM& rPaM, SwPosition& rPos, SwMoveFlags eMvFlags )
int bUpdateFtn = sal_False;
SwFtnIdxs aTmpFntIdx;
- // falls Undo eingeschaltet, erzeuge das UndoMove-Objekt
+ // if Undo is switched on, create the UndoMove object
SwUndoMove * pUndoMove = 0;
if (GetIDocumentUndoRedo().DoesUndo())
{
@@ -924,21 +923,17 @@ bool SwDoc::MoveRange( SwPaM& rPaM, SwPosition& rPos, SwMoveFlags eMvFlags )
sal_Bool bSplit = sal_False;
SwPaM aSavePam( rPos, rPos );
- // stelle den SPoint an den Anfang vom Bereich (Definition)
+ // Move the SPoint to the beginning of the area (according to it's definition)
if( rPaM.GetPoint() == pEnd )
rPaM.Exchange();
- // in der EditShell wird nach dem Move ein JoinNext erzeugt, wenn
- // vor und nach dem Move ein Text-Node steht.
+ // If there is a TextNode before and after the Move, create a JoinNext in the EditShell.
SwTxtNode* pSrcNd = rPaM.GetPoint()->nNode.GetNode().GetTxtNode();
sal_Bool bCorrSavePam = pSrcNd && pStt->nNode != pEnd->nNode;
- // werden ein oder mehr TextNodes bewegt, so wird
- // im SwNodes::Move ein SplitNode erzeugt. Dieser Updated aber nicht
- // den Cursor. Um das zu verhindern, wird hier ein TextNode angelegt,
- // um die Updaterei der Indizies zu erhalten. Nach dem Move wird
- // evt. der Node geloescht.
-
+ // If one ore more TextNodes are moved, create a SplitNode in the SwNodes::Move.
+ // However, this does not update the cursor. So we create a TextNode to keep
+ // updating the indices. After the Move the Node is optionally deleted.
SwTxtNode * pTNd = rPos.nNode.GetNode().GetTxtNode();
if( pTNd && rPaM.GetPoint()->nNode != rPaM.GetMark()->nNode &&
( rPos.nContent.GetIndex() || ( pTNd->Len() && bCorrSavePam )) )
@@ -955,7 +950,7 @@ bool SwDoc::MoveRange( SwPaM& rPaM, SwPosition& rPos, SwMoveFlags eMvFlags )
if( !aBkmkArr.empty() )
_RestoreCntntIdx( this, aBkmkArr, rPos.nNode.GetIndex()-1, 0, sal_True );
- // jetzt noch den Pam berichtigen !!
+ // correct the PaM!
if( rPos.nNode == rPaM.GetMark()->nNode )
{
rPaM.GetMark()->nNode = rPos.nNode.GetIndex()-1;
@@ -963,18 +958,18 @@ bool SwDoc::MoveRange( SwPaM& rPaM, SwPosition& rPos, SwMoveFlags eMvFlags )
}
}
- // setze den Pam um einen "Inhalt" zurueck; dadurch steht er immer
- // ausserhalb des manipulierten Bereiches. Falls kein Inhalt mehr vor-
- // handen, dann auf den StartNode (es ist immer einer vorhanden !!!)
+ // Put back the Pam by one "content"; so that it's always outside of
+ // the manipulated area.
+ // If there's no content anymore, set it to the StartNode (that's
+ // always there).
sal_Bool bNullCntnt = !aSavePam.Move( fnMoveBackward, fnGoCntnt );
if( bNullCntnt )
{
aSavePam.GetPoint()->nNode--;
}
- // kopiere alle Bookmarks, die im Move Bereich stehen in ein
- // Array, das alle Angaben auf die Position als Offset speichert.
- // Die neue Zuordung erfolgt nach dem Moven.
+ // Copy all Bookmarks that are within the Move area into an array,
+ // that saves the positon as an offset.
::std::vector< ::sw::mark::SaveBookmark> aSaveBkmks;
_DelBookmarks(
pStt->nNode,
@@ -983,8 +978,8 @@ bool SwDoc::MoveRange( SwPaM& rPaM, SwPosition& rPos, SwMoveFlags eMvFlags )
&pStt->nContent,
&pEnd->nContent);
- // falls durch die vorherigen Loeschungen (z.B. der Fussnoten) kein
- // Bereich mehr existiert, ist das immernoch ein gueltiger Move!
+ // If there is no area anymore due to the above deletions (e.g. the footnotes
+ // got deleted), it's still a valid Move!
if( *rPaM.GetPoint() != *rPaM.GetMark() )
{
// now do the actual move
@@ -1002,39 +997,39 @@ bool SwDoc::MoveRange( SwPaM& rPaM, SwPosition& rPos, SwMoveFlags eMvFlags )
OSL_ENSURE( *aSavePam.GetMark() == rPos ||
( aSavePam.GetMark()->nNode.GetNode().GetCntntNode() == NULL ),
- "PaM wurde nicht verschoben, am Anfang/Ende keine ContentNodes?" );
+ "PaM was not moved. Aren't there ContentNodes at the beginning/end?" );
*aSavePam.GetMark() = rPos;
- rPaM.SetMark(); // um den neuen Bereich eine Sel. aufspannen
+ rPaM.SetMark(); // create a Sel. around the new area
pTNd = aSavePam.GetNode()->GetTxtNode();
if (GetIDocumentUndoRedo().DoesUndo())
{
- // korrigiere erstmal den Content vom SavePam
+ // correct the SavePam's Content first
if( bNullCntnt )
{
aSavePam.GetPoint()->nContent = 0;
}
- // die Methode SwEditShell::Move() fuegt nach dem Move den Text-Node
- // zusammen, in dem der rPaM steht. Wurde der Inhalt nach hinten
- // geschoben und liegt der SPoint vom SavePam im naechsten Node, so
- // muss beim Speichern vom Undo-Object das beachtet werden !!
+ // The method SwEditShell::Move() merges the TextNode after the Move,
+ // where the rPaM is located.
+ // If the Content was moved to the back and the SavePam's SPoint is
+ // in the next Node, we have to deal with this when saving the Undo object!
SwTxtNode * pPamTxtNd = 0;
- // wird ans SwUndoMove weitergegeben, das dann beim Undo JoinNext
- // aufruft. (falls es hier nicht moeglich ist).
+ // Is passed to SwUndoMove, which happens when subsequently calling Undo JoinNext.
+ // If it's not possible to call Undo JoinNext here.
sal_Bool bJoin = bSplit && pTNd;
bCorrSavePam = bCorrSavePam &&
0 != ( pPamTxtNd = rPaM.GetNode()->GetTxtNode() )
&& pPamTxtNd->CanJoinNext()
&& (*rPaM.GetPoint() <= *aSavePam.GetPoint());
- // muessen am SavePam 2 Nodes zusammengefasst werden ??
+ // Do two Nodes have to be joined at the SavePam?
if( bJoin && pTNd->CanJoinNext() )
{
pTNd->JoinNext();
- // kein temp. sdbcx::Index bei &&
- // es sollten wohl nur die Indexwerte verglichen werden.
+ // No temporary sdbcx::Index when using &&.
+ // We probably only want to compare the indices.
if( bCorrSavePam && rPaM.GetPoint()->nNode.GetIndex()+1 ==
aSavePam.GetPoint()->nNode.GetIndex() )
{
@@ -1047,7 +1042,7 @@ bool SwDoc::MoveRange( SwPaM& rPaM, SwPosition& rPos, SwMoveFlags eMvFlags )
aSavePam.GetPoint()->nNode++;
}
- // zwischen SPoint und GetMark steht jetzt der neu eingefuegte Bereich
+ // The newly inserted area is now inbetween SPoint and GetMark.
pUndoMove->SetDestRange( aSavePam, *rPaM.GetPoint(),
bJoin, bCorrSavePam );
GetIDocumentUndoRedo().AppendUndo( pUndoMove );
@@ -1055,7 +1050,7 @@ bool SwDoc::MoveRange( SwPaM& rPaM, SwPosition& rPos, SwMoveFlags eMvFlags )
else
{
bool bRemove = true;
- // muessen am SavePam 2 Nodes zusammengefasst werden ??
+ // Do two Nodes have to be joined at the SavePam?
if( bSplit && pTNd )
{
if( pTNd->CanJoinNext())
@@ -1077,7 +1072,7 @@ bool SwDoc::MoveRange( SwPaM& rPaM, SwPosition& rPos, SwMoveFlags eMvFlags )
}
}
- // setze jetzt wieder die text::Bookmarks in das Dokument
+ // Insert the text::Bookmarks back into the Document.
*rPaM.GetMark() = *aSavePam.Start();
for(
::std::vector< ::sw::mark::SaveBookmark>::iterator pBkmk = aSaveBkmks.begin();
@@ -1089,7 +1084,7 @@ bool SwDoc::MoveRange( SwPaM& rPaM, SwPosition& rPos, SwMoveFlags eMvFlags )
&rPaM.GetMark()->nContent);
*rPaM.GetPoint() = *aSavePam.End();
- // verschiebe die Flys an die neue Position
+ // Move the Flys to the new position.
_RestFlyInRange( aSaveFlyArr, rPaM.Start()->nNode, &(rPos.nNode) );
// restore redlines (if DOC_MOVEREDLINES is used)
@@ -1116,17 +1111,14 @@ bool SwDoc::MoveRange( SwPaM& rPaM, SwPosition& rPos, SwMoveFlags eMvFlags )
bool SwDoc::MoveNodeRange( SwNodeRange& rRange, SwNodeIndex& rPos,
SwMoveFlags eMvFlags )
{
- // bewegt alle Nodes an die neue Position. Dabei werden die
- // text::Bookmarks mit verschoben !! (zur Zeit ohne Undo)
-
- // falls durchs Move Fussnoten in den Sonderbereich kommen sollten,
- // dann entferne sie jetzt.
- //JP 13.07.95:
- // ansonsten bei allen Fussnoten, die verschoben werden, die Frames
- // loeschen und nach dem Move wieder aufbauen lassen (Fussnoten koennen
- // die Seite wechseln). Zusaetzlich muss natuerlich die Sortierung
- // der FtnIdx-Array wieder korrigiert werden.
-
+ // Moves all Nodes to the new position.
+ // text::Bookmarks is moved too (currently without Undo support)
+
+ // If footnotes are being introduced to the special area, remove them now.
+ //
+ // Or else delete the Frames for all footnotes that are being moved
+ // and have it rebuild after the Move (footnotes can change pages).
+ // Additionally we have to correct the FtnIdx array's sorting.
int bUpdateFtn = sal_False;
SwFtnIdxs aTmpFntIdx;
@@ -1147,8 +1139,8 @@ bool SwDoc::MoveNodeRange( SwNodeRange& rRange, SwNodeIndex& rPos,
{
lcl_SaveRedlines( rRange, aSaveRedl );
- // suche alle Redlines, die an der InsPos aufhoeren. Diese muessen
- // nach dem Move wieder an die "alte" Position verschoben werden
+ // Find all RedLines that end at the InsPos.
+ // These have to be moved back to the "old" position after the Move.
sal_uInt16 nRedlPos = GetRedlinePos( rPos.GetNode(), USHRT_MAX );
if( USHRT_MAX != nRedlPos )
{
@@ -1166,29 +1158,29 @@ bool SwDoc::MoveNodeRange( SwNodeRange& rRange, SwNodeIndex& rPos,
}
}
- // kopiere alle Bookmarks, die im Move Bereich stehen in ein
- // Array, das alle Angaben auf die Position als Offset speichert.
- // Die neue Zuordung erfolgt nach dem Moven.
+ // Copy all Bookmarks that are within the Move area into an array
+ // that stores all references to positions as an offset.
+ // The final mapping happens after the Move.
::std::vector< ::sw::mark::SaveBookmark> aSaveBkmks;
_DelBookmarks(rRange.aStart, rRange.aEnd, &aSaveBkmks);
- // sicher die absatzgebundenen Flys, damit verschoben werden koennen.
+ // Save the paragraph-bound Flys, so that they can be moved.
_SaveFlyArr aSaveFlyArr;
if( GetSpzFrmFmts()->Count() )
_SaveFlyInRange( rRange, aSaveFlyArr );
- // vor die Position setzen, damit er nicht weitergeschoben wird
+ // Set it to before the Position, so that it cannot be moved further.
SwNodeIndex aIdx( rPos, -1 );
SwNodeIndex* pSaveInsPos = 0;
if( pUndo )
pSaveInsPos = new SwNodeIndex( rRange.aStart, -1 );
- // verschiebe die Nodes
+ // move the Nodes
sal_Bool bNoDelFrms = 0 != (DOC_NO_DELFRMS & eMvFlags);
if( GetNodes()._MoveNodes( rRange, GetNodes(), rPos, !bNoDelFrms ) )
{
- aIdx++; // wieder auf alte Position
+ aIdx++; // again back to old position
if( pSaveInsPos )
(*pSaveInsPos)++;
}
@@ -1198,11 +1190,11 @@ bool SwDoc::MoveNodeRange( SwNodeRange& rRange, SwNodeIndex& rPos,
delete pUndo, pUndo = 0;
}
- // verschiebe die Flys an die neue Position
+ // move the Flys to the new position
if( aSaveFlyArr.Count() )
_RestFlyInRange( aSaveFlyArr, aIdx, NULL );
- // setze jetzt wieder die text::Bookmarks in das Dokument
+ // Add the text::Bookmarks back to the Document
for(
::std::vector< ::sw::mark::SaveBookmark>::iterator pBkmk = aSaveBkmks.begin();
pBkmk != aSaveBkmks.end();
@@ -1332,22 +1324,20 @@ void lcl_JoinText( SwPaM& rPam, sal_Bool bJoinPrev )
SwDoc* pDoc = rPam.GetDoc();
if( bJoinPrev )
{
- // N.B.: we do not need to handle xmlids in this case, because
+ // We do not need to handle xmlids in this case, because
// it is only invoked if one paragraph is completely empty
// (see lcl_GetJoinFlags)
{
- // falls PageBreaks geloescht / gesetzt werden, darf das
- // nicht in die Undo-History aufgenommen werden !!
- // (das loeschen vom Node geht auch am Undo vorbei !!!)
+ // If PageBreaks are deleted/set, it must not be added to the Undo history!
+ // Also, deleteing the Node is not added to the Undo histroy!
::sw::UndoGuard const undoGuard(pDoc->GetIDocumentUndoRedo());
/* PageBreaks, PageDesc, ColumnBreaks */
- // Sollte an der Logik zum Kopieren der PageBreak's ...
- // etwas geaendert werden, muss es auch im SwUndoDelete
- // geandert werden. Dort wird sich das AUTO-PageBreak
- // aus dem GetMarkNode kopiert.!!!
+ // If we need to change something about the logic to copy the PageBreaks,
+ // PageDesc, etc. we also have to change SwUndoDelete.
+ // There, we copy the AUTO PageBreak from the GetMarkNode!
- /* Der GetMarkNode */
+ /* The GetMarkNode */
if( ( pTxtNd = aIdx.GetNode().GetTxtNode())->HasSwAttrSet() )
{
const SfxPoolItem* pItem;
@@ -1360,7 +1350,7 @@ void lcl_JoinText( SwPaM& rPam, sal_Bool bJoinPrev )
pTxtNd->ResetAttr( RES_PAGEDESC );
}
- /* Der PointNode */
+ /* The PointNode */
if( pOldTxtNd->HasSwAttrSet() )
{
const SfxPoolItem* pItem;
@@ -1387,18 +1377,18 @@ void lcl_JoinText( SwPaM& rPam, sal_Bool bJoinPrev )
SwPosition aAlphaPos( aIdx, aAlphaIdx );
pDoc->CorrRel( rPam.GetPoint()->nNode, aAlphaPos, 0, sal_True );
- // verschiebe noch alle Bookmarks/TOXMarks
+ // move all Bookmarks/TOXMarks
if( !aBkmkArr.empty() )
::_RestoreCntntIdx( pDoc, aBkmkArr, aIdx.GetIndex() );
- // falls der uebergebene PaM nicht im Crsr-Ring steht,
- // gesondert behandeln (z.B. Aufruf aus dem Auto-Format)
+ // If the passed PaM is not in the Crsr ring,
+ // treat it seperately (e.g. when it's being called from AutoFormat)
if( pOldTxtNd == rPam.GetBound( sal_True ).nContent.GetIdxReg() )
rPam.GetBound( sal_True ) = aAlphaPos;
if( pOldTxtNd == rPam.GetBound( sal_False ).nContent.GetIdxReg() )
rPam.GetBound( sal_False ) = aAlphaPos;
}
- // jetzt nur noch den Node loeschen
+ // delete the Node, at last!
pDoc->GetNodes().Delete( aOldIdx, 1 );
}
else
@@ -1426,7 +1416,7 @@ void lcl_JoinText( SwPaM& rPam, sal_Bool bJoinPrev )
if( pDelNd->HasSwAttrSet() )
{
- // nur die Zeichenattribute kopieren
+ // only copy the character attributes
SfxItemSet aTmpSet( pDoc->GetAttrPool(), aCharFmtSetRange );
aTmpSet.Put( *pDelNd->GetpSwAttrSet() );
pTxtNd->SetAttr( aTmpSet );
@@ -1488,7 +1478,7 @@ bool lcl_DoWithBreaks(SwDoc & rDoc, SwPaM & rPam,
return (rDoc.*pFunc)(rPam, bForceJoinNext);
}
- // N.B.: deletion must be split into several parts if the text node
+ // Deletion must be split into several parts if the text node
// contains a text attribute with end and with dummy character
// and the selection does not contain the text attribute completely,
// but overlaps its start (left), where the dummy character is.
@@ -1533,7 +1523,7 @@ bool SwDoc::DeleteAndJoinWithRedlineImpl( SwPaM & rPam, const bool )
if (GetIDocumentUndoRedo().DoesUndo())
{
- //JP 06.01.98: MUSS noch optimiert werden!!!
+ // Still needs to be optimised!
SetRedlineMode(
(RedlineMode_t)(nsRedlineMode_t::REDLINE_ON | nsRedlineMode_t::REDLINE_SHOW_INSERT | nsRedlineMode_t::REDLINE_SHOW_DELETE ));
@@ -1571,7 +1561,7 @@ bool SwDoc::DeleteAndJoinWithRedlineImpl( SwPaM & rPam, const bool )
}
}
}
-//JP 06.01.98: MUSS noch optimiert werden!!!
+// Still needs to be optimised!
SetRedlineMode( eOld );
}
return true;
@@ -1605,9 +1595,8 @@ bool SwDoc::DeleteAndJoinImpl( SwPaM & rPam,
bool SwDoc::DeleteRangeImpl(SwPaM & rPam, const bool)
{
- // move all cursors out of the deleted range.
- // but first copy the given PaM, because it could be a cursor that
- // would be moved!
+ // Move all cursors out of the deleted range, but first copy the
+ // passed PaM, because it could be a cursor that would be moved!
SwPaM aDelPam( *rPam.GetMark(), *rPam.GetPoint() );
::PaMCorrAbs( aDelPam, *aDelPam.GetPoint() );
@@ -1629,7 +1618,7 @@ bool SwDoc::DeleteRangeImplImpl(SwPaM & rPam)
if( pACEWord )
{
- // ggfs. das gesicherte Word fuer die Ausnahme
+ // if necessary the saved Word for the exception
if( pACEWord->IsDeleted() || pStt->nNode != pEnd->nNode ||
pStt->nContent.GetIndex() + 1 != pEnd->nContent.GetIndex() ||
!pACEWord->CheckDelChar( *pStt ))
@@ -1637,7 +1626,7 @@ bool SwDoc::DeleteRangeImplImpl(SwPaM & rPam)
}
{
- // loesche alle leeren TextHints an der Mark-Position
+ // Delete all empty TextHints at the Mark's position
SwTxtNode* pTxtNd = rPam.GetMark()->nNode.GetNode().GetTxtNode();
SwpHints* pHts;
if( pTxtNd && 0 != ( pHts = pTxtNd->GetpSwpHints()) && pHts->Count() )
@@ -1659,9 +1648,9 @@ bool SwDoc::DeleteRangeImplImpl(SwPaM & rPam)
}
{
- // Bug 26675: DataChanged vorm loeschen verschicken, dann bekommt
- // man noch mit, welche Objecte sich im Bereich befinden.
- // Danach koennen sie vor/hinter der Position befinden.
+ // Send DataChanged before deletion, so that we still know
+ // which objects are in the area.
+ // Afterwards they could be before/after the Position.
SwDataChanged aTmp( rPam, 0 );
}
@@ -1694,8 +1683,7 @@ bool SwDoc::DeleteRangeImplImpl(SwPaM & rPam)
if( !IsIgnoreRedline() && GetRedlineTbl().Count() )
DeleteRedline( rPam, true, USHRT_MAX );
- // loesche und verschiebe erstmal alle "Fly's am Absatz", die in der
- // Selection liegen
+ // Delete and move all "Flys at the paragraph", which are within the Selection
DelFlyInRange(rPam.GetMark()->nNode, rPam.GetPoint()->nNode);
_DelBookmarks(
pStt->nNode,
@@ -1713,13 +1701,13 @@ bool SwDoc::DeleteRangeImplImpl(SwPaM & rPam)
SwTxtNode * pStartTxtNode( pCNd->GetTxtNode() );
if ( pStartTxtNode )
{
- // verschiebe jetzt noch den Inhalt in den neuen Node
+ // now move the Content to the new Node
sal_Bool bOneNd = pStt->nNode == pEnd->nNode;
xub_StrLen nLen = ( bOneNd ? pEnd->nContent.GetIndex()
: pCNd->Len() )
- pStt->nContent.GetIndex();
- // falls schon leer, dann nicht noch aufrufen
+ // Don't call again, if already empty
if( nLen )
{
pStartTxtNode->EraseText( pStt->nContent, nLen );
@@ -1731,15 +1719,15 @@ bool SwDoc::DeleteRangeImplImpl(SwPaM & rPam)
}
}
- if( bOneNd ) // das wars schon
+ if( bOneNd ) // that's it
break;
aSttIdx++;
}
else
{
- // damit beim loeschen keine Indizies mehr angemeldet sind,
- // wird hier der SwPaM aus dem Content entfernt !!
+ // So that there are no indices left registered when deleted,
+ // we remove a SwPaM from the Content here.
pStt->nContent.Assign( 0, 0 );
}
}
@@ -1750,7 +1738,7 @@ bool SwDoc::DeleteRangeImplImpl(SwPaM & rPam)
SwTxtNode * pEndTxtNode( pCNd->GetTxtNode() );
if( pEndTxtNode )
{
- // falls schon leer, dann nicht noch aufrufen
+ // if already empty, don't call again
if( pEnd->nContent.GetIndex() )
{
SwIndex aIdx( pCNd, 0 );
@@ -1765,8 +1753,8 @@ bool SwDoc::DeleteRangeImplImpl(SwPaM & rPam)
}
else
{
- // damit beim Loeschen keine Indizies mehr angemeldet sind,
- // wird hier der SwPaM aus dem Content entfernt !!
+ // So that there are no indices left registered when deleted,
+ // we remove a SwPaM from the Content here.
pEnd->nContent.Assign( 0, 0 );
}
}
@@ -1778,18 +1766,18 @@ bool SwDoc::DeleteRangeImplImpl(SwPaM & rPam)
if( aSttIdx != nEnde )
{
- // loesche jetzt die Nodes in das NodesArary
+ // delete the Nodes into the NodesArary
GetNodes().Delete( aSttIdx, nEnde - aSttIdx.GetIndex() );
}
- // falls der Node geloescht wurde, in dem der Cursor stand, so
- // muss der Content im akt. Content angemeldet werden !!!
+ // If the Node that contained the Cursor has been deleted,
+ // the Content has to be assigned to the current Content.
pStt->nContent.Assign( pStt->nNode.GetNode().GetCntntNode(),
pStt->nContent.GetIndex() );
- // der PaM wird korrigiert, denn falls ueber Nodegrenzen geloescht
- // wurde, so stehen sie in unterschieden Nodes. Auch die Selektion
- // wird aufgehoben !
+ // If we deleted across Node boundaries we have to correct the PaM,
+ // because they are in different Nodes now.
+ // Also, the Selection is revoked.
*pEnd = *pStt;
rPam.DeleteMark();
@@ -1883,8 +1871,7 @@ uno::Any SwDoc::Spell( SwPaM& rPaM,
case ND_TEXTNODE:
if( 0 != ( pCntFrm = ((SwTxtNode*)pNd)->getLayoutFrm( GetCurrentLayout() )) )
{
- // geschutze Cellen/Flys ueberspringen, ausgeblendete
- //ebenfalls
+ // skip protected and hidden Cells and Flys
if( pCntFrm->IsProtected() )
{
nCurrNd = pNd->EndOfSectionIndex();
@@ -1935,7 +1922,7 @@ uno::Any SwDoc::Spell( SwPaM& rPaM,
( pConvArgs &&
((SwTxtNode*)pNd)->Convert( *pConvArgs )))
{
- // Abbrechen und Position merken
+ // Cancel and remember position
pSttPos->nNode = nCurrNd;
pEndPos->nNode = nCurrNd;
nCurrNd = nEndNd;
@@ -2057,8 +2044,8 @@ SwHyphArgs::SwHyphArgs( const SwPaM *pPam, const Point &rCrsrPos,
: SwInterHyphInfo( rCrsrPos ), pNode(0),
pPageCnt( pPageCount ), pPageSt( pPageStart )
{
- // Folgende Bedingungen muessen eingehalten werden:
- // 1) es gibt mindestens eine Selektion
+ // The following constraints have to be met:
+ // 1) there is at least one Selection
// 2) SPoint() == Start()
OSL_ENSURE( pPam->HasMark(), "SwDoc::Hyphenate: blowing in the wind");
OSL_ENSURE( *pPam->GetPoint() <= *pPam->GetMark(),
@@ -2067,11 +2054,11 @@ SwHyphArgs::SwHyphArgs( const SwPaM *pPam, const Point &rCrsrPos,
const SwPosition *pPoint = pPam->GetPoint();
nNode = pPoint->nNode.GetIndex();
- // Start einstellen
+ // Set start
pStart = pPoint->nNode.GetNode().GetTxtNode();
nPamStart = pPoint->nContent.GetIndex();
- // Ende und Laenge einstellen.
+ // Set End and Length
const SwPosition *pMark = pPam->GetMark();
pEnd = pMark->nNode.GetNode().GetTxtNode();
nPamLen = pMark->nContent.GetIndex();
@@ -2097,15 +2084,14 @@ void SwHyphArgs::SetPam( SwPaM *pPam ) const
pPam->GetMark()->nContent.Assign( pNode->GetCntntNode(),
nWordStart + nWordLen );
OSL_ENSURE( nNode == pNode->GetIndex(),
- "SwHyphArgs::SetPam: Pam desaster" );
+ "SwHyphArgs::SetPam: Pam disaster" );
}
}
-// liefert sal_True zurueck, wenn es weitergehen soll.
+// Returns sal_True if we can proceed.
sal_Bool lcl_HyphenateNode( const SwNodePtr& rpNd, void* pArgs )
{
- // Hyphenate liefert sal_True zurueck, wenn eine Trennstelle anliegt
- // und stellt pPam ein.
+ // Hyphenate returns sal_True, if there is a disconnection point and set pPam.
SwTxtNode *pNode = rpNd->GetTxtNode();
SwHyphArgs *pHyphArgs = (SwHyphArgs*)pArgs;
if( pNode )
@@ -2167,7 +2153,7 @@ sal_Bool lcl_GetTokenToParaBreak( String& rStr, String& rRet, sal_Bool bRegExpRp
RTL_CONSTASCII_STRINGPARAM( "\\n" )));
while( STRING_NOTFOUND != ( nPos = rStr.Search( sPara, nPos )) )
{
- // wurde das escaped?
+ // Has this been escaped?
if( nPos && '\\' == rStr.GetChar( nPos-1 ))
{
if( ++nPos >= rStr.Len() )
@@ -2225,7 +2211,7 @@ bool SwDoc::ReplaceRange( SwPaM& rPam, const String& rStr,
return ReplaceRangeImpl(rPam, rStr, bRegExReplace); // original pam!
}
- // N.B.: deletion must be split into several parts if the text node
+ // Deletion must be split into several parts if the text node
// contains a text attribute with end and with dummy character
// and the selection does not contain the text attribute completely,
// but overlaps its start (left), where the dummy character is.
@@ -2266,7 +2252,7 @@ bool SwDoc::ReplaceRange( SwPaM& rPam, const String& rStr,
return bRet;
}
-// N.B.: it is possible to call Replace with a PaM that spans 2 paragraphs:
+// It's possible to call Replace with a PaM that spans 2 paragraphs:
// search with regex for "$", then replace _all_
bool SwDoc::ReplaceRangeImpl( SwPaM& rPam, const String& rStr,
const bool bRegExReplace )
@@ -2278,9 +2264,9 @@ bool SwDoc::ReplaceRangeImpl( SwPaM& rPam, const String& rStr,
lcl_GetJoinFlags( rPam, bJoinTxt, bJoinPrev );
{
- // dann eine Kopie vom Cursor erzeugen um alle Pams aus den
- // anderen Sichten aus dem Loeschbereich zu verschieben
- // ABER NICHT SICH SELBST !!
+ // Create a copy of the Cursor in order to move all Pams from
+ // the other views out of the deletion area.
+ // Except for itself!
SwPaM aDelPam( *rPam.GetMark(), *rPam.GetPoint() );
::PaMCorrAbs( aDelPam, *aDelPam.GetPoint() );
@@ -2292,7 +2278,7 @@ bool SwDoc::ReplaceRangeImpl( SwPaM& rPam, const String& rStr,
"invalid range: Point and Mark on different nodes" );
sal_Bool bOneNode = pStt->nNode == pEnd->nNode;
- // eigenes Undo ????
+ // Own Undo?
String sRepl( rStr );
SwTxtNode* pTxtNd = pStt->nNode.GetNode().GetTxtNode();
xub_StrLen nStt = pStt->nContent.GetIndex(),
@@ -2309,10 +2295,10 @@ bool SwDoc::ReplaceRangeImpl( SwPaM& rPam, const String& rStr,
{
GetIDocumentUndoRedo().StartUndo(UNDO_EMPTY, NULL);
- // Bug 68584 - if any Redline will change (split!) the node
+ // If any Redline will change (split!) the node
const ::sw::mark::IMark* pBkmk = getIDocumentMarkAccess()->makeMark( aDelPam, ::rtl::OUString(), IDocumentMarkAccess::UNO_BOOKMARK );
- //JP 06.01.98: MUSS noch optimiert werden!!!
+ // Needs to be optimised!
SetRedlineMode(
(RedlineMode_t)(nsRedlineMode_t::REDLINE_ON | nsRedlineMode_t::REDLINE_SHOW_INSERT | nsRedlineMode_t::REDLINE_SHOW_DELETE ));
@@ -2327,7 +2313,7 @@ bool SwDoc::ReplaceRangeImpl( SwPaM& rPam, const String& rStr,
if( sRepl.Len() )
{
- // Attribute des 1. Zeichens ueber den ReplaceText setzen
+ // Apply the first character's attributes to the ReplaceText
SfxItemSet aSet( GetAttrPool(),
RES_CHRATR_BEGIN, RES_TXTATR_WITHEND_END - 1,
RES_UNKNOWNATR_BEGIN, RES_UNKNOWNATR_END-1,
@@ -2344,7 +2330,7 @@ bool SwDoc::ReplaceRangeImpl( SwPaM& rPam, const String& rStr,
if( aDelPam.GetPoint() != aDelPam.End() )
aDelPam.Exchange();
- // das Ende merken
+ // Remember the End
SwNodeIndex aPtNd( aDelPam.GetPoint()->nNode, -1 );
xub_StrLen nPtCnt = aDelPam.GetPoint()->nContent.GetIndex();
@@ -2401,7 +2387,7 @@ bool SwDoc::ReplaceRangeImpl( SwPaM& rPam, const String& rStr,
*aDelPam.GetPoint() = *rPam.GetPoint();
GetIDocumentUndoRedo().EndUndo(UNDO_EMPTY, NULL);
- // Bug 68584 - if any Redline will change (split!) the node
+ // If any Redline will change (split!) the node
const ::sw::mark::IMark* pBkmk = getIDocumentMarkAccess()->makeMark( aDelPam, ::rtl::OUString(), IDocumentMarkAccess::UNO_BOOKMARK );
SwIndex& rIdx = aDelPam.GetPoint()->nContent;
@@ -2410,8 +2396,8 @@ bool SwDoc::ReplaceRangeImpl( SwPaM& rPam, const String& rStr,
rPam.GetPoint()->nNode = 0;
rPam.GetPoint()->nContent = rIdx;
*rPam.GetMark() = *rPam.GetPoint();
-//JP 06.01.98: MUSS noch optimiert werden!!!
-SetRedlineMode( eOld );
+ // Needs to be optimised!
+ SetRedlineMode( eOld );
*rPam.GetPoint() = pBkmk->GetMarkPos();
if(pBkmk->IsExpanded())
@@ -2440,8 +2426,7 @@ SetRedlineMode( eOld );
SwNodeIndex aPtNd( pStt->nNode, -1 );
xub_StrLen nPtCnt = pStt->nContent.GetIndex();
- // die Werte nochmal setzen, falls schohn Rahmen oder Fussnoten
- // auf dem Text entfernt wurden!
+ // Set the values again, if Frames or footnotes on the Text have been removed.
nStt = nPtCnt;
nEnd = bOneNode ? pEnd->nContent.GetIndex()
: pTxtNd->GetTxt().Len();
@@ -2500,8 +2485,7 @@ SetRedlineMode( eOld );
return true;
}
-// speicher die akt. Werte fuer die automatische Aufnahme von Ausnahmen
-// in die Autokorrektur
+// Save the current values to add them as automatic entries to to AutoCorrect.
void SwDoc::SetAutoCorrExceptWord( SwAutoCorrExceptWord* pNew )
{
if( pNew != pACEWord )
@@ -2524,11 +2508,10 @@ bool SwDoc::DelFullPara( SwPaM& rPam )
return sal_False;
}
- // harte SeitenUmbrueche am nachfolgenden Node verschieben
+ // Move hard page brakes to the following Node.
sal_Bool bSavePageBreak = sal_False, bSavePageDesc = sal_False;
- /* #i9185# This whould lead to a segmentation fault if not catched
- above. */
+ /* #i9185# This whould lead to a segmentation fault if not caught above. */
sal_uLong nNextNd = rEnd.nNode.GetIndex() + 1;
SwTableNode *const pTblNd = GetNodes()[ nNextNd ]->GetTableNode();
@@ -2595,14 +2578,14 @@ bool SwDoc::DelFullPara( SwPaM& rPam )
if( rPam.GetPoint() != &rEnd )
rPam.Exchange();
- // versuche hinters Ende zu verschieben
+ // Try to move past the End
if( !rPam.Move( fnMoveForward, fnGoNode ) )
{
- // na gut, dann an den Anfang
+ // Fair enough, at the Beginning then
rPam.Exchange();
if( !rPam.Move( fnMoveBackward, fnGoNode ))
{
- OSL_FAIL( "kein Node mehr vorhanden" );
+ OSL_FAIL( "no more Nodes" );
return sal_False;
}
}
@@ -2616,9 +2599,9 @@ bool SwDoc::DelFullPara( SwPaM& rPam )
CorrAbs( aRg.aStart, aRg.aEnd, *rPam.GetPoint(), sal_True );
}
- // was ist mit Fly's ??
+ // What's with Flys?
{
- // stehen noch FlyFrames rum, loesche auch diese
+ // If there are FlyFrames left, delete these too
for( sal_uInt16 n = 0; n < GetSpzFrmFmts()->Count(); ++n )
{
SwFrmFmt* pFly = (*GetSpzFrmFmts())[n];