diff options
author | Philipp Weissenbacher <p.weissenbacher@gmail.com> | 2011-10-28 22:03:40 +0200 |
---|---|---|
committer | Petr Mladek <pmladek@suse.cz> | 2011-10-31 17:53:39 +0100 |
commit | cb8b7a86176a0684751354fa957ca18e6eb366d0 (patch) | |
tree | 3aea5c31ee4c9e105312feb3d9d8edea77c90bc5 /sw | |
parent | a334403eb22f3d812549b5ce9b390fecdee9be31 (diff) |
Translate German comments
Diffstat (limited to 'sw')
-rw-r--r-- | sw/source/core/doc/docfld.cxx | 409 |
1 files changed, 199 insertions, 210 deletions
diff --git a/sw/source/core/doc/docfld.cxx b/sw/source/core/doc/docfld.cxx index 239238e23417..3a81493629f9 100644 --- a/sw/source/core/doc/docfld.cxx +++ b/sw/source/core/doc/docfld.cxx @@ -52,7 +52,7 @@ #include <fmtfld.hxx> #include <tox.hxx> #include <txttxmrk.hxx> -#include <docfld.hxx> // fuer Expression-Felder +#include <docfld.hxx> // for expression fields #include <docufld.hxx> #include <ddefld.hxx> #include <usrfld.hxx> @@ -69,7 +69,7 @@ #include <authfld.hxx> #include <txtinet.hxx> #include <fmtcntnt.hxx> -#include <poolfmt.hrc> // fuer InitFldTypes +#include <poolfmt.hrc> // for InitFldTypes #include <SwUndoField.hxx> #include "switerator.hxx" @@ -82,12 +82,11 @@ extern sal_Bool IsFrameBehind( const SwTxtNode& rMyNd, sal_uInt16 nMySttPos, SV_IMPL_OP_PTRARR_SORT( _SetGetExpFlds, _SetGetExpFldPtr ) /*-------------------------------------------------------------------- - Beschreibung: Feldtypen einfuegen + Description: Insert field types --------------------------------------------------------------------*/ /* - * Implementierung der Feldfunktionen am Doc - * Return immer einen gueltigen Pointer auf den Typ. Wenn er also neu - * zugefuegt oder schon vorhanden ist. + * Implementation of field methods at the Doc + * Always returns a pointer to the type, if it's new or already added. */ SwFieldType* SwDoc::InsertFldType(const SwFieldType &rFldTyp) { @@ -99,14 +98,13 @@ SwFieldType* SwDoc::InsertFldType(const SwFieldType &rFldTyp) switch( nFldWhich ) { case RES_SETEXPFLD: - //JP 29.01.96: SequenceFelder beginnen aber bei INIT_FLDTYPES - 3!! - // Sonst gibt es doppelte Nummernkreise!! - //MIB 14.03.95: Ab sofort verlaesst sich auch der SW3-Reader - //beim Aufbau der String-Pools und beim Einlesen von SetExp-Feldern - //hierauf + //JP 29.01.96: SequenceFields start at INIT_FLDTYPES - 3!! + // Or we get doubble number circles!! + //MIB 14.03.95: From now on also the SW3-Reader relies on this, when + //constructing string pools and when reading SetExp fields if( nsSwGetSetExpType::GSE_SEQ & ((SwSetExpFieldType&)rFldTyp).GetType() ) i -= INIT_SEQ_FLDTYPES; - // kein break; + // no break; case RES_DBFLD: case RES_USERFLD: case RES_DDEFLD: @@ -149,7 +147,7 @@ SwFieldType* SwDoc::InsertFldType(const SwFieldType &rFldTyp) case RES_USERFLD: case RES_SETEXPFLD: ((SwValueFieldType*)pNew)->SetDoc( this ); - // JP 29.07.96: opt. FeldListe fuer den Calculator vorbereiten: + // JP 29.07.96: Optionally prepare FieldList for Calculator: pUpdtFlds->InsertFldType( *pNew ); break; case RES_AUTHORITY : @@ -165,18 +163,17 @@ SwFieldType* SwDoc::InsertFldType(const SwFieldType &rFldTyp) void SwDoc::InsDeletedFldType( SwFieldType& rFldTyp ) { - // der FeldTyp wurde als geloescht gekennzeichnet und aus dem - // Array entfernt. Nun muss man nach diesem wieder suchen. - // - Ist der nicht vorhanden, dann kann er eingefuegt werden. - // - Wird genau der gleiche Typ gefunden, dann muss der geloeschte - // einen anderen Namen erhalten. + // The FldType was marked as deleted and removed from the array. + // One has to look this up again, now. + // - If it's not present, it can be re-inserted. + // - If the same type is found, the deleted one has to be renamed. sal_uInt16 nSize = pFldTypes->Count(), nFldWhich = rFldTyp.Which(); sal_uInt16 i = INIT_FLDTYPES; OSL_ENSURE( RES_SETEXPFLD == nFldWhich || RES_USERFLD == nFldWhich || - RES_DDEFLD == nFldWhich, "Falscher FeldTyp" ); + RES_DDEFLD == nFldWhich, "Wrong FldType" ); const ::utl::TransliterationWrapper& rSCmp = GetAppCmpStrIgnore(); const String& rFldNm = rFldTyp.GetName(); @@ -186,7 +183,7 @@ void SwDoc::InsDeletedFldType( SwFieldType& rFldTyp ) if( nFldWhich == (pFnd = (*pFldTypes)[i])->Which() && rSCmp.isEqual( rFldNm, pFnd->GetName() ) ) { - // neuen Namen suchen + // find new name sal_uInt16 nNum = 1; do { String sSrch( rFldNm ); @@ -196,17 +193,17 @@ void SwDoc::InsDeletedFldType( SwFieldType& rFldTyp ) rSCmp.isEqual( sSrch, pFnd->GetName() ) ) break; - if( i >= nSize ) // nicht gefunden + if( i >= nSize ) // not found { ((String&)rFldNm) = sSrch; - break; // raus aus der While-Schleife + break; // exit while loop } ++nNum; } while( sal_True ); break; } - // nicht gefunden, also eintragen und Flag loeschen + // not found, so insert and delete flag pFldTypes->Insert( &rFldTyp, nSize ); switch( nFldWhich ) { @@ -223,27 +220,27 @@ void SwDoc::InsDeletedFldType( SwFieldType& rFldTyp ) } /*-------------------------------------------------------------------- - Beschreibung: Feldtypen loeschen + Description: Remove field type --------------------------------------------------------------------*/ void SwDoc::RemoveFldType(sal_uInt16 nFld) { - OSL_ENSURE( INIT_FLDTYPES <= nFld, "keine InitFields loeschen" ); + OSL_ENSURE( INIT_FLDTYPES <= nFld, "don't remove InitFlds" ); /* - * Abheangige Felder vorhanden -> ErrRaise + * Dependent fields present -> ErrRaise */ sal_uInt16 nSize = pFldTypes->Count(); if(nFld < nSize) { SwFieldType* pTmp = (*pFldTypes)[nFld]; - // JP 29.07.96: opt. FeldListe fuer den Calculator vorbereiten: + // JP 29.07.96: Optionally prepare FldLst for Calculator sal_uInt16 nWhich = pTmp->Which(); switch( nWhich ) { case RES_SETEXPFLD: case RES_USERFLD: pUpdtFlds->RemoveFldType( *pTmp ); - // kein break; + // no break; case RES_DDEFLD: if( pTmp->GetDepends() && !IsUsed( *pTmp ) ) { @@ -260,8 +257,8 @@ void SwDoc::RemoveFldType(sal_uInt16 nFld) if( nWhich ) { - OSL_ENSURE( !pTmp->GetDepends(), "Abhaengige vorh.!" ); - // Feldtype loschen + OSL_ENSURE( !pTmp->GetDepends(), "Dependent fields present!" ); + // delete field type delete pTmp; } pFldTypes->Remove( nFld ); @@ -275,7 +272,7 @@ const SwFldTypes* SwDoc::GetFldTypes() const } /*-------------------------------------------------------------------- - Beschreibung: Den ersten Typen mit ResId und Namen finden + Description: Find first type with ResId and name --------------------------------------------------------------------*/ SwFieldType* SwDoc::GetFldType( sal_uInt16 nResId, const String& rName, bool bDbFieldMatching // used in some UNO calls for RES_DBFLD @@ -289,11 +286,10 @@ SwFieldType* SwDoc::GetFldType( sal_uInt16 nResId, const String& rName, switch( nResId ) { case RES_SETEXPFLD: - //JP 29.01.96: SequenceFelder beginnen aber bei INIT_FLDTYPES - 3!! - // Sonst gibt es doppelte Nummernkreise!! - //MIB 14.03.95: Ab sofort verlaesst sich auch der SW3-Reader - //beim Aufbau der String-Pools und beim Einlesen von SetExp-Feldern - //hierauf + //JP 29.01.96: SequenceFields start at INIT_FLDTYPES - 3!! + // Or we get doubble number circles!! + //MIB 14.03.95: From now on also the SW3-Reader relies on this, when + //constructing string pools and when reading SetExp fields i = INIT_FLDTYPES - INIT_SEQ_FLDTYPES; break; @@ -325,28 +321,28 @@ SwFieldType* SwDoc::GetFldType( sal_uInt16 nResId, const String& rName, } /************************************************************************* -|* SwDoc::UpdateFlds() -|* Beschreibung Felder updaten +|* SwDoc::UpdateFlds() +|* Description: Update fields *************************************************************************/ /* - * Alle sollen neu evaluiert werden. + * All have to be re-evaluated. */ void SwDoc::UpdateFlds( SfxPoolItem *pNewHt, bool bCloseDB ) { - // Modify() fuer jeden Feldtypen rufen, - // abhaengige SwTxtFld werden benachrichtigt ... + // Call modify() for every field type, + // dependent SwTxtFld get notified ... for( sal_uInt16 i=0; i < pFldTypes->Count(); ++i) { switch( (*pFldTypes)[i]->Which() ) { - // Tabellen-Felder als vorletztes Updaten - // Referenzen als letztes Updaten + // Update table fields second to last + // Update references at last case RES_GETREFFLD: case RES_TABLEFLD: case RES_DBFLD: case RES_JUMPEDITFLD: - case RES_REFPAGESETFLD: // werden nie expandiert! + case RES_REFPAGESETFLD: // are never expanded! break; case RES_DDEFLD: @@ -364,7 +360,7 @@ void SwDoc::UpdateFlds( SfxPoolItem *pNewHt, bool bCloseDB ) case RES_SETEXPFLD: case RES_HIDDENTXTFLD: case RES_HIDDENPARAFLD: - // Expression-Felder werden gesondert behandelt + // Expression fields are treated seperately if( !pNewHt ) break; default: @@ -373,18 +369,18 @@ void SwDoc::UpdateFlds( SfxPoolItem *pNewHt, bool bCloseDB ) } if( !IsExpFldsLocked() ) - UpdateExpFlds( 0, sal_False ); // Expression-Felder Updaten + UpdateExpFlds( 0, sal_False ); // update expression fields - // Tabellen + // Tables UpdateTblFlds(pNewHt); - // Referenzen + // References UpdateRefFlds(pNewHt); if( bCloseDB ) GetNewDBMgr()->CloseAll(); - // Nur bei KomplettUpdate evaluieren + // Only evaluate on CompleteUpdate SetModified(); } @@ -411,7 +407,7 @@ void SwDoc::UpdateUsrFlds() } /*-------------------------------------------------------------------- - Beschreibung: Referenzfelder und TableFelder erneuern + Description: Update reference and table fields --------------------------------------------------------------------*/ void SwDoc::UpdateRefFlds( SfxPoolItem* pHt ) { @@ -424,7 +420,7 @@ void SwDoc::UpdateRefFlds( SfxPoolItem* pHt ) void SwDoc::UpdateTblFlds( SfxPoolItem* pHt ) { OSL_ENSURE( !pHt || RES_TABLEFML_UPDATE == pHt->Which(), - "Was ist das fuer ein MessageItem?" ); + "What MessageItem is this?" ); SwFieldType* pFldType(0); @@ -445,7 +441,7 @@ void SwDoc::UpdateTblFlds( SfxPoolItem* pHt ) if( pUpdtFld ) { - // bestimme Tabelle, in der das Feld steht + // table where this field is located const SwTableNode* pTblNd; const SwTxtNode& rTxtNd = pFmtFld->GetTxtFld()->GetTxtNode(); if( !rTxtNd.GetNodes().IsDocNodes() || @@ -455,30 +451,30 @@ void SwDoc::UpdateTblFlds( SfxPoolItem* pHt ) switch( pUpdtFld->eFlags ) { case TBL_CALC: - // setze das Value-Flag zurueck - // JP 17.06.96: interne Darstellung auf alle Formeln - // (Referenzen auf andere Tabellen!!!) + // re-set the value flag + // JP 17.06.96: internal representation of all formulas + // (reference to other table!!!) if( nsSwExtendedSubType::SUB_CMD & pFld->GetSubType() ) pFld->PtrToBoxNm( pUpdtFld->pTbl ); else pFld->ChgValid( sal_False ); break; case TBL_BOXNAME: - // ist es die gesuchte Tabelle ?? + // is this the wanted table? if( &pTblNd->GetTable() == pUpdtFld->pTbl ) - // zur externen Darstellung + // to the external representation pFld->PtrToBoxNm( pUpdtFld->pTbl ); break; case TBL_BOXPTR: - // zur internen Darstellung - // JP 17.06.96: interne Darstellung auf alle Formeln - // (Referenzen auf andere Tabellen!!!) + // to the internal representation + // JP 17.06.96: internal representation on all formulas + // (reference to other table!!!) pFld->BoxNmToPtr( pUpdtFld->pTbl ); break; case TBL_RELBOXNAME: - // ist es die gesuchte Tabelle ?? + // is this the wanted table? if( &pTblNd->GetTable() == pUpdtFld->pTbl ) - // zur relativen Darstellung + // to the relative representation pFld->ToRelBoxNm( pUpdtFld->pTbl ); break; default: @@ -486,7 +482,7 @@ void SwDoc::UpdateTblFlds( SfxPoolItem* pHt ) } } else - // setze bei allen das Value-Flag zurueck + // reset the value flag for all pFld->ChgValid( sal_False ); } } @@ -496,7 +492,7 @@ void SwDoc::UpdateTblFlds( SfxPoolItem* pHt ) pFldType = 0; } - // und dann noch alle Tabellen Box Formeln abklappern + // process all table box formuals const SfxPoolItem* pItem; sal_uInt32 nMaxItems = GetAttrPool().GetItemCount2( RES_BOXATR_FORMULA ); for (sal_uInt32 i = 0; i < nMaxItems; ++i) @@ -509,7 +505,7 @@ void SwDoc::UpdateTblFlds( SfxPoolItem* pHt ) } - // alle Felder/Boxen sind jetzt invalide, also kann das Rechnen anfangen + // all fields/boxes are now invalid, so we can start to calculate if( pHt && ( RES_TABLEFML_UPDATE != pHt->Which() || TBL_CALC != ((SwTableFmlUpdate*)pHt)->eFlags )) return ; @@ -530,10 +526,10 @@ void SwDoc::UpdateTblFlds( SfxPoolItem* pHt ) (pFld = (SwTblField*)pFmtFld->GetFld())->GetSubType() )) continue; - // muss neu berechnet werden (und ist keine textuelle Anzeige) + // needs to be recalculated (and is no textual note) if( !pFld->IsValid() ) { - // bestimme Tabelle, in der das Feld steht + // table where this field is located const SwTxtNode& rTxtNd = pFmtFld->GetTxtFld()->GetTxtNode(); if( !rTxtNd.GetNodes().IsDocNodes() ) continue; @@ -541,8 +537,7 @@ void SwDoc::UpdateTblFlds( SfxPoolItem* pHt ) if( !pTblNd ) continue; - // falls dieses Feld nicht in der zu updatenden - // Tabelle steht, ueberspringen !! + // if this field is not in the to-be-updated table, skip it if( pHt && &pTblNd->GetTable() != ((SwTableFmlUpdate*)pHt)->pTbl ) continue; @@ -550,13 +545,13 @@ void SwDoc::UpdateTblFlds( SfxPoolItem* pHt ) if( !pCalc ) pCalc = new SwCalc( *this ); - // bestimme die Werte aller SetExpresion Felder, die - // bis zur Tabelle gueltig sind + // get the values of all SetExpresion fields, that are valid + // until the table SwFrm* pFrm = 0; if( pTblNd->GetIndex() < GetNodes().GetEndOfExtras().GetIndex() ) { - // steht im Sonderbereich, wird teuer !! - Point aPt; // den im Layout 1. Frame returnen - Tab.Kopfzeile !! + // is in the special section, that's expensive! + Point aPt; // return the first frame of the layout - Tab.Headline!! pFrm = rTxtNd.getLayoutFrm( GetCurrentLayout(), &aPt ); if( pFrm ) { @@ -571,7 +566,7 @@ void SwDoc::UpdateTblFlds( SfxPoolItem* pHt ) } if( !pFrm ) { - // einen Index fuers bestimmen vom TextNode anlegen + // create index to determine the TextNode SwNodeIndex aIdx( rTxtNd ); FldsToCalc( *pCalc, _SetGetExpFld( aIdx, pFmtFld->GetTxtFld() )); @@ -586,8 +581,8 @@ void SwDoc::UpdateTblFlds( SfxPoolItem* pHt ) #if OSL_DEBUG_LEVEL > 1 else { - // mind. ein ASSERT - OSL_ENSURE( !this, "die Kettenformel konnte nicht errechnet werden" ); + // at least one ASSERT + OSL_ENSURE( !this, "the chained formula could no be calculated" ); } #endif } @@ -597,7 +592,7 @@ void SwDoc::UpdateTblFlds( SfxPoolItem* pHt ) } } - // dann berechene noch die Formeln an den Boxen + // calculate the formula at the boxes for (sal_uInt32 i = 0; i < nMaxItems; ++i ) { if( 0 != (pItem = GetAttrPool().GetItem2( RES_BOXATR_FORMULA, i ) ) && @@ -617,13 +612,13 @@ void SwDoc::UpdateTblFlds( SfxPoolItem* pHt ) if( !pCalc ) pCalc = new SwCalc( *this ); - // bestimme die Werte aller SetExpresion Felder, die - // bis zur Tabelle gueltig sind + // get the values of all SetExpresion fields, that are valid + // until the table SwFrm* pFrm = 0; if( pTblNd->GetIndex() < GetNodes().GetEndOfExtras().GetIndex() ) { - // steht im Sonderbereich, wird teuer !! - Point aPt; // den im Layout 1. Frame returnen - Tab.Kopfzeile !! + // is in the special section, that's expensive! + Point aPt; // return the first frame of the layout - Tab.Headline!! SwNodeIndex aCNdIdx( *pTblNd, +2 ); SwCntntNode* pCNd = aCNdIdx.GetNode().GetCntntNode(); if( !pCNd ) @@ -640,7 +635,7 @@ void SwDoc::UpdateTblFlds( SfxPoolItem* pHt ) } if( !pFrm ) { - // einen Index fuers bestimmen vom TextNode anlegen + // create index to determine the TextNode SwNodeIndex aIdx( *pTblNd ); FldsToCalc( *pCalc, _SetGetExpFld( aIdx )); } @@ -655,8 +650,8 @@ void SwDoc::UpdateTblFlds( SfxPoolItem* pHt ) #if OSL_DEBUG_LEVEL > 1 else { - // mind. ein ASSERT - OSL_ENSURE( !this, "die Kettenformel konnte nicht errechnet werden" ); + // at least one ASSERT + OSL_ENSURE( !this, "the chained formula could no be calculated" ); } #endif } @@ -701,7 +696,7 @@ void SwDoc::UpdatePageFlds( SfxPoolItem* pMsgHnt ) SetNewFldLst(true); } -// ---- Loesche alle nicht referenzierten FeldTypen eines Dokumentes -- +// ---- Remove all unreferenced field types of a document -- void SwDoc::GCFieldTypes() { for( sal_uInt16 n = pFldTypes->Count(); n > INIT_FLDTYPES; ) @@ -740,8 +735,8 @@ void SwDoc::SetNewFldLst(bool bFlag) mbNewFldLst = bFlag; } -// der StartIndex kann optional mit angegeben werden (z.B. wenn dieser -// zuvor schon mal erfragt wurde - ist sonst eine virtuelle Methode !!) +// the StartIndex can be supplied optionally (e.g. if it was queried before - is a virtual +// method otherwise!) _SetGetExpFld::_SetGetExpFld( const SwNodeIndex& rNdIdx, const SwTxtFld* pFld, const SwIndex* pIdx ) { @@ -768,9 +763,9 @@ _SetGetExpFld::_SetGetExpFld( const SwNodeIndex& rNdIdx, nCntnt = *rINet.GetStart(); } -// Erweiterung fuer Sections: -// diese haben immer als Content-Position 0xffff !! -// Auf dieser steht nie ein Feld, maximal bis STRING_MAXLEN moeglich +// Extension for Sections: +// these always have content position 0xffff! +// There is never a field on this, only up to STRING_MAXLEN possible _SetGetExpFld::_SetGetExpFld( const SwSectionNode& rSectNd, const SwPosition* pPos ) { @@ -884,7 +879,7 @@ void _SetGetExpFld::SetBodyPos( const SwCntntFrm& rFrm ) SwDoc& rDoc = *aIdx.GetNodes().GetDoc(); SwPosition aPos( aIdx ); #if OSL_DEBUG_LEVEL > 1 - OSL_ENSURE( ::GetBodyTxtNode( rDoc, aPos, rFrm ), "wo steht das Feld" ); + OSL_ENSURE( ::GetBodyTxtNode( rDoc, aPos, rFrm ), "Where is the field?" ); #else ::GetBodyTxtNode( rDoc, aPos, rFrm ); #endif @@ -903,14 +898,14 @@ sal_Bool _SetGetExpFld::operator<( const _SetGetExpFld& rFld ) const const SwNode *pFirst = GetNodeFromCntnt(), *pNext = rFld.GetNodeFromCntnt(); - // Position gleich: nur weiter wenn beide FeldPointer besetzt sind !! + // Position is the same: continue only if both field pointers are set! if( !pFirst || !pNext ) return sal_False; - // gleiche Section ?? + // same Section? if( pFirst->StartOfSectionNode() != pNext->StartOfSectionNode() ) { - // sollte einer in der Tabelle stehen ? + // is one in the table? const SwNode *pFirstStt, *pNextStt; const SwTableNode* pTblNd = pFirst->FindTableNode(); if( pTblNd ) @@ -935,11 +930,11 @@ sal_Bool _SetGetExpFld::operator<( const _SetGetExpFld& rFld ) const } } - // ist gleiche Section, dann Feld im gleichen Node ? + // if it is the same section, then the field is in the same Node if( pFirst != pNext ) return pFirst->GetIndex() < pNext->GetIndex(); - // gleicher Node in der Section, dann Position im Node + // same Node in the Section, then Position in the Node return GetCntPosFromCntnt() < rFld.GetCntPosFromCntnt(); } @@ -1014,8 +1009,7 @@ _HashStr::_HashStr( const String& rName, const String& rText, pNext = pNxt; } -// suche nach dem Namen, ist er vorhanden, returne seinen String, sonst -// einen LeerString +// Look up the Name, if it is present, return it's String, otherwise return an empty String void LookString( SwHash** ppTbl, sal_uInt16 nSize, const String& rName, String& rRet, sal_uInt16* pPos ) { @@ -1062,10 +1056,10 @@ void lcl_CalcFld( SwDoc& rDoc, SwCalc& rCalc, const _SetGetExpFld& rSGEFld, if( nsSwGetSetExpType::GSE_EXPR & pFld->GetSubType() ) aValue.PutDouble( ((SwSetExpField*)pFld)->GetValue() ); else - // Erweiterung fuers Rechnen mit Strings + // Extension to calculate with Strings aValue.PutString( ((SwSetExpField*)pFld)->GetExpStr() ); - // setze im Calculator den neuen Wert + // set the new value in Calculator rCalc.VarChange( pFld->GetTyp()->GetName(), aValue ); } else if( pMgr ) @@ -1105,7 +1099,7 @@ void lcl_CalcFld( SwDoc& rDoc, SwCalc& rCalc, const _SetGetExpFld& rSGEFld, void SwDoc::FldsToCalc( SwCalc& rCalc, const _SetGetExpFld& rToThisFld ) { - // erzeuge die Sortierteliste aller SetFelder + // create the sorted list of all SetFields pUpdtFlds->MakeFldList( *this, mbNewFldLst, GETFLD_CALC ); mbNewFldLst = sal_False; @@ -1129,7 +1123,7 @@ void SwDoc::FldsToCalc( SwCalc& rCalc, const _SetGetExpFld& rToThisFld ) void SwDoc::FldsToCalc( SwCalc& rCalc, sal_uLong nLastNd, sal_uInt16 nLastCnt ) { - // erzeuge die Sortierteliste aller SetFelder + // create the sorted list of all SetFields pUpdtFlds->MakeFldList( *this, mbNewFldLst, GETFLD_CALC ); mbNewFldLst = sal_False; @@ -1152,12 +1146,12 @@ void SwDoc::FldsToCalc( SwCalc& rCalc, sal_uLong nLastNd, sal_uInt16 nLastCnt ) void SwDoc::FldsToExpand( SwHash**& ppHashTbl, sal_uInt16& rTblSize, const _SetGetExpFld& rToThisFld ) { - // erzeuge die Sortierteliste aller SetFelder + // create the sorted list of all SetFields pUpdtFlds->MakeFldList( *this, mbNewFldLst, GETFLD_EXPAND ); mbNewFldLst = sal_False; - // HashTabelle fuer alle String Ersetzungen, wird "one the fly" gefuellt - // (versuche eine "ungerade"-Zahl zu erzeugen) + // Hash table for all string replacements is filled on-the-fly. + // Try to fabricate an uneven number. rTblSize = (( pUpdtFlds->GetSortLst()->Count() / 7 ) + 1 ) * 7; ppHashTbl = new SwHash*[ rTblSize ]; memset( ppHashTbl, 0, sizeof( _HashStr* ) * rTblSize ); @@ -1185,27 +1179,27 @@ void SwDoc::FldsToExpand( SwHash**& ppHashTbl, sal_uInt16& rTblSize, case RES_SETEXPFLD: if( nsSwGetSetExpType::GSE_STRING & pFld->GetSubType() ) { - // setze in der HashTabelle den neuen Wert - // ist die "Formel" ein Feld ?? + // set the new value in the hash table + // is the formula a field? SwSetExpField* pSFld = (SwSetExpField*)pFld; LookString( ppHashTbl, rTblSize, pSFld->GetFormula(), aNew ); - if( !aNew.Len() ) // nichts gefunden, dann ist - aNew = pSFld->GetFormula(); // die Formel der neue Wert + if( !aNew.Len() ) // nothing found, then the formula is + aNew = pSFld->GetFormula(); // the new value // #i3141# - update expression of field as in method // <SwDoc::UpdateExpFlds(..)> for string/text fields pSFld->ChgExpStr( aNew ); - // suche den Namen vom Feld + // look up the field's name aNew = ((SwSetExpFieldType*)pSFld->GetTyp())->GetSetRefName(); - // Eintrag vorhanden ? + // Entry present? pFnd = Find( aNew, ppHashTbl, rTblSize, &nPos ); if( pFnd ) - // Eintrag in der HashTabelle aendern + // modify entry in the hash table ((_HashStr*)pFnd)->aSetStr = pSFld->GetExpStr(); else - // neuen Eintrag einfuegen + // insert the new entry *(ppHashTbl + nPos ) = new _HashStr( aNew, pSFld->GetExpStr(), (_HashStr*)*(ppHashTbl + nPos) ); } @@ -1214,18 +1208,18 @@ void SwDoc::FldsToExpand( SwHash**& ppHashTbl, sal_uInt16& rTblSize, { const String& rName = pFld->GetTyp()->GetName(); - // Eintrag in den HashTable eintragen - // Eintrag vorhanden ? + // Insert entry in the hash table + // Entry present? pFnd = Find( rName, ppHashTbl, rTblSize, &nPos ); String const value(pFld->ExpandField(IsClipBoard())); if( pFnd ) { - // Eintrag in der HashTabelle aendern + // modify entry in the hash table static_cast<_HashStr*>(pFnd)->aSetStr = value; } else { - // neuen Eintrag einfuegen + // insert the new entry *(ppHashTbl + nPos ) = new _HashStr( rName, value, static_cast<_HashStr *>(*(ppHashTbl + nPos))); } @@ -1258,30 +1252,30 @@ void SwDoc::UpdateExpFlds( SwTxtFld* pUpdtFld, bool bUpdRefFlds ) sal_uInt16 nWhich, n; - // HashTabelle fuer alle String Ersetzungen, wird "one the fly" gefuellt - // (versuche eine "ungerade"-Zahl zu erzeugen) + // Hash table for all string replacements is filled on-the-fly. + // Try to fabricate an uneven number. sal_uInt16 nStrFmtCnt = (( pFldTypes->Count() / 7 ) + 1 ) * 7; SwHash** pHashStrTbl = new SwHash*[ nStrFmtCnt ]; memset( pHashStrTbl, 0, sizeof( _HashStr* ) * nStrFmtCnt ); { const SwFieldType* pFldType; - // gesondert behandeln: + // process seperately: for( n = pFldTypes->Count(); n; ) switch( ( pFldType = (*pFldTypes)[ --n ] )->Which() ) { case RES_USERFLD: { - // Eintrag vorhanden ? + // Entry present? sal_uInt16 nPos; const String& rNm = pFldType->GetName(); String sExpand(((SwUserFieldType*)pFldType)->Expand(nsSwGetSetExpType::GSE_STRING, 0, 0)); SwHash* pFnd = Find( rNm, pHashStrTbl, nStrFmtCnt, &nPos ); if( pFnd ) - // Eintrag in der HashTabelle aendern ?? + // modify entry in the hash table ((_HashStr*)pFnd)->aSetStr = sExpand; else - // neuen Eintrag einfuegen + // insert the new entry *(pHashStrTbl + nPos ) = new _HashStr( rNm, sExpand, (_HashStr*)*(pHashStrTbl + nPos) ); } @@ -1292,12 +1286,12 @@ void SwDoc::UpdateExpFlds( SwTxtFld* pUpdtFld, bool bUpdRefFlds ) } } - // Ok, das Array ist soweit mit allen Feldern gefuellt, dann rechne mal + // The array is filled with all fields; start calculation. SwCalc aCalc( *this ); String sDBNumNm( SwFieldType::GetTypeStr( TYP_DBSETNUMBERFLD ) ); - // aktuelle Datensatznummer schon vorher einstellen + // already set the current record number SwNewDBMgr* pMgr = GetNewDBMgr(); pMgr->CloseAll(sal_False); @@ -1319,7 +1313,7 @@ void SwDoc::UpdateExpFlds( SwTxtFld* pUpdtFld, bool bUpdRefFlds ) SwTxtFld* pTxtFld = (SwTxtFld*)(*ppSortLst)->GetFld(); if( !pTxtFld ) { - OSL_ENSURE( !this, "was ist es denn nun" ); + OSL_ENSURE( !this, "what's wrong now'" ); continue; } @@ -1336,7 +1330,7 @@ void SwDoc::UpdateExpFlds( SwTxtFld* pUpdtFld, bool bUpdRefFlds ) if(!aValue.IsVoidValue()) { pHFld->SetValue( bValue ); - // Feld Evaluieren + // evaluate field pHFld->Evaluate(this); } } @@ -1362,7 +1356,7 @@ void SwDoc::UpdateExpFlds( SwTxtFld* pUpdtFld, bool bUpdRefFlds ) break; case RES_DBFLD: { - // Feld Evaluieren + // evaluate field ((SwDBField*)pFld)->Evaluate(); SwDBData aTmpDBData(((SwDBField*)pFld)->GetDBData()); @@ -1372,25 +1366,25 @@ void SwDoc::UpdateExpFlds( SwTxtFld* pUpdtFld, bool bUpdRefFlds ) const String& rName = pFld->GetTyp()->GetName(); - // Wert fuer den Calculator setzen -//JP 10.02.96: GetValue macht hier doch keinen Sinn + // Set value for Calculator +//JP 10.02.96: GetValue doesn't make sense here // ((SwDBField*)pFld)->GetValue(); //!OK aCalc.VarChange(aName, ((SwDBField*)pFld)->GetValue(aCalc)); - // Eintrag in den HashTable eintragen - // Eintrag vorhanden ? + // Add entry to hash table + // Entry present? sal_uInt16 nPos; SwHash* pFnd = Find( rName, pHashStrTbl, nStrFmtCnt, &nPos ); String const value(pFld->ExpandField(IsClipBoard())); if( pFnd ) { - // Eintrag in der HashTabelle aendern + // Modify entry in the hash table static_cast<_HashStr*>(pFnd)->aSetStr = value; } else { - // neuen Eintrag einfuegen + // insert new entry *(pHashStrTbl + nPos ) = new _HashStr( rName, value, static_cast<_HashStr *>(*(pHashStrTbl + nPos))); } @@ -1399,7 +1393,7 @@ void SwDoc::UpdateExpFlds( SwTxtFld* pUpdtFld, bool bUpdRefFlds ) case RES_GETEXPFLD: case RES_SETEXPFLD: { - if( nsSwGetSetExpType::GSE_STRING & pFld->GetSubType() ) // String Ersetzung + if( nsSwGetSetExpType::GSE_STRING & pFld->GetSubType() ) // replace String { if( RES_GETEXPFLD == nWhich ) { @@ -1416,38 +1410,38 @@ void SwDoc::UpdateExpFlds( SwTxtFld* pUpdtFld, bool bUpdRefFlds ) else { SwSetExpField* pSFld = (SwSetExpField*)pFld; - // ist die "Formel" ein Feld ?? + // is the "formula" a field? LookString( pHashStrTbl, nStrFmtCnt, pSFld->GetFormula(), aNew ); - if( !aNew.Len() ) // nichts gefunden, dann ist die - aNew = pSFld->GetFormula(); // Formel der neue Wert + if( !aNew.Len() ) // nothing found then the formula is the new value + aNew = pSFld->GetFormula(); - // nur ein spezielles FeldUpdaten ? + // only update one field if( !pUpdtFld || pUpdtFld == pTxtFld ) pSFld->ChgExpStr( aNew ); - // suche den Namen vom Feld + // lookup the field's name aNew = ((SwSetExpFieldType*)pSFld->GetTyp())->GetSetRefName(); - // Eintrag vorhanden ? + // Entry present? sal_uInt16 nPos; SwHash* pFnd = Find( aNew, pHashStrTbl, nStrFmtCnt, &nPos ); if( pFnd ) - // Eintrag in der HashTabelle aendern + // Modify entry in the hash table ((_HashStr*)pFnd)->aSetStr = pSFld->GetExpStr(); else - // neuen Eintrag einfuegen + // insert new entry *(pHashStrTbl + nPos ) = pFnd = new _HashStr( aNew, pSFld->GetExpStr(), (_HashStr*)*(pHashStrTbl + nPos) ); - // Erweiterung fuers Rechnen mit Strings + // Extension for calculation with Strings SwSbxValue aValue; aValue.PutString( ((_HashStr*)pFnd)->aSetStr ); aCalc.VarChange( aNew, aValue ); } } - else // Formel neu berechnen + else // recalculate formula { if( RES_GETEXPFLD == nWhich ) { @@ -1475,7 +1469,7 @@ void SwDoc::UpdateExpFlds( SwTxtFld* pUpdtFld, bool bUpdRefFlds ) const sal_uInt8 nLvl = pSFldTyp->GetOutlineLvl(); if( MAXLEVEL > nLvl ) { - // dann teste, ob die Nummer neu aufsetzen muss + // test if the Number needs to be updated pSeqNd = GetNodes()[ (*ppSortLst)->GetNode() ]; const SwTxtNode* pOutlNd = pSeqNd-> @@ -1493,7 +1487,7 @@ void SwDoc::UpdateExpFlds( SwTxtFld* pUpdtFld, bool bUpdRefFlds ) SwSbxValue aValue = aCalc.Calculate( aNew ); double nErg = aValue.GetDouble(); - // nur ein spezielles Feld updaten ? + // only update one field if( !aValue.IsVoidValue() && (!pUpdtFld || pUpdtFld == pTxtFld) ) { pSFld->SetValue( nErg ); @@ -1506,23 +1500,23 @@ void SwDoc::UpdateExpFlds( SwTxtFld* pUpdtFld, bool bUpdRefFlds ) } } // switch - pFmtFld->ModifyNotification( 0, 0 ); // Formatierung anstossen + pFmtFld->ModifyNotification( 0, 0 ); // trigger formatting - if( pUpdtFld == pTxtFld ) // sollte nur dieses geupdatet werden + if( pUpdtFld == pTxtFld ) // if only this one is updated { - if( RES_GETEXPFLD == nWhich || // nur GetFeld oder + if( RES_GETEXPFLD == nWhich || // only GetField or RES_HIDDENTXTFLD == nWhich || // HiddenTxt? RES_HIDDENPARAFLD == nWhich) // HiddenParaFld? - break; // beenden - pUpdtFld = 0; // ab jetzt alle Updaten + break; // quit + pUpdtFld = 0; // update all from here on } } pMgr->CloseAll(sal_False); - // HashTabelle wieder loeschen + // delete hash table ::DeleteHashTable( pHashStrTbl, nStrFmtCnt ); - // Referenzfelder updaten + // update reference fields if( bUpdRefFlds ) UpdateRefFlds(NULL); @@ -1545,7 +1539,7 @@ void SwDoc::UpdateDBNumFlds( SwDBNameInfField& rDBFld, SwCalc& rCalc ) if( rDBFld.GetRealDBData().sDataSource.getLength() ) { - // Eine bestimmte Datenbank bearbeiten + // Edit a certain database if( RES_DBNEXTSETFLD == nFldType ) ((SwDBNextSetField&)rDBFld).Evaluate(this); else @@ -1563,9 +1557,9 @@ void SwDoc::UpdateDBNumFlds( SwDBNameInfField& rDBFld, SwCalc& rCalc ) } } -void SwDoc::_InitFieldTypes() // wird vom CTOR gerufen!! +void SwDoc::_InitFieldTypes() // is being called by the CTOR { - // Feldtypen + // Field types sal_uInt16 nFldType = 0; pFldTypes->Insert( new SwDateTimeFieldType(this), nFldType++ ); pFldTypes->Insert( new SwChapterFieldType, nFldType++ ); @@ -1596,10 +1590,10 @@ void SwDoc::_InitFieldTypes() // wird vom CTOR gerufen!! pFldTypes->Insert( new SwCombinedCharFieldType, nFldType++ ); pFldTypes->Insert( new SwDropDownFieldType, nFldType++ ); - // Types muessen am Ende stehen !! - // Im InsertFldType wird davon ausgegangen !!!! - // MIB 14.04.95: Im Sw3StringPool::Setup (sw3imp.cxx) und - // lcl_sw3io_InSetExpField (sw3field.cxx) jetzt auch + // Types have to be at the end! + // We expect this in the InsertFldType! + // MIB 14.04.95: In Sw3StringPool::Setup (sw3imp.cxx) and + // lcl_sw3io_InSetExpField (sw3field.cxx) now also pFldTypes->Insert( new SwSetExpFieldType(this, SW_RESSTR(STR_POOLCOLL_LABEL_ABB), nsSwGetSetExpType::GSE_SEQ), nFldType++); pFldTypes->Insert( new SwSetExpFieldType(this, @@ -1672,7 +1666,7 @@ void SwDoc::SetInitDBFields( sal_Bool b ) } /*-------------------------------------------------------------------- - Beschreibung: Alle von Feldern verwendete Datenbanken herausfinden + Description: Get all databases that are used by fields --------------------------------------------------------------------*/ String lcl_DBDataToString(const SwDBData& rData) { @@ -1740,7 +1734,7 @@ void SwDoc::GetAllUsedDB( SvStringsDtor& rDBNameList, case RES_DBNEXTSETFLD: AddUsedDBToList( rDBNameList, lcl_DBDataToString(((SwDBNameInfField*)pFld)->GetRealDBData() )); - // kein break // JP: ist das so richtig ?? + // no break // JP: is that right like that? case RES_HIDDENTXTFLD: case RES_HIDDENPARAFLD: @@ -1794,7 +1788,7 @@ SvStringsDtor& SwDoc::FindUsedDBs( const SvStringsDtor& rAllDBNames, sFormel.GetChar( nPos + pStr->Len() ) == '.' && (!nPos || !rCC.isLetterNumeric( sFormel, nPos - 1 ))) { - // Tabellenname suchen + // Look up table name xub_StrLen nEndPos; nPos += pStr->Len() + 1; if( STRING_NOTFOUND != (nEndPos = sFormel.Search('.', nPos)) ) @@ -1918,7 +1912,7 @@ void SwDoc::ChangeDBFields( const SvStringsDtor& rOldNames, ((SwDBNameInfField*)pFld)->SetDBData(aNewDBData); bExpand = sal_True; } - // kein break; + // no break; case RES_HIDDENTXTFLD: case RES_HIDDENPARAFLD: sFormel = pFld->GetPar1(); @@ -2020,7 +2014,7 @@ void SwDoc::SetFixFields( bool bOnlyTimeDate, const DateTime* pNewDateTime ) /*1*/ RES_AUTHORFLD, /*2*/ RES_EXTUSERFLD, /*3*/ RES_FILENAMEFLD, - /*4*/ RES_DATETIMEFLD }; // MUSS am Ende stehen!! + /*4*/ RES_DATETIMEFLD }; // MUST be at the end! sal_uInt16 nStt = bOnlyTimeDate ? 4 : 0; @@ -2094,7 +2088,7 @@ void SwDoc::SetFixFields( bool bOnlyTimeDate, const DateTime* pNewDateTime ) break; } - // Formatierung anstossen + // Trigger formatting if( bChgd ) pFld->ModifyNotification( 0, 0 ); } @@ -2107,11 +2101,11 @@ void SwDoc::SetFixFields( bool bOnlyTimeDate, const DateTime* pNewDateTime ) bool SwDoc::SetFieldsDirty( bool b, const SwNode* pChk, sal_uLong nLen ) { - // teste ggfs. mal, ob die angegbenen Nodes ueberhaupt Felder beinhalten. - // wenn nicht, braucht das Flag nicht veraendert werden. + // See if the supplied nodes actually contain fields. + // If they don't, the flag doesn't need to be changed. sal_Bool bFldsFnd = sal_False; if( b && pChk && !GetUpdtFlds().IsFieldsDirty() && !IsInDtor() - // ?? was ist mit Undo, da will man es doch auch haben !! + // ?? what's up with Undo, this is also wanted there! /*&& &pChk->GetNodes() == &GetNodes()*/ ) { b = sal_False; @@ -2125,7 +2119,7 @@ bool SwDoc::SetFieldsDirty( bool b, const SwNode* pChk, sal_uLong nLen ) if( pTNd ) { if( pTNd->GetAttrOutlineLevel() != 0 ) - // Kapitelfelder aktualisieren + // update chapter fields b = sal_True; else if( pTNd->GetpSwpHints() && pTNd->GetSwpHints().Count() ) for( sal_uInt16 n = 0, nEnd = pTNd->GetSwpHints().Count(); @@ -2179,7 +2173,7 @@ void SwDocUpdtFld::InsDelFldInFldLst( sal_Bool bIns, const SwTxtFld& rFld ) case RES_DBNEXTSETFLD: case RES_DBSETNUMBERFLD: case RES_GETEXPFLD: - break; // diese muessen ein-/ausgetragen werden! + break; // these have to be added/removed! default: return; @@ -2188,22 +2182,21 @@ void SwDocUpdtFld::InsDelFldInFldLst( sal_Bool bIns, const SwTxtFld& rFld ) SetFieldsDirty( sal_True ); if( !pFldSortLst ) { - if( !bIns ) // keine Liste vorhanden und loeschen - return; // dann nichts tun + if( !bIns ) // if list is present and deleted + return; // don't do a thing pFldSortLst = new _SetGetExpFlds( 64, 16 ); } - if( bIns ) // neu einfuegen: + if( bIns ) // insert anew: GetBodyNode( rFld, nWhich ); else { - // ueber den pTxtFld Pointer suchen. Ist zwar eine Sortierte - // Liste, aber nach Node-Positionen sortiert. Bis dieser - // bestimmt ist, ist das Suchen nach dem Pointer schon fertig + // look up via the pTxtFld pointer. It is a sorted list, but it's sorted by node + // position. Until this is found, the search for the pointer is already done. for( sal_uInt16 n = 0; n < pFldSortLst->Count(); ++n ) if( &rFld == (*pFldSortLst)[ n ]->GetPointer() ) pFldSortLst->DeleteAndDestroy( n--, 1 ); - // ein Feld kann mehrfach vorhanden sein! + // one field can occur multiple times } } @@ -2216,7 +2209,7 @@ void SwDocUpdtFld::MakeFldList( SwDoc& rDoc, int bAll, int eGetMode ) void SwDocUpdtFld::_MakeFldList( SwDoc& rDoc, int eGetMode ) { - // neue Version: gehe ueber alle Felder vom Attribut-Pool + // new version: walk all fields of the attribute pool if( pFldSortLst ) delete pFldSortLst; pFldSortLst = new _SetGetExpFlds( 64, 16 ); @@ -2234,12 +2227,11 @@ void SwDocUpdtFld::_MakeFldList( SwDoc& rDoc, int eGetMode ) /// have to be known in order to insert the hide condition as a new /// expression field into the sorted field list (<pFldSortLst>). if ( eGetMode == GETFLD_ALL ) - // zuerst die Bereiche einsammeln. Alle die ueber Bedingung - // gehiddet sind, wieder mit Frames versorgen, damit die darin - // enthaltenen Felder richtig einsortiert werden!!! + // Collect the ranges first. Supply all with frames, which are hidden by condition, + // so that the contained fields are not sorted. { - // damit die Frames richtig angelegt werden, muessen sie in der - // Reihenfolgen von oben nach unten expandiert werden + // In order for the frames to be created the right way, they have to be expanded + // from top to bottom std::vector<sal_uLong> aTmpArr; SwSectionFmts& rArr = rDoc.GetSections(); SwSectionNode* pSectNd; @@ -2260,23 +2252,22 @@ void SwDocUpdtFld::_MakeFldList( SwDoc& rDoc, int eGetMode ) } std::sort(aTmpArr.begin(), aTmpArr.end()); - // erst alle anzeigen, damit die Frames vorhanden sind. Mit deren - // Position wird das BodyAnchor ermittelt. - // Dafuer erst den ContentBereich, dann die Sonderbereiche!!! + // Display all first so that we have frames. The BodyAnchor is defined by that. + // First the ContentArea, then the special areas! for (sal_uInt16 n = nArrStt; n < aTmpArr.size(); ++n) { pSectNd = rDoc.GetNodes()[ aTmpArr[ n ] ]->GetSectionNode(); - OSL_ENSURE( pSectNd, "Wo ist mein SectionNode" ); + OSL_ENSURE( pSectNd, "Where is my SectionNode" ); pSectNd->GetSection().SetCondHidden( sal_False ); } for (sal_uInt16 n = 0; n < nArrStt; ++n) { pSectNd = rDoc.GetNodes()[ aTmpArr[ n ] ]->GetSectionNode(); - OSL_ENSURE( pSectNd, "Wo ist mein SectionNode" ); + OSL_ENSURE( pSectNd, "Where is my SectionNode" ); pSectNd->GetSection().SetCondHidden( sal_False ); } - // so, erst jetzt alle sortiert in die Liste eintragen + // add all to the list so that they are sorted for (sal_uInt16 n = 0; n < aTmpArr.size(); ++n) { GetBodyNode( *rDoc.GetNodes()[ aTmpArr[ n ] ]->GetSectionNode() ); @@ -2337,7 +2328,7 @@ void SwDocUpdtFld::_MakeFldList( SwDoc& rDoc, int eGetMode ) break; pFormel = 0; - // Formatierung anstossen + // trigger formatting ((SwFmtFld*)pFmtFld)->ModifyNotification( 0, 0 ); } break; @@ -2355,9 +2346,9 @@ void SwDocUpdtFld::_MakeFldList( SwDoc& rDoc, int eGetMode ) pFormel = 0; - // Feld Evaluieren + // evaluate field ((SwHiddenTxtField*)pFld)->Evaluate(&rDoc); - // Formatierung anstossen + // trigger formatting ((SwFmtFld*)pFmtFld)->ModifyNotification( 0, 0 ); } break; @@ -2405,7 +2396,7 @@ void SwDocUpdtFld::GetBodyNode( const SwTxtFld& rTFld, sal_uInt16 nFldWhich ) const SwTxtNode& rTxtNd = rTFld.GetTxtNode(); const SwDoc& rDoc = *rTxtNd.GetDoc(); - // immer den ersten !! (in Tab-Headline, Kopf-/Fuss ) + // always the first! (in tab headline, header-/footer) Point aPt; const SwCntntFrm* pFrm = rTxtNd.getLayoutFrm( rDoc.GetCurrentLayout(), &aPt, 0, sal_False ); @@ -2414,7 +2405,7 @@ void SwDocUpdtFld::GetBodyNode( const SwTxtFld& rTFld, sal_uInt16 nFldWhich ) if( !pFrm || pFrm->IsInDocBody() ) { - // einen Index fuers bestimmen vom TextNode anlegen + // create index to determine the TextNode SwNodeIndex aIdx( rTxtNd ); bIsInBody = rDoc.GetNodes().GetEndOfExtras().GetIndex() < aIdx.GetIndex(); @@ -2427,7 +2418,7 @@ void SwDocUpdtFld::GetBodyNode( const SwTxtFld& rTFld, sal_uInt16 nFldWhich ) } else { - // einen Index fuers bestimmen vom TextNode anlegen + // create index to determine the TextNode SwPosition aPos( rDoc.GetNodes().GetEndOfPostIts() ); #if OSL_DEBUG_LEVEL > 1 OSL_ENSURE( GetBodyTxtNode( rDoc, aPos, *pFrm ), "wo steht das Feld" ); @@ -2437,7 +2428,7 @@ void SwDocUpdtFld::GetBodyNode( const SwTxtFld& rTFld, sal_uInt16 nFldWhich ) pNew = new _SetGetExpFld( aPos.nNode, &rTFld, &aPos.nContent ); } - // bei GetExp.-/DB.-Felder immer das BodyTxtFlag setzen + // always set the BodyTxtFlag in GetExp or DB fields if( RES_GETEXPFLD == nFldWhich ) { SwGetExpField* pGetFld = (SwGetExpField*)rTFld.GetFld().GetFld(); @@ -2463,15 +2454,15 @@ void SwDocUpdtFld::GetBodyNode( const SwSectionNode& rSectNd ) { do { // middle check loop - // dann muessen wir uns mal den Anker besorgen! - // einen Index fuers bestimmen vom TextNode anlegen + // we need to get the anchor first + // create index to determine the TextNode SwPosition aPos( rSectNd ); - SwCntntNode* pCNd = rDoc.GetNodes().GoNext( &aPos.nNode ); // zum naechsten ContentNode + SwCntntNode* pCNd = rDoc.GetNodes().GoNext( &aPos.nNode ); // to the next ContentNode if( !pCNd || !pCNd->IsTxtNode() ) break; - // immer den ersten !! (in Tab-Headline, Kopf-/Fuss ) + // always the first! (in tab headline, header-/footer) Point aPt; const SwCntntFrm* pFrm = pCNd->getLayoutFrm( rDoc.GetCurrentLayout(), &aPt, 0, sal_False ); if( !pFrm ) @@ -2512,7 +2503,7 @@ void SwDocUpdtFld::InsertFldType( const SwFieldType& rType ) if( sFldName.Len() ) { SetFieldsDirty( sal_True ); - // suchen und aus der HashTabelle entfernen + // look up and remove from the hash table GetAppCharClass().toLower( sFldName ); sal_uInt16 n; @@ -2543,7 +2534,7 @@ void SwDocUpdtFld::RemoveFldType( const SwFieldType& rType ) if( sFldName.Len() ) { SetFieldsDirty( sal_True ); - // suchen und aus der HashTabelle entfernen + // look up and remove from the hash table GetAppCharClass().toLower( sFldName ); sal_uInt16 n; @@ -2654,9 +2645,8 @@ bool SwDoc::UpdateFld(SwTxtFld * pDstTxtFld, SwField & rSrcFld, case RES_DBFLD: { - // JP 10.02.96: ChgValue aufrufen, damit - //die Format- aenderung den ContentString - //richtig setzt + // JP 10.02.96: call ChgValue, so that the style change sets the + // ContentString correctly SwDBField* pDBFld = (SwDBField*)pNewFld; if (pDBFld->IsInitialized()) pDBFld->ChgValue( pDBFld->GetValue(), sal_True ); @@ -2664,14 +2654,13 @@ bool SwDoc::UpdateFld(SwTxtFld * pDstTxtFld, SwField & rSrcFld, pDBFld->ClearInitialized(); pDBFld->InitContent(); } - // kein break; + // no break; default: pDstFmtFld->ModifyNotification( 0, pMsgHnt ); } - // Die Felder die wir berechnen koennen werden hier expli. - // zum Update angestossen. + // The fields we can calculate here are being triggered for an update here explicitily. if( nFldWhich == RES_USERFLD ) UpdateUsrFlds(); } |