--- /dev/null 2004-08-25 23:04:59.000000000 +0530 +++ 2005-05-02 14:50:01.118383936 +0530 @@ -0,0 +1,13 @@ + + IMPORT ALIEN USESOPTIONS PREFERRED + + + LWP + + Lotus Word Pro + + 0 + writer_Lwp + + com.sun.star.text.TextDocument + --- /dev/null 2004-08-25 23:04:59.000000000 +0530 +++ 2005-04-29 09:37:06.000000000 +0530 @@ -0,0 +1,12 @@ + + com.sun.star.text.FormatDetector + + lwp + + false + Lwp + + Lotus Word Pro + + + Index: sw/inc/shellio.hxx =================================================================== RCS file: /cvs/sw/sw/inc/shellio.hxx,v --- sw/inc/shellio.hxx 25 Jan 2005 13:58:38 -0000 1.28 +++ sw/inc/shellio.hxx 2 May 2005 09:55:50 -0000 @@ -351,6 +351,10 @@ virtual ULONG Read( SwDoc &, const String& rBaseURL, SwPaM &,const String &); }; +class LwpReader: public Reader +{ + virtual ULONG Read( SwDoc &, const String& rBaseURL, SwPaM &, const String & ); +}; class AsciiReader: public Reader { @@ -753,6 +757,7 @@ extern const sal_Char __FAR_DATA FILTER_SWG[]; // SWG-Filter extern const sal_Char __FAR_DATA FILTER_RTF[]; // RTF-Filter +extern const sal_Char __FAR_DATA FILTER_LWP[]; // LWP-Filter extern const sal_Char __FAR_DATA FILTER_TEXT[]; // Text-Filter mit Default-CodeSet extern const sal_Char __FAR_DATA FILTER_BAS[]; // StarBasic (identisch mit ANSI) extern const sal_Char __FAR_DATA FILTER_W4W[]; // W4W-Filter --- fltini.cxx.bak 2005-05-02 15:19:16.261561616 +0530 +++ fltini.cxx.bak 2005-04-29 14:27:39.000000000 +0530 @@ -182,7 +182,7 @@ using namespace rtl; using namespace com::sun::star::uno; -SwRead ReadRtf = 0, ReadAscii = 0, ReadSwg = 0, ReadSw3 = 0, +SwRead ReadRtf = 0, ReadLwp = 0, ReadAscii = 0, ReadSwg = 0, ReadSw3 = 0, ReadHTML = 0, ReadXML = 0; SwRead SwGetReaderSw3() // SW_DLLPUBLIC @@ -220,6 +220,7 @@ _SetFltPtr( nCnt, (ReadSwg = new SwgReader), FILTER_SWG ); _SetFltPtr( nCnt, ReadSwg, FILTER_SWGV ); _SetFltPtr( nCnt, (ReadRtf = new RtfReader), FILTER_RTF ); + _SetFltPtr( nCnt, (ReadLwp = new LwpReader), FILTER_LWP ); _SetFltPtr( nCnt, new Sw6Reader, sSwDos ); _SetFltPtr( nCnt, (ReadAscii = new AsciiReader), FILTER_BAS ); _SetFltPtr( nCnt, pWW8Rd, sWW6 ); --- iodetect.cxx.bak 2005-05-04 11:14:56.000000000 +0530 +++ iodetect.cxx.bak 2005-05-04 11:49:05.135151264 +0530 @@ -154,12 +154,6 @@ #endif -const USHORT MAXFILTER = -#ifdef DEBUG_SH - 1 + -#endif - 18; - #define FORAMTNAME_SW4 "StarWriter 4.0" #define FORAMTNAME_SW3 "StarWriter 3.0" #define FORAMTNAME_SWGLOB "StarWriter/Global 4.0" @@ -171,6 +165,7 @@ const sal_Char __FAR_DATA FILTER_SW5[] = "CSW5"; const sal_Char __FAR_DATA FILTER_BAS[] = "BAS"; const sal_Char __FAR_DATA FILTER_RTF[] = "RTF"; +const sal_Char __FAR_DATA FILTER_LWP[] = "LWP"; const sal_Char __FAR_DATA FILTER_W4W[] = "W4W"; const sal_Char __FAR_DATA FILTER_SWGV[] = "SWGV"; const sal_Char __FAR_DATA FILTER_SW3V[] = "CSW3V"; @@ -214,7 +209,7 @@ } #endif -SwIoDetect aReaderWriter[ MAXFILTER ] = +SwIoDetect aReaderWriter[ ] = { ///* 0*/ SwIoEntry(FILTER_SW5, 4, &::GetSw3Writer, TRUE), ///* 1*/ SwIoEntry(FILTER_SW4, 4, &::GetSw3Writer, FALSE), @@ -222,6 +217,7 @@ /* 3*/ SwIoEntry(FILTER_SWG, STRING_LEN, 0, TRUE), /* 4*/ SwIoEntry(FILTER_SWGV, 4, 0, FALSE), /* 5*/ SwIoEntry(FILTER_RTF, STRING_LEN, &::GetRTFWriter, TRUE), + SwIoEntry(FILTER_LWP, STRING_LEN, 0, TRUE), /* 6*/ SwIoEntry(sSwDos, STRING_LEN, 0, TRUE), /* 7*/ SwIoEntry(FILTER_BAS, STRING_LEN, &::GetASCWriter, FALSE), /* 8*/ SwIoEntry(sWW6, STRING_LEN, &::GetWW8Writer, TRUE), @@ -242,6 +238,7 @@ const char* pSw = "swriter"; const char* pSwWeb = "swriter/web"; +const USHORT MAXFILTER = sizeof( aReaderWriter ) / sizeof( aReaderWriter[ 0 ] ); // Filter erkennung struct W1_FIB @@ -287,6 +284,8 @@ '1' == *(pHeader + 3); else if( FILTER_RTF == pName ) bRet = 0 == strncmp( "{\\rtf", pHeader, 5 ); + else if( FILTER_LWP == pName ) + bRet = 0 == strncmp( "WordPro", pHeader, 7 ); else if( sLotusD == pName ) bRet = 0 == *pHeader++ && 0 == *pHeader++ && 2 == *pHeader++ && 0 == *pHeader++ &&