*path source: ~/Scrivania/build/clone/writer/sw/source/filter/html*

deleted comments in German. diff attached

greetings to all
--
Linux user number 526206 http://counter.li.org/
--- css1atr.cxx	2010-10-28 22:12:01.426127545 +0200
+++ css1atrNEW.cxx	2010-10-29 19:27:40.563512829 +0200
@@ -103,15 +103,7 @@
 #include <IDocumentStylePoolAccess.hxx>
 #include <numrule.hxx>
 
-/*
- * um nicht immer wieder nach einem Update festzustellen, das irgendwelche
- * Hint-Ids dazugekommen sind, wird hier definiert, die Groesse der Tabelle
- * definiert und mit der akt. verglichen. Bei unterschieden wird der
- * Compiler schon meckern.
- *
- * diese Section und die dazugeherigen Tabellen muessen in folgenden Files
- * gepflegt werden: rtf\rtfatr.cxx, sw6\sw6atr.cxx, w4w\w4watr.cxx
- */
+
 #if !defined(UNX) && !defined(MSC) && !defined(PPC) && !defined(CSET) && !defined(__MWERKS__) && !defined(WTC) && !defined(__MINGW32__) && !defined(OS2)
 
 #define ATTRFNTAB_SIZE 130
@@ -188,7 +180,7 @@
 {
     sal_Char aNToABuf[] = "00";
 
-    // Pointer an das Bufferende setzen
+    
     sal_Char *pStr = aNToABuf + (sizeof(aNToABuf)-1);
     for( BYTE n = 0; n < 2; ++n )
     {
@@ -296,7 +288,7 @@
     (sOut += pProp) += ": ";
     if( nCSS1OutMode & CSS1_OUTMODE_ENCODE )
     {
-        // In STYLE-Optionen den String codieren
+        
         Strm() << sOut.GetBuffer();
         sOut.Erase();
         if( pVal )
@@ -307,7 +299,7 @@
     }
     else
     {
-        // Im STYLE-Tag des String direct ausgeben
+        
         if( pVal )
             sOut += pVal;
         else if( pSVal )
@@ -325,12 +317,12 @@
 {
     if( nVal < 0 )
     {
-        // Vorzeichen extra behandeln
+        
         nVal = -nVal;
         rOut += '-';
     }
 
-    // Die umgerechnete Einheit ergibt sich aus (x * nMul)/(nDiv*nFac*10)
+    
     long nMul = 1000;
     long nDiv = 1;
     long nFac = 100;
@@ -357,7 +349,7 @@
         nDiv = 1440;	// 72 * 20;
         nFac = 1000;
 #else
-        // 0.01cm = 5.7twip (ist zwar ungenau, aber die UI ist auch ungenau)
+        // 0.01cm = 5.7twip 
         nMul = 2540;	// 2.54 * 1000
         nDiv = 1440;	// 72 * 20;
         nFac = 100;
@@ -374,7 +366,7 @@
         nDiv = 20;
         nFac = 100;
 #else
-        // 0.1pt = 2.0twip (ist zwar ungenau, aber die UI ist auch ungenau)
+        // 0.1pt = 2.0twip 
         nMul = 100;
         nDiv = 20;
         nFac = 10;
@@ -389,7 +381,7 @@
         nDiv = 12 * 20;
         nFac = 1000;
 #else
-        // 0.01pc = 2.40twip (ist zwar ungenau, aber die UI ist auch ungenau)
+        // 0.01pc = 2.40twip 
         nMul = 1000;
         nDiv = 240;		// 12 * 20;
         nFac = 100;
@@ -411,7 +403,7 @@
         nDiv = 1440;	// 72 * 20;
         nFac = 10000;
 #else
-        // 0.01in = 14.4twip (ist zwar ungenau, aber die UI ist auch ungenau)
+        // 0.01in = 14.4twip 
         nMul = 1000;
         nDiv = 1440;	// 72 * 20;
         nFac = 100;
@@ -424,7 +416,7 @@
     BOOL bOutLongVal = TRUE;
     if( nVal > LONG_MAX / nMul )
     {
-        // Zum Unrechnen der Einheit wird ein BigInt benoetigt
+       
 #ifdef SAL_INT64_IS_STRUCT
         BigInt nBigVal( nVal );
         nBigVal *= nMul;
@@ -434,7 +426,7 @@
 
         if( nBigVal.IsLong() )
         {
-            // Zum Ausgeben des Wertes reicht ein long.
+           
             nLongVal = (long)nBigVal;
         }
         else
@@ -463,7 +455,7 @@
 
         if( nBigVal <= LONG_MAX )
         {
-            // Zum Ausgeben des Wertes reicht ein long.
+           
             nLongVal = (long)nBigVal;
         }
         else
@@ -535,14 +527,13 @@
 void SwHTMLWriter::OutCSS1_SfxItemSet( const SfxItemSet& rItemSet,
                                        BOOL bDeep )
 {
-    // den ItemSet ausgeben, und zwar inklusive aller Attribute
+    
     Out_SfxItemSet( aCSS1AttrFnTab, *this, rItemSet, bDeep );
 
-    // ein par Attribute benoetigen eine Spezial-Behandlung
+   
     const SfxPoolItem *pItem = 0;
 
-    // Underline, Overline, CrossedOut und Blink bilden zusammen eine CSS1-Property
-    // (geht natuerlich nicht bei Hints)
+    
     if( !IsCSS1Source(CSS1_OUTMODE_HINT) )
     {
         const SvxUnderlineItem *pUnderlineItem = 0;
@@ -572,8 +563,7 @@
 
     if( !bFirstCSS1Property )
     {
-        // wenn eine Property als Bestandteil einer Style-Option
-        // ausgegeben wurde, muss die Optiomn noch beendet werden
+        
         ByteString sOut;
         switch( nCSS1OutMode & CSS1_OUTMODE_ANY_OFF )
         {
@@ -605,22 +595,14 @@
         USHORT nFirstRefPoolId = RES_POOLPAGE_HTML;
         bCSS1IgnoreFirstPageDesc = TRUE;
 
-        // Erstmal versuchen wir zu erraten, wie das Dokument so augebaut ist.
-        // Erlaubt sind nur die Vorlagen HTML, erste Seite, linke Seite und
-        // rechte Seite.
-        // Eine erste Seite wird nur exportiert, wenn die erste Seite auch
-        // wirklich die Vorlage "erste Seite" ist.
-        // Linke und rechte Seiten werden nur exportiert, wenn diese beiden
-        // Vorlagen untereinander verkettet werden.
-        // Wenn andere Vorlagen verwendet werden, wird nur in sehr einfachen
-        // Faellen etwas exportiert.
+        
         const SwPageDesc *pPageDesc = &rPageDesc;
         const SwPageDesc *pFollow = rPageDesc.GetFollow();
         if( RES_POOLPAGE_FIRST == pPageDesc->GetPoolFmtId() &&
             pFollow != pPageDesc &&
             !IsPoolUserFmt( pFollow->GetPoolFmtId() ) )
         {
-            // Das Dokument hat eine erste Seite
+            
             pFirstPageDesc = pPageDesc;
             pPageDesc = pFollow;
             pFollow = pPageDesc->GetFollow();
@@ -629,10 +611,7 @@
         IDocumentStylePoolAccess* pStylePoolAccess = getIDocumentStylePoolAccess();
         if( pPageDesc == pFollow )
         {
-            // Das Dokument ist einseitig. Egal welche Seite verwendet wird,
-            // es wird kein zweiseitiges Dokument daraus gemacht.
-            // Die Attributierung wird relativ zur HTML-Seitenvorlage
-            // aus der HTML-Vorlage exportiert.
+            
           OutCSS1_SwPageDesc( *this, *pPageDesc, pStylePoolAccess, pTemplate,
                                 RES_POOLPAGE_HTML, TRUE, FALSE );
             nFirstRefPoolId = pFollow->GetPoolFmtId();
@@ -642,7 +621,7 @@
                  (RES_POOLPAGE_RIGHT == pPageDesc->GetPoolFmtId() &&
                   RES_POOLPAGE_LEFT == pFollow->GetPoolFmtId()) )
         {
-            // Das Dokument ist zweiseitig
+            
           OutCSS1_SwPageDesc( *this, *pPageDesc, pStylePoolAccess, pTemplate,
                                 RES_POOLPAGE_HTML, TRUE );
           OutCSS1_SwPageDesc( *this, *pFollow, pStylePoolAccess, pTemplate,
@@ -650,7 +629,7 @@
             nFirstRefPoolId = RES_POOLPAGE_RIGHT;
             bCSS1IgnoreFirstPageDesc = FALSE;
         }
-        // Alles andere bekommen wir nicht hin.
+        
 
         if( pFirstPageDesc )
           OutCSS1_SwPageDesc( *this, *pFirstPageDesc, pStylePoolAccess, pTemplate,
@@ -664,8 +643,7 @@
     // that maps to <P>, and that's especially the standard style
     getIDocumentStylePoolAccess()->GetTxtCollFromPool( RES_POOLCOLL_TEXT, false );
 
-    // das Default-TextStyle wir nicht mit ausgegeben !!
-    // das 0-Style ist das Default, wird nie ausgegeben !!
+    
     USHORT nArrLen = pDoc->GetTxtFmtColls()->Count();
     USHORT i;
 
@@ -678,7 +656,7 @@
             OutCSS1_SwFmt( *this, *pColl, pDoc, pTemplate );
     }
 
-    // das Default-TextStyle wir nicht mit ausgegeben !!
+    !
     nArrLen = pDoc->GetCharFmts()->Count();
     for( i=1; i<nArrLen; i++ )
     {
@@ -723,8 +701,7 @@
 
 //-----------------------------------------------------------------------
 
-// wenn pPseudo gesetzt ist werden Styles-Sheets ausgegeben,
-// sonst wird nur nach Token und Class fuer ein Format gesucht
+
 USHORT SwHTMLWriter::GetCSS1Selector( const SwFmt *pFmt, ByteString& rToken,
                                       String& rClass, USHORT& rRefPoolId,
                                       String *pPseudo )
@@ -737,8 +714,7 @@
 
     BOOL bChrFmt = RES_CHRFMT==pFmt->Which();
 
-    // Nach oben die Formate abklappern, bis man auf eine Standard-
-    // oder eine HTML-Tag-Vorlage trifft
+    
     const SwFmt *pPFmt = pFmt;
     while( pPFmt && !pPFmt->IsDefault() )
     {
@@ -746,7 +722,7 @@
         USHORT nPoolId = pPFmt->GetPoolFmtId();
         if( USER_FMT & nPoolId )
         {
-            // Benutzer-Vorlagen
+            
             const String& rNm = pPFmt->GetName();
             switch( rNm.GetChar(0) )
             {
@@ -786,9 +762,7 @@
                         else if( !bChrFmt )
                         {
                             USHORT nDefListLvl = GetDefListLvl( rNm, nPoolId );
-                            // Die Vorlagen DD 1/DT 1 werden ausgegeben,
-                            // aber keine von ihnen abgeleiteten Vorlagen,
-                            // auch nicht DD 2/DT 2 etc.
+                            
                             if( nDefListLvl )
                             {
                                 if( pPseudo &&
@@ -816,7 +790,7 @@
                         }
                         break;
             case 'H':	if( !bChrFmt && rNm.EqualsAscii( OOO_STRING_SVTOOLS_HTML_horzrule ) )
-                            // HR nicht ausgeben!
+                            
                             bStop = (nDeep==0);
                         break;
             case 'K':	if( bChrFmt && rNm.EqualsAscii( OOO_STRING_SVTOOLS_HTML_keyboard ) )
@@ -827,8 +801,7 @@
                         break;
             case 'L':	if( !bChrFmt && rNm.EqualsAscii( OOO_STRING_SVTOOLS_HTML_listing ) )
                         {
-                            // Listing als PRE exportieren bzw. von
-                            // PRE abgeleitete Vorlage exportieren
+                            
                             rToken.Assign( OOO_STRING_SVTOOLS_HTML_preformtxt );
                             rRefPoolId = RES_POOLCOLL_HTML_PRE;
                             nDeep = CSS1_FMT_CMPREF;
@@ -868,8 +841,7 @@
                         break;
             case 'X':	if( !bChrFmt && rNm.EqualsAscii( OOO_STRING_SVTOOLS_HTML_xmp ) )
                         {
-                            // XMP als PRE exportieren (aber nicht die
-                            // Vorlage als Style)
+                            
                             rToken.Assign( OOO_STRING_SVTOOLS_HTML_preformtxt );
                             rRefPoolId = RES_POOLCOLL_HTML_PRE;
                             nDeep = CSS1_FMT_CMPREF;
@@ -877,20 +849,19 @@
                         break;
             }
 
-            // Wenn eine PoolId gesetzt ist, entspricht der Name der
-            // Vorlage dem szugehoerigen Token
+            
             ASSERT( rRefPoolId != 0 == rToken.Len() > 0,
                     "Token missing" );
         }
         else
         {
-            // Pool-Vorlagen
+            
             switch( nPoolId )
             {
-            // Absatz-Vorlagen
+            
             case RES_POOLCOLL_HEADLINE_BASE:
             case RES_POOLCOLL_STANDARD:
-                // diese Vorlagen nicht ausgeben
+                
                 bStop = (nDeep==0);
                 break;
             case RES_POOLCOLL_TEXT:
@@ -952,7 +923,7 @@
                     rToken.Assign( OOO_STRING_SVTOOLS_HTML_parabreak );
                 break;
             case RES_POOLCOLL_HTML_HR:
-                // HR nicht ausgeben!
+                
                 bStop = (nDeep==0);
                 break;
             case RES_POOLCOLL_FOOTNOTE:
@@ -974,7 +945,7 @@
                 }
                 break;
 
-            // Zeichen-Vorlagen
+            
             case RES_POOLCHR_HTML_EMPHASIS:
                 rToken.Assign( OOO_STRING_SVTOOLS_HTML_emphasis );
                 break;
@@ -1019,20 +990,19 @@
                 break;
             }
 
-            // Wenn ein Token gesetzt ist, enthaelt nPoolId die dazugehoerige
-            // Vorlage
+            
             if( rToken.Len() && !rRefPoolId )
                 rRefPoolId = nPoolId;
         }
 
         if( rToken.Len() || bStop )
         {
-            // Anhalten wenn eine HTML-Tag-Vorlage gefunden wurde
+            
             break;
         }
         else
         {
-            // sonst weitersuchen
+            
             nDeep++;
             pPFmt = pPFmt->DerivedFrom();
         }
@@ -1040,21 +1010,18 @@
 
     if( rToken.Len() )
     {
-        // Es ist eine HTML-Tag-Vorlage
+        
         if( !nDeep )
             nDeep = CSS1_FMT_ISTAG;
     }
     else
     {
-        // Es ist keine HTML-Tag-Vorlage und auch keine davon abgeleitete
+        
         nDeep = 0;
     }
     if( nDeep > 0 && nDeep < CSS1_FMT_SPECIAL )
     {
-        // Wenn die Vorlage von einer HTML-Vorlage abgeleitet ist,
-        // wird sie als <TOKEN>.<CLASS> exportiert, sonst als .<CLASS>.
-        // <CLASS> ergibt sich aus dem Namen der Vorlage durch entfernen
-        // aller Zeichen vor und inklusive dem ersten '.'
+        
         rClass = pFmt->GetName();
         xub_StrLen nPos = rClass.Search( '.' );
         if( nPos != STRING_NOTFOUND && rClass.Len() > nPos+1 )
@@ -1124,8 +1091,7 @@
 
     if( nDeep > 0 )
     {
-        // hier wird die HTML-Tag-Vorlage, von der die Vorlage abgeleitet
-        // ist als Referenz geholt
+        
         pRefFmt = &rFmt;
         for( USHORT i=nDeep; i>0; i-- )
             pRefFmt = pRefFmt->DerivedFrom();
@@ -1156,7 +1122,7 @@
     SfxItemSet aRefItemSet( *rRefItemSet.GetPool(),	rRefItemSet.GetRanges() );
     aRefItemSet.Set( rRefItemSet );
 
-    // und mit dem Attr-Set der Vorlage vergleichen
+    
     SfxWhichIter aIter( rItemSet );
     USHORT nWhich = aIter.FirstWhich();
     while( nWhich )
@@ -1209,8 +1175,7 @@
                     RES_CHRATR_CTL_FONT == nWhich)  &&
                    lcl_css1atr_equalFontItems( *pItem, *pRefItem )) ) )
             {
-                // das Attribut ist mit dem gleichen Wert in beiden
-                // Vorlagen vorhanden und muss nicht ausgegeben werden
+                
                 rItemSet.ClearItem( nWhich );
             }
         }
@@ -1218,8 +1183,7 @@
         {
             if( (bSetDefaults || pRefScriptItemSet) && bRefItemSet )
             {
-                // das Attribut ist nur in der Referenz vorhanden. Das
-                // Default muss ggf. ausgegeben werden
+                
                 rItemSet.Put( rItemSet.GetPool()->GetDefaultItem(nWhich) );
             }
         }
@@ -1637,41 +1601,24 @@
 
     case RES_TXTFMTCOLL:
     case RES_CONDTXTFMTCOLL:
-        // diese Vorlagen-Typen koennen exportiert werden
+        
         break;
 
     default:
-        // und diese nicht
+        
         return rWrt;
     }
 
-    // den Selector und die auszugebende Attr-Set-Tiefe ermitteln
+    
     String aSelector;
     USHORT nRefPoolId = 0;
     USHORT nDeep = GetCSS1Selector( &rFmt, aSelector, nRefPoolId );
     if( !nDeep )
-        return rWrt;	// von keiner HTML-Vorlage abgeleitet
+        return rWrt;	
 
     USHORT nPoolFmtId = rFmt.GetPoolFmtId();
 
-    // Den auszugebenden Attr-Set bestimmen. Hier muessen 3 Faelle
-    // unterschieden werden:
-    // - HTML-Tag-Vorlagen (nDeep==USHRT_MAX):
-    //   Es werden die Attrs ausgegeben
-    //     - die in der Vorlage gesetzt sind, aber nicht im Original aus
-    //       der HTML-Vorlage
-    //     - die Default-Attrs fuer die Attrs, die im Original aus der
-    //       HTML-Vorlage gesetzt sind, aber nicht in der vorliegeden Vorlage.
-    // - direkt von HTML-Vorlagen abgeleitete Vorlagen (nDeep==1):
-    //   Es weren nur die Attribute des Vorlagen-Item-Set ohne seine
-    //   Parents ausgegeben.
-    // - indirekt von HTML-Tag-Vorlagen abgeleitete Vorlagen (nDeep>1)
-    //   Es werden die Attribute des Vorlagen-Item-Sets inkl. seiner Parents,
-    //   aber ohne die Attribute, die in der HTML-Tag-Vorlage gesetzt sind,
-    //   ausgegeben.
-
-    // einen Item-Set mit allen Attributen aus der Vorlage anlegen
-    // (ausser fuer nDeep==1)
+    
     const SfxItemSet& rFmtItemSet = rFmt.GetAttrSet();
     SfxItemSet aItemSet( *rFmtItemSet.GetPool(), rFmtItemSet.GetRanges() );
     aItemSet.Set( rFmtItemSet, TRUE ); // Was nDeep!=1 that is not working
@@ -1700,8 +1647,7 @@
 
     if( pRefFmt )
     {
-        // Den Item-Set der Referenz-Vorlage (inkl. seiner Parents) vom
-        // ItemSet abziehen
+        
         SwHTMLWriter::SubtractItemSet( aItemSet, pRefFmt->GetAttrSet(),
                                        bSetDefaults, bClearSame,
                                        pRefFmtScript
@@ -1717,13 +1663,12 @@
     }
     else if( CSS1_FMT_ISTAG==nDeep && !bCharFmt )
     {
-        // die Default-Abstaende nach oben und unten setzen (fuer den
-        // Fall, dass es keine Vorlage als Referenz gibt)
+        
         rHTMLWrt.nDfltTopMargin = 0;
         rHTMLWrt.nDfltBottomMargin = HTML_PARSPACE;
         if( USER_FMT & nPoolFmtId )
         {
-            // Benutzer-Vorlagen
+            
             const String& rNm = rFmt.GetName();
             switch( rNm.GetChar(0) )
             {
@@ -1743,7 +1688,7 @@
         }
         else
         {
-            // Pool-Vorlagen
+            
             switch( nPoolFmtId )
             {
             case RES_POOLCOLL_HEADLINE1:
@@ -1764,7 +1709,7 @@
         }
     }
 
-    // wo nicht auszugeben ist ...
+    
     if( !aItemSet.Count() )
         return rWrt;
 
@@ -1776,7 +1721,7 @@
         bCheckForPseudo = sal_True;
 
 
-    // jetzt die Attribute (inkl. Selektor) ausgeben
+    
     sal_Bool bHasScriptDependencies = sal_False;
     if( OutCSS1Rule( rHTMLWrt, aSelector, aItemSet, CSS1_FMT_ISTAG != nDeep,
                       bCheckForPseudo ) )
@@ -1798,7 +1743,7 @@
     if( nPoolFmtId==RES_POOLCOLL_TEXT && !rHTMLWrt.bFirstCSS1Property )
         rHTMLWrt.bPoolCollTextModified = TRUE;
 
-    // Drop-Caps ausgeben
+    
     const SfxPoolItem *pItem;
     if( rHTMLWrt.IsHTMLMode(HTMLMODE_DROPCAPS) &&
         SFX_ITEM_SET==aItemSet.GetItemState( RES_PARATR_DROP, FALSE, &pItem ))
@@ -1848,9 +1793,7 @@
     SwCSS1OutMode aMode( rHTMLWrt, CSS1_OUTMODE_RULE_ON|CSS1_OUTMODE_TEMPLATE,
                          TRUE, &aSelector );
 
-    // Die Groesse: Wenn sie sich nur durch das Landscape-Flag unterscheidet,
-    // wird nur Portrait oder Landscape exportiert. Sonst wird die Groesse
-    // exportiert.
+    
     BOOL bRefLandscape = pRefPageDesc ? pRefPageDesc->GetLandscape() : FALSE;
     Size aRefSz;
     const Size& rSz = rPageDesc.GetMaster().GetFrmSize().GetSize();
@@ -1865,13 +1808,7 @@
         }
     }
 
-    // Boeser uebler Hack: Auf der Seiten-Tabpage gibt es leichte
-    // Rundungsfehler bei der Seitengroesse. Unter anderem wegen bug
-    // 25535 wird dummerweise auch noch immer Size-Item vom Dialog geputtet,
-    // auch wenn man gar nichts geaendert hat. Folge: Sobald man einmal im
-    // Seiten-Dialog war und ihn mit OK verlassen hat, bekommt man eine
-    // neue Seitengroesse, die dann hier exportiert wuerde. Um das
-    // vermeiden erlauben wir hier kleine Abweichungen.
+    
     if( Abs( rSz.Width() - aRefSz.Width() ) <= 2 &&
         Abs( rSz.Height() - aRefSz.Height() ) <= 2 )
     {
@@ -1891,7 +1828,7 @@
         rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_size, sVal );
     }
 
-    // Die Abstand-Attribute koennen auf gwohnte Weise exportiert werden
+    
     const SwFrmFmt &rMaster = rPageDesc.GetMaster();
     SfxItemSet aItemSet( *rMaster.GetAttrSet().GetPool(),
                          RES_LR_SPACE, RES_UL_SPACE );
@@ -1906,9 +1843,7 @@
 
     OutCSS1_SvxULSpace_SvxLRSpace( rWrt, aItemSet, FALSE );
 
-    // Wenn fuer einen Pseudo-Selektor keine Property ausgegeben wurde, muessen
-    // wir trotzdem etwas ausgeben, damit beim Import die entsprechende
-    // Vorlage angelegt wird.
+    
     if( rHTMLWrt.bFirstCSS1Property && bPseudo )
     {
         rHTMLWrt.OutNewLine();
@@ -1950,10 +1885,7 @@
         SfxItemSet aItemSet( *rFmtItemSet.GetPool(), rFmtItemSet.GetRanges() );
         aItemSet.Set( rFmtItemSet, TRUE );
 
-        // Wenn es Fuss- bzw. Endnoten gibt, dann muessen alles Attribute
-        // ausgegeben werden, damit Netscape das Dokument richtig anzeigt.
-        // Anderenfalls genuegt es, die Unterschiede zur Fuss-/Endnoten
-        // Vorlage rauszuschreiben.
+        
         if( nNotes == 0 && rHTMLWrt.pTemplate )
         {
             SwFmt *pRefFmt = rHTMLWrt.pTemplate->GetCharFmtFromPool(
@@ -1985,9 +1917,7 @@
                                    CSS1_OUTMODE_ENCODE|CSS1_OUTMODE_BODY );
 
 
-    // Es werden nur die Attribute der Seiten-Vorlage ausgegeben.
-    // Die Attribute der Standard-Absatz-Vorlage werden schon beim
-    // Export der Absatz-Vorlagen beruecksichtigt.
+    
 
     const SfxPoolItem *pItem;
     if( SFX_ITEM_SET == rItemSet.GetItemState( RES_BACKGROUND, FALSE,
@@ -2005,8 +1935,7 @@
 
     if( !rHTMLWrt.bFirstCSS1Property )
     {
-        // wenn eine Property als Bestandteil einer Style-Option
-        // ausgegeben wurde, muss die Optiomn noch beendet werden
+        
         rWrt.Strm() << '\"';
     }
 
@@ -2055,7 +1984,7 @@
     return rWrt;
 }
 
-// Wrapper fuer die Ausgabe von Tabellen-Hintergruenden
+
 Writer& OutCSS1_TableBGStyleOpt( Writer& rWrt, const SfxPoolItem& rHt )
 {
     SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt;
@@ -2147,13 +2076,7 @@
                 // position
                 OutCSS1_PropertyAscii( sCSS1_P_position, sCSS1_PV_absolute );
 
-                // Fuer top/left muessen die Abstaende des Rahmens von
-                // der Position abgezogen werden, da sie in CSS1 noch
-                // zur Position addiert werden.
-                // Das funktioniert auch fuer automatisch ausgerichtete
-                // Rahmen, obwohl der Abstand da ja auch im Writer noch
-                // addiert wird. Denn auch in diesem Fall enthalten
-                // die Orient-Attribute die korrekte Position
+                
 
                 // top
                 long nXPos=0, nYPos=0;
@@ -2295,7 +2218,7 @@
             OutCSS1_SvxBox( *this, *pItem );
     }
 
-    // background (wenn, dann muss auch eine Farbe ausgegeben werden)
+    // background 
     if( nFrmOpts & HTML_FRMOPT_S_BACKGROUND )
         OutCSS1_FrmFmtBackground( rFrmFmt );
 
@@ -2361,12 +2284,11 @@
 
 void SwHTMLWriter::OutCSS1_FrmFmtBackground( const SwFrmFmt& rFrmFmt )
 {
-    // Wenn der Rahmen selbst einen Hintergrund hat, wird der ausgegeben.
+    
     if( OutCSS1_FrmFmtBrush( *this, rFrmFmt.GetBackground() ) )
         return;
 
-    // Wenn der Rahmen nicht seitengebunden ist, wird sonst muss der
-    // Hintergrund vom Anker betrachtet
+    
     const SwFmtAnchor& rAnchor = rFrmFmt.GetAnchor();
     RndStdIds eAnchorId = rAnchor.GetAnchorId();
     const SwPosition *pAnchorPos = rAnchor.GetCntntAnchor();
@@ -2375,14 +2297,12 @@
         const SwNode& rNode = pAnchorPos->nNode.GetNode();
         if( rNode.IsCntntNode() )
         {
-            // Wenn der Rahmen in einem Content-Node verankert ist,
-            // wird der Hintergrund von Content-Node ausgegeben, wenn
-            // der einen hat.
+            
             if( OutCSS1_FrmFmtBrush( *this,
                     rNode.GetCntntNode()->GetSwAttrSet().GetBackground()) )
                 return;
 
-            // Sonst koennen wir evtl. auch in einer Tabelle stehen
+            
             const SwTableNode *pTableNd = rNode.FindTableNode();
             if( pTableNd )
             {
@@ -2390,12 +2310,12 @@
                 const SwTableBox *pBox =
                     pTableNd->GetTable().GetTblBox( pBoxSttNd->GetIndex() );
 
-                // Wenn die Box einen Hintergrund hat, nehmen wir den.
+                
                 if( OutCSS1_FrmFmtBrush( *this,
                         pBox->GetFrmFmt()->GetBackground() ) )
                     return;
 
-                // Sonst betrachten wir den der Lines
+               
                 const SwTableLine *pLine = pBox->GetUpper();
                 while( pLine )
                 {
@@ -2406,7 +2326,7 @@
                     pLine = pBox ? pBox->GetUpper() : 0;
                 }
 
-                // Wenn da auch nichts war den der Tabelle.
+                
                 if( OutCSS1_FrmFmtBrush( *this,
                         pTableNd->GetTable().GetFrmFmt()->GetBackground() ) )
                     return;
@@ -2414,8 +2334,7 @@
 
         }
 
-        // Wenn der Anker wieder in einem Fly-Frame steht, dann
-        // wird der Hintergrund des Fly-Frames ausgegeben.
+        
         const SwFrmFmt *pFrmFmt = rNode.GetFlyFmt();
         if( pFrmFmt )
         {
@@ -2424,18 +2343,14 @@
         }
     }
 
-    // Schliesslich bleibt noch der Hintergrund der Seite uebrig und als
-    // letzte Rettung das Item der Config.
+    
     ASSERT( pCurrPageDesc, "Keine Seiten-Vorlage gemerkt" );
     if( !OutCSS1_FrmFmtBrush( *this,
                               pCurrPageDesc->GetMaster().GetBackground() ) )
     {
         Color aColor( COL_WHITE );
 
-        // Die Hintergrund-Farbe wird normalerweise nur in Browse-Mode
-        // benutzt. Wir benutzen si bei einem HTML-Dokument immer und
-        // bei einem Text-Dokument nur, wenn es im Browse-Mode angezeigt
-        // wird.
+        
         if( pDoc->get(IDocumentSettingAccess::HTML_MODE) ||
             pDoc->get(IDocumentSettingAccess::BROWSE_MODE))
         {
@@ -2476,8 +2391,7 @@
         default:
             if( !rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) )
             {
-                // das geht auch in HTML und muss nicht als STYLE-Option
-                // und darf nicht als Hint geschrieben werden
+                
                 ASSERT( !rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT),
                         "Underline als Hint schreiben?" );
                 pUStr = sCSS1_PV_underline;
@@ -2499,8 +2413,7 @@
         default:
             if( !rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) )
             {
-                // das geht auch in HTML und muss nicht als STYLE-Option
-                // und darf nicht als Hint geschrieben werden
+                
                 ASSERT( !rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT),
                         "Overline als Hint schreiben?" );
                 pOStr = sCSS1_PV_overline;
@@ -2522,8 +2435,7 @@
         default:
             if( !rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) )
             {
-                // das geht auch in HTML und muss nicht als STYLE-Option
-                // und darf nicht als Hint geschrieben werden
+                
                 ASSERT( !rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT),
                         "CrossedOut als Hint schreiben?" );
                 pCOStr = sCSS1_PV_line_through;
@@ -2541,8 +2453,7 @@
         }
         else if( !rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) )
         {
-            // das geht auch in HTML und muss nicht als STYLE-Option
-            // und darf nicht als Hint geschrieben werden
+            
             ASSERT( !rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT),
                     "Blink als Hint schreiben?" );
             pBStr = sCSS1_PV_blink;
@@ -2613,7 +2524,7 @@
 {
     SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt;
 
-    // Farben muessen nicht in der Style-Option ausgegeben werden.
+    
     if( rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) &&
         !rHTMLWrt.bCfgPreferStyles )
         return rWrt;
@@ -2635,8 +2546,7 @@
 
 static Writer& OutCSS1_SvxCrossedOut( Writer& rWrt, const SfxPoolItem& rHt )
 {
-    // Mit dieser Methode werden nur Hints ausgegeben!
-    // Sonst wird OutCSS1_SvxTxtLn_SvxCrOut_SvxBlink() direkt aufgerufen.
+    
 
     if( ((SwHTMLWriter&)rWrt).IsCSS1Source(CSS1_OUTMODE_HINT) )
         OutCSS1_SvxTxtLn_SvxCrOut_SvxBlink( rWrt,
@@ -2649,7 +2559,7 @@
 {
     SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt;
 
-    // Fonts muessen nicht in der Style-Option ausgegeben werden.
+   
     if( rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) )
         return rWrt;
 
@@ -2666,7 +2576,7 @@
             "Font wirklich als Hint ausgeben?" );
 
     String sOut;
-    // MS IE3b1 hat mit einfachen Haekchen Probleme
+    
     USHORT nMode = rHTMLWrt.nCSS1OutMode & CSS1_OUTMODE_ANY_ON;
     sal_Unicode cQuote = nMode == CSS1_OUTMODE_RULE_ON ? '\"' : '\'';
     SwHTMLWriter::PrepareFontList( ((const SvxFontItem&)rHt), sOut, cQuote,
@@ -2681,8 +2591,7 @@
 {
     SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt;
 
-    // Font-Hoehen muessen nicht in der Style-Option ausgegeben werden.
-    // Fuer Drop-Caps wird ein andewres font-size ausgegeben
+    
     if( rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) ||
         rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_DROPCAP ) )
         return rWrt;
@@ -2699,7 +2608,7 @@
     UINT32 nHeight = ((const SvxFontHeightItem&)rHt).GetHeight();
     if( rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT) )
     {
-        // einen Hint nur dann ausgeben wenn es auch was bringt
+        
         USHORT nSize = rHTMLWrt.GetHTMLFontSize( nHeight );
         if( rHTMLWrt.aFontHeights[nSize-1] == nHeight )
             return rWrt;
@@ -2734,8 +2643,7 @@
     case ITALIC_NORMAL:
         if( !rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) )
         {
-            // das geht auch in HTML und muss nicht als STYLE-Option
-            // und darf nicht als Hint geschrieben werden
+            
             ASSERT( !rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT),
                     "Italic als Hint schreiben?" );
             pStr = sCSS1_PV_italic;
@@ -2755,7 +2663,7 @@
 {
     SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt;
 
-    // Kerning-Item nur ausgeben, wenn volle Style-Unterst?tzung da ist
+    
     if( !rHTMLWrt.IsHTMLMode(HTMLMODE_FULL_STYLES) )
         return rWrt;
 
@@ -2769,7 +2677,7 @@
             nValue = -nValue;
         }
 
-        // Breite als n.n pt
+        
         nValue = (nValue + 1) / 2; 	// 1/10pt
         sOut.Append( ByteString::CreateFromInt32( (sal_Int32)(nValue  / 10) ) );
         sOut.Append( '.' );
@@ -2820,8 +2728,7 @@
 
 static Writer& OutCSS1_SvxUnderline( Writer& rWrt, const SfxPoolItem& rHt )
 {
-    // Mit dieser Methode werden nur Hints ausgegeben!
-    // Sonst wird OutCSS1_SvxTxtLn_SvxCrOut_SvxBlink() direkt aufgerufen.
+    
 
     if( ((SwHTMLWriter&)rWrt).IsCSS1Source(CSS1_OUTMODE_HINT) )
         OutCSS1_SvxTxtLn_SvxCrOut_SvxBlink( rWrt,
@@ -2833,8 +2740,7 @@
 
 static Writer& OutCSS1_SvxOverline( Writer& rWrt, const SfxPoolItem& rHt )
 {
-    // Mit dieser Methode werden nur Hints ausgegeben!
-    // Sonst wird OutCSS1_SvxTxtLn_SvxCrOut_SvxBlink() direkt aufgerufen.
+    
 
     if( ((SwHTMLWriter&)rWrt).IsCSS1Source(CSS1_OUTMODE_HINT) )
         OutCSS1_SvxTxtLn_SvxCrOut_SvxBlink( rWrt,
@@ -2868,8 +2774,7 @@
     case WEIGHT_BOLD:
         if( !rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) )
         {
-            // das geht auch in HTML und muss nicht als STYLE-Option
-            // und darf nicht als Hint geschrieben werden
+            
             ASSERT( !rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT),
                     "Fett als Hint schreiben?" );
             pStr = sCSS1_PV_bold;
@@ -2888,8 +2793,7 @@
 
 static Writer& OutCSS1_SvxBlink( Writer& rWrt, const SfxPoolItem& rHt )
 {
-    // Mit dieser Methode werden nur Hints ausgegeben!
-    // Sonst wird OutCSS1_SvxTxtLn_SvxCrOut_SvxBlink() direkt aufgerufen.
+    
 
     if( ((SwHTMLWriter&)rWrt).IsCSS1Source(CSS1_OUTMODE_HINT) )
         OutCSS1_SvxTxtLn_SvxCrOut_SvxBlink( rWrt,
@@ -2902,10 +2806,7 @@
 {
     SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt;
 
-    // #60393#: Netscape4 hat massive Probleme mit den Zellenhoehen
-    // wenn der Zeilenabstand innerhalb einer Tabelle geaendert wird
-    // und die Breite der Tabelle nicht automatisch berechnet wird
-    // (also wenn eine WIDTH-Option vorhanden ist).
+    
     if( rHTMLWrt.bOutTable && rHTMLWrt.bCfgNetscape4 )
         return rWrt;
 
@@ -2959,8 +2860,7 @@
 {
     SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt;
 
-    // Alignment in Style-Option nur ausgeben, wenn das Tag kein
-    // ALIGN=xxx zulaesst
+    
     if( rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) &&
         !rHTMLWrt.bNoAlign)
         return rWrt;
@@ -3032,15 +2932,15 @@
                                     const SwFmtDrop& rDrop,
                                      const SfxItemSet *pCharFmtItemSet )
 {
-    // Text fliesst rechts drumrum
+    
     rHWrt.OutCSS1_PropertyAscii( sCSS1_P_float, sCSS1_PV_left );
 
-    // Anzahl der Zeilen -> %-Angabe fuer Font-Hoehe!
+    
     ByteString sOut( ByteString::CreateFromInt32( rDrop.GetLines()*100 ) );
     sOut += '%';
     rHWrt.OutCSS1_PropertyAscii( sCSS1_P_font_size, sOut );
 
-    // Abstand zum Text = rechter Rand
+    
     USHORT nDistance = rDrop.GetDistance();
     if( nDistance > 0 )
         rHWrt.OutCSS1_UnitProperty( sCSS1_P_margin_right, nDistance );
@@ -3059,7 +2959,7 @@
 {
     SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt;
 
-    // nie als Option eines Absatzes ausgeben, sondern nur als Hints
+    
     if( !rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT) )
         return rWrt;
 
@@ -3070,7 +2970,7 @@
                              CSS1_OUTMODE_DROPCAP );
 
         OutCSS1_SwFmtDropAttrs( rHTMLWrt, (const SwFmtDrop&)rHt );
-        // Ein "> wird schon vom aufrufenden OutCSS1_HintAsSpanTag geschrieben.
+        
     }
     else
     {
@@ -3158,11 +3058,7 @@
 
     const SvxLRSpaceItem& rLRItem = (const SvxLRSpaceItem&)rHt;
 
-    // Der Export der harten Attributierung ist unnoetig, wenn die
-    // neuen Werte denen der aktuellen Vorlage entsprechen
-
-    // Einen linken Rand kann es durch eine Liste bereits in der
-    // Umgebung geben
+    
     long nLeftMargin = (long)rLRItem.GetTxtLeft() - rHTMLWrt.nLeftMargin;
     if( rHTMLWrt.nDfltLeftMargin != nLeftMargin )
     {
@@ -3175,8 +3071,7 @@
                                  (long)rLRItem.GetRight() );
     }
 
-    // Der Erstzeilen-Einzug kann den Platz fuer eine Numerierung
-    // enthalten
+    
     long nFirstLineIndent = (long)rLRItem.GetTxtFirstLineOfst() -
         rHTMLWrt.nFirstLineIndent;
     if( rHTMLWrt.nDfltFirstLineIndent != nFirstLineIndent )
@@ -3352,7 +3247,7 @@
     return rWrt;
 }
 
-// Wrapper fuer OutCSS1_SfxItemSet etc.
+
 static Writer& OutCSS1_SvxBrush( Writer& rWrt, const SfxPoolItem& rHt )
 {
     OutCSS1_SvxBrush( rWrt, rHt, CSS1_BACKGROUND_ATTR, 0 );
@@ -3365,14 +3260,12 @@
 {
     SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt;
 
-    // Das Zeichen-Attribut wird nicht ausgegeben, wenn gerade
-    // Optionen ausgegeben werden
+    
     if( rHt.Which() < RES_CHRATR_END &&
         rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) )
         return rWrt;
 
-    // Erstmal ein par Werte holen
-//	const Brush &rBrush = ((const SvxBrushItem &)rHt).GetBrush();
+    
     const Color & rColor = ((const SvxBrushItem &)rHt).GetColor();
     const String *pLink = pGrfName ? pGrfName
                             : ((const SvxBrushItem &)rHt).GetGraphicLink();
@@ -3380,14 +3273,13 @@
 
     if( CSS1_BACKGROUND_PAGE==nMode )
     {
-        // Fuer Seitenvorlagen wurde der Grafik-Name uebergeben. Es wird
-        // nur ein Attribut ausgegeben, wenn die Grafik nicht gekachelt ist.
+        
         ASSERT( pLink, "Wo ist der Grafik-Name der Seitenvorlage?" );
         if( !pLink || !pLink->Len() || GPOS_TILED==ePos )
             return rWrt;
     }
 
-    // Erstmal die Farbe holen
+    
     BOOL bColor = FALSE;
     /// OD 02.09.2002 #99657#
     /// set <bTransparent> to TRUE, if color is "no fill"/"auto fill"
@@ -3399,23 +3291,23 @@
         bColor = TRUE;
     }
 
-    // und jetzt eine Grafik
+    
     String sGrfNm;
 
     if( !pLink )
     {
-        // embeddete Grafik -> WriteEmbedded schreiben
+        
         const Graphic* pGrf = ((const SvxBrushItem &)rHt).GetGraphic();
         if( pGrf )
         {
-            // Grafik als (JPG-)File speichern
+            
             const String* pTempFileName = rHTMLWrt.GetOrigFileName();
             if( pTempFileName )
                 sGrfNm = *pTempFileName;
             USHORT nErr = XOutBitmap::WriteGraphic( *pGrf, sGrfNm,
                         String::CreateFromAscii("JPG"),
                         XOUTBMP_USE_NATIVE_IF_POSSIBLE );
-            if( !nErr )		// fehlerhaft, da ist nichts auszugeben
+            if( !nErr )		
             {
                 sGrfNm = URIHelper::SmartRel2Abs(
                     INetURLObject(rWrt.GetBaseURL()), sGrfNm,
@@ -3435,12 +3327,11 @@
         pLink = &sGrfNm;
     }
 
-    // In Tabellen wird nur dann etwas exportiert, wenn eine Grafik
-    // existiert.
+    
     if( CSS1_BACKGROUND_TABLE==nMode && !pLink )
         return rWrt;
 
-    // ggf. noch die Ausrichtung der Grafik
+    
     const sal_Char *pRepeat = 0, *pHori = 0, *pVert = 0;
     if( pLink )
     {
@@ -3503,11 +3394,11 @@
         }
     }
 
-    // jetzt den String zusammen bauen
+    
     String sOut;
     if( !pLink && !bColor )
     {
-        // keine Farbe und kein Link, aber ein transparenter Brush
+        
         if( bTransparent && CSS1_BACKGROUND_FLY != nMode )
             sOut.AssignAscii( sCSS1_PV_transparent );
     }
@@ -3584,15 +3475,14 @@
         nWidth <= Application::GetDefaultDevice()->PixelToLogic(
                     Size( 1, 1 ), MapMode( MAP_TWIP) ).Width() )
     {
-        // Wenn die Breite kleiner ist als ein Pixel, dann als 1px
-        // ausgeben, damit Netscape und IE die Linie auch darstellen.
+        
         sOut += "1px";
     }
     else
     {
         nWidth *= 5; 	// 1/100pt
 
-        // Breite als n.nn pt
+        
         sOut += ByteString::CreateFromInt32( nWidth / 100 );
         (((sOut += '.')
             += ByteString::CreateFromInt32((nWidth/10) % 10))
@@ -3619,7 +3509,7 @@
     }
     sOut += ' ';
 
-    // und noch die Farbe
+    
     GetCSS1Color( pLine->GetColor(), sOut );
 
     rHTMLWrt.OutCSS1_PropertyAscii( pProperty, sOut );
@@ -3629,8 +3519,7 @@
 {
     SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt;
 
-    // Das Zeichen-Attribut wird nicht ausgegeben, wenn gerade
-    // Optionen ausgegeben werden
+    
 //    if( !rHTMLWrt.IsHTMLMode(HTMLMODE_PARA_BORDER))
 //        return rWrt;
 
@@ -3644,13 +3533,13 @@
          *pTop == *pBottom && *pTop == *pLeft && *pTop == *pRight) ||
          (!pTop && !pBottom && !pLeft && !pRight) )
     {
-        // alle Linien gesetzt und gleich oder alle Linien nicht gesetzt
+        
         // => border : ...
         OutCSS1_SvxBorderLine( rHTMLWrt, sCSS1_P_border, pTop );
     }
     else
     {
-        // sonst alle Linien individuell ausgeben
+        
         OutCSS1_SvxBorderLine( rHTMLWrt, sCSS1_P_border_top, pTop );
         OutCSS1_SvxBorderLine( rHTMLWrt, sCSS1_P_border_bottom, pBottom );
         OutCSS1_SvxBorderLine( rHTMLWrt, sCSS1_P_border_left, pLeft );
@@ -3716,12 +3605,7 @@
     return rWrt;
 }
 
-/*
- * lege hier die Tabellen fuer die HTML-Funktions-Pointer auf
- * die Ausgabe-Funktionen an.
- * Es sind lokale Strukturen, die nur innerhalb der HTML-DLL
- * bekannt sein muessen.
- */
+/
 
 
 SwAttrFnTab aCSS1AttrFnTab = {
_______________________________________________
LibreOffice mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to