User: ihi Date: 2007-11-21 16:06:21+0000 Modified: dba/dbaccess/source/ui/misc/HtmlReader.cxx
Log: INTEGRATION: CWS dba24c (1.30.56); FILE MERGED 2007/11/12 15:48:17 oj 1.30.56.3: #i80917# reverse changes 2007/10/15 10:48:06 oj 1.30.56.2: #i80916# #i80917# special handling for table formats which doesn't have a header definition 2007/10/12 12:27:14 oj 1.30.56.1: #i80917# append first line as first data row File Changes: Directory: /dba/dbaccess/source/ui/misc/ ======================================== File [changed]: HtmlReader.cxx Url: http://dba.openoffice.org/source/browse/dba/dbaccess/source/ui/misc/HtmlReader.cxx?r1=1.30&r2=1.31 Delta lines: +46 -33 --------------------- --- HtmlReader.cxx 2007-05-10 10:34:17+0000 1.30 +++ HtmlReader.cxx 2007-11-21 16:06:18+0000 1.31 @@ -264,8 +264,15 @@ } case HTML_THEAD_ON: case HTML_TBODY_ON: - if ( !m_xTable.is() ) // erste Zeile als Header verwenden + { + sal_uInt32 nTell = rInput.Tell(); // verändert vielleicht die Position des Streams + if ( !m_xTable.is() ) + {// erste Zeile als Header verwenden m_bError = !CreateTable(nToken); + if ( m_bAppendFirstLine ) + rInput.Seek(nTell); + } + } break; case HTML_TABLE_OFF: if(!--m_nTableCount) @@ -294,11 +301,19 @@ if ( m_bInTbl ) //&& !m_bSDNum ) // wichtig, da wir sonst auch die Namen der Fonts bekommen m_sTextToken += aToken; break; + case HTML_PARABREAK_OFF: + m_sCurrent += m_sTextToken; + break; + case HTML_PARABREAK_ON: + m_sTextToken.Erase(); + break; case HTML_TABLEDATA_ON: fetchOptions(); break; case HTML_TABLEDATA_OFF: { + if ( m_sCurrent.Len() ) + m_sTextToken = m_sCurrent; try { insertValueIntoColumn(); @@ -308,6 +323,7 @@ { showErrorDialog(e); } + m_sCurrent.Erase(); m_nColumnPos++; eraseTokens(); m_bSDNum = m_bInTbl = sal_False; @@ -360,15 +376,27 @@ if ( m_bInTbl ) // && !m_bSDNum ) // wichtig, da wir sonst auch die Namen der Fonts bekommen m_sTextToken += aToken; break; + case HTML_PARABREAK_OFF: + m_sCurrent += m_sTextToken; + break; + case HTML_PARABREAK_ON: + m_sTextToken.Erase(); + break; case HTML_TABLEDATA_OFF: + if ( m_sCurrent.Len() ) + m_sTextToken = m_sCurrent; adjustFormat(); m_nColumnPos++; m_bSDNum = m_bInTbl = sal_False; + m_sCurrent.Erase(); break; case HTML_TABLEROW_OFF: + if ( m_sCurrent.Len() ) + m_sTextToken = m_sCurrent; adjustFormat(); m_nColumnPos = 0; m_nRows--; + m_sCurrent.Erase(); break; } } @@ -423,23 +451,8 @@ eVal = SVX_HOR_JUSTIFY_STANDARD; } break; - case HTML_O_SDVAL: - { - //pValue = new String( pOption->GetString() ); - } - break; - case HTML_O_SDNUM: - { - //pValue = new String( pOption->GetString() ); - } - break; - case HTML_O_BGCOLOR: - //m_aFont.SetFillColor(Color((sal_Int32)pOption->GetString())); - break; case HTML_O_WIDTH: - { m_nWidth = GetWidthPixel( pOption ); - } break; } } @@ -528,7 +541,6 @@ sal_Bool bTableHeader = sal_False; String aColumnName; SvxCellHorJustify eVal; - String *pValue=NULL; String aTableName; FontDescriptor aFont = ::dbaui::CreateFontDescriptor(Application::GetSettings().GetStyleSettings().GetAppFont()); @@ -544,36 +556,35 @@ if(bCaption) aTableName += aToken; break; + case HTML_PARABREAK_OFF: + m_sCurrent += aColumnName; + break; + case HTML_PARABREAK_ON: + m_sTextToken.Erase(); + break; case HTML_TABLEDATA_ON: + // m_bAppendFirstLine = true; + // run through case HTML_TABLEHEADER_ON: - if(pValue) - { // HTML_TABLEHEADER_OFF oder HTML_TABLEDATA_OFF fehlte - aColumnName.EraseLeadingChars(); - aColumnName.EraseTrailingChars(); - if (!aColumnName.Len()) - aColumnName = String(ModuleRes(STR_COLUMN_NAME)); - - CreateDefaultColumn(aColumnName); - aColumnName.Erase(); - - DELETEZ(pValue); - eVal = SVX_HOR_JUSTIFY_STANDARD; - } TableDataOn(eVal,nTmpToken2); bTableHeader = TRUE; break; case HTML_TABLEDATA_OFF: + // m_bAppendFirstLine = true; + // run through case HTML_TABLEHEADER_OFF: { aColumnName.EraseLeadingChars(); aColumnName.EraseTrailingChars(); - if (!aColumnName.Len()) + if (!aColumnName.Len() || m_bAppendFirstLine ) aColumnName = String(ModuleRes(STR_COLUMN_NAME)); + else if ( m_sCurrent.Len() ) + aColumnName = m_sCurrent; CreateDefaultColumn(aColumnName); aColumnName.Erase(); + m_sCurrent.Erase(); - DELETEZ(pValue); eVal = SVX_HOR_JUSTIFY_STANDARD; bTableHeader = sal_False; } @@ -612,6 +623,8 @@ } while((nTmpToken2 = GetNextToken()) != HTML_TABLEROW_OFF); + if ( m_sCurrent.Len() ) + aColumnName = m_sCurrent; if(aColumnName.Len()) CreateDefaultColumn(aColumnName); --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
