diff options
author | nobody <nobody@gnome.org> | 2005-02-16 22:07:08 +0000 |
---|---|---|
committer | nobody <nobody@gnome.org> | 2005-02-16 22:07:08 +0000 |
commit | 9b7278d02345283f0f1a588593074628063fa12d (patch) | |
tree | b55491b12f372afb8a24daf812deb9f025f3c4c6 | |
parent | af54a6c239474c1cae1f001dcdca5a0c088f63f6 (diff) |
This commit was manufactured by cvs2svn to create tagDEBIAN-1_1_3-5
'DEBIAN-1_1_3-5'.
73 files changed, 3829 insertions, 6117 deletions
@@ -1,3 +1,72 @@ +ooo-build-1.3.7 + + + bug fixes + + don't crash on calc row deletion (Chris) + + updated psprint: lots of fixes (Chris) + + kde fpicker list update fix (Lubos Lunak) + + expanded .desktop mime-types (Rene) + + vcl/libXt/Java interaction (Petr) + + evo / connectivity fix (Jayant) + + features + + calc ctrl +/- to insert/delete lines (Jayant) + + default to optimal page wrap (Jayant) + + more reliable desktop detection (Kendy) + + Debian uses more common patches (Rene) + + DataPilot (Srini) + + auto-format support + + dynamic range alteration + + gcc-3.4 support (Hanno Meyer-Thurow, Bero) + +ooo-build-1.3.6 + + + bug fixes + + i18n + + Hebrew font fixes (Rene) + + merge-cell translations (Petr) + + Japanese font fixes (Petr) + + Korean font fixes (Dan) + + turkish currency update (Rene) + + Win32 bits + + .Net 2002 (Gabor Keresztfalvi) + + Java build (Raul) + + writerperfect Win32 build (Raul) + + Misc + + cell selection fixes (Nicel) + + escape closes print preview (Jayant) + + email attachment filenames (Jayant) + + desktop debug build fix (Josh Triplett) + + setup symlink fixes (Petr) + + Unix Desktop + + KDE fpicker (Jan) + + don't freeze on double-click + + confirmation for Save As + + translation fixes + + filter list fix + + KDE NFW fixes (Jan) + + gtk+ (Michael) + + NWF fixes + + IM mangling + + Interop + + word interop crasher (Caolan) + + writerperfect import fix (Friedrich Strba) + + Build + + word count compilation fix (Dan) + + improved RPM packaging (Dan) + + updated pyuno docs (Martin) + + MimeType fixes to .desktop files (Rene) + + improve per-desktop icon code (Arkadiusz) + + LD_ASSUME_KERNEL pain (Bernhard R) + + misc. (Rene, Raul) + + features + + much improved calc filters (Srinivasa) + + build with free .jars (Macro Pratesi) + + build vs. 1.3.3 final (Martin K) + + Linux/ARM support (Peter Naulls) + + basic lotus 123 import (Aswanth, Sunil Gandhi) + + evolution connectivity re-write (Jayant, Michael) + + pending + + Quattro Pro import (Shilpa, Michael) + ooo-build-1.3.5 + bug fixes diff --git a/bin/package-lang b/bin/package-lang index d628ec77d..36e66df8c 100755 --- a/bin/package-lang +++ b/bin/package-lang @@ -221,8 +221,8 @@ sub BuildLang { $action = "Link"; } else { - chmod 0644,"$outpath/$value->{Name}"; - copy($fileToCopy,$outpath) or die "Can't copy $fileToCopy to $outpath"; + chmod 0644,"$destFile"; + copy($fileToCopy,$destFile) or die "Can't copy $fileToCopy to $destFile"; $action = "Copy"; } } diff --git a/bin/package-ooo b/bin/package-ooo index 42bdb544a..dd83ba78a 100755 --- a/bin/package-ooo +++ b/bin/package-ooo @@ -52,6 +52,33 @@ create_simple_wrapper() cat <<EOT >$2 #!/bin/sh +# Keep in ~sync with ooo-wrapper + +SystemInstallDir="$OOINSTBASE" + +if [ -n "\$GNOME_DESKTOP_SESSION_ID" -a -d "\$SystemInstallDir/program/resource.gnome" ]; then + icon_set="gnome" +elif [ -n "\$KDE_FULL_SESSION" -a -d "\$SystemInstallDir/program/resource.kde" ]; then + icon_set="kde" +fi + +if [ -z "\$icon_set" ]; then + if [ -d "\$SystemInstallDir/program/resource.default" ]; then + icon_set="default" + elif [ -d "\$SystemInstallDir/program/resource.kde" ]; then + icon_set="kde" + elif [ -d "\$SystemInstallDir/program/resource.gnome" ]; then + icon_set="gnome" + else + icon_set="default" + fi +fi + +if [ -d "\$SystemInstallDir/program/resource.\$icon_set" ]; then + OOO_PREFERRED_RESOURCE_PATH="\$SystemInstallDir/program/resource.\$icon_set" + export OOO_PREFERRED_RESOURCE_PATH +fi + exec "$1" "\$@" EOT chmod 755 $2 @@ -100,7 +127,7 @@ if test "z$VENDORNAME" = "zRedHat" ; then mkdir -p $PREFIX/share/applications for i in openoffice-printeradmin openoffice-setup redhat-drawing \ redhat-math redhat-presentations redhat-word-processor redhat-spreadsheet; do - cp -f /usr/share/desktop-menu-patches/$i.desktop $PREFIX/share/applications/$i.desktop + ln -sf /usr/share/desktop-menu-patches/$i.desktop $PREFIX/share/applications/$i.desktop echo "StartupNotify=true" >> $PREFIX/share/applications/$i.desktop done diff --git a/bin/unpack b/bin/unpack index 5a6d12dea..816345606 100755 --- a/bin/unpack +++ b/bin/unpack @@ -102,6 +102,9 @@ tar $OOO_UNTAR_OPTIONS $SRCDIR/$OOO_TARBALL || exit 1 cp -af $TOOLSDIR/bin/oowintool $OOBUILDDIR/config_office chmod a+x $OOBUILDDIR/config_office/oowintool +# hack: fix possible packaging problem in 1.1.3 +chmod a+x $OOBUILDDIR/icu/convert.sh + # Win32 prerequisites ... if test "z$BUILD_WIN32" != "z"; then diff --git a/configure.in b/configure.in index 043a1c0ad..9e4188a4c 100644 --- a/configure.in +++ b/configure.in @@ -4,7 +4,7 @@ AC_PREFIX_DEFAULT(/usr) OOO_BUILDMAJOR_VERSION=1 OOO_BUILDMINOR_VERSION=3 -OOO_BUILDMICRO_VERSION=5 +OOO_BUILDMICRO_VERSION=7 dnl this includes pre-pended period. OOO_BUILDSTRIKE_VERSION= OOO_BUILDVERSION="$OOO_BUILDMAJOR_VERSION.$OOO_BUILDMINOR_VERSION.$OOO_BUILDMICRO_VERSION$OOO_BUILDSTRIKE_VERSION" @@ -75,6 +75,11 @@ AC_ARG_WITH(jdk-home, Java is disabled, this option has no effect. ],,) +AC_ARG_WITH(ant-home, +[ + --with-ant-home: specify the path of your ant installation. +],,) + AC_ARG_WITH(installed-ooo-dirname, [ --with-installed-ooo-dirname: specify the directory name of the core OOo network @@ -165,6 +170,13 @@ AC_ARG_WITH(arch, ],,) +AC_ARG_WITH(system-db-version, +[ + --with-system-db-version: Specify the version of berkeleydb on the system that you wish to use. + + Usage: --with-system-db-version=4.2 + +],,) AM_MAINTAINER_MODE @@ -207,7 +219,7 @@ PKG_CHECK_MODULES( FOO_COMMON, # it's a really bad idea to do conditional tests for things. # if test "z$with_win32" = "z"; then - if test ! $have_common; then + if test "$have_common" != "true"; then AC_MSG_ERROR([Library requirements were not met]) fi @@ -232,7 +244,7 @@ fi PKG_CHECK_MODULES( FOO_GNOME, [ gnome-vfs-2.0 ], have_gnome=true, have_gnome=false ) -if test ! $have_gnome; then +if test "$have_gnome" != "true"; then AC_MSG_ERROR([Gnome library requirements were not met]) fi @@ -249,10 +261,6 @@ if test "z$with_tag" = "z"; then fi APPLY_DIR="$TOOLSDIR/patches/$with_tag" -# Exceptions for some tags... -if test "z$with_tag" = "zOOO_1_1_3_fix2" ; then - APPLY_DIR="$TOOLSDIR/patches/OOO_1_1_3" -fi if test -f $APPLY_DIR/apply; then AC_MSG_RESULT( found $with_tag, using $APPLY_DIR/apply ) @@ -315,14 +323,13 @@ PKG_CHECK_MODULES( BAA, libart-2.0 >= $LIBART_VERSION, have_baa=true, have_baa=false ) if test "z$with_win32" = "z"; then - if test ! $have_baa; then + if test "$have_baa" != "true"; then AC_MSG_ERROR([You need to install libart development headers]) fi else AC_PATH_PROG(CABEXTRACT, cabextract) if test "!" -x "$CABEXTRACT" ; then - AC_MSG_ERROR([ -*** The cabextract utility must be installed.]) + AC_MSG_ERROR([*** The cabextract utility must be installed.]) fi fi @@ -334,7 +341,7 @@ AC_SUBST(DISTRO) PKG_CHECK_MODULES( BAZ, evolution-data-server-1.0 >= 0.0.92, have_baz=true, have_baz=false ) -if test "z$with_distro" = "NLD" -a ! $have_baz; then +if test "z$with_distro" = "zNLD" -a "$have_baz" != "true"; then AC_MSG_ERROR([You need to install evolution-data-server]) fi @@ -365,11 +372,15 @@ if test "z$with_distro" = "zArk"; then fi JDK_HOME= +ANT_HOME= if test "z$enable_java" = "zyes"; then ENABLE_JAVA=yes if test "z$with_jdk_home" != "z"; then JDK_HOME=$with_jdk_home fi + if test "z$with_ant_home" != "z"; then + ANT_HOME=$with_ant_home + fi else AC_PATH_PROG(XSLTPROC, xsltproc, no) if test "$XSLTPROC" = "no"; then @@ -379,20 +390,26 @@ else fi AC_SUBST(ENABLE_JAVA) AC_SUBST(JDK_HOME) - -AC_CHECK_HEADER(security/pam_appl.h, have_pam=true, have_pam=false) -AC_CHECK_HEADER(png.h, have_png=true, have_png=false) -AC_CHECK_HEADER(zlib.h, have_zlib=true, have_zlib=false) +AC_SUBST(ANT_HOME) if test "z$with_win32" = "z"; then - if test ! $have_pam; then + AC_CHECK_HEADER(security/pam_appl.h, have_pam=true, have_pam=false) + if test "$have_pam" != "true"; then AC_MSG_ERROR(install pam-devel) fi - if test ! $have_png; then + + AC_CHECK_HEADER(cups/cups.h, have_cups=true, have_cups=false) + if test "$have_cups" != "true"; then + AC_MSG_ERROR(install cups-devel) + fi + + AC_CHECK_HEADER(png.h, have_png=true, have_png=false) + if test "$have_png" != "true"; then AC_MSG_ERROR(install png-devel) fi - if test ! $have_zlib; then + AC_CHECK_HEADER(zlib.h, have_zlib=true, have_zlib=false) + if test "$have_zlib" != "true"; then AC_MSG_ERROR(install zlib-devel) fi @@ -466,7 +483,7 @@ for icons_name in $with_icons ; do ooo_icons_ver="ooo-debug_icons-OOO_1_1-0.1" ;; Bluecurve) - ooo_icons_ver="ooo-icons-bluecurve-OOO_1_1-10" + ooo_icons_ver="ooo-icons-bluecurve-OOO_1_1-11" ;; Ximian | Gnome | gnome | GNOME ) ooo_icons_ver="ooo-icons-OOO_1_1-10" @@ -528,6 +545,13 @@ if test "z$with_arch" != "z"; then fi AC_SUBST(ARCHITECTURE) +# Specify a system berkeleydb version +SYSTEM_DB_VERSION="" +if test "z$with_system_db_version" != "z"; then + SYSTEM_DB_VERSION="$with_system_db_version" +fi +AC_SUBST(SYSTEM_DB_VERSION) + AC_MSG_CHECKING([for broken aliases]) if `alias gcc > /dev/null 2>&1`; then AC_MSG_ERROR( you can't alias your gcc - that's broken ); @@ -584,15 +608,23 @@ ooo1.1.spec bin/setup bin/Makefile desktop/Makefile +distro-configs/RH9.conf +distro-configs/FedoraCore1.conf +distro-configs/FedoraCore2.conf +distro-configs/FedoraCore3.conf +distro-configs/FedoraCore4.conf +distro-configs/RHEL3.conf +distro-configs/RHEL4.conf +distro-configs/Ark.conf etc/Makefile fonts/Makefile patches/Makefile patches/wpd/Makefile patches/evo2/Makefile +patches/gcc34/Makefile patches/vclplug/Makefile patches/mscodec/Makefile patches/OOO_1_1/Makefile -patches/OOO_1_1_2/Makefile patches/OOO_1_1_3/Makefile po/Makefile doc/Makefile diff --git a/patches/OOO_1_1/email-attachment.diff b/patches/OOO_1_1/email-attachment.diff new file mode 100644 index 000000000..6b51cb9ba --- /dev/null +++ b/patches/OOO_1_1/email-attachment.diff @@ -0,0 +1,38 @@ +--- unotools/source/ucbhelper/tempfile.cxx 2004-10-12 10:47:47.000000000 +0530 ++++ unotools/source/ucbhelper/tempfile.cxx 2004-10-19 16:20:49.663737320 +0530 +@@ -324,7 +324,8 @@ + for ( sal_Int32 i=0;; i++ ) + { + String aTmp( aName ); +- aTmp += String::CreateFromInt32( i ); ++ if (i) ++ aTmp += String::CreateFromInt32( i ); + if ( pExtension ) + aTmp += *pExtension; + else +--- sfx2/source/dialog/mailmodel.cxx 2004-10-19 16:52:56.703782704 +0530 ++++ sfx2/source/dialog/mailmodel.cxx 2004-10-11 20:48:22.000000000 +0530 +@@ -341,12 +341,12 @@ + pExt = new String( String::CreateFromAscii( "." ) + aFileObj.getExtension() ); + aFileObj.removeExtension(); + aLeadingStr = aFileObj.getName( INetURLObject::LAST_SEGMENT, true, INetURLObject::DECODE_WITH_CHARSET ); +- aLeadingStr += String::CreateFromAscii( "_" ); ++ // aLeadingStr += String::CreateFromAscii( "_" ); + } + else + { + aLeadingStr = aFileObj.getName( INetURLObject::LAST_SEGMENT, true, INetURLObject::DECODE_WITH_CHARSET ); +- aLeadingStr += String::CreateFromAscii( "_" ); ++ // aLeadingStr += String::CreateFromAscii( "_" ); + } + } + +@@ -441,7 +441,7 @@ + pExt = new String( aPDFExtension ); + aFileObj.removeExtension(); + aLeadingStr = aFileObj.getName( INetURLObject::LAST_SEGMENT, true, INetURLObject::DECODE_WITH_CHARSET ); +- aLeadingStr += String::CreateFromAscii( "_" ); ++ // aLeadingStr += String::CreateFromAscii( "_" ); + } + else + { diff --git a/patches/OOO_1_1/frmbase-cxx.diff b/patches/OOO_1_1/frmbase-cxx.diff new file mode 100644 index 000000000..0c13eec30 --- /dev/null +++ b/patches/OOO_1_1/frmbase-cxx.diff @@ -0,0 +1,27 @@ +--- sc/source/filter/excel/frmbase.cxx.bak 2004-12-14 17:42:15.000000000 +0530 ++++ sc/source/filter/excel/frmbase.cxx 2004-12-15 15:03:48.292113128 +0530 +@@ -312,3 +312,24 @@ + aEingPos = aNewEingPos; + } + ++QProConverterBase::QProConverterBase( BiffReader &rStr, sal_uInt16 nNewBuffer ) : ++ ConverterBase( nNewBuffer ), ++ aIn( rStr ) ++{ ++} ++ ++QProConverterBase::~QProConverterBase() ++{ ++} ++ ++void QProConverterBase::Reset( ScAddress aNewPos ) ++{ ++ ConverterBase::Reset(); ++ aEingPos = aNewPos; ++} ++ ++void QProConverterBase::Reset() ++{ ++ ConverterBase::Reset(); ++ aEingPos.Set( 0, 0, 0 ); ++} diff --git a/patches/OOO_1_1/i18n-calc-encoding.diff b/patches/OOO_1_1/i18n-calc-encoding.diff index 15c23ed17..11c0cf3b2 100644 --- a/patches/OOO_1_1/i18n-calc-encoding.diff +++ b/patches/OOO_1_1/i18n-calc-encoding.diff @@ -2,10 +2,11 @@ Index: calc/profile_calc.lng =================================================================== RCS file: /cvs/installation/scp/source/calc/Attic/profile_calc.lng,v retrieving revision 1.49.24.5 -diff -u -r1.49.24.5 profile_calc.lng ---- scp/source/calc/profile_calc.lng 27 Apr 2004 18:15:09 -0000 1.49.24.5 -+++ scp/source/calc/profile_calc.lng 10 Jun 2004 15:28:49 -0000 -@@ -598,7 +598,7 @@ +Index: scp/source/calc/profile_calc.lng +=================================================================== +--- scp/source/calc/profile_calc.lng.orig 2004-09-13 22:31:50.000000000 +0200 ++++ scp/source/calc/profile_calc.lng 2004-09-14 15:49:37.746332016 +0200 +@@ -678,7 +678,7 @@ 82 = "%PRODUCTNAME %PRODUCTVERSION ìŠ¤í”„ë ˆë“œì‹œíŠ¸" 86 = "%PRODUCTNAME %PRODUCTVERSION 工作表" 88 = "%PRODUCTNAME %PRODUCTVERSION 工作表" @@ -14,23 +15,11 @@ diff -u -r1.49.24.5 profile_calc.lng 07 = "Ýëåêòðîííàÿ òàáëèöà %PRODUCTNAME %PRODUCTVERSION" 30 = "Õðïëïãéóôéêü öýëëï %PRODUCTNAME %PRODUCTVERSION" 31 = "%PRODUCTNAME %PRODUCTVERSION Werkblad" -@@ -636,7 +636,7 @@ - 34 = "Hoja de ~cálculo" - 55 = "~Planilha" - 48 = "~Arkusz kalkulacyjny" --03 = "Folha de ~cálculo" -+03 = "Folha de ~cálculo" - 82 = "ìŠ¤í”„ë ˆë“œì‹œíŠ¸(~S)" - 33 = "~Classeur" - 96 = "~Spreadsheet" -Index: impress/profile_impress.lng +Index: scp/source/impress/profile_impress.lng =================================================================== -RCS file: /cvs/installation/scp/source/impress/Attic/profile_impress.lng,v -retrieving revision 1.57.24.5 -diff -u -r1.57.24.5 profile_impress.lng ---- scp/source/impress/profile_impress.lng 27 Apr 2004 18:18:43 -0000 1.57.24.5 -+++ scp/source/impress/profile_impress.lng 10 Jun 2004 15:28:51 -0000 -@@ -639,7 +639,7 @@ +--- scp/source/impress/profile_impress.lng.orig 2004-09-13 22:32:00.000000000 +0200 ++++ scp/source/impress/profile_impress.lng 2004-09-14 15:49:37.749331560 +0200 +@@ -724,7 +724,7 @@ 82 = "%PRODUCTNAME %PRODUCTVERSION í”„ë ˆì í…Œì´ì…˜" 86 = "%PRODUCTNAME %PRODUCTVERSION 演示文稿" 88 = "%PRODUCTNAME %PRODUCTVERSION ç°¡å ±" @@ -39,7 +28,7 @@ diff -u -r1.57.24.5 profile_impress.lng 07 = "Ïðåçåíòàöèÿ %PRODUCTNAME %PRODUCTVERSION" 30 = "Ðáñïõóßáóç %PRODUCTNAME %PRODUCTVERSION" 31 = "%PRODUCTNAME %PRODUCTVERSION Presentatie" -@@ -677,7 +677,7 @@ +@@ -767,7 +767,7 @@ 34 = "~Presentación" 55 = "A~presentação" 48 = "~Prezentacja" @@ -48,7 +37,7 @@ diff -u -r1.57.24.5 profile_impress.lng 82 = "í”„ë ˆì í…Œì´ì…˜(~P)" 33 = "~Présentation" 96 = "ÚÑÖ Ê~ÞÏíãí" -@@ -714,7 +714,7 @@ +@@ -809,7 +809,7 @@ 34 = "~Presentación..." 55 = "A~presentação..." 48 = "~Prezentacja..." @@ -56,15 +45,12 @@ diff -u -r1.57.24.5 profile_impress.lng +03 = "A~presentação..." 82 = "í”„ë ˆì í…Œì´ì…˜(~P)..." 33 = "~Présentation..." - 96 = "~Presentation..." -Index: math/profile_math.lng + 96 = "~ÚÑÖ ÊÞÏíãì..." +Index: scp/source/math/profile_math.lng =================================================================== -RCS file: /cvs/installation/scp/source/math/Attic/profile_math.lng,v -retrieving revision 1.40.24.4 -diff -u -r1.40.24.4 profile_math.lng ---- scp/source/math/profile_math.lng 27 Apr 2004 18:20:23 -0000 1.40.24.4 -+++ scp/source/math/profile_math.lng 10 Jun 2004 15:28:51 -0000 -@@ -80,7 +80,7 @@ +--- scp/source/math/profile_math.lng.orig 2004-09-13 22:32:04.000000000 +0200 ++++ scp/source/math/profile_math.lng 2004-09-14 15:49:37.750331408 +0200 +@@ -90,7 +90,7 @@ 34 = "~Fórmula" 55 = "~Fórmula" 48 = "F~ormu³a" @@ -73,14 +59,11 @@ diff -u -r1.40.24.4 profile_math.lng 82 = "수ì‹(~O)" 33 = "F~ormule" 96 = "ÕíÛÉ" -Index: office/profile.lng +Index: scp/source/office/profile.lng =================================================================== -RCS file: /cvs/installation/scp/source/office/Attic/profile.lng,v -retrieving revision 1.58.24.8 -diff -u -r1.58.24.8 profile.lng ---- scp/source/office/profile.lng 4 May 2004 06:48:05 -0000 1.58.24.8 -+++ scp/source/office/profile.lng 10 Jun 2004 15:28:53 -0000 -@@ -1080,7 +1080,7 @@ +--- scp/source/office/profile.lng.orig 2004-09-13 22:32:06.000000000 +0200 ++++ scp/source/office/profile.lng 2004-09-14 15:49:37.756330496 +0200 +@@ -1225,7 +1225,7 @@ 34 = "~Tarjetas de visita" 55 = "Cartões de ~Visita" 48 = "~Wizytówki" @@ -88,8 +71,8 @@ diff -u -r1.58.24.8 profile.lng +03 = "Cartões de ~visita" 82 = "명함(~U)" 33 = "Cartes de ~visite" - 96 = "B~usiness Cards" -@@ -1302,7 +1302,7 @@ + 96 = "ß~ÑÊ ÇáÚãá" +@@ -1477,7 +1477,7 @@ 34 = "Página ~Web..." 55 = "Página da ~Web..." 48 = "Strona ~WWW..." @@ -97,8 +80,8 @@ diff -u -r1.58.24.8 profile.lng +03 = "Página ~Web..." 82 = "웹 페ì´ì§€(~W)..." 33 = "Page ~Web..." - 96 = "~Web Page..." -@@ -1339,7 +1339,7 @@ + 96 = "~ÕÝÍÉ æíÈ..." +@@ -1519,7 +1519,7 @@ 34 = "Formulario..." 55 = "~Formulário..." 48 = "Fo~rmularz..." @@ -106,8 +89,8 @@ diff -u -r1.58.24.8 profile.lng +03 = "F~ormulário..." 82 = "ì–‘ì‹(~R)..." 33 = "Form~ulaire..." - 96 = "Form..." -@@ -1520,7 +1520,7 @@ + 96 = "äã~æÐÌ..." +@@ -1725,7 +1725,7 @@ 01 = "Address Data Source..." 44 = "Address Data Source..." 49 = "Adress-Datenquelle..." diff --git a/patches/OOO_1_1/libgl-soname.diff b/patches/OOO_1_1/libgl-soname.diff new file mode 100644 index 000000000..b031b5253 --- /dev/null +++ b/patches/OOO_1_1/libgl-soname.diff @@ -0,0 +1,16 @@ +Index: unx/source/gdi/salogl.cxx +=================================================================== +RCS file: /cvs/gsl/vcl/unx/source/gdi/salogl.cxx,v +retrieving revision 1.7 +diff -u -r1.7 salogl.cxx +--- vcl/unx/source/gdi/salogl.cxx 15 Apr 2003 16:10:05 -0000 1.7 ++++ vcl/unx/source/gdi/salogl.cxx 5 Jan 2005 15:34:37 -0000 +@@ -90,7 +90,7 @@ + #ifdef MACOSX + #define OGL_LIBNAME "libGL.dylib" + #else +-#define OGL_LIBNAME "libGL.so" ++#define OGL_LIBNAME "libGL.so.1" + #endif + + // ---------- diff --git a/patches/OOO_1_1/ms-interoperability-email-attachment-as-xls-ppt.diff b/patches/OOO_1_1/ms-interoperability-email-attachment-as-xls-ppt.diff new file mode 100644 index 000000000..61620584d --- /dev/null +++ b/patches/OOO_1_1/ms-interoperability-email-attachment-as-xls-ppt.diff @@ -0,0 +1,505 @@ +--- sfx2/source/inc/mailmodel.hxx 2002-08-26 13:30:37.000000000 +0530 ++++ sfx2/source/inc/mailmodel.hxx 2004-11-30 17:05:01.000000000 +0530 +@@ -90,6 +90,9 @@ + enum MailDocType + { + TYPE_SELF, ++ TYPE_ASMSDOC, ++ TYPE_ASMSEXCEL, ++ TYPE_ASMSPOWERPOINT, + TYPE_ASPDF + }; + +@@ -114,7 +117,7 @@ + void ClearList( AddressList_Impl* pList ); + void MakeValueList( AddressList_Impl* pList, String& rValueList ); + SaveResult SaveDocument( String& rFileName, String& rType ); +- SaveResult SaveDocAsPDF( String& rFileName, String& rType ); ++ SaveResult SaveDocAs( String& rFileName, String& rType,MailDocType mailDocType ); + + DECL_LINK( DoneHdl, void* ); + + +--- sfx2/source/dialog/mailmodel.cxx 2004-11-26 21:41:16.000000000 +0530 ++++ sfx2/source/dialog/mailmodel.cxx 2004-11-30 17:09:23.000000000 +0530 +@@ -402,7 +402,7 @@ + return eRet; + } + +-SfxMailModel_Impl::SaveResult SfxMailModel_Impl::SaveDocAsPDF( String& rFileName, String& rType ) ++SfxMailModel_Impl::SaveResult SfxMailModel_Impl::SaveDocAs( String& rFileName, String& rType,MailDocType mailDocType ) + { + SaveResult eRet = SAVE_CANCELLED; + SfxViewFrame* pTopViewFrm = mpBindings->GetDispatcher_Impl()->GetFrame()->GetTopViewFrame(); +@@ -422,9 +422,15 @@ + SfxFactoryFilterContainer* pFilterContainer = xDocShell->GetFactory().GetFilterContainer(); + if ( pFilterContainer ) + { +- String aPDFExtension = String::CreateFromAscii( ".pdf" ); ++ String aExtension ; ++ switch (mailDocType){ ++ case TYPE_ASPDF : aExtension = String::CreateFromAscii( ".pdf" );break; ++ case TYPE_ASMSDOC : aExtension = String::CreateFromAscii( ".doc" );break; ++ case TYPE_ASMSEXCEL : aExtension = String::CreateFromAscii( ".xls" );break; ++ case TYPE_ASMSPOWERPOINT : aExtension = String::CreateFromAscii( ".ppt" );break; ++ } + +- const SfxFilter* pFilter = pFilterContainer->GetFilter4Extension( aPDFExtension, SFX_FILTER_EXPORT ); ++ const SfxFilter* pFilter = pFilterContainer->GetFilter4Extension( aExtension, SFX_FILTER_EXPORT ); + sal_Bool bHasFilter = pFilter ? sal_True : sal_False; + + // create temp file name with leading chars and extension +@@ -440,7 +446,7 @@ + String aName; + if ( aFileObj.hasExtension() ) + { +- pExt = new String( aPDFExtension ); ++ pExt = new String( aExtension ); + aFileObj.removeExtension(); + aLeadingStr = aFileObj.getName( INetURLObject::LAST_SEGMENT, true, INetURLObject::DECODE_WITH_CHARSET ); + // aLeadingStr += String::CreateFromAscii( "_" ); +@@ -463,11 +469,25 @@ + delete pExt; + + rFileName = aTempFile.GetURL(); ++ SfxBoolItem aPicklist( SID_PICKLIST, FALSE ); ++ SfxBoolItem aSaveTo( SID_SAVETO, TRUE ); ++ SfxStringItem* pFilterName = NULL; ++ if ( pFilter && bHasFilter ) ++ pFilterName = new SfxStringItem( SID_FILTER_NAME, pFilter->GetFilterName() ); ++ ++ SfxStringItem* pPassItem = NULL; ++ String aPasswd; ++ if ( GetPasswd_Impl( xDocShell->GetMedium()->GetItemSet(), aPasswd ) ) ++ pPassItem = new SfxStringItem( SID_PASSWORD, aPasswd ); + + // save document to temp file + SfxStringItem aFileName( SID_FILE_NAME, rFileName ); +- const SfxBoolItem *pRet = (const SfxBoolItem*)pDisp->Execute( SID_EXPORTDOCASPDF, SFX_CALLMODE_SYNCHRON, &aFileName, 0L ); +- BOOL bRet = pRet ? pRet->GetValue() : FALSE; ++ const SfxBoolItem *pRet = (const SfxBoolItem*)pDisp->Execute( SID_SAVEASDOC, SFX_CALLMODE_SYNCHRON, &aFileName, &aPicklist, &aSaveTo, ++ pFilterName ? pFilterName : pPassItem, ++ pFilterName ? pPassItem : 0L, 0L ); ++ ++/* const SfxBoolItem *pRet = (const SfxBoolItem*)pDisp->Execute( SID_EXPORTDOCASPDF, SFX_CALLMODE_SYNCHRON, &aFileName, 0L ); ++*/ BOOL bRet = pRet ? pRet->GetValue() : FALSE; + eRet = bRet ? SAVE_SUCCESSFULL : SAVE_CANCELLED; + + if ( pFilter ) +@@ -568,11 +590,16 @@ + String aFileName, aContentType; + + sal_Bool bSuccessfull = sal_False; +- if ( eMailDocType == TYPE_SELF ) +- eSaveResult = SaveDocument( aFileName, aContentType ); +- else +- eSaveResult = SaveDocAsPDF( aFileName, aContentType ); +- ++ switch (eMailDocType){ ++ case TYPE_ASMSDOC: ++ case TYPE_ASMSPOWERPOINT: ++ case TYPE_ASPDF: ++ case TYPE_ASMSEXCEL: ++ eSaveResult = SaveDocAs( aFileName, aContentType,eMailDocType ); ++ break; ++ default: ++ eSaveResult = SaveDocument( aFileName, aContentType); ++ } + if ( eSaveResult == SAVE_SUCCESSFULL ) + { + SfxFrame* pViewFrm = mpBindings->GetDispatcher_Impl()->GetFrame()->GetFrame(); + +--- sfx2/sdi/sfx.sdi 2004-03-30 18:26:27.000000000 +0530 ++++ sfx2/sdi/sfx.sdi 2004-11-30 16:36:40.000000000 +0530 +@@ -6982,7 +6982,6 @@ + ToolBoxConfig = TRUE, + GroupId = GID_DOCUMENT; + ] +- + //-------------------------------------------------------------------------- + SfxBoolItem SendMail SID_MAIL_SENDDOC + (SfxStringItem Recipient SID_MAIL_RECIPIENT,SfxStringItem Subject SID_MAIL_SUBJECT,SfxStringItem MailText SID_MAIL_TEXT,SfxUInt16Item Priority SID_MAIL_PRIORITY,SfxBoolItem AttachedDoc SID_MAIL_ATTACH,SfxStringItem AttachFiles SID_MAIL_ATTACH_FILE) +@@ -7010,7 +7009,88 @@ + ToolBoxConfig = TRUE, + GroupId = GID_DOCUMENT; + ] ++SfxBoolItem SendMailDocAsMSDoc SID_MAIL_SENDDOCASMSDOC ++(SfxStringItem Recipient SID_MAIL_RECIPIENT,SfxStringItem Subject SID_MAIL_SUBJECT,SfxStringItem MailText SID_MAIL_TEXT,SfxUInt16Item Priority SID_MAIL_PRIORITY,SfxBoolItem AttachedDoc SID_MAIL_ATTACH,SfxStringItem AttachFiles SID_MAIL_ATTACH_FILE) ++[ ++ /* flags: */ ++ AutoUpdate = FALSE, ++ Cachable = Cachable, ++ FastCall = FALSE, ++ HasCoreId = FALSE, ++ HasDialog = TRUE, ++ ReadOnlyDoc = TRUE, ++ Toggle = FALSE, ++ Container = FALSE, ++ RecordAbsolute = FALSE, ++ RecordPerSet; ++ Asynchron; ++ ++ /* status: */ ++ SlotType = SfxStringItem + ++ /* config: */ ++ AccelConfig = TRUE, ++ MenuConfig = TRUE, ++ StatusBarConfig = FALSE, ++ ToolBoxConfig = TRUE, ++ GroupId = GID_DOCUMENT; ++] ++//-------------------------------------------------------------------------- ++SfxBoolItem SendMailDocAsMSExcel SID_MAIL_SENDDOCASMSEXCEL ++(SfxStringItem Recipient SID_MAIL_RECIPIENT,SfxStringItem Subject SID_MAIL_SUBJECT,SfxStringItem MailText SID_MAIL_TEXT,SfxUInt16Item Priority SID_MAIL_PRIORITY,SfxBoolItem AttachedDoc SID_MAIL_ATTACH,SfxStringItem AttachFiles SID_MAIL_ATTACH_FILE) ++[ ++ /* flags: */ ++ AutoUpdate = FALSE, ++ Cachable = Cachable, ++ FastCall = FALSE, ++ HasCoreId = FALSE, ++ HasDialog = TRUE, ++ ReadOnlyDoc = TRUE, ++ Toggle = FALSE, ++ Container = FALSE, ++ RecordAbsolute = FALSE, ++ RecordPerSet; ++ Asynchron; ++ ++ /* status: */ ++ SlotType = SfxStringItem ++ ++ /* config: */ ++ AccelConfig = TRUE, ++ MenuConfig = TRUE, ++ StatusBarConfig = FALSE, ++ ToolBoxConfig = TRUE, ++ GroupId = GID_DOCUMENT; ++] ++ ++//-------------------------------------------------------------------------- ++SfxBoolItem SendMailDocAsMSPowerPoint SID_MAIL_SENDDOCASMSPOWERPOINT ++(SfxStringItem Recipient SID_MAIL_RECIPIENT,SfxStringItem Subject SID_MAIL_SUBJECT,SfxStringItem MailText SID_MAIL_TEXT,SfxUInt16Item Priority SID_MAIL_PRIORITY,SfxBoolItem AttachedDoc SID_MAIL_ATTACH,SfxStringItem AttachFiles SID_MAIL_ATTACH_FILE) ++[ ++ /* flags: */ ++ AutoUpdate = FALSE, ++ Cachable = Cachable, ++ FastCall = FALSE, ++ HasCoreId = FALSE, ++ HasDialog = TRUE, ++ ReadOnlyDoc = TRUE, ++ Toggle = FALSE, ++ Container = FALSE, ++ RecordAbsolute = FALSE, ++ RecordPerSet; ++ Asynchron; ++ ++ /* status: */ ++ SlotType = SfxStringItem ++ ++ /* config: */ ++ AccelConfig = TRUE, ++ MenuConfig = TRUE, ++ StatusBarConfig = FALSE, ++ ToolBoxConfig = TRUE, ++ GroupId = GID_DOCUMENT; ++] ++//-------------------------------------------------------------------------- + SfxBoolItem SendMailDocAsPDF SID_MAIL_SENDDOCASPDF + (SfxStringItem Recipient SID_MAIL_RECIPIENT,SfxStringItem Subject SID_MAIL_SUBJECT,SfxStringItem MailText SID_MAIL_TEXT,SfxUInt16Item Priority SID_MAIL_PRIORITY,SfxBoolItem AttachedDoc SID_MAIL_ATTACH,SfxStringItem AttachFiles SID_MAIL_ATTACH_FILE) + [ + +--- sfx2/sdi/sfxslots.src 2004-11-26 21:41:10.000000000 +0530 ++++ sfx2/sdi/sfxslots.src 2004-11-30 16:56:29.000000000 +0530 +@@ -4756,6 +4756,24 @@ + SlotName[ kannada ] = "ದಸà³à²¤à²¾à²µà³‡à²œà²¨à³à²¨à³ ಕಳಿಸà³"; + SlotName[ galician ] = "Enviar o documento"; + }; ++SfxSlotInfo SID_MAIL_SENDDOCASMSDOC ++{ ++ SlotName = "Send document as MS-DOC Attachment"; ++ SlotName [ english ] = "Send document as MS-DOC Attachment"; ++ SlotName [ english_us ] = "Send document as MS-DOC Attachment"; ++}; ++SfxSlotInfo SID_MAIL_SENDDOCASMSEXCEL ++{ ++ SlotName = "Send document as MS-EXCEL Attachment"; ++ SlotName [ english ] = "Send document as MS-EXCEL Attachment"; ++ SlotName [ english_us ] = "Send document as MS-EXCEL Attachment"; ++}; ++SfxSlotInfo SID_MAIL_SENDDOCASMSPOWERPOINT ++{ ++ SlotName = "Send document as MS-POWERPOINT Attachment"; ++ SlotName [ english ] = "Send document as MS-POWERPOINT Attachment"; ++ SlotName [ english_us ] = "Send document as MS-POWERPOINT Attachment"; ++}; + SfxSlotInfo SID_MAIL_SENDDOCASPDF + { + SlotName = "Dokument als PDF-Anhang versenden"; + +--- sfx2/inc/sfxsids.hrc 2004-11-26 21:41:02.000000000 +0530 ++++ sfx2/inc/sfxsids.hrc 2004-11-30 16:30:43.000000000 +0530 +@@ -147,7 +147,10 @@ + #define SID_MAIL_OPEN (SID_SFX_START + 329) + #define SID_MAIL_NOTIFY (SID_SFX_START + 330) + #define SID_MAIL_SENDDOC (SID_SFX_START + 331) +-#define SID_MAIL_SENDDOCASPDF (SID_SFX_START + 1672) ++#define SID_MAIL_SENDDOCASPDF (SID_SFX_START + 1672) ++#define SID_MAIL_SENDDOCASMSDOC (SID_SFX_START + 1686) ++#define SID_MAIL_SENDDOCASMSEXCEL (SID_SFX_START + 1687) ++#define SID_MAIL_SENDDOCASMSPOWERPOINT (SID_SFX_START + 1688) + #define SID_MAIL_INBOX (SID_SFX_START + 332) + + #define SID_MAIL_RECIPIENT (SID_SFX_START + 334) +@@ -554,7 +557,7 @@ + #define SID_REPAIRPACKAGE (SID_SFX_START + 1683) + #define SID_ADDONHELP (SID_SFX_START + 1684) + #define SID_OBJECTSHELL (SID_SFX_START + 1685) +-#define SID_SFX_free_START (SID_SFX_START + 1686) ++#define SID_SFX_free_START (SID_SFX_START + 1689) + #define SID_SFX_free_END (SID_SFX_START + 3999) + + #define SID_OPEN_NEW_VIEW (SID_SFX_START + 520) + +--- sfx2/sdi/viwslots.sdi 2002-08-26 13:02:06.000000000 +0530 ++++ sfx2/sdi/viwslots.sdi 2004-11-30 22:05:45.000000000 +0530 +@@ -22,6 +22,21 @@ + ExecMethod = ExecMisc_Impl ; + StateMethod = GetState_Impl ; + ] ++ SID_MAIL_SENDDOCASMSDOC // ole(no) api(todo) ++ [ ++ ExecMethod = ExecMisc_Impl ; ++ StateMethod = GetState_Impl ; ++ ] ++ SID_MAIL_SENDDOCASMSEXCEL // ole(no) api(todo) ++ [ ++ ExecMethod = ExecMisc_Impl ; ++ StateMethod = GetState_Impl ; ++ ] ++ SID_MAIL_SENDDOCASMSPOWERPOINT // ole(no) api(todo) ++ [ ++ ExecMethod = ExecMisc_Impl ; ++ StateMethod = GetState_Impl ; ++ ] + //--------------------------------------------------------------------- + SID_PRINTDOC // ole(no) api(play/rec) + [ + +--- sfx2/source/view/viewsh.cxx 2003-11-07 15:42:06.000000000 +0530 ++++ sfx2/source/view/viewsh.cxx 2004-12-01 17:46:28.075380424 +0530 +@@ -185,6 +185,9 @@ + + case SID_MAIL_SENDDOCASPDF: + case SID_MAIL_SENDDOC: ++ case SID_MAIL_SENDDOCASMSDOC: ++ case SID_MAIL_SENDDOCASMSEXCEL: ++ case SID_MAIL_SENDDOCASMSPOWERPOINT: + if ( SvtInternalOptions().MailUIEnabled() ) + { + GetViewFrame()->SetChildWindow( SID_MAIL_CHILDWIN, TRUE ); +@@ -209,10 +212,18 @@ + } + + SfxMailModel_Impl::SendMailResult eResult = SfxMailModel_Impl::SEND_MAIL_ERROR; +- if ( nId == SID_MAIL_SENDDOCASPDF ) +- eResult = aModel.Send( SfxMailModel_Impl::TYPE_ASPDF ); +- else +- eResult = aModel.Send( SfxMailModel_Impl::TYPE_SELF ); ++ switch (nId) { ++ case SID_MAIL_SENDDOCASPDF: ++ eResult = aModel.Send( SfxMailModel_Impl::TYPE_ASPDF );break; ++ case SID_MAIL_SENDDOCASMSDOC: ++ eResult = aModel.Send( SfxMailModel_Impl::TYPE_ASMSDOC );break; ++ case SID_MAIL_SENDDOCASMSEXCEL: ++ eResult = aModel.Send( SfxMailModel_Impl::TYPE_ASMSEXCEL );break; ++ case SID_MAIL_SENDDOCASMSPOWERPOINT: ++ eResult = aModel.Send( SfxMailModel_Impl::TYPE_ASMSPOWERPOINT );break; ++ default: ++ eResult = aModel.Send( SfxMailModel_Impl::TYPE_SELF ); ++ } + + if ( eResult == SfxMailModel_Impl::SEND_MAIL_ERROR ) + { +@@ -325,6 +336,9 @@ + // Mail-Funktionen + case SID_MAIL_SENDDOCASPDF: + case SID_MAIL_SENDDOC: ++ case SID_MAIL_SENDDOCASMSDOC: ++ case SID_MAIL_SENDDOCASMSEXCEL: ++ case SID_MAIL_SENDDOCASMSPOWERPOINT: + { + BOOL bEnable = !GetViewFrame()->HasChildWindow( SID_MAIL_CHILDWIN ); + if ( !bEnable ) +@@ -348,6 +362,60 @@ + rSet.DisableItem( nSID ); + } + ++ else if ( nSID == SID_MAIL_SENDDOCASMSDOC ) ++ { ++ SfxObjectShellRef xDocShell = GetViewFrame()->GetObjectShell(); ++ if ( xDocShell.Is() ) ++ { ++ // Get PDF Filter from container ++ SfxFactoryFilterContainer* pFilterContainer = xDocShell->GetFactory().GetFilterContainer(); ++ if ( pFilterContainer ) ++ { ++ String aPDFExtension = String::CreateFromAscii( ".doc" ); ++ const SfxFilter* pFilter = pFilterContainer->GetFilter4Extension( aPDFExtension, SFX_FILTER_EXPORT ); ++ if ( pFilter != NULL ) ++ break; ++ } ++ } ++ ++ rSet.DisableItem( nSID ); ++ } ++ else if ( nSID == SID_MAIL_SENDDOCASMSEXCEL ) ++ { ++ SfxObjectShellRef xDocShell = GetViewFrame()->GetObjectShell(); ++ if ( xDocShell.Is() ) ++ { ++ // Get PDF Filter from container ++ SfxFactoryFilterContainer* pFilterContainer = xDocShell->GetFactory().GetFilterContainer(); ++ if ( pFilterContainer ) ++ { ++ String aPDFExtension = String::CreateFromAscii( ".xls" ); ++ const SfxFilter* pFilter = pFilterContainer->GetFilter4Extension( aPDFExtension, SFX_FILTER_EXPORT ); ++ if ( pFilter != NULL ) ++ break; ++ } ++ } ++ ++ rSet.DisableItem( nSID ); ++ } ++ else if ( nSID == SID_MAIL_SENDDOCASMSPOWERPOINT ) ++ { ++ SfxObjectShellRef xDocShell = GetViewFrame()->GetObjectShell(); ++ if ( xDocShell.Is() ) ++ { ++ // Get PDF Filter from container ++ SfxFactoryFilterContainer* pFilterContainer = xDocShell->GetFactory().GetFilterContainer(); ++ if ( pFilterContainer ) ++ { ++ String aPDFExtension = String::CreateFromAscii( ".ppt" ); ++ const SfxFilter* pFilter = pFilterContainer->GetFilter4Extension( aPDFExtension, SFX_FILTER_EXPORT ); ++ if ( pFilter != NULL ) ++ break; ++ } ++ } ++ ++ rSet.DisableItem( nSID ); ++ } + break; + } + + +--- svx/inc/globlmn.hrc 2004-11-26 21:40:58.000000000 +0530 ++++ svx/inc/globlmn.hrc 2004-12-01 17:33:01.865942888 +0530 +@@ -3251,6 +3251,30 @@ + Text[ kannada ] = "ಸà³à²µà²¯à²‚ಚಾಲಿತ ಅಂಚೆ"; \ + Text[ galician ] = "~Correo automático"; \ + ++#define ITEM_FILE_MAIL_SENDDOCASMSDOC \ ++ Identifier = SID_MAIL_SENDDOCASMSDOC ; \ ++ Command = ".uno:SendMailDocAsMSDoc" ; \ ++ HelpID = SID_MAIL_SENDDOCASMSDOC ; \ ++ Text = "Dokument als E-~Mail..." ; \ ++ Text [ english ] = "Document as MS-~Doc Attachment..." ; \ ++ Text [ english_us ] = "Document as MS-~Doc Attachment..." ; \ ++ ++#define ITEM_FILE_MAIL_SENDDOCASMSEXCEL \ ++ Identifier = SID_MAIL_SENDDOCASMSEXCEL ; \ ++ Command = ".uno:SendMailDocAsMSExcel" ; \ ++ HelpID = SID_MAIL_SENDDOCASMSEXCEL ; \ ++ Text = "Dokument als ~E-Mail..." ; \ ++ Text [ english ] = "Document as MS-~Excel Attachment..." ; \ ++ Text [ english_us ] = "Document as MS-~Excel Attachment..." ; \ ++ ++#define ITEM_FILE_MAIL_SENDDOCASMSPOWERPOINT \ ++ Identifier = SID_MAIL_SENDDOCASMSPOWERPOINT ; \ ++ Command = ".uno:SendMailDocAsMSPowerPoint" ; \ ++ HelpID = SID_MAIL_SENDDOCASMSPOWERPOINT ; \ ++ Text = "Dokument als E-Mail..." ; \ ++ Text [ english ] = "Document as MS-~PPT Attachment..." ; \ ++ Text [ english_us ] = "Document as MS-~PPT Attachment..." ; \ ++ + #define ITEM_FILE_MAIL_SENDDOC \ + Identifier = SID_MAIL_SENDDOC ; \ + Command = ".uno:SendMail" ; \ + +--- sw/sdi/wviewsh.sdi 2003-03-27 21:09:12.000000000 +0530 ++++ sw/sdi/wviewsh.sdi 2004-11-29 20:58:45.000000000 +0530 +@@ -223,6 +223,11 @@ + [ + StateMethod = GetState ; + ] ++ SID_MAIL_SENDDOCASMSDOC ++ [ ++ ExecMethod = Execute ; ++ StateMethod = GetState ; ++ ] + } + + shell SwSrcView : SfxViewShell + +--- sw/source/ui/inc/swmn.hrc 2004-11-26 21:41:10.000000000 +0530 ++++ sw/source/ui/inc/swmn.hrc 2004-11-29 21:04:08.000000000 +0530 +@@ -5121,6 +5121,10 @@ + { + ITEM_FILE_MAIL_SENDDOCASPDF + }; ++ MenuItem ++ { ++ ITEM_FILE_MAIL_SENDDOCASMSDOC ++ }; + }; + }; + Text[ english_us ] = "Send"; +@@ -5182,6 +5186,11 @@ + { + ITEM_FILE_MAIL_SENDDOCASPDF + }; ++ MenuItem ++ { ++ ITEM_FILE_MAIL_SENDDOCASMSDOC ++ }; ++ + SEPARATOR ; + MenuItem + { + +--- /home/mjayant/OOO_113_backup/ooo-build/build/OOO_1_1_3/sd/source/ui/app/menuids2.src 2004-11-26 21:41:10.000000000 +0530 ++++ sd/source/ui/app/menuids2.src 2004-11-30 21:47:12.000000000 +0530 +@@ -249,6 +249,7 @@ + {\ + MI ( ITEM_FILE_MAIL_SENDDOC ) \ + MI ( ITEM_FILE_MAIL_SENDDOCASPDF ) \ ++ MI ( ITEM_FILE_MAIL_SENDDOCASMSPOWERPOINT ) \ + };\ + };\ + Text [ portuguese_brazilian ] = "~Enviar" ; \ + +--- sc/source/ui/src/menue.src 2004-11-26 21:41:10.000000000 +0530 ++++ sc/source/ui/src/menue.src 2004-12-01 18:05:15.435995560 +0530 +@@ -342,6 +342,10 @@ + { + ITEM_FILE_MAIL_SENDDOCASPDF + }; ++ MenuItem ++ { ++ ITEM_FILE_MAIL_SENDDOCASMSEXCEL ++ }; + }; + }; + Text [ portuguese ] = "~Enviar" ; +@@ -6397,6 +6401,10 @@ + { + ITEM_FILE_MAIL_SENDDOCASPDF + }; ++ MenuItem ++ { ++ ITEM_FILE_MAIL_SENDDOCASMSEXCEL ++ }; + }; + }; + Text [ portuguese ] = "~Enviar" ; diff --git a/patches/OOO_1_1/native-fpicker-not-default.diff b/patches/OOO_1_1/native-fpicker-not-default.diff new file mode 100644 index 000000000..26de5a2de --- /dev/null +++ b/patches/OOO_1_1/native-fpicker-not-default.diff @@ -0,0 +1,17 @@ +Index: Common.xcu +=================================================================== +RCS file: /cvs/util/officecfg/registry/data/org/openoffice/Office/Common.xcu,v +retrieving revision 1.13.34.2 +diff -u -r1.13.34.2 Common.xcu +--- officecfg/registry/data/org/openoffice/Office/Common.xcu 6 Jul 2004 10:50:06 -0000 1.13.34.2 ++++ officecfg/registry/data/org/openoffice/Office/Common.xcu 21 Dec 2004 15:40:02 -0000 +@@ -437,4 +437,9 @@ + </node> + </node> + </node> ++ <node oor:name="Misc"> ++ <prop oor:name="UseSystemFileDialog" oor:type="xs:boolean"> ++ <value>false</value> ++ </prop> ++ </node> + </oor:component-data> diff --git a/patches/OOO_1_1/no-splash-takeover.patch b/patches/OOO_1_1/no-splash-takeover.patch index 632e24458..167e44bd6 100644 --- a/patches/OOO_1_1/no-splash-takeover.patch +++ b/patches/OOO_1_1/no-splash-takeover.patch @@ -1,6 +1,6 @@ ---- vcl/source/window/introwin.cxx.nosplashontop 2003-11-17 17:52:25.000000000 -0500 -+++ vcl/source/window/introwin.cxx 2003-11-17 17:52:36.000000000 -0500 -@@ -126,10 +126,10 @@ +--- vcl/source/window/introwin.cxx ++++ vcl/source/window/introwin.cxx +@@ -114,10 +120,11 @@ void IntroWindow::ImplInitData() // ----------------------------------------------------------------------- IntroWindow::IntroWindow( ) : @@ -10,6 +10,7 @@ ImplInitData(); - WorkWindow::ImplInit( 0, WB_INTROWIN, NULL ); + WorkWindow::ImplInit( 0, WB_NOBORDER, NULL ); ++ SetText(XubString(RTL_CONSTASCII_USTRINGPARAM("OpenOffice.org..."))); } // ----------------------------------------------------------------------- diff --git a/patches/OOO_1_1/odk-fix-linux-archs.diff b/patches/OOO_1_1/odk-fix-linux-archs.diff new file mode 100644 index 000000000..208d3501f --- /dev/null +++ b/patches/OOO_1_1/odk-fix-linux-archs.diff @@ -0,0 +1,47 @@ +Index: settings/settings.mk +=================================================================== +RCS file: /cvs/api/odk/settings/settings.mk,v +retrieving revision 1.6.22.3 +diff -u -u -r1.6.22.3 settings.mk +--- odk/settings/settings.mk 30 Mar 2004 14:31:46 -0000 1.6.22.3 ++++ odk/settings/settings.mk 27 Nov 2004 21:09:09 -0000 +@@ -212,6 +212,21 @@ + JAVA_PROC_TYPE=ppc + endif + ++ifeq "$(PROCTYPE)" "arm" ++PACKAGE_LIB_DIR=linux_arm.plt ++JAVA_PROC_TYPE=arm ++endif ++ ++ifeq "$(PROCTYPE)" "sparc" ++PACKAGE_LIB_DIR=linux_sparc.plt ++JAVA_PROC_TYPE=sparc ++endif ++ ++ifeq "$(PROCTYOE)" "s390" ++PPACKAGE_LIB_DIR=linux_s390.plt ++JAVA_PROC_TYPE=s390 ++endif ++ + OS=LINUX + PS=/ + CC=gcc +@@ -265,7 +280,7 @@ + CC_FLAGS=-c -O -fpic -fno-rtti + endif + +-ifeq "$(PROCTYPE)" "ppc" ++ifneq "$(PROCTYPE)" "i386" + CC_FLAGS+=-fPIC + endif + +@@ -282,7 +297,7 @@ + + LIBRARY_LINK_FLAGS=-shared '-Wl,-rpath,$$ORIGIN' + +-ifeq "$(PROCTYPE)" "ppc" ++ifneq "$(PROCTYPE)" "i386" + LIBRARY_LINK_FLAGS+=-fPIC + endif + diff --git a/patches/OOO_1_1/qpro-build.diff b/patches/OOO_1_1/qpro-build.diff new file mode 100644 index 000000000..9613b6c25 --- /dev/null +++ b/patches/OOO_1_1/qpro-build.diff @@ -0,0 +1,125 @@ +--- sc/prj/build.lst 2004-07-21 19:19:39.000000000 +0100 ++++ sc/prj/build.lst 2004-10-19 15:05:37.208057512 +0100 +@@ -39,6 +39,7 @@ + sc sc\source\filter\pch get - all sc_fpch sc_sdi NULL + sc sc\source\filter\excel nmake - all sc_excel sc_sdi NULL + sc sc\source\filter\lotus nmake - all sc_lotus sc_sdi NULL ++sc sc\source\filter\qpro nmake - all sc_qpro sc_sdi NULL + sc sc\source\filter\starcalc nmake - all sc_scalc sc_sdi NULL + sc sc\source\filter\dif nmake - all sc_dif sc_sdi NULL + sc sc\source\filter\rtf nmake - all sc_rtf sc_sdi NULL +@@ -48,4 +49,4 @@ + sc sc\addin\datefunc nmake - all sc_addfu sc_sdi NULL + sc sc\addin\rot13 nmake - all sc_adrot sc_sdi NULL + sc sc\addin\util nmake - all sc_adutil sc_addfu sc_adrot sc_sdi NULL +-sc sc\util nmake - all sc_util sc_addfu sc_adrot sc_adutil sc_app sc_attr sc_cctrl sc_cosrc sc_data sc_dbgui sc_dif sc_docsh sc_drfnc sc_excel sc_form sc_html sc_lotus sc_misc sc_name sc_nvipi sc_opt sc_page sc_rtf sc_scalc sc_style sc_tool sc_uisrc sc_undo sc_unobj sc_view sc_xcl97 sc_xml sc_acc sc_ftools NULL ++sc sc\util nmake - all sc_util sc_addfu sc_adrot sc_adutil sc_app sc_attr sc_cctrl sc_cosrc sc_data sc_dbgui sc_dif sc_docsh sc_drfnc sc_excel sc_form sc_html sc_lotus sc_qpro sc_misc sc_name sc_nvipi sc_opt sc_page sc_rtf sc_scalc sc_style sc_tool sc_uisrc sc_undo sc_unobj sc_view sc_xcl97 sc_xml sc_acc sc_ftools NULL + +--- sc/util/makefile.mk 2004-07-21 19:20:30.000000000 +0100 ++++ sc/util/makefile.mk 2004-10-19 15:06:02.413225744 +0100 +@@ -204,6 +204,7 @@ + $(SLB)$/xcl97.lib \ + $(SLB)$/html.lib \ + $(SLB)$/lotus.lib \ ++ $(SLB)$/qpro.lib \ + $(SLB)$/rtf.lib \ + $(SLB)$/xml.lib \ + $(SLB)$/accessibility.lib \ + +--- /dev/null 2004-08-25 18:34:59.000000000 +0100 ++++ sc/source/filter/qpro/makefile.mk 2004-10-19 15:13:40.746548488 +0100 +@@ -0,0 +1,94 @@ ++#************************************************************************* ++# ++# $RCSfile$ ++# ++# $Revision$ ++# ++# last change: $Author$ $Date$ ++# ++# The Contents of this file are made available subject to the terms of ++# either of the following licenses ++# ++# - GNU Lesser General Public License Version 2.1 ++# - Sun Industry Standards Source License Version 1.1 ++# ++# Sun Microsystems Inc., October, 2000 ++# ++# GNU Lesser General Public License Version 2.1 ++# ============================================= ++# Copyright 2000 by Sun Microsystems, Inc. ++# 901 San Antonio Road, Palo Alto, CA 94303, USA ++# ++# This library is free software; you can redistribute it and/or ++# modify it under the terms of the GNU Lesser General Public ++# License version 2.1, as published by the Free Software Foundation. ++# ++# This library is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++# Lesser General Public License for more details. ++# ++# You should have received a copy of the GNU Lesser General Public ++# License along with this library; if not, write to the Free Software ++# Foundation, Inc., 59 Temple Place, Suite 330, Boston, ++# MA 02111-1307 USA ++# ++# ++# Sun Industry Standards Source License Version 1.1 ++# ================================================= ++# The contents of this file are subject to the Sun Industry Standards ++# Source License Version 1.1 (the "License"); You may not use this file ++# except in compliance with the License. You may obtain a copy of the ++# License at http://www.openoffice.org/license.html. ++# ++# Software provided under this License is provided on an "AS IS" basis, ++# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, ++# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, ++# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. ++# See the License for the specific provisions governing your rights and ++# obligations concerning the Software. ++# ++# The Initial Developer of the Original Code is: Sun Microsystems, Inc. ++# ++# Copyright: 2000 by Sun Microsystems, Inc. ++# ++# All Rights Reserved. ++# ++# Contributor(s): _______________________________________ ++# ++# ++# ++#************************************************************************* ++ ++PRJ=..$/..$/.. ++ ++PRJNAME=sc ++TARGET=qpro ++ ++PROJECTPCH4DLL=TRUE ++PROJECTPCH=filt_pch ++PROJECTPCHSOURCE=..\pch\filt_pch ++ ++AUTOSEG=true ++ ++# --- Settings ----------------------------------------------------- ++ ++.INCLUDE : scpre.mk ++.INCLUDE : settings.mk ++.INCLUDE : sc.mk ++.INCLUDE : $(PRJ)$/util$/makefile.pmk ++ ++# --- Files -------------------------------------------------------- ++ ++CXXFILES = \ ++ qpro.cxx \ ++ qproform.cxx ++ ++SLOFILES = \ ++ $(SLO)$/qpro.obj \ ++ $(SLO)$/qproform.obj ++ ++# --- Tagets ------------------------------------------------------- ++ ++.INCLUDE : target.mk ++ diff --git a/patches/OOO_1_1/qpro-cxx.diff b/patches/OOO_1_1/qpro-cxx.diff new file mode 100644 index 000000000..f03194195 --- /dev/null +++ b/patches/OOO_1_1/qpro-cxx.diff @@ -0,0 +1,423 @@ +--- /dev/null 2004-08-25 23:04:59.000000000 +0530 ++++ sc/source/filter/qpro/qpro.cxx 2004-12-15 14:43:15.017599352 +0530 +@@ -0,0 +1,420 @@ ++#ifdef PCH ++#include "filt_pch.hxx" ++#endif ++ ++#pragma hdrstop ++ ++//------------------------------------------------------------------------ ++ ++#include <stdio.h> ++#include <sfx2/docfile.hxx> ++#include <rtl/math.hxx> ++ ++ ++#include "qproform.hxx" ++#include "qpro.hxx" ++ ++#include <tools/color.hxx> ++#include "scitems.hxx" ++#include <svx/algitem.hxx> ++#include <svx/align.hxx> ++#include <svx/udlnitem.hxx> ++#include <svx/wghtitem.hxx> ++#include <svx/postitem.hxx> ++#include <svx/crsditem.hxx> ++#include <svx/fhgtitem.hxx> ++#include <svx/fontitem.hxx> ++#include <svx/colritem.hxx> ++#include <map> ++ ++#include "global.hxx" ++#include "sc.hrc" ++#include "globstr.hrc" ++#include "attrib.hxx" ++#include "stlsheet.hxx" ++#include "stlpool.hxx" ++#include "docpool.hxx" ++#include "patattr.hxx" ++#include "flttools.hxx" ++#include "filter.hxx" ++#include "scerrors.hxx" ++#include "document.hxx" ++#include "cell.hxx" ++#include "math.h" ++ ++extern std::map<UINT16, ScPatternAttr> aPatternPool; ++ ++BiffReader::BiffReader( SfxMedium & rMedium ) : ++ mnId(0), ++ mnLength(0), ++ mnOffset(0), ++ meCharSet( RTL_TEXTENCODING_ISO_8859_1 ) // FIXME detect as we parse ++{ ++ mpStream = rMedium.GetInStream(); ++ if( mpStream ) ++ mpStream->SetBufferSize( 65536 ); ++} ++ ++BiffReader::~BiffReader() ++{ ++ if( mpStream ) ++ mpStream->SetBufferSize( 0 ); ++} ++ ++SvStream& BiffReader::operator>>( sal_uInt8 &rByte ) ++{ ++ *mpStream >> rByte; ++} ++ ++SvStream& BiffReader::operator>>( sal_Int8 &rByte ) ++{ ++ *mpStream >> rByte; ++} ++ ++SvStream& BiffReader::operator>>(sal_uInt16 &rWord) ++{ ++ *mpStream >> rWord; ++} ++ ++bool BiffReader::nextRecord() ++{ ++ if( !recordsLeft() ) ++ return false; ++ ++ if( EndOfFile ) ++ return false; ++ ++ sal_uInt32 nPos = mpStream->Tell(); ++ if( nPos != mnOffset + mnLength ) ++ mpStream->Seek( mnOffset + mnLength ); ++ ++ mnLength = mnId = 0; ++ *mpStream >> mnId >> mnLength; ++ ++ mnOffset = mpStream->Tell(); ++#ifdef DEBUG ++ fprintf( stderr, "Read record 0x%x length 0x%x at offset 0x%x\n", ++ mnId, mnLength, mnOffset ); ++ ++ #if 1 // rather verbose ++ int len = mnLength; ++ while (len > 0) { ++ int i, chunk = len < 16 ? len : 16; ++ unsigned char data[16]; ++ mpStream->Read( data, chunk ); ++ ++ for (i = 0; i < chunk; i++) ++ fprintf( stderr, "%.2x ", data[i] ); ++ fprintf( stderr, "| " ); ++ for (i = 0; i < chunk; i++) ++ fprintf( stderr, "%c", data[i] < 127 && data[i] > 30 ? data[i] : '.' ); ++ fprintf( stderr, "\n" ); ++ ++ len -= chunk; ++ } ++ mpStream->Seek( mnOffset ); ++#endif ++#endif ++ return true; ++} ++ ++void BiffReader::readString( String &rString, sal_uInt16 nLength ) ++{ ++ sal_Char* pText = new sal_Char[ nLength + 1 ]; ++ mpStream->Read( pText, nLength ); ++ pText[ nLength ] = 0; ++ rString = String( pText, meCharSet ); ++} ++ ++void BiffReader::SetFormat( ScDocument *pDoc, sal_uInt8 nCol, sal_uInt16 nRow, sal_uInt8 nTab, sal_uInt16 nStyle ){ ++ ScPatternAttr aPattern(pDoc->GetPool()); ++ SfxItemSet& rItemSet = aPattern.GetItemSet(); ++ ++ sal_uInt8 nTmp = Align[ nStyle ]; ++ sal_uInt8 nHor = ( nTmp & 0x07 ); ++ sal_uInt8 nVer = ( nTmp & 0x18 ); ++ sal_uInt8 nOrient = ( nTmp & 0x60 ); ++ ++ ++ // Horizontal Alignment ++ SvxHorJustifyItem ejustify = SVX_HOR_JUSTIFY_STANDARD; ++ switch( nHor ) ++ { ++ ++ case 0x00: ++ ejustify = SVX_HOR_JUSTIFY_STANDARD; ++ break; ++ ++ case 0x01: ++ ejustify = SVX_HOR_JUSTIFY_LEFT; ++ break; ++ ++ case 0x02: ++ ejustify = SVX_HOR_JUSTIFY_CENTER; ++ break; ++ ++ case 0x03: ++ ejustify = SVX_HOR_JUSTIFY_RIGHT; ++ break; ++ ++ case 0x04: ++ ejustify = SVX_HOR_JUSTIFY_BLOCK; ++ break; ++ ++ } ++ rItemSet.Put( ejustify ); ++ ++ // Vertical Alignment ++ SvxVerJustifyItem verJustify = SVX_VER_JUSTIFY_STANDARD; ++ switch( nVer ) ++ { ++ ++ case 0x00: ++ verJustify = SVX_VER_JUSTIFY_BOTTOM; ++ break; ++ ++ case 0x08: ++ verJustify = SVX_VER_JUSTIFY_CENTER; ++ break; ++ ++ case 0x10: ++ verJustify = SVX_VER_JUSTIFY_TOP; ++ break; ++ ++ } ++ rItemSet.Put( verJustify ); ++ ++ // Orientation ++ SvxOrientationItem orientItem = SVX_ORIENTATION_STANDARD; ++ switch( nOrient ) ++ { ++ ++ case 0x20: ++ orientItem = SVX_ORIENTATION_TOPBOTTOM; ++ break; ++ ++ } ++ rItemSet.Put( orientItem ); ++ ++ // Wrap cell contents ++ if( nTmp & 0x80 ) ++ { ++ SfxBoolItem WrapItem( ATTR_LINEBREAK ); ++ WrapItem.SetValue( TRUE ); ++ rItemSet.Put( WrapItem ); ++ } ++ ++ // Font Attributes ++ sal_uInt16 nTmpFnt = FontRecord[ Font[ nStyle ] ]; ++ BOOL bIsBold, bIsItalic, bIsUnderLine, bIsStrikeThrough; ++ ++ bIsBold = ( nTmpFnt & 0x0001 ); ++ bIsItalic = ( nTmpFnt & 0x0002 ); ++ bIsUnderLine = ( nTmpFnt & 0x0004 ); ++ bIsStrikeThrough = (nTmpFnt & 0x0020 ); ++ ++ if( bIsBold ) ++ rItemSet.Put( SvxWeightItem( WEIGHT_BOLD,ATTR_FONT_WEIGHT) ); ++ if( bIsItalic ) ++ rItemSet.Put( SvxPostureItem( ITALIC_NORMAL, ATTR_FONT_POSTURE ) ); ++ if( bIsUnderLine ) ++ rItemSet.Put( SvxUnderlineItem( UNDERLINE_SINGLE, ATTR_FONT_UNDERLINE ) ); ++ if( bIsStrikeThrough ) ++ rItemSet.Put( SvxCrossedOutItem( STRIKEOUT_SINGLE, ATTR_FONT_CROSSEDOUT ) ); ++ ++ String fntName = FontType[ Font[ nStyle ] ]; ++ rItemSet.Put( SvxFontItem( FAMILY_SYSTEM, fntName, EMPTY_STRING ) ); ++ ++ pDoc->ApplyPattern( nCol, nRow, nTab, aPattern ); ++} ++ ++ColorData BiffReader::MapIntToColor( sal_uInt16 ColorId ) ++{ ++ ColorData fColor; ++ switch( ColorId ) ++ { ++ case 0x0000: fColor = COL_WHITE; ++ break; ++ ++ case 0x1000: fColor = COL_LIGHTGRAY; ++ break; ++ ++ case 0x2000: fColor = COL_GRAY; ++ break; ++ ++ case 0x3000: fColor = COL_BLACK; ++ break; ++ ++ case 0x4000: fColor = COL_RED; ++ break; ++ ++ case 0x5000: fColor = COL_GREEN; ++ break; ++ ++ case 0x6000: fColor = COL_BLUE; ++ break; ++ ++ case 0x7000: fColor = COL_CYAN; ++ break; ++ ++ case 0x8000: fColor = COL_MAGENTA; ++ break; ++ ++ case 0x9000: fColor = COL_YELLOW; ++ break; ++ ++ case 0xb000: fColor = COL_LIGHTGREEN; ++ break; ++ } ++ ++ return fColor; ++} ++ ++readQProSheet( BiffReader &rReader, ScDocument *pDoc, sal_uInt16 nTab ) ++{ ++ sal_uInt8 nCol, nDummy; ++ sal_uInt16 nRow; ++ sal_uInt16 nStyle; ++ bool bEndOfSheet = false; ++ ++#ifdef DEBUG ++ fprintf( stderr, "Read sheet (%d)\n", nTab ); ++#endif ++ ++ while( !bEndOfSheet && rReader.nextRecord() ) { ++ switch( rReader.getId() ) ++ { ++ case 0x000f: { // Label cell ++ String aLabel; ++ rReader >> nCol >> nDummy >> nRow >> nStyle >> nDummy; ++ rReader.readString( aLabel, rReader.getLength() - 7 ); ++#ifdef DEBUG ++ fprintf( stderr, "Put Cell %d %d %d '%s'\n", ++ nCol, nRow, nTab, ++ (const sal_Char *)rtl::OUStringToOString( aLabel, RTL_TEXTENCODING_UTF8 ) ); ++#endif ++ nStyle = ( nStyle & 0xfff8 ) >> 3; ++ rReader.SetFormat( pDoc, nCol, nRow, nTab, nStyle ); ++ pDoc->PutCell( nCol, nRow, nTab, new ScStringCell( aLabel ), (BOOL) TRUE ); ++ break; ++ } ++ case 0x00cb: // End of sheet; ++ bEndOfSheet = true; ++ break; ++ ++ case 0x000c: // Blank cell ++ rReader >> nCol >> nDummy >> nRow >> nStyle; ++ rReader.SetFormat( pDoc, nCol, nRow, nTab, nStyle ); ++ break; ++ ++ case 0x000d: { // Integer cell ++ sal_uInt16 nValue; ++ rReader >> nCol >> nDummy >> nRow >> nStyle >> nValue; ++ ScValueCell* aInteger = new ScValueCell( ( double ) nValue ); ++#ifdef DEBUG ++ fprintf( stderr, "Put Cell %d %d %d %f\n", nCol, nRow, nTab, nValue ); ++#endif ++ rReader.SetFormat( pDoc, nCol, nRow, nTab, nStyle ); ++ pDoc->PutCell(nCol ,nRow, nTab ,aInteger,(BOOL) TRUE); ++ break; ++ } ++ ++ case 0x000e: { // Floating point cell ++ double nValue; ++ rReader >> nCol >> nDummy >> nRow >> nStyle >> nValue; ++ ScValueCell* aFloat = new ScValueCell( nValue ); ++#ifdef DEBUG ++ fprintf( stderr, "Put Cell %d %d %d %f\n", nCol, nRow, nTab, nValue ); ++#endif ++ rReader.SetFormat( pDoc, nCol, nRow, nTab, nStyle ); ++ pDoc->PutCell( nCol, nRow, nTab, aFloat, (BOOL) TRUE ); ++ } ++ ++ case 0x0010: { // Formula cell ++ double nValue; ++ sal_uInt16 nState, nLen; ++ rReader >> nCol >> nDummy >> nRow >> nStyle >> nValue >> nState >> nLen; ++ ScAddress aAddr( nCol, nRow, nTab ); ++ const ScTokenArray *pErg; ++ QProToSc aConv( rReader ); ++ aConv.Reset( aAddr ); ++ aConv.Convert( pErg, nLen ); ++ ScFormulaCell *pZelle = new ScFormulaCell( pDoc, aAddr, pErg ); ++#ifdef DEBUG ++ fprintf( stderr, "Put Cell %d %d %d %f\n", nCol, nRow, nTab, nValue ); ++#endif ++ pZelle->AddRecalcMode( RECALCMODE_ONLOAD_ONCE ); ++ rReader.SetFormat( pDoc, nCol, nRow, nTab, nStyle ); ++ pDoc->PutCell( nCol, nRow, nTab, pZelle, ( BOOL ) TRUE ); ++ break; } ++ ++ } ++ } ++ return eERR_OK; ++} ++ ++FltError ScImportQuattroPro( SfxMedium &rMedium, ScDocument *pDoc ) ++{ ++ FltError eRet = eERR_OK; ++ BiffReader aReader( rMedium ); ++ sal_uInt16 nVersion; ++ int nTab = 0, i = 1, j = 1; ++ aReader.EndOfFile = FALSE; ++ ++ if( !aReader.recordsLeft() ) ++ return eERR_OPEN; ++ ++ while( aReader.nextRecord() && eRet == eERR_OK) { ++ switch( aReader.getId() ) ++ { ++ case 0x0000: // Begginning of file ++ aReader >> nVersion; ++ break; ++ ++ case 0x00ca: // Beginning of sheet ++ if( nTab < 26 ) ++ { ++ String aName; ++ aName.Append( sal_Unicode( 'A' + nTab ) ); ++ pDoc->InsertTab( nTab, aName ); ++ } ++ eRet = readQProSheet( aReader, pDoc, nTab ); ++ nTab++; ++ break; ++ ++ case 0x0001: // End of file ++ aReader.EndOfFile = TRUE; ++ break; ++ ++ case 0x00ce: { // Attribute cell ++ sal_uInt8 nFormat, nAlign, nFont; ++ sal_Int16 nTextColor, nColor; ++ aReader >> nFormat >> nAlign >> nColor >> nFont; ++ aReader.Align[ i ] = nAlign; ++ aReader.Font[ i ] = nFont; ++ nTextColor = nColor & 0xf000; ++ aReader.FontColor[ i ] = nTextColor; ++ i++; ++ break; ++ } ++ ++ case 0x00cf: { // Font description ++ sal_uInt16 nPtSize, nFontAttr; ++ String Label; ++ aReader >> nPtSize >> nFontAttr; ++ aReader.FontSize[ j ] = nPtSize; ++ aReader.FontRecord[ j ] = nFontAttr; ++ aReader.readString( Label, aReader.getLength() - 4 ); ++ aReader.FontType[ j ] = Label; ++ j++; ++ break; ++ } ++ ++ } ++ } ++ pDoc->CalcAfterLoad(); ++ return eRet; ++} ++ ++ ++ diff --git a/patches/OOO_1_1/qpro-detect.diff b/patches/OOO_1_1/qpro-detect.diff new file mode 100644 index 000000000..2b8df69ba --- /dev/null +++ b/patches/OOO_1_1/qpro-detect.diff @@ -0,0 +1,119 @@ +--- sc/source/ui/docshell/docsh.cxx 2004-12-16 13:27:05.842137808 +0530 ++++ sc/source/ui/docshell/docsh.cxx 2004-12-16 13:29:38.516927712 +0530 +@@ -185,6 +185,7 @@ + static const sal_Char __FAR_DATA pFilterXML[] = "StarOffice XML (Calc)"; + static const sal_Char __FAR_DATA pFilterAscii[] = "Text - txt - csv (StarCalc)"; + static const sal_Char __FAR_DATA pFilterLotus[] = "Lotus"; ++static const sal_Char __FAR_DATA pFilterQPro[] = "QPro"; + static const sal_Char __FAR_DATA pFilterExcel4[] = "MS Excel 4.0"; + static const sal_Char __FAR_DATA pFilterEx4Temp[] = "MS Excel 4.0 Vorlage/Template"; + static const sal_Char __FAR_DATA pFilterExcel5[] = "MS Excel 5.0/95"; +@@ -977,6 +978,22 @@ + // #93255# update of row height done inside of Excel filter to speed up chart import + // bSetRowHeights = TRUE; // #75357# optimal row heights must be updated + } ++ else if (aFltName.EqualsAscii(pFilterQPro)) ++ { ++ ScColumn::bDoubleAlloc = TRUE; ++ FltError eError = ScImportQuattroPro( rMedium, &aDocument ); ++ ScColumn::bDoubleAlloc = FALSE; ++ if (eError != eERR_OK) ++ { ++ if (!GetError()) ++ SetError( eError ); ++ ++ if( ( eError & ERRCODE_WARNING_MASK ) == ERRCODE_WARNING_MASK ) ++ bRet = TRUE; ++ } ++ else ++ bRet = TRUE; ++ } + else if (aFltName.EqualsAscii(pFilterAscii)) + { + SfxItemSet* pSet = rMedium.GetItemSet(); +--- sc/source/ui/app/sclib.cxx 2004-12-16 13:26:32.229247744 +0530 ++++ sc/source/ui/app/sclib.cxx 2004-12-16 13:29:38.527926040 +0530 +@@ -103,6 +103,7 @@ + static const sal_Char __FAR_DATA pFilterXML[] = "StarOffice XML (Calc)"; + static const sal_Char __FAR_DATA pFilterAscii[] = "Text - txt - csv (StarCalc)"; + static const sal_Char __FAR_DATA pFilterLotus[] = "Lotus"; ++static const sal_Char __FAR_DATA pFilterQPro[] = "QPro"; + static const sal_Char __FAR_DATA pFilterExcel4[] = "MS Excel 4.0"; + static const sal_Char __FAR_DATA pFilterEx4Temp[] = "MS Excel 4.0 Vorlage/Template"; + static const sal_Char __FAR_DATA pFilterExcel5[] = "MS Excel 5.0/95"; +@@ -557,6 +558,13 @@ + 0x0000, 0x0000, + M_ENDE }; + ++ const UINT16 pQPro[] = ++ { 0x0000, 0x0000, 0x0002, 0x0000, ++ M_ALT(4), 0x0001, 0x0002, // WB1, WB2 ++ 0x0006, 0x0007, // QPro 6/7 (?) ++ 0x0010, ++ M_ENDE }; ++ + const UINT16 pDIF1[] = // DIF mit CR-LF + { + 'T', 'A', 'B', 'L', 'E', +@@ -604,6 +612,7 @@ + pDIF1, + pDIF2, + pSylk, ++ pQPro, + pLotus97, + pLotus2 + }; +@@ -620,6 +629,7 @@ + pFilterDif, + pFilterDif, + pFilterSylk, ++ pFilterQPro, + pFilterLotus, + pFilterLotus + }; +--- officecfg/registry/data/org/openoffice/Office/TypeDetection.xcu 2004-12-16 13:26:44.706350936 +0530 ++++ officecfg/registry/data/org/openoffice/Office/TypeDetection.xcu 2004-12-16 13:29:38.560921024 +0530 +@@ -261,6 +261,14 @@ + <value>1,,,,wk1;wks;123,0,</value> + </prop> + </node> ++ <node oor:name="calc_QPro" oor:op="replace"> ++ <prop oor:name="UIName"> ++ <value xml:lang="en-US">Quattro Pro</value> ++ </prop> ++ <prop oor:name="Data"> ++ <value>1,,,,wb1;wb2,0,</value> ++ </prop> ++ </node> + <node oor:name="calc_MS_Excel_40" oor:op="replace"> + <prop oor:name="UIName"> + <value xml:lang="en-US">Microsoft Excel 4.0</value> +@@ -4810,6 +4818,17 @@ + <value>0,calc_Lotus,com.sun.star.sheet.SpreadsheetDocument,,268435649,,0,,com.sun.star.comp.Calc.FilterOptionsDialog</value> + </prop> + </node> ++ <node oor:name="QPro" oor:op="replace"> ++ <prop oor:name="UIName"> ++ <value xml:lang="en-US">Quattro Pro</value> ++ </prop> ++ <prop oor:name="Data"> ++ <value>0,calc_QPro,com.sun.star.sheet.SpreadsheetDocument,,268435649,,0,,</value> ++ </prop> ++ <prop oor:name="Installed" oor:type="xs:boolean"> ++ <value>true</value> ++ </prop> ++ </node> + <node oor:name="MS Excel 4.0" oor:op="replace"> + <prop oor:name="Installed"> + <value>false</value> +--- sc/inc/filter.hxx 2004-12-16 13:27:16.969446200 +0530 ++++ sc/inc/filter.hxx 2004-12-16 13:29:38.562920720 +0530 +@@ -122,6 +122,8 @@ + + FltError ScImportLotus123( SfxMedium&, ScDocument*, CharSet eSrc = RTL_TEXTENCODING_DONTKNOW ); + ++FltError ScImportQuattroPro( SfxMedium&, ScDocument* ); ++ + FltError ScImportExcel( SvStream&, ScDocument* ); + + FltError ScImportExcel( SfxMedium&, ScDocument* ); diff --git a/patches/OOO_1_1/qpro-hxx.diff b/patches/OOO_1_1/qpro-hxx.diff new file mode 100644 index 000000000..582cbb231 --- /dev/null +++ b/patches/OOO_1_1/qpro-hxx.diff @@ -0,0 +1,50 @@ +--- /dev/null 2004-08-25 23:04:59.000000000 +0530 ++++ sc/source/filter/inc/qpro.hxx 2004-12-15 12:41:25.000000000 +0530 +@@ -0,0 +1,47 @@ ++#ifndef _QPRO_HXX ++#define _QPRO_HXX ++ ++#include "flttools.hxx" ++#include "filter.hxx" ++#include "scerrors.hxx" ++#include "document.hxx" ++#include "cell.hxx" ++#include "math.h" ++ ++#include <vcl/color.hxx> ++ ++ ++// Stream wrapper class ++class BiffReader ++{ ++ protected: ++ sal_uInt16 mnId; ++ sal_uInt16 mnLength; ++ sal_uInt32 mnOffset; ++ rtl_TextEncoding meCharSet; ++ ++ public: ++ sal_uInt8 Align[ 256 ]; ++ sal_uInt8 Font[ 256 ]; ++ sal_uInt16 FontRecord[ 256 ]; ++ sal_uInt16 FontSize[ 256 ]; ++ sal_Int16 FontColor[ 256 ]; ++ String FontType[ 256 ]; ++ bool EndOfFile; ++ SvStream *mpStream; ++ BiffReader( SfxMedium & rMedium ); ++ ~BiffReader(); ++ bool recordsLeft() { return mpStream && !mpStream->IsEof(); } ++ bool nextRecord(); ++ void SetFormat( ScDocument* pDoc, sal_uInt8 nCol, sal_uInt16 nRow, sal_uInt8 nTab, sal_uInt16 nStyle ); ++ sal_uInt16 getId() { return mnId; } ++ sal_uInt16 getLength() { return mnLength; } ++ void readString( String &rString, sal_uInt16 nLength ); ++ SvStream& operator>>( sal_uInt8 & rByte ); ++ SvStream& operator>>( sal_uInt16 & rWord ); ++ SvStream& operator>>( sal_Int8 & rByte ); ++ ColorData MapIntToColor( sal_uInt16 nColor ); ++ ++}; ++#endif ++ diff --git a/patches/OOO_1_1/qproform-cxx.diff b/patches/OOO_1_1/qproform-cxx.diff new file mode 100644 index 000000000..acf5a0f48 --- /dev/null +++ b/patches/OOO_1_1/qproform-cxx.diff @@ -0,0 +1,604 @@ +--- /dev/null 2004-08-25 23:04:59.000000000 +0530 ++++ sc/source/filter/qpro/qproform.cxx 2004-12-15 14:04:52.678608080 +0530 +@@ -0,0 +1,601 @@ ++#ifdef PCH ++#include "filt_pch.hxx" ++#endif ++ ++#pragma hdrstop ++ ++//------------------------------------------------------------------------ ++ ++#include "decl.h" ++ ++#ifndef _QPRO_HXX ++#include "qpro.hxx" ++#endif ++ ++#include "qproform.hxx" ++#include "compiler.hxx" ++#include "namebuff.hxx" ++#include "root.hxx" ++#include "ftools.hxx" ++#include "tool.h" ++#include <math.h> ++ ++static const sal_Char* GetAddInName( const UINT8 nIndex ); ++ ++static DefTokenId lcl_KnownAddIn( const ByteString& sTest ); ++ ++void QProToSc::ReadSRD( SingleRefData& rSRD, sal_Int8 nPage, sal_Int8 nCol, sal_uInt16 nRelBit ) ++{ ++ ++ UINT16 nTmp = nRelBit & 0x1fff; ++ rSRD.InitAddress( ScAddress( nCol, (~nTmp + 1), 0 ) ); ++ if( nRelBit & 0x4000 ) ++ { ++ rSRD.nRelCol = nCol; ++ rSRD.SetColRel( TRUE ); ++ } ++ else ++ { ++ rSRD.nCol = nCol; ++ rSRD.SetColRel( FALSE ); ++ } ++ if( nRelBit & 0x2000 ) ++ { ++ rSRD.nRelRow = (~nTmp + 1); ++ rSRD.nRelRow = (UINT16)(nTmp << 3); ++ rSRD.nRelRow /= 8; ++ ++ rSRD.SetRowRel( TRUE ); ++ } ++ else ++ { ++ rSRD.nRow = nTmp; ++ rSRD.SetRowRel( FALSE ); ++ } ++ if( nRelBit & 0x8000 ) ++ { ++ rSRD.nRelTab = nPage; ++ rSRD.SetTabRel( TRUE ); ++ } ++ else ++ { ++ rSRD.nTab = nPage; ++ rSRD.SetTabRel( FALSE ); ++ } ++ ++} ++ ++void QProToSc::Reset( ScAddress aEingPos ) ++{ ++ QProConverterBase::Reset(); ++ ++ TokenId nEins = aPool.Store( 1.0 ); ++ ++ aPool << ocClose << ocAdd << nEins; ++ nAddToken = aPool.Store(); ++ ++ aPool << ocClose << ocSub << nEins; ++ nSubToken = aPool.Store(); ++ ++ n0Token = aPool.Store( 0.0 ); ++} ++ ++QProToSc::QProToSc( BiffReader& rStream ) : ++ QProConverterBase( rStream, 128 ) ++{ ++} ++void QProToSc::DoFunc( DefTokenId eOc, BYTE nArgs, const sal_Char* pExtString ) ++{ ++ TokenId eParam[ 256 ]; ++ INT32 nLauf; ++ TokenId nPush, nPush1; ++ ++ BOOL bAddIn = FALSE; ++ BOOL bNeg = FALSE; ++ ++ if( eOc == ocNoName ) ++ { ++ bAddIn = TRUE; ++ nPush = aPool.Store( eOc ); ++ aPool << nPush; ++ } ++ ++ ++ for( nLauf = 0 ; nLauf < nArgs; nLauf++ ) ++ aStack >> eParam[ nLauf ]; ++ ++ switch( eOc ) ++ { ++ case ocIndex: ++ nPush = eParam[ 0 ]; ++ eParam[ 0 ] = eParam[ 1 ]; ++ eParam[ 1 ] = nPush; ++ IncToken( eParam[ 0 ] ); ++ IncToken( eParam[ 1 ] ); ++ break; ++ case ocIKV: ++ { ++ nPush = eParam[ 0 ]; ++ eParam[ 0 ] = eParam[ 1 ]; ++ eParam[ 1 ] = nPush; ++ } ++ break; ++ case ocGetYear: ++ { ++ nPush = aPool.Store( 1900.0 ); ++ aPool << ocOpen; ++ } ++ break; ++ case ocChose: ++ { ++ IncToken( eParam[ nArgs- 1 ] ); ++ } ++ break; ++ case ocFind: ++ case ocHLookup: ++ case ocVLookup: ++ { ++ IncToken( eParam[ 0 ] ); ++ } ++ break; ++ case ocMid: ++ case ocReplace: ++ { ++ IncToken( eParam[ nArgs- 2 ] ); ++ } ++ break; ++ case ocZins: ++ { ++ nArgs= 4; ++ eParam[ 3 ] = eParam[ 0 ]; // 3. -> 1. ++ eParam[ 0 ] = eParam[ 2 ]; // 1. -> 4. ++ NegToken( eParam[ 1 ] ); // 2. -> -2. (+ 2. -> 3.) ++ eParam[ 2 ] = n0Token; // -> 2. als Default ++ } ++ break; ++ } ++ ++ if( !bAddIn ) ++ aPool << eOc; ++ ++ aPool << ocOpen; ++ ++ if( nArgs> 0 ) ++ { ++ INT16 nNull = -1; ++ ++ INT16 nLast = nArgs- 1; ++ ++ if( eOc == ocRMZ ) ++ { aPool << eParam[ 1 ] << ocSep << eParam[ 0 ] << ocSep ++ << ocNegSub << eParam[ 2 ]; ++ } ++ else ++ { aPool << eParam[ nLast ]; ++ ++ for( nLauf = nLast - 1 ; nLauf >= 0 ; nLauf-- ) ++ { ++ if( nLauf != nNull ) ++ aPool << ocSep << eParam[ nLauf ]; ++ } ++ } ++ } ++ ++ ++ if( eOc == ocGetYear ) ++ { ++ aPool << ocClose << ocSub << nPush; ++ } ++ else if( eOc == ocFixed ) ++ { ++ aPool << ocSep << ocTrue << ocOpen << ocClose; ++ } ++ else if( eOc == ocFind ) ++ { ++ nPush1 = aPool.Store(); ++ DecToken( nPush1 ); ++ aPool << nPush1; ++ } ++ ++ aPool << ocClose; ++ ++ aPool >> aStack; ++ ++ if( bNeg ) ++ { ++ aPool << ocOpen << ocSub << aStack << ocClose; ++ aPool >> aStack; ++ } ++} ++ ++void QProToSc::IncToken( TokenId &rParam ) ++{ ++ aPool << ocOpen << rParam << nAddToken; ++ rParam = aPool.Store(); ++} ++ ++ ++void QProToSc::DecToken( TokenId &rParam ) ++{ ++ aPool << ocOpen << rParam << nSubToken; ++ rParam = aPool.Store(); ++} ++ ++ ++void QProToSc::NegToken( TokenId &rParam ) ++{ ++ aPool << ocNegSub << ocOpen << rParam << ocClose; ++ rParam = aPool.Store(); ++} ++ ++ ++ConvErr QProToSc::Convert( const ScTokenArray*& rpErg, sal_uInt16 nLen, const FORMULA_TYPE eFT = FT_CellFormula ) ++{ ++ sal_uInt8 nFmla[ 256 ]; ++ sal_Int8 nCol, nPage; ++ sal_uInt16 nCRefCount = 0, nBRefCount = 0; ++ sal_uInt16 nNote, nRef, nRelBits; ++ TokenId nPush; ++ BOOL FirstCRef = TRUE, FirstBRef = TRUE; ++ ComplRefData aCRD; ++ SingleRefData aSRD; ++ FUNC_TYPE eType; ++ DefTokenId eOc; ++ const sal_Char* pExtName; ++ ++ aCRD.InitFlags(); ++ aSRD.InitFlags(); ++ aIn >> nRef; ++ ++ for(int i=0; i < ( int )nRef; i++) ++ aIn >> nFmla[i]; ++ ++ i = 0; ++ ++ while( nFmla[ i ] != 0x03 ) ++ { ++ eType = IndexToType( nFmla[ i ] ); ++ eOc = IndexToToken( nFmla[ i ] ); ++ if( eOc == ocNoName ) ++ pExtName = GetAddInName( eOc ); ++ ++ switch( eType ) ++ { ++ case FT_NotImpl: ++ case FT_FuncFix0: DoFunc( eOc, 0, pExtName ); break; ++ case FT_FuncFix1: DoFunc( eOc, 1, pExtName ); break; ++ case FT_FuncFix2: DoFunc( eOc, 2, pExtName ); break; ++ case FT_FuncFix3: DoFunc( eOc, 3, pExtName ); break; ++ case FT_FuncFix4: DoFunc( eOc, 4, pExtName ); break; ++ ++ case FT_Cref : { // Single cell reference ++ aIn >> nNote >> nCol >> nPage >> nRelBits; ++ ReadSRD( aSRD, nPage, nCol, nRelBits ); ++ aStack << aPool.Store( aSRD ); ++ break; ++ } ++ ++ case FT_Range: { // Block reference ++ aIn >> nNote >> nCol >> nPage >> nRelBits; ++ ReadSRD( aCRD.Ref1, nPage, nCol, nRelBits ); ++ aIn >> nCol >> nPage >> nRelBits; ++ ReadSRD( aCRD.Ref2, nPage, nCol, nRelBits ); ++ aStack << aPool.Store( aCRD ); ++ break; ++ } ++ ++ case FT_FuncVar: { // Sum of a sequence of numbers ++ sal_uInt8 nArg; ++ i++; ++ nArg = nFmla[ i ]; ++ DoFunc( eOc, nArg , pExtName ); ++ break; ++ } ++ ++ case FT_Op: { // operators ++ aStack >> nPush; ++ aPool << aStack << eOc << nPush; ++ aPool >> aStack; ++ break; ++ } ++ ++ case FT_Braces: ++ aPool << ocOpen << aStack << ocClose; ++ aPool >> aStack; ++ break; ++ ++ case FT_ConstInt:{ ++ sal_uInt16 nVal; ++ aIn >> nVal; ++ aStack << aPool.Store( ( double ) nVal ); ++ } ++ ++ case FT_Erref: ++ aPool << ocBad; ++ aPool >> aStack; ++ break; ++ ++ case FT_Ecref: ++ aPool << ocBad; ++ aPool >> aStack; ++ break; ++ ++ case FT_Econstant: ++ aPool << ocBad; ++ aPool >> aStack; ++ break; ++ } ++ i++; ++ } ++ ++ ++ rpErg = aPool[ aStack.Get() ]; ++ return ConvOK; ++} ++ ++ ++DefTokenId lcl_KnownAddIn( const ByteString& sTest ) ++{ ++ DefTokenId eId = ocNoName; ++ ++ if( sTest == "FACT" ) ++ eId = ocFact; ++ else if( sTest == "ISEMPTY") ++ eId = ocIsEmpty; ++ else if( sTest == "DEGTORAD") ++ eId = ocRad; ++ else if( sTest == "RADTODEG") ++ eId = ocDeg; ++ else if( sTest == "SIGN") ++ eId = ocPlusMinus; ++ else if( sTest == "ACOSH") ++ eId = ocArcCosHyp; ++ else if( sTest == "ACOTH") ++ eId = ocArcCotHyp; ++ else if( sTest == "ASINH") ++ eId = ocArcSinHyp; ++ else if( sTest == "ATANH") ++ eId = ocArcTanHyp; ++ else if( sTest == "COSH") ++ eId = ocCosHyp; ++ else if( sTest == "COTH") ++ eId = ocCotHyp; ++ else if( sTest == "SINH") ++ eId = ocSinHyp; ++ else if( sTest == "TANH") ++ eId = ocTanHyp; ++ else if( sTest == "EVEN") ++ eId = ocIsEven; ++ else if( sTest == "ODD") ++ eId = ocIsOdd; ++ else if( sTest == "ACOT") ++ eId = ocArcCot; ++ else if( sTest == "COT") ++ eId = ocCot; ++ else if( sTest == "ACOT") ++ eId = ocArcCot; ++ else if( sTest == "TRUNC") ++ eId = ocTrunc; ++ else if( sTest == "GEOMEAN") ++ eId = ocGeoMean; ++ else if( sTest == "HARMEAN") ++ eId = ocHarMean; ++ else if( sTest == "CORREL") ++ eId = ocCorrel; ++ else if( sTest == "MEDIAN") ++ eId = ocMedian; ++ else if( sTest == "COV") ++ eId = ocCovar; ++ else if( sTest == "SKEWNESS") ++ eId = ocSchiefe; ++ else if( sTest == "CHITEST") ++ eId = ocChiTest; ++ else if( sTest == "FTEST") ++ eId = ocFTest; ++ else if( sTest == "AVEDEV") ++ eId = ocAveDev; ++ else if( sTest == "PRODUCT") ++ eId = ocProduct; ++ else if( sTest == "PERMUT") ++ eId = ocVariationen; ++ else if( sTest == "GAMMALN") ++ eId = ocGammaLn; ++ else if( sTest == "POISSON") ++ eId = ocPoissonDist; ++ else if( sTest == "NORMAL") ++ eId = ocNormDist; ++ else if( sTest == "CRITBINOMIAL") ++ eId = ocKritBinom; ++ ++ return eId; ++} ++ ++static const struct { ++ DefTokenId nToken; ++ FUNC_TYPE nType; ++ const sal_Char *addInName; ++} aFuncMap[ 162 ] = { ++ ++ { ocPush, FT_ConstFloat, NULL }, ++ { ocPush, FT_Cref, NULL }, ++ { ocPush, FT_Range, NULL }, ++ { ocPush, FT_Return, NULL }, ++ { ocPush, FT_Braces, NULL }, ++ { ocPush, FT_ConstInt, NULL }, ++ { ocPush, FT_ConstString, NULL }, ++ { ocPush, FT_NOP, NULL }, ++ { ocNegSub, FT_Neg, NULL }, ++ { ocAdd, FT_Op, NULL }, ++ { ocSub, FT_Op, NULL }, ++ { ocMul, FT_Op, NULL }, ++ { ocDiv, FT_Op, NULL }, ++ { ocPow, FT_Op, NULL }, ++ { ocEqual, FT_Op, NULL }, ++ { ocNotEqual, FT_Op, NULL }, ++ { ocLessEqual, FT_Op, NULL }, ++ { ocGreaterEqual, FT_Op, NULL }, ++ { ocLess, FT_Op, NULL }, ++ { ocGreater, FT_Op, NULL }, ++ { ocAnd, FT_Op, NULL }, ++ { ocOr, FT_Op, NULL }, ++ { ocNot, FT_FuncFix1, NULL }, ++ { ocPush, FT_NOP, NULL }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoValue, FT_FuncFix0, NULL }, ++ { ocNoName, FT_FuncFix0, NULL }, ++ { ocAbs, FT_FuncFix1, NULL }, ++ { ocInt, FT_FuncFix1, NULL }, ++ { ocSqrt, FT_FuncFix1, NULL }, ++ { ocLog10, FT_FuncFix1, NULL }, ++ { ocLn, FT_FuncFix1, NULL }, ++ { ocPi, FT_FuncFix0, NULL }, ++ { ocSin, FT_FuncFix1, NULL }, ++ { ocCos, FT_FuncFix1, NULL }, ++ { ocTan, FT_FuncFix1, NULL }, ++ { ocArcTan2, FT_FuncFix2, NULL }, ++ { ocArcTan, FT_FuncFix1, NULL }, ++ { ocArcSin, FT_FuncFix1, NULL }, ++ { ocArcCos, FT_FuncFix1, NULL }, ++ { ocExp, FT_FuncFix1, NULL }, ++ { ocMod, FT_FuncFix2, NULL }, ++ { ocChose, FT_FuncVar, NULL }, ++ { ocIsNV, FT_FuncFix1, NULL }, ++ { ocIsError, FT_FuncFix1, NULL }, ++ { ocFalse, FT_FuncFix0, NULL }, ++ { ocTrue, FT_FuncFix0, NULL }, ++ { ocRandom, FT_FuncFix0, NULL }, ++ { ocGetDate, FT_FuncFix3, NULL }, ++ { ocGetActDate, FT_FuncFix0, NULL }, ++ { ocRMZ, FT_FuncFix3, NULL }, ++ { ocBW, FT_FuncFix3, NULL }, ++ { ocZW, FT_FuncFix3, NULL }, ++ { ocIf, FT_FuncFix3, NULL }, ++ { ocGetDay, FT_FuncFix1, NULL }, ++ { ocGetMonth, FT_FuncFix1, NULL }, ++ { ocGetYear, FT_FuncFix1, NULL }, ++ { ocRound, FT_FuncFix2, NULL }, ++ { ocGetTime, FT_FuncFix3, NULL }, ++ { ocGetHour, FT_FuncFix1, NULL }, ++ { ocGetMin, FT_FuncFix1, NULL }, ++ { ocGetSec, FT_FuncFix1, NULL }, ++ { ocIsValue, FT_FuncFix1, NULL }, ++ { ocIsString, FT_FuncFix1, NULL }, ++ { ocLen, FT_FuncFix1, NULL }, ++ { ocValue, FT_FuncFix1, NULL }, ++ { ocFixed, FT_FuncFix2, NULL }, ++ { ocMid, FT_FuncFix3, NULL }, ++ { ocChar, FT_FuncFix1, NULL }, ++ { ocCode, FT_FuncFix1, NULL }, ++ { ocFind, FT_FuncFix3, NULL }, ++ { ocGetDateValue, FT_FuncFix1, NULL }, ++ { ocGetTimeValue, FT_FuncFix1, NULL }, ++ { ocNoName, FT_FuncFix1, "CELLPOINTER" }, ++ { ocSum, FT_FuncVar, NULL }, ++ { ocAverage, FT_FuncVar, NULL }, ++ { ocCount, FT_FuncVar, NULL }, ++ { ocMin, FT_FuncVar, NULL }, ++ { ocMax, FT_FuncVar, NULL }, ++ { ocVLookup, FT_FuncFix3, NULL }, ++ { ocNBW, FT_FuncFix2, NULL }, ++ { ocVar, FT_FuncVar, NULL }, ++ { ocNormDist, FT_FuncVar, NULL }, ++ { ocIKV, FT_FuncFix2, NULL }, ++ { ocHLookup, FT_FuncFix3, NULL }, ++ { ocDBSum, FT_FuncFix3, NULL }, ++ { ocDBAverage, FT_FuncFix3, NULL }, ++ { ocDBCount, FT_FuncFix3, NULL }, ++ { ocDBMin, FT_FuncFix3, NULL }, ++ { ocDBMax, FT_FuncFix3, NULL }, ++ { ocDBVar, FT_FuncFix3, NULL }, ++ { ocDBStdDev, FT_FuncFix3, NULL }, ++ { ocIndex, FT_FuncFix3, NULL }, ++ { ocColumns, FT_FuncFix1, NULL }, ++ { ocRows, FT_FuncFix1, NULL }, ++ { ocRept, FT_FuncFix2, NULL }, ++ { ocUpper, FT_FuncFix1, NULL }, ++ { ocLower, FT_FuncFix1, NULL }, ++ { ocLeft, FT_FuncFix2, NULL }, ++ { ocRight, FT_FuncFix2, NULL }, ++ { ocReplace, FT_FuncFix4, NULL }, ++ { ocPropper, FT_FuncFix1, NULL }, ++ { ocNoName, FT_FuncFix2, "CELL" }, ++ { ocTrim, FT_FuncFix1, NULL }, ++ { ocClean, FT_FuncFix1, NULL }, ++ { ocFalse, FT_FuncFix1, "F" }, ++ { ocTrue, FT_FuncFix1, "W" }, ++ { ocExact, FT_FuncFix2, NULL }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocIndirect, FT_FuncFix1, NULL }, ++ { ocZins, FT_FuncFix3, "RATE" }, ++ { ocNoName, FT_FuncFix1, "TERM" }, ++ { ocNoName, FT_FuncFix1, "CTERM" }, ++ { ocLIA, FT_FuncFix3, NULL }, ++ { ocDIA, FT_FuncFix4, NULL }, ++ { ocGDA, FT_FuncFix4, NULL }, ++ { ocNoName, FT_NotImpl,"STDS" }, ++ { ocNoName, FT_NotImpl, "VARS" }, ++ { ocNoName, FT_NotImpl, "DSTDS" }, ++ { ocNoName, FT_NotImpl, "DVARS" }, ++ { ocNoName, FT_NotImpl, "PVAL" }, ++ { ocNoName, FT_NotImpl, "PAYMT" }, ++ { ocNoName, FT_NotImpl, "FVAL" }, ++ { ocNoName, FT_NotImpl, "NPER" }, ++ { ocNoName, FT_NotImpl, "IRATE" }, ++ { ocNoName, FT_NotImpl, "IPAYMT" }, ++ { ocNoName, FT_NotImpl, "PPAYMT" }, ++ { ocNoName, FT_NotImpl, "SUMPRODUCT" }, ++ { ocNoName, FT_NotImpl, "MEMAVAIL" }, ++ { ocNoName, FT_NotImpl, "MEMEMSAVAIL" }, ++ { ocNoName, FT_NotImpl, "FILEEXISTS" }, ++ { ocNoName, FT_NotImpl, "CURVALUE" }, ++ { ocNoName, FT_NotImpl, "DEGREES" }, ++ { ocNoName, FT_NotImpl, "RADIANS" }, ++ { ocNoName, FT_NotImpl, "HEXTONUM" }, ++ { ocNoName, FT_NotImpl, "NUMTOHEX" }, ++ { ocNoName, FT_NotImpl, "TODAY" }, ++ { ocNoName, FT_NotImpl, "NPV" }, ++ { ocNoName, FT_NotImpl, "CELLINDEX2D" }, ++ { ocNoName, FT_NotImpl, "VERSION" }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoName, FT_NotImpl, "SHEETS" }, ++ { ocNoName, FT_NotImpl, NULL }, ++ { ocNoName, FT_FuncVar, NULL }, ++ { ocNoName, FT_NotImpl, "INDEX3D" }, ++ { ocNoName, FT_NotImpl, "CELLINDEX3D" }, ++ { ocNoName, FT_NotImpl, "PROPERTY" }, ++ { ocNoName, FT_NotImpl, "DDELINK" }, ++ { ocNoName, FT_NotImpl, "COMMAND" } ++}; ++ ++DefTokenId QProToSc::IndexToToken( sal_uInt16 nIndex ) ++{ ++ if( nIndex >= 0 && nIndex <= 161 ) ++ return aFuncMap[ nIndex ].nToken; ++} ++ ++FUNC_TYPE QProToSc::IndexToType( sal_uInt8 nIndex ) ++{ ++ if( nIndex >= 0 && nIndex <= 161 ) ++ return aFuncMap[ nIndex ].nType; ++} ++ ++const sal_Char* QProToSc::GetAddInName( const UINT8 nIndex ) ++{ ++ if( nIndex >= 0 && nIndex <= 161 ) ++ return aFuncMap[ nIndex ].addInName; ++} ++ ++ diff --git a/patches/OOO_1_1/qproform-hxx.diff b/patches/OOO_1_1/qproform-hxx.diff new file mode 100644 index 000000000..3516f9977 --- /dev/null +++ b/patches/OOO_1_1/qproform-hxx.diff @@ -0,0 +1,74 @@ +--- /dev/null 2004-08-25 23:04:59.000000000 +0530 ++++ sc/source/filter/inc/qproform.hxx 2004-12-15 14:21:27.642350600 +0530 +@@ -0,0 +1,71 @@ ++#ifndef _QPROFORM_HXX ++#define _QPROFORM_HXX ++ ++#ifndef SC_XLTOOLS_HXX ++#include "xltools.hxx" ++#endif ++#ifndef _FORMEL_HXX ++#include "formel.hxx" ++#endif ++#ifndef _STRING_HXX ++#include <tools/string.hxx> ++#endif ++#ifndef _QPRO_HXX ++#include "qpro.hxx" ++#endif ++ ++enum FUNC_TYPE ++{ ++ FT_Return, ++ FT_FuncFix0, ++ FT_FuncFix1, ++ FT_FuncFix2, ++ FT_FuncFix3, ++ FT_FuncFix4, ++ FT_FuncVar, ++ FT_Neg, ++ FT_Op, ++ FT_NotImpl, ++ FT_ConstFloat, ++ FT_Variable, ++ FT_Range, ++ FT_Braces, ++ FT_ConstInt, ++ FT_ConstString, ++ FT_NOP, ++ FT_Cref, ++ FT_Rref, ++ FT_Nrref, ++ FT_Absnref, ++ FT_Erref, ++ FT_Ecref, ++ FT_Econstant, ++ FT_Splfunc, ++ FT_Const10Float, ++}; ++ ++class QProToSc : public QProConverterBase ++{ ++private: ++ TokenId nAddToken; ++ TokenId nSubToken; ++ TokenId n0Token; ++ ++ void ReadSRD( SingleRefData& rR, sal_Int8 nPage, sal_Int8 nCol, sal_uInt16 rRel ); ++public: ++ QProToSc( BiffReader& aStr ); ++ ~QProToSc(){ }; ++ ConvErr Convert( const ScTokenArray*& rpErg, sal_uInt16 nLen, ++ const FORMULA_TYPE eFT = FT_CellFormula ); ++ void Reset( ScAddress aEingPos ); ++ void DoFunc( DefTokenId eOc, sal_uInt8 nAnz, const sal_Char* pExtString ); ++ ++ void IncToken( TokenId &rParam ); ++ void DecToken( TokenId& rParam ); ++ void NegToken( TokenId& rParam ); ++ DefTokenId IndexToToken( sal_uInt16 nToken ); ++ FUNC_TYPE IndexToType( sal_uInt8 nToken ); ++ const sal_Char* GetAddInName( const sal_uInt8 nId ); ++}; ++ ++#endif diff --git a/patches/OOO_1_1/recent-files.diff b/patches/OOO_1_1/recent-files.diff index 41434beb4..6fb5fc797 100644 --- a/patches/OOO_1_1/recent-files.diff +++ b/patches/OOO_1_1/recent-files.diff @@ -270,7 +270,7 @@ +#endif --- /dev/null 2003-09-23 18:59:22.000000000 +0100 +++ svtools/source/config/recent-files.cxx 2004-03-12 14:54:33.000000000 +0000 -@@ -0,0 +1,817 @@ +@@ -0,0 +1,820 @@ +#include <stdio.h> +#include <string.h> +#include <time.h> @@ -1044,6 +1044,9 @@ + + uri.convertToString(&uriOString, osl_getThreadTextEncoding(), OUSTRING_TO_OSTRING_CVTFLAGS); + mimeType.convertToString(&mimeTypeOString, osl_getThreadTextEncoding(), OUSTRING_TO_OSTRING_CVTFLAGS); ++ ++ if (0 == mimeTypeOString.getLength()) ++ mimeTypeOString = APPLICATION_OCTET_STREAM; + + for (ItemList::iterator l = context.items.begin(); l != context.items.end(); l++) { + Item *item; diff --git a/patches/OOO_1_1/sc-filters-fill-fix.diff b/patches/OOO_1_1/sc-filters-fill-fix.diff new file mode 100644 index 000000000..9523c6924 --- /dev/null +++ b/patches/OOO_1_1/sc-filters-fill-fix.diff @@ -0,0 +1,20 @@ +--- /home/sragavan/cvs/bk/ooo-build/build/OOO_1_1_2/sc/source/core/data/table4.cxx 2003-03-26 23:34:00.000000000 +0530 ++++ sc/source/core/data/table4.cxx 2004-10-14 11:12:38.050393488 +0530 +@@ -1286,6 +1286,8 @@ + { + for (rInner = nIMin; rInner <= nIMax; rInner++) + { ++ if (pDocument->RowFiltered( rInner, nTab)) ++ continue; + USHORT nInd = nActFormCnt; + FillFormula(nInd, bFirst, (ScFormulaCell*)pSrcCell, + nCol, nRow, (rInner == nIEnd) ); +@@ -1297,6 +1299,8 @@ + { + for (rInner = nIMin; rInner <= nIMax; rInner++) + { ++ if (pDocument->RowFiltered( rInner, nTab)) ++ continue; + aCol[nCol].Insert(nRow, pSrcCell->Clone(pDocument)); + } + nProgress += nIMax - nIMin + 1; diff --git a/patches/OOO_1_1/sc-no-delete-filteredrows.diff b/patches/OOO_1_1/sc-no-delete-filteredrows.diff new file mode 100644 index 000000000..eee9ed408 --- /dev/null +++ b/patches/OOO_1_1/sc-no-delete-filteredrows.diff @@ -0,0 +1,94 @@ +Index: sc/source/core/data/column.cxx +=================================================================== +--- sc/source/core/data/column.cxx.orig 2004-11-26 13:35:37.996537216 +0000 ++++ sc/source/core/data/column.cxx 2004-11-26 17:09:57.853541792 +0000 +@@ -1322,6 +1322,9 @@ void ScColumn::CopyToClip(USHORT nRow1, + for (i = 0; i < nCount; i++) + if ((pItems[i].nRow >= nRow1) && (pItems[i].nRow <= nRow2)) + { ++ ++ if ( pDocument->RowFiltered( pItems[i].nRow , nTab)) ++ continue; + if (!nBlockCount) + nStartIndex = i; + nEndIndex = i; +@@ -1342,7 +1345,11 @@ void ScColumn::CopyToClip(USHORT nRow1, + { + rColumn.Resize( rColumn.GetCellCount() + nBlockCount ); + for (i = nStartIndex; i <= nEndIndex; i++) ++ { ++ if ( pDocument->RowFiltered( pItems[i].nRow , nTab)) ++ continue; + rColumn.Append(pItems[i].nRow, pItems[i].pCell->Clone(rColumn.pDocument)); ++ } + } + } + +Index: sc/source/core/data/column3.cxx +=================================================================== +--- sc/source/core/data/column3.cxx.orig 2004-11-26 13:35:37.999536760 +0000 ++++ sc/source/core/data/column3.cxx 2004-11-26 17:09:57.867539664 +0000 +@@ -398,6 +398,17 @@ void ScColumn::DeleteRange( USHORT nStar + BOOL bSimple = ((nDelFlag & IDF_CONTENTS) == IDF_CONTENTS); + USHORT i; + ++ /* ++ *If we are deleting a range that has filtered column, let it not be simple ++ */ ++ ++ if (bSimple) ++ { ++ for (i = nStartIndex; i <= nEndIndex && bSimple; i++) ++ if ( pDocument->RowFiltered(pItems[i].nRow, nTab)) ++ bSimple = FALSE; ++ } ++ + // Notiz-Zeichenobjekte + if (nDelFlag & IDF_NOTE) + { +@@ -452,6 +463,16 @@ void ScColumn::DeleteRange( USHORT nStar + BOOL bDelete = FALSE; + ScBaseCell* pOldCell = pItems[j].pCell; + CellType eCellType = pOldCell->GetCellType(); ++ ++ /* ++ * If the rows are filtered continue instead deleting. ++ */ ++ if ( pDocument->RowFiltered( pItems[j].nRow, nTab)) ++ { ++ ++j; ++ continue; ++ } ++ + switch ( eCellType ) + { + case CELLTYPE_VALUE: +Index: sc/inc/document.hxx +=================================================================== +--- sc/inc/document.hxx.orig 2004-11-26 13:35:38.064526880 +0000 ++++ sc/inc/document.hxx 2004-11-26 17:10:55.795733240 +0000 +@@ -508,6 +508,8 @@ public: + long GetWeightedCount() const; // Formeln und Edit staerker gewichtet + ULONG GetCodeCount() const; // RPN-Code in Formeln + DECL_LINK( GetUserDefinedColor, USHORT * ); ++ BOOL RowFiltered( USHORT nRow, USHORT nTab ) const; // FillInfo ++ BOOL ColFiltered( USHORT nCol, USHORT nTab ) const; // FillInfo + // Numberformatter + + public: +@@ -1698,6 +1700,15 @@ inline BOOL ScDocument::RowHidden( USHOR + return ( pTab[nTab]->pRowFlags[nRow] & CR_HIDDEN ) != 0; + } + ++inline BOOL ScDocument::ColFiltered( USHORT nCol, USHORT nTab ) const ++{ ++ return ( pTab[nTab]->pColFlags[nCol] & CR_FILTERED) != 0; ++} ++ ++inline BOOL ScDocument::RowFiltered( USHORT nRow, USHORT nTab ) const ++{ ++ return pTab[nTab]->IsFiltered(nRow); ++} + + + #endif diff --git a/patches/OOO_1_1/sc-paste-limitedsize.diff b/patches/OOO_1_1/sc-paste-limitedsize.diff new file mode 100644 index 000000000..57484236d --- /dev/null +++ b/patches/OOO_1_1/sc-paste-limitedsize.diff @@ -0,0 +1,25 @@ +--- /home/sragavan/cvs/bk/ooo-build/build/OOO_1_1_2/sc/source/ui/view/viewfun3.cxx 2003-10-31 21:40:15.000000000 +0530 ++++ sc/source/ui/view/viewfun3.cxx 2004-10-13 14:23:56.248238672 +0530 +@@ -721,15 +721,14 @@ + } + } + +- if (nBlockAddX > nDestSizeX) +- nMarkAddX = nBlockAddX - nDestSizeX; // fuer Merge-Test +- else +- nEndCol = nStartCol + nDestSizeX; ++ /* ++ * Therz no use in copying lesser data multiple times in a bigger marked area ++ * So Im just reducing the size of the marked area. ++ */ ++ nEndCol = nStartCol + nDestSizeX; + +- if (nBlockAddY > nDestSizeY) +- nMarkAddY = nBlockAddY - nDestSizeY; // fuer Merge-Test +- else +- nEndRow = nStartRow + nDestSizeY; ++ nEndRow = nStartRow + nDestSizeY; ++ + } + else + { diff --git a/patches/OOO_1_1/sc-show-sensitize.diff b/patches/OOO_1_1/sc-show-sensitize.diff index dfcf64840..cb8b85cec 100644 --- a/patches/OOO_1_1/sc-show-sensitize.diff +++ b/patches/OOO_1_1/sc-show-sensitize.diff @@ -4,7 +4,7 @@ ScMarkData* pMarkData = NULL ); void SetMarkedWidthOrHeight( BOOL bWidth, ScSizeMode eMode, USHORT nSizeTwips, BOOL bRecord = TRUE, BOOL bPaint = TRUE ); -+ BOOL GetRowColHidden(BOOL col); ++ BOOL GetRowColHidden(BOOL col, USHORT nTab); void ShowMarkedColumns( BOOL bShow, BOOL bRecord = TRUE ); void ShowMarkedRows( BOOL bShow, BOOL bRecord = TRUE ); @@ -62,11 +62,11 @@ diff -u -p -u -r1.20 cellsh.cxx + break; + + case FID_ROW_SHOW: -+ if( pDoc->IsTabProtected(nTab) || pDocSh->IsReadOnly() || !pTabViewShell->GetRowColHidden(FALSE) ) ++ if( pDoc->IsTabProtected(nTab) || pDocSh->IsReadOnly() || !pTabViewShell->GetRowColHidden(FALSE, nTab) ) + rSet.DisableItem( nWhich ); + break; + case FID_COL_SHOW: -+ if( pDoc->IsTabProtected(nTab) || pDocSh->IsReadOnly() || !pTabViewShell->GetRowColHidden(TRUE) ) ++ if( pDoc->IsTabProtected(nTab) || pDocSh->IsReadOnly() || !pTabViewShell->GetRowColHidden(TRUE, nTab) ) rSet.DisableItem( nWhich ); break; @@ -143,11 +143,11 @@ diff -u -p -u -p -r1.19 viewfunc.cxx rMark.MarkToSimple(); } -+BOOL ScViewFunc::GetRowColHidden(BOOL col) ++BOOL ScViewFunc::GetRowColHidden(BOOL col, USHORT nTab) +{ + ScDocument* pDoc = GetViewData()->GetDocument(); + ScMarkData& rMark = GetViewData()->GetMarkData(); -+ USHORT nCol = 0,nRow = 0,nTab = 0, nRangeCnt = 0; ++ USHORT nCol = 0,nRow = 0, nRangeCnt = 0; + USHORT* pRanges = new USHORT[MAXROW+1]; + BOOL hidden = FALSE; + diff --git a/patches/OOO_1_1/sc-standard-filter-options.diff b/patches/OOO_1_1/sc-standard-filter-options.diff new file mode 100644 index 000000000..676d97b2d --- /dev/null +++ b/patches/OOO_1_1/sc-standard-filter-options.diff @@ -0,0 +1,362 @@ +--- /home/sragavan/cvs/bk/ooo-build/build/OOO_1_1_2/sc/inc/global.hxx 2003-04-28 21:00:46.000000000 +0530 ++++ sc/inc/global.hxx 2004-10-08 16:23:48.000000000 +0530 +@@ -1329,6 +1329,8 @@ + + enum ScQueryOp + { ++ SC_BEGINS_WITH, ++ SC_ENDS_WITH, + SC_EQUAL, + SC_LESS, + SC_GREATER, +--- /home/sragavan/cvs/bk/ooo-build/build/OOO_1_1_2/sc/source/ui/dbgui/filtdlg.cxx 2004-01-09 20:11:10.000000000 +0530 ++++ sc/source/ui/dbgui/filtdlg.cxx 2004-10-08 16:24:56.000000000 +0530 +@@ -83,6 +83,7 @@ + #include "viewdata.hxx" + #include "document.hxx" + #include "scresid.hxx" ++#include "docoptio.hxx" + + #include "foptmgr.hxx" + +@@ -219,6 +220,7 @@ + aBtnMore, + aBtnCase, + aBtnRegExp, ++ aBtnWholeWord, + aBtnHeader, + aBtnUnique, + aBtnCopyResult, +@@ -573,6 +575,17 @@ + bCopyPosOk = ( SCA_VALID == (nResult & SCA_VALID) ); + } + ++ /* ++ * The reg exp checkbutton read is moved up, since, ++ * for begins and ends with query we are makeing them as re query transparently ++ * Checking this later spoils the entire transparent work. ++ */ ++ theParam.bRegExp = aBtnRegExp.IsChecked(); ++ ++ ScDocOptions pDocOpts = pDoc->GetDocOptions(); ++ pDocOpts.SetMatchWholeCell(aBtnWholeWord.IsChecked()); ++ pDoc->SetDocOptions(pDocOpts); ++ + for ( USHORT i=0; i<3; i++ ) + { + USHORT nField = aFieldLbArr[i]->GetSelectEntryPos(); +@@ -606,6 +619,19 @@ + } + else + { ++ if (eOp == SC_BEGINS_WITH ) { ++ String tmp ('^'); ++ tmp .Append(aStrVal); ++ ::rtl::OUString str (tmp); ++ aStrVal.Assign(tmp); ++ eOp = SC_EQUAL; ++ theParam.bRegExp = TRUE; ++ } ++ else if (eOp == SC_ENDS_WITH ) { ++ aStrVal.Append (String('$')); ++ eOp = SC_EQUAL; ++ theParam.bRegExp = TRUE; ++ } + *rEntry.pStr = aStrVal; + rEntry.nVal = 0; + rEntry.bQueryByString = TRUE; +@@ -642,7 +668,7 @@ + theParam.bByRow = TRUE; + theParam.bDuplicate = !aBtnUnique.IsChecked(); + theParam.bCaseSens = aBtnCase.IsChecked(); +- theParam.bRegExp = aBtnRegExp.IsChecked(); ++ + theParam.bDestPers = aBtnDestPers.IsChecked(); + + // nur die drei eingestellten - alles andere zuruecksetzen +--- /home/sragavan/cvs/bk/ooo-build/build/OOO_1_1_2/sc/source/ui/inc/filtdlg.hxx 2001-09-24 22:59:58.000000000 +0530 ++++ sc/source/ui/inc/filtdlg.hxx 2004-10-08 12:23:49.000000000 +0530 +@@ -101,6 +101,7 @@ + CheckBox aBtnCase; \ + CheckBox aBtnRegExp; \ + CheckBox aBtnHeader; \ ++ CheckBox aBtnWholeWord; \ + CheckBox aBtnUnique; \ + CheckBox aBtnCopyResult; \ + ListBox aLbCopyArea; \ +@@ -122,6 +123,7 @@ + aFlOptions ( this, ScResId( FL_OPTIONS ) ), \ + aBtnCase ( this, ScResId( BTN_CASE ) ), \ + aBtnRegExp ( this, ScResId( BTN_REGEXP ) ), \ ++ aBtnWholeWord ( this, ScResId( BTN_MATCH) ), \ + aBtnHeader ( this, ScResId( BTN_HEADER ) ), \ + aBtnUnique ( this, ScResId( BTN_UNIQUE ) ), \ + aBtnCopyResult ( this, ScResId( BTN_COPY_RESULT ) ), \ +--- /home/sragavan/cvs/bk/ooo-build/build/OOO_1_1_2/sc/source/ui/inc/filter.hrc 2001-05-21 14:52:56.000000000 +0530 ++++ sc/source/ui/inc/filter.hrc 2004-10-08 12:27:21.000000000 +0530 +@@ -81,7 +81,7 @@ + #define FT_DBAREA_LABEL 10 + #define FT_DBAREA 11 + #define BTN_DEST_PERS 12 +- ++#define BTN_MATCH 13 + // Filter: + #define FT_OP 20 + #define FT_FIELD 21 +--- /home/sragavan/cvs/bk/ooo-build/build/OOO_1_1_2/sc/source/ui/src/filter.src 2004-04-27 22:31:47.000000000 +0530 ++++ sc/source/ui/src/filter.src 2004-10-08 14:55:38.000000000 +0530 +@@ -66,7 +66,7 @@ + HelpId = SID_FILTER ; + Hide = TRUE ; + SVLook = TRUE ; +- Size = MAP_APPFONT ( 298 , 83 ) ; ++ Size = MAP_APPFONT ( 298 , 98 ) ; + Text = "Standardfilter" ; + Text [ ENGLISH ] = "Standard Filter" ; + Text [ norwegian ] = "Standardfilter" ; +@@ -708,12 +708,14 @@ + }; + stringlist [ english_us ] = + { +- < "=" ; Default ; > ; ++ < "Begins with" ; Default ; > ; ++ < "Ends with" ; Default ; > ; ++ < "Equals" ; Default ; > ; + < "<" ; Default ; > ; + < ">" ; Default ; > ; + < "<=" ; Default ; > ; + < ">=" ; Default ; > ; +- < "<>" ; Default ; > ; ++ < "Not equals" ; Default ; > ; + < "Largest" ; Default ; > ; + < "Smallest" ; Default ; > ; + < "Largest %" ; Default ; > ; +@@ -2278,6 +2280,14 @@ + Text[ zulu ] = "Isisho esi~jwayelekile"; + Text[ norwegian_nynorsk ] = "~Regulært uttrykk"; + }; ++ ++ CheckBox BTN_MATCH ++ { ++ Pos = MAP_APPFONT ( 12 , 126 ) ; ++ Size = MAP_APPFONT ( 239 , 10 ) ; ++ Text [ english_us ] = "Search criteria must apply to ~whole cells" ; ++ }; ++ + CheckBox BTN_HEADER + { + Hide = TRUE ; +@@ -2458,7 +2468,7 @@ + { + Border = TRUE ; + Hide = TRUE ; +- Pos = MAP_APPFONT ( 21 , 126 ) ; ++ Pos = MAP_APPFONT ( 21 , 138 ) ; + Size = MAP_APPFONT ( 90 , 90 ) ; + TabStop = TRUE ; + DropDown = TRUE ; +@@ -2467,7 +2477,7 @@ + { + Border = TRUE ; + Hide = TRUE ; +- Pos = MAP_APPFONT ( 115 , 126 ) ; ++ Pos = MAP_APPFONT ( 115 , 138 ) ; + Size = MAP_APPFONT ( 104 , 12 ) ; + TabStop = TRUE ; + }; +@@ -2475,7 +2485,7 @@ + { + QuickHelpText = "Verkleinern" ; + QuickHelpText [ ENGLISH ] = "Shrink" ; +- Pos = MAP_APPFONT ( 221 , 126 ) ; ++ Pos = MAP_APPFONT ( 221 , 138 ) ; + Size = MAP_APPFONT ( 12 , 12 ) ; + TabStop = FALSE ; + QuickHelpText [ english_us ] = "Shrink" ; +@@ -2605,7 +2615,7 @@ + FixedText FT_DBAREA_LABEL + { + Hide = TRUE ; +- Pos = MAP_APPFONT ( 6 , 144 ) ; ++ Pos = MAP_APPFONT ( 6 , 156 ) ; + Size = MAP_APPFONT ( 58 , 8 ) ; + Text = "Datenbereich:" ; + Text [ ENGLISH ] = "Data area:" ; +@@ -3204,10 +3214,10 @@ + Text [ danish ] = "dummy" ; + Text [ french ] = "factice" ; + Text [ swedish ] = "dummy" ; ++ Left = TRUE ; + Text [ dutch ] = "dummy" ; + Text [ spanish ] = "Texto ejemplo" ; + Text [ english_us ] = "dummy" ; +- Left = TRUE ; + Text[ chinese_simplified ] = "æ ·æœ¬"; + Text[ russian ] = "ôèêòèâíûé"; + Text[ polish ] = "Zaœlepka"; +--- /home/sragavan/cvs/bk/ooo-build/build/OOO_1_1_2/sc/source/ui/dbgui/foptmgr.cxx 2001-10-23 14:35:11.000000000 +0530 ++++ sc/source/ui/dbgui/foptmgr.cxx 2004-10-08 16:04:15.000000000 +0530 +@@ -76,6 +76,7 @@ + #include "dbcolect.hxx" + #include "viewdata.hxx" + #include "document.hxx" ++#include "docoptio.hxx" + + #define _FOPTMGR_CXX + #include "foptmgr.hxx" +@@ -111,6 +111,7 @@ + rBtnMore ( refBtnMore ), + rBtnCase ( refBtnCase ), + rBtnRegExp ( refBtnRegExp ), ++ rBtnWholeWord ( refBtnRegExp ), + rBtnHeader ( refBtnHeader ), + rBtnUnique ( refBtnUnique ), + rBtnCopyResult ( refBtnCopyResult ), +@@ -123,9 +124,53 @@ + rStrNoName ( refStrNoName ), + rStrUndefined ( refStrUndefined ) + { +- Init(); ++ Init(FALSE); + } + ++ScFilterOptionsMgr::ScFilterOptionsMgr( ++ Dialog* ptrDlg, ++ ScViewData* ptrViewData, ++ const ScQueryParam& refQueryData, ++ MoreButton& refBtnMore, ++ CheckBox& refBtnCase, ++ CheckBox& refBtnRegExp, ++ CheckBox& refBtnWholeWord, ++ CheckBox& refBtnHeader, ++ CheckBox& refBtnUnique, ++ CheckBox& refBtnCopyResult, ++ CheckBox& refBtnDestPers, ++ ListBox& refLbCopyArea, ++ Edit& refEdCopyArea, ++ ScRefButton& refRbCopyArea, ++ FixedText& refFtDbAreaLabel, ++ FixedInfo& refFtDbArea, ++ FixedLine& refFlOptions, ++ const String& refStrNoName, ++ const String& refStrUndefined ) ++ ++ : pDlg ( ptrDlg ), ++ pViewData ( ptrViewData ), ++ pDoc ( ptrViewData ? ptrViewData->GetDocument() : NULL ), ++ rQueryData ( refQueryData ), ++ rBtnMore ( refBtnMore ), ++ rBtnCase ( refBtnCase ), ++ rBtnRegExp ( refBtnRegExp ), ++ rBtnWholeWord ( refBtnWholeWord), ++ rBtnHeader ( refBtnHeader ), ++ rBtnUnique ( refBtnUnique ), ++ rBtnCopyResult ( refBtnCopyResult ), ++ rBtnDestPers ( refBtnDestPers ), ++ rLbCopyPos ( refLbCopyArea ), ++ rEdCopyPos ( refEdCopyArea ), ++ rRbCopyPos ( refRbCopyArea ), ++ rFtDbAreaLabel ( refFtDbAreaLabel ), ++ rFtDbArea ( refFtDbArea ), ++ rFlOptions ( refFlOptions ), ++ rStrNoName ( refStrNoName ), ++ rStrUndefined ( refStrUndefined ) ++{ ++ Init(TRUE); ++} + + //---------------------------------------------------------------------------- + +@@ -141,7 +186,7 @@ + + //---------------------------------------------------------------------------- + +-void ScFilterOptionsMgr::Init() ++void ScFilterOptionsMgr::Init(BOOL param) + { + DBG_ASSERT( pViewData && pDoc, "Init failed :-/" ); + +@@ -151,6 +196,8 @@ + + rBtnMore.AddWindow( &rBtnCase ); + rBtnMore.AddWindow( &rBtnRegExp ); ++ if (param) ++ rBtnMore.AddWindow(&rBtnWholeWord); + rBtnMore.AddWindow( &rBtnHeader ); + rBtnMore.AddWindow( &rBtnUnique ); + rBtnMore.AddWindow( &rBtnCopyResult ); +@@ -160,13 +207,18 @@ + rBtnMore.AddWindow( &rRbCopyPos ); + rBtnMore.AddWindow( &rFtDbAreaLabel ); + rBtnMore.AddWindow( &rFtDbArea ); +- rBtnMore.AddWindow( &rFlOptions ); ++ rBtnMore.AddWindow( &rFlOptions ); ++ + + rBtnCase .Check( rQueryData.bCaseSens ); + rBtnHeader .Check( rQueryData.bHasHeader ); + rBtnRegExp .Check( rQueryData.bRegExp ); + rBtnUnique .Check( !rQueryData.bDuplicate ); +- ++ if (param) { ++ BOOL bMatchWholeCell = pDoc->GetDocOptions().IsMatchWholeCell(); ++ rBtnWholeWord.Check(bMatchWholeCell); ++ } ++ + if ( pViewData && pDoc ) + { + String theAreaStr; +@@ -266,6 +318,7 @@ + } + else + rEdCopyPos.SetText( EMPTY_STRING ); ++ rFtDbArea.SetPosPixel(Point(158,331)); + } + + +--- /home/sragavan/cvs/bk/ooo-build/build/OOO_1_1_2/sc/source/ui/inc/foptmgr.hxx 2001-05-21 14:52:56.000000000 +0530 ++++ sc/source/ui/inc/foptmgr.hxx 2004-10-08 16:02:56.000000000 +0530 +@@ -108,6 +108,26 @@ + FixedLine& refFlOptions, + const String& refStrNoName, + const String& refStrUndefined ); ++ ScFilterOptionsMgr( Dialog* ptrDlg, ++ ScViewData* ptrViewData, ++ const ScQueryParam& refQueryData, ++ MoreButton& refBtnMore, ++ CheckBox& refBtnCase, ++ CheckBox& refBtnRegExp, ++ CheckBox& refBtnWholeWord, ++ CheckBox& refBtnHeader, ++ CheckBox& refBtnUnique, ++ CheckBox& refBtnCopyResult, ++ CheckBox& refBtnDestPers, ++ ListBox& refLbCopyArea, ++ Edit& refEdCopyArea, ++ ScRefButton& refRbCopyArea, ++ FixedText& refFtDbAreaLabel, ++ FixedInfo& refFtDbArea, ++ FixedLine& refFlOptions, ++ const String& refStrNoName, ++ const String& refStrUndefined ); ++ + ~ScFilterOptionsMgr(); + + BOOL VerifyPosStr ( const String& rPosStr ) const; +@@ -119,6 +139,7 @@ + + MoreButton& rBtnMore; + CheckBox& rBtnCase; ++ CheckBox& rBtnWholeWord; + CheckBox& rBtnRegExp; + CheckBox& rBtnHeader; + CheckBox& rBtnUnique; +@@ -138,7 +159,7 @@ + + #ifdef _FOPTMGR_CXX + private: +- void Init(); ++ void Init(BOOL param); + + // Handler: + DECL_LINK( EdPosModifyHdl, Edit* ); diff --git a/patches/OOO_1_1/sd-export-html-translations.diff b/patches/OOO_1_1/sd-export-html-translations.diff index 788cd7d9f..b88bb504a 100644 --- a/patches/OOO_1_1/sd-export-html-translations.diff +++ b/patches/OOO_1_1/sd-export-html-translations.diff @@ -1,12 +1,9 @@ -Index: source/filter/html/pubdlg.src +Index: sd/source/filter/html/pubdlg.src =================================================================== -RCS file: /cvs/graphics/sd/source/filter/html/pubdlg.src,v -retrieving revision 1.13.14.4 -diff -u -r1.13.14.4 pubdlg.src ---- sd/source/filter/html/pubdlg.src 27 Apr 2004 16:42:59 -0000 1.13.14.4 -+++ sd/source/filter/html/pubdlg.src 9 Jun 2004 04:36:11 -0000 -@@ -1357,47 +1357,47 @@ - Text[ norwegian_nynorsk ] = "Lagra bilete som"; +--- sd/source/filter/html/pubdlg.src.orig 2004-09-09 20:18:37.000000000 +0200 ++++ sd/source/filter/html/pubdlg.src 2004-09-12 14:19:41.194859600 +0200 +@@ -1487,52 +1487,52 @@ ModalDialog DLG_PUBLISHING + Text[ galician ] = "Save graphics as"; }; - RadioButton PAGE3_GIF @@ -14,7 +11,7 @@ diff -u -r1.13.14.4 pubdlg.src { Pos = MAP_APPFONT( 12, 49 ); Size = MAP_APPFONT( 116, 10 ); - Text = "~GIF"; +- Text = "~GIF"; - Text [ ENGLISH ] = "~GIF"; - Text[ italian ] = "~GIF"; - Text[ portuguese_brazilian ] = "~GIF"; @@ -32,8 +29,8 @@ diff -u -r1.13.14.4 pubdlg.src - Text[ greek ] = "~GIF - Graphics Interchange Format"; - Text[ korean ] = "~GIF"; - Text[ chinese_traditional ] = "~GIF"; -- Text[ arabic ] = "GIF - Graphics Interchange-Format"; -- Text[ turkish ] = "~GIF"; +- Text[ arabic ] = "~GIF"; +- Text[ turkish ] = "GIF"; - Text[ catalan ] = "~GIF"; - Text[ finnish ] = "~GIF"; - Text[ thai ] = "~GIF - Graphics Interchange Format"; @@ -51,6 +48,12 @@ diff -u -r1.13.14.4 pubdlg.src - Text[ afrikaans ] = "~GIF"; - Text[ zulu ] = "~GIF"; - Text[ norwegian_nynorsk ] = "~GIF"; +- Text[ tswana ] = "~GIF"; +- Text[ basque ] = "~GIF"; +- Text[ lithuanian ] = "~GIF"; +- Text[ kannada ] = "GIF"; +- Text[ galician ] = "~GIF"; ++ Text = "~PNG"; + Text [ ENGLISH ] = "~PNG"; + Text[ italian ] = "~PNG"; + Text[ portuguese_brazilian ] = "~PNG"; @@ -68,8 +71,8 @@ diff -u -r1.13.14.4 pubdlg.src + Text[ greek ] = "~PNG"; + Text[ korean ] = "~PNG"; + Text[ chinese_traditional ] = "~PNG"; -+ Text[ arabic ] = "PNG"; -+ Text[ turkish ] = "~PNG"; ++ Text[ arabic ] = "~PNG"; ++ Text[ turkish ] = "PNG"; + Text[ catalan ] = "~PNG"; + Text[ finnish ] = "~PNG"; + Text[ thai ] = "~PNG"; @@ -87,6 +90,11 @@ diff -u -r1.13.14.4 pubdlg.src + Text[ afrikaans ] = "~PNG"; + Text[ zulu ] = "~PNG"; + Text[ norwegian_nynorsk ] = "~PNG"; ++ Text[ tswana ] = "~PNG"; ++ Text[ basque ] = "~PNG"; ++ Text[ lithuanian ] = "~PNG"; ++ Text[ kannada ] = "PNG"; ++ Text[ galician ] = "~PNG"; }; RadioButton PAGE3_JPG diff --git a/patches/OOO_1_1/sd-slide-sorter-selector.diff b/patches/OOO_1_1/sd-slide-sorter-selector.diff new file mode 100644 index 000000000..fc8abd4b2 --- /dev/null +++ b/patches/OOO_1_1/sd-slide-sorter-selector.diff @@ -0,0 +1,48 @@ +--- sd/source/ui/func/fuslsel.cxx 2003-03-27 16:27:51.000000000 +0530 ++++ sd/source/ui/func/fuslsel.cxx 2004-12-10 11:33:40.395794208 +0530 +@@ -165,9 +165,34 @@ + { + bPageHit = TRUE; // Seite getroffen, merken fuer MouseMove + +- if (rMEvt.IsShift()) ++ if( rMEvt.IsMod1() ) + pSlView->Select( ( pHitPage->GetPageNum() - 1 ) / 2, !pHitPage->IsSelected() ); +- else if( !pHitPage->IsSelected() ) ++ else if( rMEvt.IsShift() ) ++ { ++ USHORT nCurrentPage = ( pHitPage->GetPageNum() - 1 ) / 2; ++ USHORT nPageRange; ++ BOOL bFound = FALSE; ++ for (nPageRange = 0; nPageRange < nNoOfPages; nPageRange++) ++ { ++ SdPage* pTestPage = pDoc->GetSdPage(nPageRange, PK_STANDARD); ++ if( pTestPage->IsSelected() ) ++ { ++ bFound = TRUE; ++ break; ++ } ++ } ++ if( !bFound ) ++ pSlView->Select( nCurrentPage, TRUE ); ++ else if( nCurrentPage != nPageRange ) ++ { ++ for (nPage = ((nCurrentPage > nPageRange) ? nPageRange : nCurrentPage); ++ nPage <= ((nCurrentPage > nPageRange) ? nCurrentPage : nPageRange); ++ nPage++) ++ pSlView->Select( nPage, TRUE ); ++ } ++ ++ } ++ else + { + // einfache Selektion, alle selektierten deselektieren, getroffene Seite selektieren + pSlView->SelectAll( FALSE ); +@@ -207,7 +232,7 @@ + if( !pHitPage && !bReturn ) + { + // keine erweiterte Selektion: alle Seiten deselektieren +- if( !rMEvt.IsShift() ) ++ if( !rMEvt.IsShift() && !rMEvt.IsMod1() ) + pSlView->SelectAll( FALSE ); + + bDragSelection = TRUE; diff --git a/patches/OOO_1_1/sfx2-no-summary-crash-fix.diff b/patches/OOO_1_1/sfx2-no-summary-crash-fix.diff new file mode 100644 index 000000000..d55ee3bb5 --- /dev/null +++ b/patches/OOO_1_1/sfx2-no-summary-crash-fix.diff @@ -0,0 +1,16 @@ +Index: sfx2/source/doc/docinf.cxx +=================================================================== +RCS file: /cvs/framework/sfx2/source/doc/docinf.cxx,v +retrieving revision 1.24 +diff -u -p -r1.24 docinf.cxx +--- sfx2/source/doc/docinf.cxx 26 May 2003 08:29:06 -0000 1.24 ++++ sfx2/source/doc/docinf.cxx 1 Nov 2004 11:23:17 -0000 +@@ -924,7 +924,7 @@ ULONG SfxDocumentInfo::LoadPropertySet( + { + SvStorageStreamRef aStrPropSet = pStorage->OpenStream( + String::CreateFromAscii( pPropSlot ), STREAM_STD_READ ); +- if ( !aStrPropSet.Is() ) ++ if ( !aStrPropSet.Is() || aStrPropSet->GetError() != SVSTREAM_OK) + return ERRCODE_IO_ACCESSDENIED; + aStrPropSet->SetBufferSize( STREAM_BUFFER_SIZE ); + SfxPS_Impl* pPS = new SfxPS_Impl; diff --git a/patches/OOO_1_1/svx-default-font-tracks-LANGUAGE_SYSTEM.diff b/patches/OOO_1_1/svx-default-font-tracks-LANGUAGE_SYSTEM.diff new file mode 100644 index 000000000..c226c9710 --- /dev/null +++ b/patches/OOO_1_1/svx-default-font-tracks-LANGUAGE_SYSTEM.diff @@ -0,0 +1,75 @@ +Index: svx/source/items/textitem.cxx +=================================================================== +RCS file: /cvs/graphics/svx/source/items/textitem.cxx,v +retrieving revision 1.52 +diff -u -p -r1.52 textitem.cxx +--- svx/source/items/textitem.cxx 17 Apr 2003 09:57:58 -0000 1.52 ++++ svx/source/items/textitem.cxx 9 Dec 2004 11:43:56 -0000 +@@ -3704,24 +3704,21 @@ void GetDefaultFonts( SvxFontItem& rLati + { + const USHORT nItemCnt = 3; + +- static struct ++ USHORT aOutTypeArr[ nItemCnt ] = + { +- USHORT nFontType; +- USHORT nLanguage; +- } +- aOutTypeArr[ nItemCnt ] = +- { +- { DEFAULTFONT_LATIN_TEXT, LANGUAGE_ENGLISH_US }, +- { DEFAULTFONT_CJK_TEXT, LANGUAGE_ENGLISH_US }, +- { DEFAULTFONT_CTL_TEXT, LANGUAGE_ARABIC_SAUDI_ARABIA } ++ DEFAULTFONT_LATIN_TEXT, ++ DEFAULTFONT_CJK_TEXT, ++ DEFAULTFONT_CTL_TEXT + }; + ++ LanguageType eLanguage = Application::GetSettings().GetLanguage(); ++ + SvxFontItem* aItemArr[ nItemCnt ] = { &rLatin, &rAsian, &rComplex }; + + for ( USHORT n = 0; n < nItemCnt; ++n ) + { +- Font aFont( OutputDevice::GetDefaultFont( aOutTypeArr[ n ].nFontType, +- aOutTypeArr[ n ].nLanguage, ++ Font aFont( OutputDevice::GetDefaultFont( aOutTypeArr[ n ], ++ eLanguage, + DEFAULTFONT_FLAGS_ONLYONE, 0 ) ); + SvxFontItem* pItem = aItemArr[ n ]; + pItem->GetFamily() = aFont.GetFamily(); +Index: svx/source/svdraw/svdmodel.cxx +=================================================================== +RCS file: /cvs/graphics/svx/source/svdraw/svdmodel.cxx,v +retrieving revision 1.48 +diff -u -p -r1.48 svdmodel.cxx +--- svx/source/svdraw/svdmodel.cxx 24 Apr 2003 16:42:29 -0000 1.48 ++++ svx/source/svdraw/svdmodel.cxx 9 Dec 2004 11:44:19 -0000 +@@ -935,19 +935,20 @@ void SdrModel::SetTextDefaults() const + void ImpGetDefaultFontsLanguage( SvxFontItem& rLatin, SvxFontItem& rAsian, SvxFontItem& rComplex) + { + const USHORT nItemCnt = 3; +- static struct { +- USHORT nFntType, nLanguage; +- } aOutTypeArr[ nItemCnt ] = { +- { DEFAULTFONT_LATIN_TEXT, LANGUAGE_ENGLISH_US }, +- { DEFAULTFONT_CJK_TEXT, LANGUAGE_ENGLISH_US }, +- { DEFAULTFONT_CTL_TEXT, LANGUAGE_ARABIC_SAUDI_ARABIA } ++ USHORT aOutTypeArr[ nItemCnt ] = ++ { ++ DEFAULTFONT_LATIN_TEXT, ++ DEFAULTFONT_CJK_TEXT, ++ DEFAULTFONT_CTL_TEXT + }; ++ ++ LanguageType eLanguage = Application::GetSettings().GetLanguage(); + SvxFontItem* aItemArr[ nItemCnt ] = { &rLatin, &rAsian, &rComplex }; + + for( USHORT n = 0; n < nItemCnt; ++n ) + { + Font aFnt( OutputDevice::GetDefaultFont( +- aOutTypeArr[ n ].nFntType, aOutTypeArr[ n ].nLanguage, ++ aOutTypeArr[ n ], eLanguage, + DEFAULTFONT_FLAGS_ONLYONE, 0 )); + SvxFontItem* pI = aItemArr[ n ]; + pI->GetFamily() = aFnt.GetFamily(); diff --git a/patches/OOO_1_1/sw-escape-print-preview.diff b/patches/OOO_1_1/sw-escape-print-preview.diff new file mode 100644 index 000000000..40c659ee3 --- /dev/null +++ b/patches/OOO_1_1/sw-escape-print-preview.diff @@ -0,0 +1,15 @@ +Index: sw/source/ui/uiview/pview.cxx +=================================================================== +RCS file: /cvs/sw/sw/source/ui/uiview/pview.cxx,v +retrieving revision 1.43.156.1 +diff -u -r1.43.156.1 pview.cxx +--- sw/source/ui/uiview/pview.cxx 9 Jan 2004 14:34:20 -0000 1.43.156.1 ++++ sw/source/ui/uiview/pview.cxx 14 Oct 2004 09:54:39 -0000 +@@ -1125,6 +1125,7 @@ + switch(nKey) + { + case KEY_ADD : nSlot = SID_ZOOM_OUT; break; ++ case KEY_ESCAPE : nSlot = FN_CLOSE_PAGEPREVIEW; break; + case KEY_SUBTRACT : nSlot = SID_ZOOM_IN; break; + } + if(nSlot) diff --git a/patches/OOO_1_1/sw-online-layout-crash-fix.diff b/patches/OOO_1_1/sw-online-layout-crash-fix.diff new file mode 100644 index 000000000..5e80568bd --- /dev/null +++ b/patches/OOO_1_1/sw-online-layout-crash-fix.diff @@ -0,0 +1,19 @@ +Index: source/core/layout/fly.cxx +=================================================================== +RCS file: /cvs/sw/sw/source/core/layout/fly.cxx,v +retrieving revision 1.46.52.3 +diff -u -p -r1.46.52.3 fly.cxx +--- sw/source/core/layout/fly.cxx 28 Apr 2004 10:29:47 -0000 1.46.52.3 ++++ sw/source/core/layout/fly.cxx 5 Nov 2004 11:15:08 -0000 +@@ -1695,8 +1695,9 @@ void SwFlyFrm::MakeFlyPos() + const long nBottom = GetAnchor()->Frm().Top() + aRelPos.Y() + Frm().Height(); + if ( nAnchorBottom < nBottom ) + { +- ((SwPageFrm*)GetAnchor())->FindBodyCont()-> +- Grow( nBottom - nAnchorBottom PHEIGHT ); ++ if (SwPageFrm *pOne = ((SwPageFrm*)GetAnchor())) ++ if (SwLayoutFrm *pTwo = pOne->FindBodyCont()) ++ pTwo->Grow( nBottom - nAnchorBottom PHEIGHT ); + } + } + diff --git a/patches/OOO_1_1/sysui-translations.diff b/patches/OOO_1_1/sysui-translations.diff index 177d20444..44a5720c4 100644 --- a/patches/OOO_1_1/sysui-translations.diff +++ b/patches/OOO_1_1/sysui-translations.diff @@ -1,11 +1,13 @@ +-*- coding: utf-8 -*- + Index: documents.ulf =================================================================== RCS file: /cvs/gsl/sysui/desktop/share/documents.ulf,v retrieving revision 1.7.8.5 Index: sysui/desktop/share/documents.ulf =================================================================== ---- sysui/desktop/share/documents.ulf.orig 2004-04-27 20:01:05.000000000 +0200 -+++ sysui/desktop/share/documents.ulf 2004-07-30 22:18:28.430804688 +0200 +--- sysui/desktop/share/documents.ulf.orig 2004-09-13 22:50:54.000000000 +0200 ++++ sysui/desktop/share/documents.ulf 2004-09-14 15:46:59.389405928 +0200 @@ -1,12 +1,11 @@ [writer] en = "%PRODUCTNAME Text Document" @@ -20,28 +22,24 @@ Index: sysui/desktop/share/documents.ulf hu = "%PRODUCTNAME-szövegesdokumentum" it = "%PRODUCTNAME Documento di testo" cs = "Textový dokument %PRODUCTNAME" -@@ -21,45 +20,33 @@ zh-CN = "%PRODUCTNAME 文本文档" +@@ -21,10 +20,8 @@ zh-CN = "%PRODUCTNAME 文本文档" zh-TW = "%PRODUCTNAME æ–‡å—文件" tr = "PRODUCTNAME Metin belgesi" ar = "%PRODUCTNAME مستند نص" -he = "%PRODUCTNAME Textdokument" -ca = "%PRODUCTNAME Document de text" --th = "%PRODUCTNAME Textdokument" --hi-IN = "%PRODUCTNAME Textdokument" +ca = "Document de text d'%PRODUCTNAME" + th = "%PRODUCTNAME เà¸à¸à¸ªà¸²à¸£à¸‚้à¸à¸„วาม" +-hi-IN = "%PRODUCTNAME Textdokument" et = "%PRODUCTNAME-i tekstidokument" sl = "Dokument z besedilom programa %PRODUCTNAME" ru = "%PRODUCTNAME ТекÑтовый документ" - cy = "Dogfen Testun %PRODUCTNAME" - ns = "%PRODUCTNAME Tokumente ya Sengwalwa" - af = "%PRODUCTNAME-teksdokument" --zu = "Ushicilelo Lombhalo lwe-%PRODUCTNAME 5.0" -+zu = "Ushicilelo Lombhalo lwe-%PRODUCTNAME" +@@ -42,31 +39,25 @@ gl = "%PRODUCTNAME Text Document" [writer-template] en = "%PRODUCTNAME Text Document Template" de = "%PRODUCTNAME Textdokumentvorlage" -pt = "%PRODUCTNAME Textdokumentvorlage" --ru = "%PRODUCTNAME Textdokumentvorlage" + ru = "Шаблон текÑтового документа %PRODUCTNAME" -el = "%PRODUCTNAME Textdokumentvorlage" nl = "%PRODUCTNAME Tekstdocumentsjabloon" fr = "Modèle de texte %PRODUCTNAME" @@ -60,22 +58,22 @@ Index: sysui/desktop/share/documents.ulf ko = "%PRODUCTNAME í…스트 문서 ì„œì‹ íŒŒì¼" zh-CN = "%PRODUCTNAME æ–‡æœ¬æ–‡æ¡£æ ·å¼" zh-TW = "%PRODUCTNAME æ–‡å—文件樣å¼" --tr = "%PRODUCTNAME Textdokumentvorlage" + tr = "%PRODUCTNAME Metin Belgesi Åžablonu" -ar = "%PRODUCTNAME Textdokumentvorlage" -he = "%PRODUCTNAME Textdokumentvorlage" -ca = "%PRODUCTNAME Textdokumentvorlage" --th = "%PRODUCTNAME Textdokumentvorlage" --hi-IN = "%PRODUCTNAME Textdokumentvorlage" +ca = "%PRODUCTNAME Plantilla de document de text d'%PRODUCTNAME" + th = "%PRODUCTNAME à¹à¸¡à¹ˆà¹à¸šà¸šà¹€à¸à¸à¸ªà¸²à¸£à¸‚้à¸à¸„วาม" +-hi-IN = "%PRODUCTNAME Textdokumentvorlage" et = "%PRODUCTNAME-i tekstidokumendi mall" sl = "Predloga dokumenta z besedilom programa %PRODUCTNAME" ns = "%PRODUCTNAME Template ya Tokumente ya Sengwalwa" -@@ -69,13 +56,12 @@ zu = "Uqwembe loshicilelo lombhalo lwe-% +@@ -83,13 +74,12 @@ gl = "%PRODUCTNAME Text Document Templat [writer-global] en = "%PRODUCTNAME Master Document" de = "%PRODUCTNAME Globaldokument" -pt = "%PRODUCTNAME Globaldokument" - ru = "%PRODUCTNAME СоÑтавной документ" + ru = "СоÑтавной документ %PRODUCTNAME" el = "%PRODUCTNAME KÏÏιο ÎγγÏαφο" nl = "%PRODUCTNAME Masterdocument" fr = "%PRODUCTNAME Document maître" @@ -85,27 +83,30 @@ Index: sysui/desktop/share/documents.ulf hu = "%PRODUCTNAME-fÅ‘dokumentum" it = "%PRODUCTNAME Documento master" cs = "Hlavnà dokument %PRODUCTNAME" -@@ -90,26 +76,22 @@ zh-CN = "%PRODUCTNAME 主控文档" +@@ -104,15 +94,13 @@ zh-CN = "%PRODUCTNAME 主控文档" zh-TW = "%PRODUCTNAME 主控文件" - tr = "%PRODUCTNAME Ana belge" + tr = "%PRODUCTNAME Ana Belge" ar = "%PRODUCTNAME مستند شام?" -he = "%PRODUCTNAME Globaldokument" -ca = "%PRODUCTNAME Globaldokument" --th = "%PRODUCTNAME Globaldokument" --hi-IN = "%PRODUCTNAME Globaldokument" +ca = "%PRODUCTNAME "Document mestre d'%PRODUCTNAME" + th = "%PRODUCTNAME ต้นà¹à¸šà¸šà¹€à¸à¸à¸ªà¸²à¸£" +-hi-IN = "%PRODUCTNAME Globaldokument" et = "%PRODUCTNAME-i põhidokument" sl = "Glavni dokument programa %PRODUCTNAME" ns = "Tokumente ya Master ya %PRODUCTNAME" af = "%PRODUCTNAME-meesterdokument" -zu = "Ushicilelo Olukhulu lwe-%PRODUCTNAME 5.0" +zu = "Ushicilelo Olukhulu lwe-%PRODUCTNAME" - + nb = "%PRODUCTNAME Master Document" + cy = "%PRODUCTNAME Master Document" + tn = "%PRODUCTNAME Master Document" +@@ -125,13 +113,12 @@ gl = "%PRODUCTNAME Master Document" [writer-math] en = "%PRODUCTNAME Formula" de = "%PRODUCTNAME Formel" -pt = "%PRODUCTNAME Formel" - ru = "%PRODUCTNAME Формула" + ru = "Формула %PRODUCTNAME" el = "%PRODUCTNAME ΤÏπος" nl = "%PRODUCTNAME Formule" fr = "%PRODUCTNAME Formule" @@ -115,27 +116,30 @@ Index: sysui/desktop/share/documents.ulf hu = "%PRODUCTNAME-képlet" it = "%PRODUCTNAME Formula" cs = "Vzorec %PRODUCTNAME" -@@ -124,26 +106,22 @@ zh-CN = "%PRODUCTNAME å…¬å¼" +@@ -146,15 +133,13 @@ zh-CN = "%PRODUCTNAME å…¬å¼" zh-TW = "%PRODUCTNAME å…¬å¼" tr = "%PRODUCTNAME Formül" ar = "%PRODUCTNAME صيغة" -he = "%PRODUCTNAME Formel" -ca = "%PRODUCTNAME Formel" --th = "%PRODUCTNAME Formel" --hi-IN = "%PRODUCTNAME Formel" +ca = "Fòrmula d'%PRODUCTNAME" + th = "%PRODUCTNAME สมà¸à¸²à¸£" +-hi-IN = "%PRODUCTNAME Formel" et = "%PRODUCTNAME-i valem" sl = "Formula programa %PRODUCTNAME" ns = "Fomula ya %PRODUCTNAME" af = "%PRODUCTNAME-formule" -zu = "Indlela yokwenza ye-%PRODUCTNAME 5.0" +zu = "Indlela yokwenza ye-%PRODUCTNAME" - + nb = "%PRODUCTNAME Formula" + cy = "%PRODUCTNAME Formula" + tn = "%PRODUCTNAME Formula" +@@ -167,13 +152,12 @@ gl = "%PRODUCTNAME Formula" [impress] en = "%PRODUCTNAME Presentation" de = "%PRODUCTNAME Präsentation" -pt = "%PRODUCTNAME Präsentation" - ru = "%PRODUCTNAME ПрезентациÑ" + ru = "ÐŸÑ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ %PRODUCTNAME" el = "%PRODUCTNAME ΠαÏουσίαση" nl = "%PRODUCTNAME Presentatie" fr = "%PRODUCTNAME Présentation" @@ -146,29 +150,31 @@ Index: sysui/desktop/share/documents.ulf hu = "%PRODUCTNAME-bemutató" it = "%PRODUCTNAME Presentazione" cs = "Prezentace %PRODUCTNAME" -@@ -156,46 +134,32 @@ ja = "%PRODUCTNAME プレゼンテーシ - ko = "%PRODUCTNAME í”„ë ˆì í…Œì´ì…˜" +@@ -187,16 +171,13 @@ ko = "%PRODUCTNAME í”„ë ˆì í…Œì´ì…˜" zh-CN = "%PRODUCTNAME 演示文稿" zh-TW = "%PRODUCTNAME ç°¡å ±" --tr = "%PRODUCTNAME Pr?sentation" + tr = "%PRODUCTNAME Sunu" -ar = "%PRODUCTNAME Pr?sentation" -he = "%PRODUCTNAME Präsentation" -ca = "%PRODUCTNAME Pr„sentation" --th = "%PRODUCTNAME Präsentation" --hi-IN = "%PRODUCTNAME Präsentation" +ca = "Presentació d'%PRODUCTNAME" + th = "%PRODUCTNAME à¸à¸²à¸£à¸™à¸³à¹€à¸ªà¸™à¸" +-hi-IN = "%PRODUCTNAME Präsentation" et = "%PRODUCTNAME-i esitlus" sl = "Predstavitev programa %PRODUCTNAME" ns = "TlhagiÅ¡o ya %PRODUCTNAME" af = "%PRODUCTNAME-voorlegging" -zu = "Ukunikezwa kolwazi kwe-%PRODUCTNAME 5.0" +zu = "Ukunikezwa kolwazi kwe-%PRODUCTNAME" - + nb = "%PRODUCTNAME Presentation" + cy = "%PRODUCTNAME Presentation" + tn = "%PRODUCTNAME Presentation" +@@ -209,31 +190,25 @@ gl = "%PRODUCTNAME Presentation" [impress-template] en = "%PRODUCTNAME Presentation Template" de = "%PRODUCTNAME Präsentationsvorlage" -pt = "%PRODUCTNAME Präsentationsvorlage" --ru = "%PRODUCTNAME Pr?sentationsvorlage" + ru = "Шаблон презентации %PRODUCTNAME" -el = "%PRODUCTNAME Pr?sentationsvorlage" nl = "%PRODUCTNAME Presentatiesjabloon" fr = "Modèle de présentation %PRODUCTNAME" @@ -187,22 +193,22 @@ Index: sysui/desktop/share/documents.ulf ko = "%PRODUCTNAME í”„ë ˆì í…Œì´ì…˜ ì„œì‹ íŒŒì¼" zh-CN = "%PRODUCTNAME æ¼”ç¤ºæ–‡ç¨¿æ ·å¼" zh-TW = "%PRODUCTNAME ç°¡å ±æ¨£å¼" --tr = "%PRODUCTNAME Präsentationsvorlage" + tr = "%PRODUCTNAME Sunu Åžablonu" -ar = "%PRODUCTNAME Pr?sentationsvorlage" -he = "%PRODUCTNAME Präsentationsvorlage" -ca = "%PRODUCTNAME Präsentationsvorlage" --th = "%PRODUCTNAME Präsentationsvorlage" --hi-IN = "%PRODUCTNAME Präsentationsvorlage" +ca = ""Plantilla de presentació d'%PRODUCTNAME" + th = "%PRODUCTNAME à¹à¸¡à¹ˆà¹à¸šà¸šà¸à¸²à¸£à¸™à¸³à¹€à¸ªà¸™à¸" +-hi-IN = "%PRODUCTNAME Präsentationsvorlage" et = "%PRODUCTNAME-i esitluse mall" sl = "Predloga predstavitve programa %PRODUCTNAME" ns = "%PRODUCTNAME Template ya TlhagiÅ¡o" -@@ -205,13 +169,12 @@ zu = "Uqwembe Lokunikezelwa kwe-%PRODUCT +@@ -251,13 +226,12 @@ gl = "%PRODUCTNAME Presentation Template [draw] en = "%PRODUCTNAME Drawing" de = "%PRODUCTNAME Zeichnung" -pt = "%PRODUCTNAME Zeichnung" - ru = "%PRODUCTNAME РиÑунок" + ru = "РиÑунок %PRODUCTNAME" el = "%PRODUCTNAME ΣχÎδιο" nl = "%PRODUCTNAME Tekening" fr = "%PRODUCTNAME Dessin" @@ -212,27 +218,30 @@ Index: sysui/desktop/share/documents.ulf hu = "%PRODUCTNAME-rajz" it = "%PRODUCTNAME Disegno" cs = "Kresba %PRODUCTNAME" -@@ -226,44 +189,32 @@ zh-CN = "%PRODUCTNAME 绘图" +@@ -272,15 +246,13 @@ zh-CN = "%PRODUCTNAME 绘图" zh-TW = "%PRODUCTNAME 繪圖" tr = "%PRODUCTNAME Çizim" ar = "%PRODUCTNAME رسم" -he = "%PRODUCTNAME Zeichnung" -ca = "%PRODUCTNAME Dibuix" --th = "%PRODUCTNAME Zeichnung" --hi-IN = "%PRODUCTNAME Zeichnung" +ca = "Dibuix d'%PRODUCTNAME" + th = "%PRODUCTNAME รูปวาด" +-hi-IN = "%PRODUCTNAME Zeichnung" et = "%PRODUCTNAME-i joonistus" sl = "Risba programa %PRODUCTNAME" ns = "Go thala ga %PRODUCTNAME" af = "%PRODUCTNAME-voorlegging" -zu = "Ukudweba nge-%PRODUCTNAME 5.0" +zu = "Ukudweba nge-%PRODUCTNAME" - + nb = "%PRODUCTNAME Drawing" + cy = "%PRODUCTNAME Drawing" + tn = "%PRODUCTNAME Drawing" +@@ -293,31 +265,25 @@ gl = "%PRODUCTNAME Drawing" [draw-template] en = "%PRODUCTNAME Drawing Template" de = "%PRODUCTNAME Zeichnungsvorlage" -pt = "%PRODUCTNAME Zeichnungsvorlage" --ru = "%PRODUCTNAME Zeichnungsvorlage" + ru = "Шаблон риÑунка %PRODUCTNAME" -el = "%PRODUCTNAME Zeichnungsvorlage" nl = "%PRODUCTNAME Tekeningsjabloon" fr = "Modèle de dessin %PRODUCTNAME" @@ -251,22 +260,22 @@ Index: sysui/desktop/share/documents.ulf ko = "%PRODUCTNAME 그리기 ì„œì‹ íŒŒì¼" zh-CN = "%PRODUCTNAME ç»˜å›¾æ ·å¼" zh-TW = "%PRODUCTNAME 繪圖樣å¼" --tr = "%PRODUCTNAME Zeichnungsvorlage" + tr = "%PRODUCTNAME Çizim Åžablonu" -ar = "%PRODUCTNAME Zeichnungsvorlage" -he = "%PRODUCTNAME Zeichnungsvorlage" -ca = "%PRODUCTNAME Zeichnungsvorlage" --th = "%PRODUCTNAME Zeichnungsvorlage" --hi-IN = "%PRODUCTNAME Zeichnungsvorlage" +ca = "Plantilla de dibuix d'%PRODUCTNAME" + th = "%PRODUCTNAME à¹à¸¡à¹ˆà¹à¸šà¸šà¸£à¸¹à¸›à¸§à¸²à¸”" +-hi-IN = "%PRODUCTNAME Zeichnungsvorlage" et = "%PRODUCTNAME-i joonistuse mall" sl = "Predloga risbe programa %PRODUCTNAME" ns = "%PRODUCTNAME Template ya go Thala" -@@ -273,13 +224,12 @@ zu = "Uqwembe Lokudweba lwe-%PRODUCTNAME +@@ -335,13 +301,12 @@ gl = "%PRODUCTNAME Drawing Template" [calc] en = "%PRODUCTNAME Spreadsheet" de = "%PRODUCTNAME Tabelle" -pt = "%PRODUCTNAME Tabelle" - ru = "%PRODUCTNAME ÐÐ»ÐµÐºÑ‚Ñ€Ð¾Ð½Ð½Ð°Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ð°" + ru = "ÐÐ»ÐµÐºÑ‚Ñ€Ð¾Ð½Ð½Ð°Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ð° %PRODUCTNAME" el = "%PRODUCTNAME Πίνακας" nl = "%PRODUCTNAME Tabel" fr = "%PRODUCTNAME Classeur" @@ -277,28 +286,31 @@ Index: sysui/desktop/share/documents.ulf hu = "%PRODUCTNAME-munkafüzet" it = "%PRODUCTNAME Tabella" cs = "SeÅ¡it %PRODUCTNAME" -@@ -293,45 +243,32 @@ ko = "%PRODUCTNAME ìŠ¤í”„ë ˆë“œì‹œíŠ¸" +@@ -355,16 +320,13 @@ ko = "%PRODUCTNAME ìŠ¤í”„ë ˆë“œì‹œíŠ¸" zh-CN = "%PRODUCTNAME 工作表" zh-TW = "%PRODUCTNAME 工作表" - tr = "%PRODUCTNAME Tablo" + tr = "%PRODUCTNAME Hesap Tablosu" -ar = "%PRODUCTNAME Tabelle" -he = "%PRODUCTNAME Tabelle" -ca = "%PRODUCTNAME Tabelle" --th = "%PRODUCTNAME Tabelle" --hi-IN = "%PRODUCTNAME Tabelle" +ca = "Fulla de cÃ| lcul d'%PRODUCTNAME" + th = "%PRODUCTNAME ตารางคำนวณ" +-hi-IN = "%PRODUCTNAME Tabelle" et = "%PRODUCTNAME-i arvutustabel" sl = "Preglednica programa %PRODUCTNAME" ns = "Pampiri ya go anega ya %PRODUCTNAME" af = "%PRODUCTNAME-sigblad" -zu = "Ikhasi lokubala %PRODUCTNAME 6.0" +zu = "Ikhasi lokubala %PRODUCTNAME" - + nb = "%PRODUCTNAME Spreadsheet" + cy = "%PRODUCTNAME Spreadsheet" + tn = "%PRODUCTNAME Spreadsheet" +@@ -377,31 +339,25 @@ gl = "%PRODUCTNAME Spreadsheet" [calc-template] en = "%PRODUCTNAME Spreadsheet Template" de = "%PRODUCTNAME Tabellenvorlage" -pt = "%PRODUCTNAME Tabellenvorlage" --ru = "%PRODUCTNAME Tabellenvorlage" + ru = "Шаблон Ñлектронной таблицы %PRODUCTNAME" -el = "%PRODUCTNAME Tabellenvorlage" nl = "%PRODUCTNAME Werkbladsjabloon" fr = "Modèle de classeur %PRODUCTNAME" @@ -317,20 +329,20 @@ Index: sysui/desktop/share/documents.ulf ko = "%PRODUCTNAME ìŠ¤í”„ë ˆë“œì‹œíŠ¸ ì„œì‹ íŒŒì¼" zh-CN = "%PRODUCTNAME å·¥ä½œè¡¨æ ·å¼" zh-TW = "%PRODUCTNAME 工作表樣å¼" --tr = "%PRODUCTNAME Tabellenvorlage" + tr = "%PRODUCTNAME Hesap Tablosu Åžablonu" -ar = "%PRODUCTNAME Tabellenvorlage" -he = "%PRODUCTNAME Tabellenvorlage" -ca = "%PRODUCTNAME Tabellenvorlage" --th = "%PRODUCTNAME Tabellenvorlage" --hi-IN = "%PRODUCTNAME Tabellenvorlage" +ca = "Plantilla de fulla de cÃ| lcul d'%PRODUCTNAME" + th = "%PRODUCTNAME à¹à¸¡à¹ˆà¹à¸šà¸šà¸•à¸²à¸£à¸²à¸‡à¸„ำนวณ" +-hi-IN = "%PRODUCTNAME Tabellenvorlage" et = "%PRODUCTNAME-i arvutustabeli mall" sl = "Predloga preglednice programa %PRODUCTNAME" ns = "%PRODUCTNAME Template ya Pampiri ya go Anega" Index: sysui/desktop/share/launcher_comment.ulf =================================================================== ---- sysui/desktop/share/launcher_comment.ulf.orig 2004-07-30 21:43:44.479613424 +0200 -+++ sysui/desktop/share/launcher_comment.ulf 2004-07-30 22:29:34.378565240 +0200 +--- sysui/desktop/share/launcher_comment.ulf.orig 2004-09-13 22:50:54.000000000 +0200 ++++ sysui/desktop/share/launcher_comment.ulf 2004-09-14 15:46:59.390405776 +0200 @@ -1,12 +1,11 @@ [writer] en = "%PRODUCTNAME Text Document" @@ -346,28 +358,24 @@ Index: sysui/desktop/share/launcher_comment.ulf hu = "%PRODUCTNAME-szövegesdokumentum" it = "%PRODUCTNAME Documento di testo" cs = "Textový dokument %PRODUCTNAME" -@@ -21,26 +20,22 @@ zh-CN = "%PRODUCTNAME 文本文档" +@@ -21,10 +20,8 @@ zh-CN = "%PRODUCTNAME 文本文档" zh-TW = "%PRODUCTNAME æ–‡å—文件" tr = "PRODUCTNAME Metin belgesi" ar = "%PRODUCTNAME مستند نص" -he = "%PRODUCTNAME Textdokument" -ca = "%PRODUCTNAME Document de text" --th = "%PRODUCTNAME Textdokument" --hi-IN = "%PRODUCTNAME Textdokument" +ca = "Document de text d'%PRODUCTNAME" + th = "%PRODUCTNAME เà¸à¸à¸ªà¸²à¸£à¸‚้à¸à¸„วาม" +-hi-IN = "%PRODUCTNAME Textdokument" et = "%PRODUCTNAME-i tekstidokument" sl = "Dokument z besedilom programa %PRODUCTNAME" cy = "Dogfen Testun %PRODUCTNAME" - ns = "%PRODUCTNAME Tokumente ya Sengwalwa" - af = "%PRODUCTNAME-teksdokument" --zu = "Ushicilelo Lombhalo lwe-%PRODUCTNAME 5.0" -+zu = "Ushicilelo Lombhalo lwe-%PRODUCTNAME" - +@@ -42,12 +39,11 @@ gl = "%PRODUCTNAME Text Document" [web] en = "%PRODUCTNAME HTML Document" de = "%PRODUCTNAME HTML Dokument" -pt = "%PRODUCTNAME HTML Dokument" - ru = "%PRODUCTNAME HTML-документ" + ru = "Документ HTML %PRODUCTNAME" nl = "%PRODUCTNAME HTML-document" fr = "%PRODUCTNAME Document HTML" -es = "Documento HTML %PRODUCTNAME " @@ -377,26 +385,25 @@ Index: sysui/desktop/share/launcher_comment.ulf hu = "%PRODUCTNAME HTML-dokumentum" it = "%PRODUCTNAME Documento HTML" cs = "HTML dokument %PRODUCTNAME" -@@ -53,12 +48,7 @@ ja = "%PRODUCTNAME HTML å½¢å¼ãƒ‰ã‚ュã - ko = "%PRODUCTNAME HTML 문서" +@@ -61,11 +57,8 @@ ko = "%PRODUCTNAME HTML 문서" zh-CN = "%PRODUCTNAME HTML 文档" zh-TW = "%PRODUCTNAME HTML 文件" --tr = "%PRODUCTNAME HTML Dokument" + tr = "%PRODUCTNAME HTML Belgesi" -ar = "%PRODUCTNAME HTML Dokument" -he = "%PRODUCTNAME HTML Dokument" -ca = "%PRODUCTNAME HTML Dokument" --th = "%PRODUCTNAME HTML Dokument" --hi-IN = "%PRODUCTNAME HTML Dokument" +ca = "Document HTML d'%PRODUCTNAME" + th = "%PRODUCTNAME เà¸à¸à¸ªà¸²à¸£ HTML" +-hi-IN = "%PRODUCTNAME HTML Dokument" et = "%PRODUCTNAME-i HTML-dokument" - sl = "HTML dokument programa %PRODUCTNAME" + sl = "Dokument HTML programa %PRODUCTNAME" ns = "Tokumente ya HTML ya %PRODUCTNAME" -@@ -68,12 +58,11 @@ zu = "Ushicilelo lwe-%PRODUCTNAME HTML" +@@ -81,12 +74,11 @@ gl = "%PRODUCTNAME HTML Document" [impress] en = "%PRODUCTNAME Presentation" de = "%PRODUCTNAME Präsentation" -pt = "%PRODUCTNAME Präsentation" - ru = "%PRODUCTNAME ПрезентациÑ" + ru = "ÐŸÑ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ %PRODUCTNAME" nl = "%PRODUCTNAME Presentatie" fr = "%PRODUCTNAME Présentation" -es = "Presentación %PRODUCTNAME " @@ -406,21 +413,31 @@ Index: sysui/desktop/share/launcher_comment.ulf hu = "%PRODUCTNAME-bemutató" it = "%PRODUCTNAME Presentazione" cs = "Prezentace %PRODUCTNAME" -@@ -85,12 +74,7 @@ ja = "%PRODUCTNAME プレゼンテーシ - ko = "%PRODUCTNAME í”„ë ˆì í…Œì´ì…˜" +@@ -99,16 +91,13 @@ ko = "%PRODUCTNAME í”„ë ˆì í…Œì´ì…˜" zh-CN = "%PRODUCTNAME 演示文稿" zh-TW = "%PRODUCTNAME ç°¡å ±" --tr = "%PRODUCTNAME Pr?sentation" + tr = "%PRODUCTNAME Sunu" -ar = "%PRODUCTNAME Pr?sentation" -he = "%PRODUCTNAME Präsentation" -ca = "%PRODUCTNAME Pr„sentation" --th = "%PRODUCTNAME Präsentation" --hi-IN = "%PRODUCTNAME Präsentation" +ca = "Presentació d'%PRODUCTNAME" + th = "%PRODUCTNAME à¸à¸²à¸£à¸™à¸³à¹€à¸ªà¸™à¸" +-hi-IN = "%PRODUCTNAME Präsentation" et = "%PRODUCTNAME-i esitlus" sl = "Predstavitev programa %PRODUCTNAME" ns = "TlhagiÅ¡o ya %PRODUCTNAME" -@@ -105,7 +89,7 @@ ru = "%PRODUCTNAME РиÑунок" + af = "%PRODUCTNAME-voorlegging" +-zu = "Ukunikezwa kolwazi kwe-%PRODUCTNAME 5.0" ++zu = "Ukunikezwa kolwazi kwe-%PRODUCTNAME" + da = "%PRODUCTNAME-præsentation" + nb = "%PRODUCTNAME Presentation" + nn = "%PRODUCTNAME Presentation" +@@ -120,12 +109,11 @@ gl = "%PRODUCTNAME Presentation" + [draw] + en = "%PRODUCTNAME Drawing" + de = "%PRODUCTNAME Zeichnung" +-pt = "%PRODUCTNAME Zeichnung" + ru = "РиÑунок %PRODUCTNAME" nl = "%PRODUCTNAME Tekening" fr = "%PRODUCTNAME Dessin" es = "Dibujo %PRODUCTNAME" @@ -429,21 +446,30 @@ Index: sysui/desktop/share/launcher_comment.ulf hu = "%PRODUCTNAME-rajz" it = "%PRODUCTNAME Disegno" cs = "Kresba %PRODUCTNAME" -@@ -121,7 +105,7 @@ zh-TW = "%PRODUCTNAME 繪圖" +@@ -140,15 +128,13 @@ zh-CN = "%PRODUCTNAME 绘图" + zh-TW = "%PRODUCTNAME 繪圖" tr = "%PRODUCTNAME Çizim" ar = "%PRODUCTNAME رسم" - he = "%PRODUCTNAME Zeichnung" +-he = "%PRODUCTNAME Zeichnung" -ca = "%PRODUCTNAME Dibuix" +ca = "Dibuix d'%PRODUCTNAME" - th = "%PRODUCTNAME Zeichnung" - hi-IN = "%PRODUCTNAME Zeichnung" + th = "%PRODUCTNAME รูปวาด" +-hi-IN = "%PRODUCTNAME Zeichnung" et = "%PRODUCTNAME-i joonistus" -@@ -133,12 +117,11 @@ zu = "Ukudweba nge-%PRODUCTNAME 5.0" + sl = "Risba programa %PRODUCTNAME" + ns = "Go thala ga %PRODUCTNAME" + af = "%PRODUCTNAME-voorlegging" +-zu = "Ukudweba nge-%PRODUCTNAME 5.0" ++zu = "Ukudweba nge-%PRODUCTNAME" + nb = "%PRODUCTNAME Drawing" + nn = "%PRODUCTNAME Drawing" + eu = "%PRODUCTNAME Zeichnung" +@@ -159,12 +145,11 @@ gl = "%PRODUCTNAME Drawing" [calc] en = "%PRODUCTNAME Spreadsheet" de = "%PRODUCTNAME Tabelle" -pt = "%PRODUCTNAME Tabelle" - ru = "%PRODUCTNAME ÐÐ»ÐµÐºÑ‚Ñ€Ð¾Ð½Ð½Ð°Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ð°" + ru = "ÐÐ»ÐµÐºÑ‚Ñ€Ð¾Ð½Ð½Ð°Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ð° %PRODUCTNAME" nl = "%PRODUCTNAME Tabel" fr = "%PRODUCTNAME Classeur" es = "Hoja de cálculo %PRODUCTNAME" @@ -452,25 +478,31 @@ Index: sysui/desktop/share/launcher_comment.ulf hu = "PRODUCTNAME-munkafüzet" it = "%PRODUCTNAME Tabella" cs = "SeÅ¡it %PRODUCTNAME" -@@ -152,11 +135,7 @@ ko = "%PRODUCTNAME ìŠ¤í”„ë ˆë“œì‹œíŠ¸" +@@ -178,16 +163,13 @@ ko = "%PRODUCTNAME ìŠ¤í”„ë ˆë“œì‹œíŠ¸" zh-CN = "%PRODUCTNAME 工作表" zh-TW = "%PRODUCTNAME 工作表" - tr = "%PRODUCTNAME Tablo" + tr = "%PRODUCTNAME Hesap Tablosu" -ar = "%PRODUCTNAME Tabelle" -he = "%PRODUCTNAME Tabelle" -ca = "%PRODUCTNAME Tabelle" --th = "%PRODUCTNAME Tabelle" --hi-IN = "%PRODUCTNAME Tabelle" +ca = "Fulla de cÃ| lcul d'%PRODUCTNAME" + th = "%PRODUCTNAME ตารางคำนวณ" +-hi-IN = "%PRODUCTNAME Tabelle" et = "%PRODUCTNAME-i arvutustabel" sl = "Preglednica programa %PRODUCTNAME" ns = "Pampiri ya go anega ya %PRODUCTNAME" -@@ -166,12 +145,11 @@ zu = "Ikhasi lokubala %PRODUCTNAME 6.0" + af = "%PRODUCTNAME-sigblad" +-zu = "Ikhasi lokubala %PRODUCTNAME 6.0" ++zu = "Ikhasi lokubala %PRODUCTNAME" + nb = "%PRODUCTNAME Spreadsheet" + nn = "%PRODUCTNAME Spreadsheet" + eu = "%PRODUCTNAME Tabelle" +@@ -198,12 +180,11 @@ gl = "%PRODUCTNAME Spreadsheet" [math] en = "%PRODUCTNAME Formula" de = "%PRODUCTNAME Formel" -pt = "%PRODUCTNAME Formel" - ru = "%PRODUCTNAME Формула" + ru = "Формула %PRODUCTNAME" nl = "%PRODUCTNAME Formule" fr = "%PRODUCTNAME Formule" es = "Fórmula %PRODUCTNAME " @@ -479,28 +511,35 @@ Index: sysui/desktop/share/launcher_comment.ulf hu = "%PRODUCTNAME-képlet" it = "%PRODUCTNAME Formula" cs = "Vzorec %PRODUCTNAME" -@@ -186,10 +164,7 @@ zh-CN = "%PRODUCTNAME å…¬å¼" +@@ -218,15 +199,13 @@ zh-CN = "%PRODUCTNAME å…¬å¼" zh-TW = "%PRODUCTNAME å…¬å¼" tr = "%PRODUCTNAME Formül" ar = "%PRODUCTNAME صيغة" -he = "%PRODUCTNAME Formel" -ca = "%PRODUCTNAME Formel" --th = "%PRODUCTNAME Formel" --hi-IN = "%PRODUCTNAME Formel" +ca = "Fòrmula d'%PRODUCTNAME" + th = "%PRODUCTNAME สมà¸à¸²à¸£" +-hi-IN = "%PRODUCTNAME Formel" et = "%PRODUCTNAME-i valem" sl = "Formula programa %PRODUCTNAME" ns = "Fomula ya %PRODUCTNAME" + af = "%PRODUCTNAME-formule" +-zu = "Indlela yokwenza ye-%PRODUCTNAME 5.0" ++zu = "Indlela yokwenza ye-%PRODUCTNAME" + nb = "%PRODUCTNAME Formula" + nn = "%PRODUCTNAME Formula" + eu = "%PRODUCTNAME Formel" Index: sysui/desktop/share/launcher_name.ulf =================================================================== ---- sysui/desktop/share/launcher_name.ulf.orig 2004-07-30 21:43:44.697580288 +0200 -+++ sysui/desktop/share/launcher_name.ulf 2004-07-30 22:29:21.309552032 +0200 -@@ -1,12 +1,11 @@ +--- sysui/desktop/share/launcher_name.ulf.orig 2004-09-13 22:50:54.000000000 +0200 ++++ sysui/desktop/share/launcher_name.ulf 2004-09-14 15:46:59.395405016 +0200 +@@ -1,13 +1,11 @@ [printeradmin] en = "%PRODUCTNAME Printer Administration" de = "%PRODUCTNAME Drucker Verwaltung" -pt = "%PRODUCTNAME Drucker Verwaltung" ru = "%PRODUCTNAME Управление принтером" +-el = "%PRODUCTNAME Drucker Verwaltung" nl = "%PRODUCTNAME printerbeheer" fr = "%PRODUCTNAME Gestion des imprimantes" -es = "Administración de la impresora de %PRODUCTNAME " @@ -510,25 +549,25 @@ Index: sysui/desktop/share/launcher_name.ulf hu = "%PRODUCTNAME Nyomtatókezelés" it = "%PRODUCTNAME Gestione stampanti" cs = "Administrace tiskáren %PRODUCTNAME" -@@ -20,11 +19,7 @@ ko = "%PRODUCTNAME 프린터 관리" - zh-CN = "%PRODUCTNAME 打å°æœºç®¡ç†" +@@ -22,10 +20,8 @@ zh-CN = "%PRODUCTNAME 打å°æœºç®¡ç†" zh-TW = "%PRODUCTNAME å°è¡¨æ©Ÿç®¡ç†" - tr = "%PRODUCTNAME Printer Administration" --ar = "%PRODUCTNAME Drucker Verwaltung" + tr = "%PRODUCTNAME Yazıcı Yönetimi" + ar = "مسئول طابعة %PRODUCTNAME" -he = "%PRODUCTNAME Drucker Verwaltung" -ca = "%PRODUCTNAME Drucker Verwaltung" --th = "%PRODUCTNAME Drucker Verwaltung" --hi-IN = "%PRODUCTNAME Drucker Verwaltung" +ca = "Administració d'impressó d'%PRODUCTNAME" + th = "%PRODUCTNAME ดูà¹à¸¥à¹€à¸„รื่à¸à¸‡à¸žà¸´à¸¡à¸žà¹Œ" +-hi-IN = "%PRODUCTNAME Drucker Verwaltung" et = "%PRODUCTNAME-i printerite haldamine" sl = "%PRODUCTNAME nastavitve tiskalnika" cy = "Gweinyddiad Argraffu %PRODUCTNAME" -@@ -35,12 +30,11 @@ zu = "%PRODUCTNAME Ukuphathwa komshicile +@@ -43,13 +39,12 @@ gl = "%PRODUCTNAME Printer Administratio [template] en = "%PRODUCTNAME From Template" de = "%PRODUCTNAME Aus Vorlage" -pt = "%PRODUCTNAME Aus Vorlage" - ru = "%PRODUCTNAME Из шаблона" + ru = "%PRODUCTNAME из шаблона..." + el = "%PRODUCTNAME Από Ï€Ïότυπο" nl = "%PRODUCTNAME Uit sjabloon" fr = "À partir d'un modèle %PRODUCTNAME" es = "A partir de una plantilla de %PRODUCTNAME" @@ -537,17 +576,16 @@ Index: sysui/desktop/share/launcher_name.ulf hu = "%PRODUCTNAME sablonból" it = "%PRODUCTNAME Da modello" cs = "Ze Å¡ablony %PRODUCTNAME" -@@ -53,12 +47,7 @@ ja = "%PRODUCTNAME テンプレート㋠- ko = "%PRODUCTNAME ì„œì‹ íŒŒì¼ë¡œë¶€í„°" +@@ -63,11 +58,8 @@ ko = "%PRODUCTNAME ì„œì‹ íŒŒì¼ë¡œë¶€í„ zh-CN = "%PRODUCTNAME é‡‡ç”¨æ ·å¼" zh-TW = "%PRODUCTNAME 採用樣å¼" --tr = "%PRODUCTNAME Aus Vorlage" + tr = "%PRODUCTNAME Åžablondan" -ar = "%PRODUCTNAME Aus Vorlage" -he = "%PRODUCTNAME Aus Vorlage" -ca = "%PRODUCTNAME Aus Vorlage" --th = "%PRODUCTNAME Aus Vorlage" --hi-IN = "%PRODUCTNAME Aus Vorlage" +ca = "Des d'una plantilla d'%PRODUCTNAME" + th = "%PRODUCTNAME จาà¸à¹à¸¡à¹ˆà¹à¸šà¸š" +-hi-IN = "%PRODUCTNAME Aus Vorlage" et = "%PRODUCTNAME mallist" sl = "%PRODUCTNAME iz predloge" ns = "%PRODUCTNAME go tÅ¡wa go Template" diff --git a/patches/OOO_1_1/win32-build-fixes-1-1-3.diff b/patches/OOO_1_1/win32-build-fixes-1-1-3.diff new file mode 100644 index 000000000..e5bd2a369 --- /dev/null +++ b/patches/OOO_1_1/win32-build-fixes-1-1-3.diff @@ -0,0 +1,34 @@ +--- stlport/win32_custom.sh.bak 2004-10-21 17:13:18.218750000 +0530 ++++ stlport/win32_custom.sh 2004-10-21 15:03:01.718750000 +0530 +@@ -3,6 +3,8 @@ + #rem - path to unpacked tarball + #rem - relative path back to module root + ++/usr/bin/dos2unix.exe ./wntmsci9.pro/misc/build/STLport-4.0/src/vc_common.mak ++ + cd $1 + + patch -i $2/dos_lineends.patch -b -p2 +--- solenv/inc/tg_ext.mk.bak 2004-10-28 14:40:56.671875000 +0530 ++++ solenv/inc/tg_ext.mk 2004-10-28 14:47:41.531250000 +0530 +@@ -176,6 +176,9 @@ + @+-$(MKDIR) $(PACKAGE_DIR) + +cd $(PACKAGE_DIR) && ( $(shell +$(TYPE) $(PRJ)$/$(ROUT)$/misc$/$(TARFILE_NAME).unpack)) && $(TOUCH) $(UNTAR_FLAG_FILE) + @+echo make writeable... ++.IF "$(TARFILE_NAME)"=="curl-7.9.8" ++ @+/usr/bin/dos2unix.exe $(PACKAGE_DIR)/curl-7.9.8/lib/Makefile.vc6 ++.ENDIF + .IF "$(GUI)"=="UNX" || "$(USE_SHELL)"!="4nt" + @+cd $(PACKAGE_DIR) && chmod -R +rw * && $(TOUCH) $(UNTAR_FLAG_FILE) + @+cd $(PACKAGE_DIR) && find . -type d -exec chmod a+x {{}} \; +--- berkeleydb/makefile.mk.bak 2004-12-01 15:35:24.093750000 +0530 ++++ berkeleydb/makefile.mk 2004-12-01 15:37:43.812500000 +0530 +@@ -106,7 +106,7 @@ + EXT_USE_STLPORT=TRUE + + BUILD_DIR=build_win32 +-.IF "$(COMEX)"=="8" ++.IF "$(COMEX)"=="8" || "$(COMEX)"=="10" + CONFIGURE_DIR=build_win32 + CONFIGURE_ACTION=wdevenv Berkeley_DB Release + .IF "$(USE_SHELL)"!="4nt" diff --git a/patches/OOO_1_1/win32-msvs-2003-misc.diff b/patches/OOO_1_1/win32-msvs-2003-misc.diff index 179bf20da..5c4c8890b 100644 --- a/patches/OOO_1_1/win32-msvs-2003-misc.diff +++ b/patches/OOO_1_1/win32-msvs-2003-misc.diff @@ -21,43 +21,10 @@ retrieving revision 1.4.10.1 diff -u -p -u -w -r1.4.10.1 boost_1_27_0.patch --- boost/boost_1_27_0.patch 15 Aug 2003 11:47:26 -0000 1.4.10.1 +++ boost/boost_1_27_0.patch 1 Apr 2004 22:44:43 -0000 -@@ -1,21 +1,66 @@ ----- misc/boost_1_27_0/boost/config/compiler/gcc.hpp --+++ misc/build/boost_1_27_0/boost/config/compiler/gcc.hpp --@@ -49,10 +49,10 @@ -+*** misc/boost_1_27_0/boost/config/compiler/gcc.hpp Thu Feb 7 16:26:06 2002 -+--- misc/build/boost_1_27_0/boost/config/compiler/gcc.hpp Mon Sep 15 13:00:28 2003 -+*************** -+*** 49,58 **** -+ # error "Compiler not configured - please reconfigure" -+ #endif -+ // -+! // last known and checked version is 3.1: -+! #if (__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ > 1)) -+ # if defined(BOOST_ASSERT_CONFIG) -+! # error "Unknown compiler version - please run the configure tests and report the results" -+ # else -+ # warning "Unknown compiler version - please run the configure tests and report the results" -+ # endif -+--- 49,58 ---- - # error "Compiler not configured - please reconfigure" - #endif - // ---// last known and checked version is 3.1: ---#if (__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ > 1)) --+// last known and checked version is 3.3: --+#if (__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ > 3)) -+! // last known and checked version is 3.3: -+! #if (__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ > 3)) - # if defined(BOOST_ASSERT_CONFIG) ---# error "Unknown compiler version - please run the configure tests and report the results" --+# error "Unknown / untested compiler version - please run the configure tests and report the results" -+! # error "Unknown / untested compiler version - please run the configure tests and report the results" - # else - # warning "Unknown compiler version - please run the configure tests and report the results" - # endif --*** misc/boost_1_27_0/boost/config/user.hpp Thu Feb 7 10:26:05 2002 ----- misc/build/boost_1_27_0/boost/config/user.hpp Fri Apr 11 17:50:51 2003 +@@ -23,6 +23,42 @@ + # else + # warning "Unknown compiler version - please run the configure tests and report the results" + # endif +*** misc/boost_1_27_0/boost/config/compiler/visualc.hpp Thu Feb 7 16:26:08 2002 +--- misc/build/boost_1_27_0/boost/config/compiler/visualc.hpp Mon Sep 15 13:01:38 2003 +*************** @@ -94,11 +61,9 @@ diff -u -p -u -w -r1.4.10.1 boost_1_27_0.patch + # if defined(BOOST_ASSERT_CONFIG) + # error "Unknown compiler version - please run the configure tests and report the results" + # else -+*** misc/boost_1_27_0/boost/config/user.hpp Thu Feb 7 16:26:05 2002 -+--- misc/build/boost_1_27_0/boost/config/user.hpp Mon Sep 15 13:00:28 2003 + *** misc/boost_1_27_0/boost/config/user.hpp 2002-02-07 16:26:05.000000000 +0100 + --- misc/build/boost_1_27_0/boost/config/user.hpp 2004-10-04 19:33:26.631731992 +0200 *************** - *** 56,58 **** - --- 56,68 ---- Index: configmgr/source/api2/apiaccessobj.hxx =================================================================== RCS file: /cvs/util/configmgr/source/api2/apiaccessobj.hxx,v @@ -674,39 +639,6 @@ diff -u -p -u -w -r1.62.20.1 makefile.mk DOCUSTUDIO4INTEGRATIONHTMLFILES= \ $(DESTDIRDOCU)$/DevStudioWizards$/CalcAddinWizard.html \ -@@ -238,7 +239,10 @@ INSTALLSCRIPT= \ - $(DESTDIR)$/setsdkenv_windows.bat - .ENDIF - --DIR_FILE_LIST=\ -+#-------------------------------------------------- -+# TARGETS -+#-------------------------------------------------- -+all : \ - $(EXELIST) \ - $(XMLLIST) \ - $(SDKDLLLIST) \ -@@ -251,19 +255,9 @@ DIR_FILE_LIST=\ - $(DESTDIRDOCU)$/common$/spec$/xml_format$/xml_specification.pdf - # $(DESTDIRCLASSES)$/oosupport.nbm \ - --DIR_DIRECTORY_LIST=$(uniq $(DIR_FILE_LIST:d)) --DIR_CREATE_FLAG=$(MISC)$/copying_dirs_created.txt --DIR_FILE_FLAG=$(MISC)$/copying_files.txt -- --#-------------------------------------------------- --# TARGETS --#-------------------------------------------------- --all : \ -- $(DIR_FILE_LIST) \ -- $(DIR_FILE_FLAG) -- - #-------------------------------------------------- - # use global rules - #-------------------------------------------------- - .INCLUDE: $(PRJ)$/util$/odk_rules.pmk - -+ Index: python/makefile.mk =================================================================== RCS file: /cvs/external/python/makefile.mk,v diff --git a/patches/OOO_1_1/word-count.diff b/patches/OOO_1_1/word-count.diff index 4f3040435..953e0ca18 100644 --- a/patches/OOO_1_1/word-count.diff +++ b/patches/OOO_1_1/word-count.diff @@ -57,7 +57,7 @@ retrieving revision 1.109 diff -u -p -u -r1.109 swslots.src --- sw/sdi/swslots.src 17 Jul 2003 11:48:28 -0000 1.109 +++ sw/sdi/swslots.src 31 Jul 2003 17:01:27 -0000 -@@ -3685,6 +3685,55 @@ SfxSlotInfo FN_HYPHENATE_OPT_DLG +@@ -3685,6 +3685,56 @@ SfxSlotInfo FN_HYPHENATE_OPT_DLG SlotName[ hindi ] = "हाइफनेशन"; SlotName[ slovak ] = "Delenie slov"; }; @@ -95,6 +95,7 @@ diff -u -p -u -r1.109 swslots.src + SlotName[ thai ] = "Word count"; + SlotName[ hebrew ] = "Word count"; + SlotName[ estonian ] = "Word count"; ++ SlotName[ lithuanian ] = "Dokumento statistika"; +/* --: "Word count" translations + az: "KÉ™lmÉ™ Miqdarı" + bs: "Zbir rijeÄi" @@ -138,93 +139,69 @@ Index: sw/source/ui/inc/swmn.hrc RCS file: /cvs/sw/sw/source/ui/inc/swmn.hrc,v retrieving revision 1.133 diff --context=15 -c -r1.133 swmn.hrc -*** sw/source/ui/inc/swmn.hrc.orig 2004-09-22 09:41:21.000000000 -0400 ---- sw/source/ui/inc/swmn.hrc 2004-09-23 09:09:01.214282641 -0400 -*************** -*** 9189,9218 **** ---- 9189,9270 ---- - Text[ extern ] = "~Hyphenation..."; - Text[ thai ] = "ใ~ช้ยัติภังค์..."; - Text[ czech ] = "DÄ›lenà slov..."; - Text[ hebrew ] = "שבירת מלי×..."; - Text[ hindi ] = "~हाइफनेशन..."; - Text[ slovak ] = "~Delenie slov..."; - Text[ hungarian ] = "~Elválasztás..."; - Text[ slovenian ] = "~Deljenje besed..."; - Text[ estonian ] = "~Poolitus..."; - Text[ welsh ] = "~Cyplysnodi..."; - Text[ northernsotho ] = "~Morathofatso..."; - Text[ afrikaans ] = "~Woordafbreking..."; - Text[ zulu ] = "~Ukwahlukaniswa kwamagama..."; - Text[ norwegian_nynorsk ] = "Orddeli~ng ..."; - }; -+ MenuItem -+ { -+ Identifier = FN_WORD_COUNT_DLG ; -+ HelpID = FN_WORD_COUNT_DLG ; -+ Text = "Wörter zählen..." ; -+ Text [ arabic ] = "ÅÍÕÇÆíÇÊ..."; -+ Text [ english ] = "Word count..."; -+ Text [ english_us ] = "Word count..."; -+ Text [ catalan ] = "Comptador de paraules..."; -+ Text [ czech ] = "PoÄet slov..."; -+ Text [ danish ] = "Ordoptælling..."; -+ Text [ greek ] = "Áñßèìçóç ËÝîåùí"; -+ Text [ spanish ] = "Contar palabras..."; -+ Text [ estonian ] = "Sõnade arv..."; -+ Text [ finnish ] = "Laske sanat..."; -+ Text [ french ] = "Statistiques..."; -+ Text [ hindi ] = "शबà¥à¤¦ गिनें..."; -+ Text [ italian ] = "Statistiche..."; -+ Text [ hungarian ] = "Szavak száma..."; -+ Text [ japanese ] = "ワードカウント..."; -+ Text [ korean ] = "통계..."; -+ Text [ norwegian ] = "Ordtelling..."; -+ Text [ dutch ] = "Woorden tellen..."; -+ Text [ polish ] = "Liczba s³ów..."; -+ Text [ portuguese ] = "Contagem palavras..."; -+ Text [ portuguese_brazilian ] = "Contagem palavras..."; -+ Text [ russian ] = "Êîëè÷åñòâî ñëîâ"; -+ Text [ slovak ] = "PoÄet slov..."; -+ Text [ swedish ] = "Ordräkning..."; -+ Text [ turkish ] = "Ýstatistik..."; -+ Text [ chinese_simplified ] = "统计..."; -+ Text [ chinese_traditional ] = "統計..."; -+ Text [ slovenian ] = "Å tevilo besed"; -+ Text [ thai ] = "Word count..."; -+ Text [ hebrew ] = "Word count..."; -+ Text [ estonian ] = "Word count..."; -+ /* --: "Word count" translations -+ az: "KÉ™lmÉ™ Miqdarı" -+ bs: "Zbir rijeÄi" -+ cy: "Cyfrif geiriau" -+ eu: "Hitz kopurua" -+ mk: "Броење на зборови" -+ mt: "Għadd ta’ kliem" -+ ro: "Numără cuvintele" -+ sl: "Å tevilo besed" -+ sq: "Llogariti fjalët" -+ ta: "சொல௠எணà¯à®£à®¿" -+ uk: "КількіÑÑ‚ÑŒ Ñлів" -+ vi: "Äếm từ" -+ wa: "Contaedje des mots" -+ */ -+ }; - #endif - SEPARATOR ; - MenuItem - { - Identifier = SID_AUTO_CORRECT_DLG; - HelpID = SID_AUTO_CORRECT_DLG; - Text = "~AutoKorrektur/AutoFormat..." ; - Text [ English ] = "~AutoCorrect/AutoFormat..." ; - Text [ portuguese ] = "~AutoCorrecção/AutoFormato..." ; - Text [ english_us ] = "~AutoCorrect/AutoFormat..." ; - Text [ portuguese_brazilian ] = "~AutoCorreção/AutoFormatação..." ; - Text [ swedish ] = "~AutoKorrigering/AutoFormat..." ; - Text [ danish ] = "~AutoKorrektur/AutoFormat..." ; - Text [ italian ] = "Correzione/Formattazione a~utomatica..." ; - Text [ spanish ] = "~Corrección/Formateado automático..." ; +--- sw/source/ui/inc/swmn.hrc.orig 2004-09-22 09:41:21.000000000 -0400 ++++ sw/source/ui/inc/swmn.hrc 2004-09-23 09:09:01.214282641 -0400 +@@ -9189,6 +9189,59 @@ ++ MenuItem ++ { ++ Identifier = FN_WORD_COUNT_DLG ; ++ HelpID = FN_WORD_COUNT_DLG ; ++ Text = "Wörter zählen..." ; ++ Text [ arabic ] = "ÅÍÕÇÆíÇÊ..."; ++ Text [ english ] = "Word count..."; ++ Text [ english_us ] = "Word count..."; ++ Text [ catalan ] = "Comptador de paraules..."; ++ Text [ czech ] = "PoÄet slov..."; ++ Text [ danish ] = "Ordoptælling..."; ++ Text [ greek ] = "Áñßèìçóç ËÝîåùí"; ++ Text [ spanish ] = "Contar palabras..."; ++ Text [ estonian ] = "Sõnade arv..."; ++ Text [ finnish ] = "Laske sanat..."; ++ Text [ french ] = "Statistiques..."; ++ Text [ hindi ] = "शबà¥à¤¦ गिनें..."; ++ Text [ italian ] = "Statistiche..."; ++ Text [ hungarian ] = "Szavak száma..."; ++ Text [ japanese ] = "ワードカウント..."; ++ Text [ korean ] = "통계..."; ++ Text [ norwegian ] = "Ordtelling..."; ++ Text [ dutch ] = "Woorden tellen..."; ++ Text [ polish ] = "Liczba s³ów..."; ++ Text [ portuguese ] = "Contagem palavras..."; ++ Text [ portuguese_brazilian ] = "Contagem palavras..."; ++ Text [ russian ] = "Êîëè÷åñòâî ñëîâ"; ++ Text [ slovak ] = "PoÄet slov..."; ++ Text [ swedish ] = "Ordräkning..."; ++ Text [ turkish ] = "Ýstatistik..."; ++ Text [ chinese_simplified ] = "统计..."; ++ Text [ chinese_traditional ] = "統計..."; ++ Text [ slovenian ] = "Å tevilo besed"; ++ Text [ thai ] = "Word count..."; ++ Text [ hebrew ] = "Word count..."; ++ Text [ estonian ] = "Word count..."; ++ Text [ lithuanian ] = "Dokumento ~statistika..."; ++/* --: "Word count" translations ++ az: "KÉ™lmÉ™ Miqdarı" ++ bs: "Zbir rijeÄi" ++ cy: "Cyfrif geiriau" ++ eu: "Hitz kopurua" ++ mk: "Броење на зборови" ++ mt: "Għadd ta’ kliem" ++ ro: "Numără cuvintele" ++ sl: "Å tevilo besed" ++ sq: "Llogariti fjalët" ++ ta: "சொல௠எணà¯à®£à®¿" ++ uk: "КількіÑÑ‚ÑŒ Ñлів" ++ vi: "Äếm từ" ++ wa: "Contaedje des mots" ++*/ ++ }; + #endif + SEPARATOR ; + MenuItem + { +- Identifier = SID_AUTO_CORRECT_DLG; ++ Identifier = SID_AUTO_CORRECT_DLG; /* foo */ + HelpID = SID_AUTO_CORRECT_DLG; Index: sw/source/ui/uiview/viewling.cxx =================================================================== RCS file: /cvs/sw/sw/source/ui/uiview/viewling.cxx,v diff --git a/patches/OOO_1_1/writer-default-as-optimal-page-wrap.diff b/patches/OOO_1_1/writer-default-as-optimal-page-wrap.diff new file mode 100644 index 000000000..6516c179c --- /dev/null +++ b/patches/OOO_1_1/writer-default-as-optimal-page-wrap.diff @@ -0,0 +1,16 @@ +Index: source/core/doc/poolfmt.cxx +=================================================================== +RCS file: /cvs/sw/sw/source/core/doc/poolfmt.cxx,v +retrieving revision 1.25.108.1 +diff -u -r1.25.108.1 poolfmt.cxx +--- sw/source/core/doc/poolfmt.cxx 9 Jan 2004 14:31:26 -0000 1.25.108.1 ++++ sw/source/core/doc/poolfmt.cxx 24 Oct 2004 14:25:15 -0000 +@@ -1516,7 +1516,7 @@ + aSet.Put( SwFmtAnchor( FLY_AT_CNTNT )); + aSet.Put( SwFmtHoriOrient( 0, HORI_CENTER, FRAME )); + aSet.Put( SwFmtVertOrient( 0, VERT_TOP, FRAME )); +- aSet.Put( SwFmtSurround( SURROUND_NONE )); ++ aSet.Put( SwFmtSurround( SURROUND_IDEAL )); + } + break; + case RES_POOLFRM_FORMEL: diff --git a/patches/OOO_1_1_2/.cvsignore b/patches/OOO_1_1_2/.cvsignore deleted file mode 100644 index 282522db0..000000000 --- a/patches/OOO_1_1_2/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -Makefile -Makefile.in diff --git a/patches/OOO_1_1_2/Makefile.am b/patches/OOO_1_1_2/Makefile.am deleted file mode 100644 index 9c7adf699..000000000 --- a/patches/OOO_1_1_2/Makefile.am +++ /dev/null @@ -1 +0,0 @@ -EXTRA_DIST = apply ${wildcard *.diff} ${wildcard *.patch} diff --git a/patches/OOO_1_1_2/apply b/patches/OOO_1_1_2/apply deleted file mode 100644 index 57edf4b01..000000000 --- a/patches/OOO_1_1_2/apply +++ /dev/null @@ -1,1157 +0,0 @@ -# -# The format of this file is: -# - -# -------- Options -------- - -PATCHPATH=.:../OOO_1_1:../evo2:../vclplug:../wpd - -# -------- Functional sub-sets -------- - -Minimal : MinimalOnly, BuildBits -Common : Upstreamed, BuildBits, IconRender, Misc, MenuFixes, CalcFixes, DBFixes, WordPerfect -LinuxCommon : Common, VCLPlug, FilePickers, FontBits, i18n, SystemBits, RecentFiles, LinuxOnly -#DebianBase : DebianOnly, LinuxCommon -DebianBase : DebianOnly, LinuxCommon -Debian : DebianBase, XineramaPIC -DebianWoody: DebianBase, OldLibArt - -NonDebianCommon : ODKFixes, VBABits, Lotus, StartupNotification -RedHatBase : LinuxCommon, GnomeVFS, GlobalDesktopFiles, NonDebianCommon, Evo2, RedHatOnly -RHFedora : RedHatBase, RHFedoraOnly -RHEL3 : RedHatBase, RHEL3Only, OldLibArt -RHL9 : RedHatBase, RHL9Only, OldLibArt - -NovellBase : LinuxCommon, GnomeVFS, GlobalDesktopFiles, NonDebianCommon, Evo2, NovellOnly -SUSE : NovellBase, SUSEOnly -NLD : NovellBase, NLDOnly -PLD : PLDOnly, LinuxCommon, KDECommon, GlobalDesktopFiles, NonDebianCommon -KDE : LinuxCommon, KDEOnly - -# Odd one, very few patches: -Ark : ArkOnly, LinuxCommon, GlobalDesktopFiles, ODKFixes, VBABits -# somewhat odder: -Win32 : VCLPlug, Common, ODKFixes, VBABits, Win32Only - -# -------- [ Tag ], patch sets -------- - -####################################################### - -# -# These patches are already in a cws for OOo 1.1.3+ and are zeroth -# so that more patches can be shared between 1_1_2 and later -# -[ Upstreamed ] -# use system nas, 23779 -system-nas.diff - -# Xinerama linking 32066 -vcl-xinerama-link-dynamic.diff - -# KDE cut'n'paste problem fix, IZ# 29078, IZ# 28193 -kde-cut-paste-fix.diff - -# -# VCL plug back-port is first, since we want to patch -# against these (the state of HEAD), so our patches are -# more easily up-streamable ... -# -[ VCLPlug ] -psprint-m46-backport.diff -vcl-inc.diff -vcl-prj.diff -vcl-source-app.diff -vcl-source-control.diff -vcl-source-gdi.diff -vcl-source-glyphs.diff -vcl-source-helper.diff -vcl-source-src.diff -vcl-source-window.diff -vcl-unx-dummy.diff -vcl-unx-gtk.diff -vcl-unx-inc.diff -vcl-unx-inc-plugins.diff -vcl-unx-source-app.diff -vcl-unx-source-gdi.diff -vcl-unx-source-inc.diff -vcl-unx-source-plugadapt.diff -vcl-unx-source-window.diff -vcl-unx-kde-data-cxx.diff -vcl-unx-kde-data-hxx.diff -vcl-unx-kde-makefile.diff -vcl-unx-kde-nwf.diff -vcl-unx-kde-sm.diff -vcl-util.diff -svtools-bmpmaker.diff -scp-plug.diff -config-office-plug.diff -solenv-inc-settings-mk.diff -# Windows bits: -vcl-win-inc.diff -vcl-win-source-app.diff -vcl-win-source-gdi.diff -vcl-win-source-window.diff - -# Fix from IZ#28567 (should be in 1.1.3) -vcl-arabic-fallback.diff - -# awful HMENU hacks (back-ported) -framework-win-handle.diff -sj2-win-handle.diff -dbaccess-win-handle.diff - -# Use the right colors for menus/menuitems #????? -vcl-unx-gtk-menu-style.diff - -# Fix for autocompletion of words that have an apostrophe in them- bug #63231 -vcl-gtk-keycode.diff - -# Allow forcing which desktop we run under to override autodetection - #????? (not reported yet) -# Just export OOO_FORCE_DESKTOP=KDE|Gnome|CDE|none before running -vcl-force-desktop.diff - -# grab from cvs; should really re-sync from new branch - X#64220 -vcl-dnd-fix.diff - -# get the font from fontconfig and set as per the locale - X#63129, #62272 -vcl-gtk-fontconfig-fonts.diff - -# back-port some more pieces -vcl-unx-gtk-m46-to-m53.diff - -# fix from Stefan for #30335, X#63104 -vcl-m47-transparent-fix.diff - -# fix for crasher post frame deletion -crash-deletion.diff - -# fix for ppds cups refuses to parse -crash-ppd-parse.diff - -# Fix XIM a little (urgh, incomplete) -xim-fixes.diff - -[ FilePickers ] - -# -# Common part -# - -# Back-port from HEAD. Current context's getValueByName() can return value of -# the "system.desktop-environment". -fpicker-desktop-environment.diff - -# Search for GtkFilePicker or KDEFilePicker service when running in one of -# the environments to allow both file pickers to be installed at the same time. -fpicker-svtools-gtk-or-kde.diff - -# Enable the folder picker to be launched from svtools -fpicker-gnome-svtools-folderpicker.diff - -# Build bits -fpicker-gnome-build.diff - -# Copying & registering stuff -fpicker-gnome-scp.diff - -# Allow enabling/disabling of the native file picker in -# Tools->Options...->OpenOffice.org->General -fpicker-show-checkbox.diff - -# -# Gtk file picker implementation -# -fpicker-gnome-entry.diff -fpicker-gnome-eventnotification.diff -fpicker-gnome-asynceventnotifier.diff -fpicker-gnome-picker-hxx.diff -fpicker-gnome-picker-cxx.diff -fpicker-gnome-folderpicker-hxx.diff -fpicker-gnome-folderpicker-cxx.diff -fpicker-gnome-filepicker-hxx.diff -fpicker-gnome-filepicker-cxx.diff -fpicker-gnome-resource.diff -fpicker-gnome-serviceinfo.diff -fpicker-gnome-xml.diff -# fix for the csv import filter bug #62833 -sfx2-fpicker-gnome-filter-fix.diff - -# -# KDE file picker implementation -# - -# Common code for out-of-process file picker implementation -fpicker-common.diff - -# KDE specific code -fpicker-kde.diff - -####################################################### - -[ BuildBits ] -# don't touch a header unless it's really changed #8817 -deliver-compare.diff - -# do an optimizing link -build-optimized-link.diff - -# fix daft cut / paste mess. #24917 - up-stream. -flash-compile-fix.diff - -# help people get debugging -debug-helper.diff - -# fix debug build in desktop/, #28330 -desktop-debug-fix.diff - -# do not build extras for icu, workaround for http://bugs.debian.org/210608 -icu-build-no-extras.diff - -# Use $ARCH_FLAGS env. var instead of hard-coded -mcpu=pentiumpro, #29537 -build-arch-flags.diff - -# Make NAS use $ARCH_FLAGS -nas-use-arch-flags.diff - -# Dan's re-work -build-pl-conditionals.diff - -# Blacklist some of the dirs during parallel dmake -build-pl-parallel-dmake-blacklist.diff - -[ Misc ] -# Fix double-free in rsc caused by fclose()-ing the same file stream -# --- HACK --- -rsc-double-free-fix.diff - -# Fix silly with gcc translating things unnecessarily - #33031 -gcc-i18n.diff - -# Allow building with new (4.6.x) STLport - #28564 -stlport-compile-fix.diff - -# Some people are unbelievable ;-) -# spell-ximian.diff - -# don't do hundreds of sched_yields; each taking 100ms on RH 9.0 #9277: dafter fix -thread-yield.diff - -# Insert symbol defaults to the Symbol font - not a random one #15512: rc3 -gui-sw-insert-symbol.diff - -# Make list boxes clickable on the right of the text's bounds # 17182: rc3 -list-box-click.diff - -# Use nicer colors for the charts X#64359 -sc-default-color-modify.diff - -# Make cut and paste nicer #15509 -gui-sc-paste.diff - -# Make cursor two lines -gui-sc-cursor.diff - -# use fork in tools/source/solar.c to make it work with 2.5/2.6 kernels, #17241 -solar-use-fork.diff - -# speedup object movement -speed-lang-cache.diff - -# speedup string compares #29154 -speed-sal-string.diff - -# speedup status notifications -speed-status-bar.diff - -# Sensitize show in row/col depending on the selection #24137 -sc-show-sensitize.diff - -# Fix mind-mangled evo. addressbook path #26309 -evo-addrbook.diff - -# Fix disable java problem #27746 -disable-java.diff - -# Fix non-java build #31778 -java-build.diff - -# Fix build with IBM Java, version 1.4, #32524 -java_build_with_ibm_1_4.diff - -# If Java is enabled, ship the XSLT (docbook etc.) bits -java-use-xslt-filters.diff - -# The blackdown .debs put the JDK in /usr/lib/j2se/1.4 -java-path-blackdown.diff - -# this is so brain damaged - guess a number/bitfield ... -doc-defaults.diff - -# Allow the document to be re-titled to "" in properties #22340 -doc-retitle.diff - -# be a bit helpful ... #8581 -debug-appinit.diff - -# tweak Gtk+ theming a little -# #28798 for the getstyle-gnome bit -gtk-themeing.diff - -# prevent control characters from being included in the -# reason_phrase field filled in by ne_parse_statusline(), and in -# the session error string, #30051 -neon-control-characters.diff - -# Fix svtools build dependencies #28379 -build-svtools-dep.diff - -# Add an ooo-build version in ProductExtension -version-strike.diff - -# Make officecfg parallel-build safe -officecfg-parallel-build-fix.diff - -# dlopen libcrypt.so.1 / libpam.so.0, not librypt.so / libpam.so, #31187 -security-sonames.diff - -# do not pack any potential .orig files with ppds -psprint_config-no-orig.diff - -# make libsal v8 on sparc, #30774 -sparc-v8-fixes.diff - -# fix lingucomponent memleaks, #30486 -lingucomponent-memleaks.diff - -# prompt for save options - X#62182, #33686 -gui-interop-warnings.diff - -# fix updating symlinks; the symlink must be removed before it is replaced [X#66902] -setup2-update-symlink.diff - -[ ODKFixes ] - -# Fix ODK Java bits -odk-java-wizpanel.diff - -[ IconRender ] - -# add support for 32-bit bitmaps and icons. -bmp32.diff -# Transfer alpha masks around -icon-render.diff -# Make insensitive icons look pleasant -gui-insensitive.diff -# high quality interpolate for tbx button selector -gui-tbxcust.diff -# image loading needs to split off the alpha mask -gui-image-load.diff -# fix some broken icon compositing foo #20470 -icon-masks.diff -# Compositing fixes for alpha bg's - some (functional) hacks -gui-icon-composite.diff -gui-tbx-ctrl-bg.diff -# Fix htmltoolbar image alpha -gui-alpha-hypertoolbar.diff - -# replace uber-ugly symbols with corresponding images -# gui-symbol-replace.diff - -# make the toolbox separators look saner, mouseover triangles -# resize & make set large icons as the default. -# Make tri-states look un-pressed - don't confuse the clients -# Don't draw uber-ugly prelight mess -gui-toolbox.diff -gui-toolbox-large-icons.diff -gui-toolbox-tristate.diff -gui-toolbox-prelight.diff - -[ FontBits ] - -# Don't bloat the ruler et. al. at larger font sizes #22098 -gui-scale-ruler.diff - -# Fully destroy resolution adaptive DPI scaling -gui-font-scale.diff - -gui-font-antialias-size.diff -# undo some horrible mistake #16682 -gui-font-size-unbreak.diff - -# Default font size of 8pt is too small -gui-font-default-size.diff - -# Get KDE font weight and size, and use menuFont for menus -gui-fonts-kde.diff - -# These are not included in the OOO_STABLE_1 build -# - Use the new Freetype API -# - Use the hinting parameters that we use in the rest of the desktop -gui-ft-21-compat.patch -gui-ft-set-hint.patch - -[ Misc ] - -# fallback to the lang used for menu if we don't have the language -# requested by LC_MESSAGES; utlimate fallback to the English help, #32505 -help-fallback.diff - -# Fix some keybindings -gui-keybindings.diff - -# Don't clutter us with dialogs at startup -gui-startup-declutter.diff - -# Always throw up a new window when we ask for one, -# instead of brokenly re-using old ones #19712 -# Don't do a 'raise' after load: #19976 -# Disable for now - causes grief with multi-displays etc. pending #19976 -# gui-appear.diff - -# Try and make the installer slightly wise to [OO]DESTDIR # 12781 -inst-destdir.diff - -# Improve ergonomics of slide / sheet rename #21659 -gui-rename-dlg.diff - -# Make the default writer bullet larger #21829 -sw-default-bullet.diff - -# Fix loads of styles re-import crasher #26550 -sw-ms-fmt-import.diff - -# Fix unicode export to Word95 #33074 -sw-export-word95.diff - -# Dramatically improve MS import / export cf. #8276 et. al. -ms-filter-convert.diff - -# A bullet is not a field - at least in MS land it isn't #21916 -sw-bullet-not-field.diff - -# The world need not see that I can't spell #21440 -sd-export-no-spell-check.diff - -# Save as menuitem for image context menus in impress #13816 gnome #127556 -sd-save-image-context-menu.diff - -# mozilla wrapper as complement to nswrapper..., #29514 -desktop-mozwrapper.diff - -# Knock 50ms+ off pagein time #23350 -pagein-speedup.diff - -# I'm assured this is faster #24997 -pagein-speedup-2.diff - -# disable the check box 'Tools/Options/OpenOffice.org/General/Document Status/Printing -# sets "document modified" status' by default, #15395 -print-do-not-change-document.diff - -[ GnomeVFS ] - -# New VFS provider stuff .. -vfs-offapi.diff -vfs-provider.diff -vfs-content.diff -vfs-directory.diff -vfs-stream.diff -vfs-uno-register.diff -vfs-ucp-setup.diff -vfs-uno-uri.diff - -[ Misc ] -# Some of the new help & other icons we need -gui-new-icons.diff - -[ MenuFixes ] - -# Fix menu bloat / icon rendering / layout issues #17937 -gui-menu-fixes.diff -# Use rendered images for check boxes instead of ugly symbols -gui-menu-check-images.diff -gui-menu-check-render.diff -# Fix menu checkitems, disable rendering of icons when the items unchecked #17937 -gui-menu-checkitems.diff - -[ Misc ] -# fix 'new' button sizing #15208 -gui-tbx-new-size.diff - -# Dialog remembers file save path, type & stores type right #17967 -print-dialog.diff - -[ FontBits ] - -# Disable X font usage (and horrific aliasing) completely -gui-font-fontconfig-only.diff - -# disable font management dialog in padmin -padmin-nofontconfig.diff - -# fix some brokenness with font sync settings #15507, #16683 -gui-ft-use-system-font.diff - -[ NovellOnly, RedHatOnly, PLDOnly ] -# Disable broken crashdialog bits -module-buildset-crashrep.diff - -[ GlobalDesktopFiles ] -# DebianOnly: we use the generated desktop files by moving them to -# the right place in the filesystem -# RH: we also use generated KDE desktop files and mime-types -# don't install duff / ugly KDE/Gnome integration bits -user-desktop-install.diff - -# still install the wrapper "fromtemplate", it is needed for SUSE at least -fromtemplate-wrapper-install.diff - -[ Misc ] - -# stop the user having to fight ooimpress constantly -capitalization.diff - -# warn the user about printer errors #17966 -print-error.diff - -# Add 'Word count' to the Tools menu - i18n issues ? #17964 -word-count.diff - -# Replace the Zoom icon with a Combo box in toolbars #11354 -zoom-combobox.diff - -# Hide the URI box -gui-toolbox-cleanup.diff - -# Make the delete key happy again in starcalc #17965 - wontfix [!] -gui-sc-delete.diff - -# Don't build simply huge language specific sets -build-lang-no-pack.diff - -# Try to get the font mapping right -gui-metric-fonts.diff -# Describe the metric compatible fonts for export mappings -gui-metric-fonts-descr.diff -# Use 'Andy' after comicsansms, before kidprint -font-andy.diff - -# use 'OOO_MS_DEFAULTS' to turn on MS compatible export as default -app-compatible.diff - -# Translate File->New, ->Wizard menus when using langpacks #20537 -gui-menu-new-wizard-translations.diff - -[ RecentFiles ] - -# Add support for the freedesktop.org ~/.recently-used spec. #24253 -recent-files.diff - -[ NovellOnly, MinimalOnly, RedHatOnly, PLDOnly ] -# This needs binning in favour of the debian version I think. -build-instsetoo-lang.diff - -[ DebianOnly ] -# Temporary until above patch adapted for DebianOnly's needs -build-instsetoo-langext.diff - -[ i18n ] - -# Use the environment to determine locale #21191 -i18n-sal.diff -i18n-rehash.diff - -#18157 -i18n-cleanup.diff - -# package hungarian help, #29528 -hungarian-help.diff - -# build bindi and thai stuff -i18n-build-hindi-thai.diff - -# add translations to sysui and remove bogus ones, #28201 -sysui-translations.diff - -# shrink exported ISO_8859_2 & MS_1250 html -# most people will use UTF-8 and never see this, #19514 -html-8bit-export-shrink.diff - -# fix calc .lng file encoding for lang 03, #29504 -i18n-calc-encoding.diff - -# Fix silly brokenness in langtab lists - #18826 -translation-shift.diff - -[ SystemBits ] - -# use system db. 23779 -system-db.diff -# use system curl, 23779 -system-curl.diff -# use system sane.h, 23779 -system-sane.diff -# use system myspell, 23779 -system-myspell.diff -# use system altlinuxhyph, 23779 -system-altlinuxhyph.diff -# use system neon, 23779 -system-neon.diff -# use system xrender -system-xrender.diff -# use system freetype, 23779, 29765 -system-freetype.diff -# use system unixODBC headers, 23779 -system-unixodbc.diff -# use system python, not yet complete -system-python.diff -# disable FontOOo if we want and build with system mspack -disable-fontooo.diff -disable-msfontextract-build.diff -system-mspack.diff - -[ BuildBits ] -# add --without-fonts, --with-python, --disable-rpath, -# --enable-mozilla, --enable-fontconfig, --with-system-{zlib,nas,db,freetype} -# config switches #21920, #23779 -config-switches.diff - -# add --without-myspell-dictionaries, #29937 -disable-myspell-dicts.diff - -# update aclocal, for AM_PATH_PYTHON -config-aclocal.diff - -# Disable old installation language comparison when upgrading -setup-no-langcheck.diff - -# do not extract vera fonts when we don't want them :-) -disable-vera-extraction.diff - -# Fix the splash to not screwup on redraw #19646 -gui-splash-redraw.diff - -# Don't let the splash screen take over #23609 -no-splash-takeover.patch - -[ Misc ] - -# Icu was patched to include rpath - remove it. -icu-no-rpath.diff - -# Improve the web bullet export / export to png not gif. #23353 -sd-export-html-theme.diff -sd-export-html.diff -sd-export-html-translations.diff -sd-export-html-descr.diff - -# Fix the nasty default palette sizing #19158 -gui-tbx-palette.diff - -# Don't die with some strange incoming scp #19496 -crash-mapmode.diff - -# don't crash re-configuring the status bar #31837 -crash-statusbar.diff - -# Fix doc load crasher X#59373, #27243 -crash-sw-import.diff - -# Fix .doc import crasher #29731 -crash-sw-redline.diff - -# Fix impress spellcheck #32320 -crash-sd-spellcheck.diff - -# Fix doc load crasher X#59375 -sw-crash-fix.diff - -# Fix doc load crasher X#64030 -sw-import-crash.diff - -# Fix checkbox field crash #33980 -crash-sw-checkbox-field.diff - -# back-port accelerated bootstrap behavior #8359 -# speed-bootstrap-cache.diff - -# Initialize some values -# cf. #20184 & back-ported from cws_src680_valgrind01 -valgrind-clean.diff - -# Make valgrinding easier -valgrind-alloc.diff - -# Make the scroll-wheel / page popup more sane #20826 -gui-sw-scroll.diff - -# Disable style-list popup on first startup -gui-startup-style.diff - -# Use 'utility' type for floaters - fixes click-on-panel-task-switch bug -wm-dialog-utility.diff - -# Fix some incorrect assumptions about registers (x86-only) -asm-fixes.patch - -# File->New->Spreadsheet freezes on some versions of GCC -svx-freeze-fix.patch - -# Fix silly crash in escher code & improve export - #26747 -crash-escherex.diff - -# fix pyuno for pythons which were compiled with ucs-4 support -pyuno-ucs-4-fixes.diff - -# update pyuno docs from www.oo.o -pyuno-update-docs.diff - -# Make the GUI installer less painful -setup-license.diff - -# Address data source ordering X#62860 -addrbk-datasrc-ordering.diff - -[ LinuxOnly ] - -# do not pack .orig and .bak files to the english help content -helpcontent-no-bak.diff - -# Optimize linkage of some xmlhelp libraries -xmlhelp-optimize-linkage.patch - -# Fix silly security problem - #33357, X#60965 (CAN-2004-0752) -security-tmp-dir.diff - -[ StartupNotification ] - -# Startup notification fixes #18970 -startup-fix.diff - -[ DBFixes ] -# enlarge the mail-merge database view pane - #34297 -db-mail-merge-size.diff -# don't create duplicate table names in SQL - #34306 -db-duplicate-tables.diff - -[ CalcFixes ] -# egregious calc bug fixes - #25883, #25890 -sc-fn-eng.diff -# start of improved value compatibility - #25898 -sc-xl-io.diff -# don't be silly with A1=B2:B2 - #25924 -sc-singleton-intersect.diff -# allow biff dumping - #25430 -sc-biffdump.diff -# csv importing copes with embedded new-lines - X#62446, #32966 -sc-csv-newline.diff -sc-csv-gui.diff -# add 'merge & center' toolbar button - #33126 -sc-merge-cell.diff -# Precision improvements - #22811 -sc-precision-var.diff -sc-precision-skew.diff - -[ VBABits ] - -# Don't split macro files up gratuitously - #26345 -vba-scanner-fix.diff - -# Do a better job of importing Excel macros - #26402, X#64115 -vba-not-comments.diff -vba-sc-import.diff -vba-sc-export.diff - -# Parse (but ignore) VBA attribute statements -vba-attribute.diff - -# Be VBA compatible always at the expense of StarBasic compatibility -vba-compatible.diff - -# Alt-F11 does something useful - #29138 -vba-keybinding-f11.diff - -# Add foreach - #<tocome> -vba-foreach.diff - -# Add bit-shift - #<tocome> -vba-bitshift.diff - -# Export VBA macros - but only to office XP, and that unconditionally -# vba-export.diff -# vba-export-dir.diff - -####################################################### -# Patches applied in limited cases - -[ XineramaPIC ] -# use libXinerama_pic.a on all archs -xinerama-pic-on-all-archs.diff - -[ MinimalOnly ] -# disable odk build since we removed it from the tarball -disable-odk-build.diff - -[ NovellOnly, RedHatOnly ] - -# Use bug buddy -bug-buddy.diff - -[ DebianOnly, NovellOnly, RedHatOnly ] -# Bin nasty bitstream fonts from most (English) mappings -font-de-bitstreamize-en.diff - -# save everything to ~/Documents by default -path-home-documents.diff - -[ OldLibArt ] -# add missing libart functions for older backports -build-use-old-libart.diff - -####################################################### - -[ DebianOnly ] - -# Don't statically link setup to libstlport -stlport-dynamic-link.diff - -# set OOO_DEBUG to strace or gdb soffice.bin -debug-ooo.diff - -# readd LZW code since we originally removed the file from the .orig.tar.gz -readd-lzwc.diff - -# compile msgbox-gnome every time (we have to support ppc, s390, ... too) -# #28798 -compile-msgbox-gnome.diff - -# Debian splashscreen -debian-splash.diff - -# disable odk build since we removed it from the tarball -disable-odk-build.diff - -# use sensible-browser -sensible-browser.diff - -# Blackdown JDK doesn't have _01 version suffix -java-blackdown-ver.diff - -####################################################### - -[ RedHatOnly ] -# Munge default fonts to match Red Hat-shipped ones -#redhat-default-fonts.patch - -# Patch to point gnome-vfs to correct RH OOo icons -redhat-nautilus-icons.patch - -# Red Hat splash screen -redhat-splash.diff - -# Use gnome-open to open URIs -helper-programs-redhat.diff - -# Fix up IIIMF support (RH #124538) -iiimf-multilingual-extension-2-enable.diff - -# hackish system-libstdc++ patch -system-libstdcpp.diff - -# mark the files in share/template/<lang>/wizard/bitmap as lang specific -build-wizard-bitmap-scp.diff - -# Push fonts into the ps stream always -print-type42.diff - -# resolution independant printing bits, #29483 -print-resolution-generic.diff - -# in case the system is panicing; registry/data/org/openoffice/VCL.xcu is -# not installed or broken; used for example if OOo is installed from an -# installation set by ./install --interactive -gui-font-paranoid-fallback.diff - -# Replace "Sun x" colors with "Red Hat x" colors. Sigh. -redhat-standard-colors.diff - - -####################################################### - -[ NLDOnly ] - -# Some branding action -nld-splash.diff - -####################################################### - -[ SUSEOnly ] - -# some branding -suse-splash.diff - -####################################################### - -[ NovellOnly ] - -# Integrate external programs; an attempt to propose a vendor independent solution -# Preset Tools->Options->OpenOffice.org->External -# programs->(HTTP|HTTPS|FTP|MAILTO) to "desktop-launch" -helper-programs.diff - -# Help -> support X65554 -help-support.diff - -# hackish system-libstdc++ patch -system-libstdcpp.diff - -# FIXME: ooo-res seems to be needed only for "Local Installation" -# which is not well supported with multiple localizations anyway -# ooo-res is copied to the really used iso-res by gid_Procedure_Copy_Iso_Res -# this patch updates the procedure to delete the unused ooo-res -# won't be needed in OOo, version 2.0, #28285 -scp-no-ooo-res.diff - -# configure some Japanese fonts used on Novell products -# (patch by Mike Fabian mfabian@suse.de) -# FIXME: We should rename this one to novell-cjk-fonts.diff -novell-japanese-fonts.diff - -####################################################### - -[ NovellOnly, PLDOnly ] - -# mark the files in share/template/<lang>/wizard/bitmap as lang specific -build-wizard-bitmap-scp.diff - -# An hack to install KDE amd Ximian's icons in paralel -# 1) search also the path defined by the variable OOO_PREFERRED_RESOURCE_PATH -# for resource files. This path is preferred over the default one. -# Allows to switch between two versions of resource files at runtime. -# 2) add one more default path for resources (program/resource.default) -# This allows to make a symlink to the default resource path which is different -# from the original resource path. It is needed to allow update of RPM packages. -# RPM is not able to replace a directory with the symlink within an update. -resmgr-resource-path.diff - -# Push fonts into the ps stream always -print-type42.diff - -# resolution independant printing bits, #29483 -print-resolution-generic.diff - -# in case the system is panicing; registry/data/org/openoffice/VCL.xcu is -# not installed or broken; used for example if OOo is installed from an -# installation set by ./install --interactive -gui-font-paranoid-fallback.diff - -####################################################### - -[ PLDOnly ] - -# splash -pld-splash.diff - -####################################################### -[ ArkOnly ] - -# splash / branding -ark-splash.diff - -# hackish system-libstdc++ patch -system-libstdcpp.diff - -####################################################### -[ Win32Only ] - -# A number of nasty VS.Net 2003 fixes #27980 -win32-msvs-2003-configure.diff -win32-msvs-2003-misc.diff -win32-msvs-2003-misc2.diff -win32-msvs-2003-misc3.diff -win32-msvs-2003-vclplug.diff - -# Build berkeleydb with dmake not crack-rock-make #27400 -win32-berkeleydb-toplevel.diff -win32-berkeleydb-make-patch.diff - -# Odd sj2 / sjlib behavior on Win32 - badly fitted for no-java too. -win32-sjlib.diff - -# libart on win32 hack - needs scp support -win32-libart-build.diff -win32-internal-libart.diff - -# Stephan's fixes from alphaart cws - should be merged with above patches -win32-bmp32-ssa-fixes.diff - -# Accelerate / cache DIB creation ( don't keep doing it ) -win32-bmp32-speedup.diff - -# Disable odk build -disable-odk-build.diff - -# Novell splash - prolly belongs in a NovellWin32Only section but ... -novell-splash.diff - -# A number of nasty MSVC6 fixes -win32-sd-vc6.diff - -# This is a pretty nasty IE problem #19510 -win32-activex-disable.diff - -# Misc. fixes for java disabled on win32 -win32-nojava.diff - -# ODMA support, back-ported from HEAD -win32-odma.diff -win32-odma-build.diff - -# Scott Clayton's fixes for recent G/W development #32741 -win32-odma-gw-fix.diff - -# Novell internal support / file-bug page -novell-filebug.diff - -# Try to trace some strange bug in this -win32-stlport-build.diff - -# Fix alpha cut/paste problem -win32-transfer-alpha.diff - -# Work around stupidity in GW #34264 -win32-gw-send-mail.diff - -####################################################### - -[ Win32BinConvertDSW ] -# Attempt to work around ICU evilness ... -# Not-yet-functional, but desirable: -win32-icu-config.diff -win32-icu-make.diff -win32-icu-build.diff - -[ TestGtkIntegration ] -# Glib / gtk+ integration -glib-integration.diff -gtk-integration-salinst.diff -gtk-integration-saldata.diff -gtk-integration-saldisp.diff - -####################################################### - -[ Evo2 ] -# evolution addressbook driver version 2 -connectivity-source-drivers-evoab1-5-dataaccess-xcu.diff -connectivity-source-drivers-evoab1-5-evoab1-5-map.diff -connectivity-source-drivers-evoab1-5-evoab-xml.diff -connectivity-source-drivers-evoab1-5-makefile-mk.diff -connectivity-source-drivers-evoab1-5-nconnection-cxx.diff -connectivity-source-drivers-evoab1-5-nconnection-hxx.diff -connectivity-source-drivers-evoab1-5-ndatabasemetadata-cxx.diff -connectivity-source-drivers-evoab1-5-ndatabasemetadata-hxx.diff -connectivity-source-drivers-evoab1-5-ndebug-cxx.diff -connectivity-source-drivers-evoab1-5-ndebug-hxx.diff -connectivity-source-drivers-evoab1-5-ndriver-cxx.diff -connectivity-source-drivers-evoab1-5-ndriver-hxx.diff -connectivity-source-drivers-evoab1-5-npreparedstatement-cxx.diff -connectivity-source-drivers-evoab1-5-npreparedstatement-hxx.diff -connectivity-source-drivers-evoab1-5-nresultset-cxx.diff -connectivity-source-drivers-evoab1-5-nresultset-hxx.diff -connectivity-source-drivers-evoab1-5-nresultsetmetadata-cxx.diff -connectivity-source-drivers-evoab1-5-nresultsetmetadata-hxx.diff -connectivity-source-drivers-evoab1-5-nservices-cxx.diff -connectivity-source-drivers-evoab1-5-nstatement-cxx.diff -connectivity-source-drivers-evoab1-5-nstatement-hxx.diff -connectivity-source-drivers-evoab1-5-ncatalog-cxx.diff -connectivity-source-drivers-evoab1-5-ncatalog-hxx.diff -connectivity-source-drivers-evoab1-5-ntables-cxx.diff -connectivity-source-drivers-evoab1-5-ntables-hxx.diff -evoab2_default.diff -evoab2_prj.diff -evoab2_scp.diff - -####################################################### - -[ Lotus ] -# detect SmartSuite97 files -sc-lotus-filter.diff -# read basics from SmartSuite97 files -sc-lotus-code.diff - -####################################################### - -[ WordPerfect ] -wpd-scp.diff -wpd-win32.diff -wpd-sw-prj.diff -wpd-sw-iodetect.diff -wpd-officecfg-typedetection.diff -libwpd-makefile-mk.diff -libwpd-prj-d-lst.diff -libwpd-prj-build-lst.diff -writerperfect-prj-d-lst.diff -writerperfect-prj-build-lst.diff -writerperfect-source-filter-documentelement-cxx.diff -writerperfect-source-filter-documentelement-hxx.diff -writerperfect-source-filter-filterinternal-hxx.diff -writerperfect-source-filter-fontmap-cxx.diff -writerperfect-source-filter-fontmap-hxx.diff -writerperfect-source-filter-fontstyle-cxx.diff -writerperfect-source-filter-fontstyle-hxx.diff -writerperfect-source-filter-genericfilter-cxx.diff -writerperfect-source-filter-liststyle-cxx.diff -writerperfect-source-filter-liststyle-hxx.diff -writerperfect-source-filter-makefile-mk.diff -writerperfect-source-filter-pagespan-cxx.diff -writerperfect-source-filter-pagespan-hxx.diff -writerperfect-source-filter-sectionstyle-cxx.diff -writerperfect-source-filter-sectionstyle-hxx.diff -writerperfect-source-filter-style-hxx.diff -writerperfect-source-filter-tablestyle-cxx.diff -writerperfect-source-filter-tablestyle-hxx.diff -writerperfect-source-filter-textrunstyle-cxx.diff -writerperfect-source-filter-textrunstyle-hxx.diff -writerperfect-source-filter-wordperfectcollector-cxx.diff -writerperfect-source-filter-wordperfectcollector-hxx.diff -writerperfect-source-filter-wordperfectimportfilter-cxx.diff -writerperfect-source-filter-wordperfectimportfilter-hxx.diff -writerperfect-source-filter-writerproperties-hxx.diff -writerperfect-source-stream-makefile-mk.diff -writerperfect-source-stream-wpxsvstream-cxx.diff -writerperfect-source-stream-wpxsvstream-h.diff -writerperfect-util-makefile-mk.diff -writerperfect-util-wpft-map.diff - -######################################################## - -[ KDEOnly ] -# Some "branding" -kde-splash.diff - -######################################################## - -[ KDEOnly, PLDOnly ] -# Preset Tools->Options->OpenOffice.org->External -# programs->(HTTP|HTTPS|FTP|MAILTO) to "kfmclient exec" -helper-programs-kde.diff - -######################################################## - -[ KDECommon, NovellOnly ] -# Allow parameters in Tools->Options->OpenOffice.org->External -# programs->(HTTP|HTTPS|FTP|MAILTO) - #28720 -shellexec_allow_params.diff - -######################################################## - -[ TestLayout ] -# the beginnings of layout -gui-window-layout.diff -gui-control-layout.diff -# the ends of layout -layout-ids.diff -layout-rsc.diff -layout-vcl-layout.diff -layout-vcl-window.diff -layout-test.diff diff --git a/patches/OOO_1_1_2/config-switches.diff b/patches/OOO_1_1_2/config-switches.diff deleted file mode 100644 index f23efdfda..000000000 --- a/patches/OOO_1_1_2/config-switches.diff +++ /dev/null @@ -1,655 +0,0 @@ -Index: config_office/configure.in -=================================================================== ---- config_office/configure.in.orig 2004-08-14 01:19:26.245183120 +0200 -+++ config_office/configure.in 2004-08-14 01:22:21.372559712 +0200 -@@ -97,6 +97,68 @@ AC_ARG_ENABLE(kde, - - Usage: --enable-kde - ],,) -+AC_ARG_WITH(system-nas, -+[ --with-system-nas Use nas already on system -+],,) -+AC_ARG_WITH(system-freetype, -+ --with-system-freetype Use freetype already on system -+],,) -+AC_ARG_WITH(system-db, -+[ --with-system-db Use berkeleydb already on system -+],,) -+AC_ARG_WITH(db-version, -+[ --with-db-version=VERSION Specify db version manually ], -+[ DB_VERSION="$withval" -+ DB_VERSION_MAJOR=$(echo $DB_VERSION | cut -d"." -f1) -+]) -+AC_ARG_WITH(db-jar, -+[ --with-db-jar=JARFILE Specify path to jarfile manually ], -+[ DB_JAR="$withval" -+]) -+AC_ARG_WITH(system-sane, -+[ --with-system-sane-headers Use sane.h already on system -+],,) -+AC_ARG_WITH(system-x11ext, -+[ --with-system-x11-extensions-headers Use X11 extensions headers on system -+],,) -+AC_ARG_WITH(system-unixodbc, -+[ --with-system-unixodbc-headers Use unixODBC headers on system -+],,) -+AC_ARG_WITH(system-curl, -+[ --with-system-curl Use curl already on system -+],,) -+AC_ARG_WITH(system-myspell, -+[ --with-system-myspell Use myspell already on system -+],,) -+AC_ARG_WITH(system-altlinuxhyph, -+[ --with-system-altlinuxhyph Use altlinuxhyph already on system -+],,) -+AC_ARG_WITH(system-neon, -+[ --with-system-neon Use system neon 0.23.x -+],,) -+AC_ARG_WITH(system-xrender, -+[ --with-system-xrender Use system Xrender -+],,) -+AC_ARG_WITH(system-libs, -+[ --with-system-libs Use libs already on system (enables all -+ --with-system-* (_not_ -headers) -+],,) -+AC_ARG_WITH(myspell-dicts, -+[ --without-myspell-dicts Removes myspell dictionaries from openoffice.org -+ installation set, for people building for specific -+ distributions where the myspell dictionaries are -+ installed from other sources -+],,) -+AC_ARG_ENABLE(fontconfig, -+[ --enable-fontconfig Enables the use of fontconfig -+],,) -+AC_ARG_ENABLE(fontooo, -+[ --disable-fontooo Disables FontOOo -+ (useful for distributions using fontconfig for OOo) -+],,enable_fontooo="yes") -+AC_ARG_WITH(system-mspack, -+[ --with-system-mspack Use libmspack already on system -+],,) - AC_ARG_WITH(stlport4-home, - [ --with-stlport4-home The location that STLport4 is installed in. The STL - header files are assumed to be in stlport4-home/stlport -@@ -138,6 +200,12 @@ AC_ARG_WITH(perl-home, - - Usage: --with-perl-home=<absolute path to Perl 5 home> - ],,) -+AC_ARG_WITH(python, -+[ --with-python If you want to use the Python on your system, instead of -+ the internal version included in the source, use this flag. -+ -+ Usage: --with-python[=path-to-python] -+],,) - AC_ARG_WITH(cl-home, - [ --with-cl-home For Windows NT users, please supply the path - for the Microsoft C/C++ compiler. -@@ -869,16 +937,11 @@ if test "$_os" != "WINNT" -o "$WITH_MING - fi - - dnl =================================================================== --dnl Check if pam-appl.h is available on Linux or FreeBSD -+dnl Check if pam_appl.h is available on Linux or FreeBSD - dnl =================================================================== - if test "$_os" = "Linux" -o "$_os" = "FreeBSD" -o "$_os" = "GNU"; then -- AC_MSG_CHECKING([pam_appl.h]) -- if test -f "/usr/include/security/pam_appl.h"; then -- AC_MSG_RESULT([yes]) -- else -- AC_MSG_WARN([pam_appl.h could not be found in /usr/include/security]) -- echo "pam_appl.h could not be found in /usr/include/security" >> warn -- fi -+ AC_CHECK_HEADER(security/pam_appl.h, [], -+ [AC_MSG_ERROR([pam_appl.h could not be found. libpam-dev missing?])], []) - fi - - dnl =================================================================== -@@ -1321,6 +1384,8 @@ dnl Check whether there's a C++ pre-proc - if test "$_os" = "Linux" -o "$_os" = "FreeBSD" -o "$_os" = "NetBSD" ; then - AC_PROG_CXXCPP - fi -+#AC_SUBST(CPP) -+#AC_SUBST(CXXCPP) - - dnl =================================================================== - dnl Check whether xmkmf program can be used, x systems only -@@ -1420,6 +1485,183 @@ fi - AC_SUBST(SYSTEM_ZLIB) - - dnl =================================================================== -+dnl Check for system python -+dnl =================================================================== -+AC_MSG_CHECKING([which python to use]) -+if test -n "$with_python"; then -+ AC_MSG_RESULT([external]) -+ if test "$with_python" != "yes"; then -+ PYTHON="$with_python" -+ fi -+ AM_PATH_PYTHON([2.2]) -+ -+ py_prefix=`$PYTHON -c "import sys; print sys.prefix"` -+ py_exec_prefix=`$PYTHON -c "import sys; print sys.exec_prefix"` -+ -+ PYTHONHOME="$py_prefix" -+ PYTHON_CFLAGS="-I$py_prefix/include/python$PYTHON_VERSION" -+ if test "$py_prefix" != "$py_exec_prefix"; then -+ PYTHONHOME="$PYTHONHOME:$py_exec_prefix" -+ PYTHON_CFLAGS="$PYTHON_CFLAGS -I$py_exec_prefix/include/python$PYTHON_VERSION" -+ fi -+ save_CPPFLAGS="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS $PYTHON_CFLAGS" -+ AC_CHECK_HEADER(Python.h, [], -+ [AC_MSG_ERROR(Python.h not found. Install python headers/development package.)], []) -+ CPPFLAGS="$save_CPPFLAGS" -+ -+ PYMAJOR=$($PYTHON -c "import sys; print sys.version_info[[0]]") -+ PYMINOR=$($PYTHON -c "import sys; print sys.version_info[[1]]") -+ PYMICRO=$($PYTHON -c "import sys; print sys.version_info[[2]]") -+ PYVERSION=$($PYTHON -c "import sys; print '%d.%d.%d' % sys.version_info[[:3]]") -+else -+ AC_MSG_RESULT([internal]) -+ SCPDEFS="$SCPDEFS -DWITH_PYTHON" -+fi -+AC_SUBST(PYTHON) -+AC_SUBST(PYTHONHOME) -+AC_SUBST(PYTHON_CFLAGS) -+AC_SUBST(PYMAJOR) -+AC_SUBST(PYMINOR) -+AC_SUBST(PYMICRO) -+AC_SUBST(PYVERSION) -+ -+dnl =================================================================== -+dnl Check for system db -+dnl =================================================================== -+AC_MSG_CHECKING([which db to use]) -+if test -n "$with_system_db" -o -n "$with_system_libs"; then -+ SYSTEM_DB=YES -+ AC_MSG_RESULT([external]) -+ if test -z $DB_VERSION && test -z $DB_VERSION_MAJOR; then -+ AC_CHECK_FILE(/usr/lib/libdb_cxx.so, [], -+ [AC_MSG_ERROR(no. install db)]) -+ # (almost) all db packages (rpm/deb) I saw have this link pointing to -+ # libdb-cxx_X.so where X is the first two digits of the db version .. -+ # and because of that two versions cannot be installed at the same time.. -+ DB_VERSION=$(readlink /usr/lib/libdb_cxx.so \ -+ | $SED -e s/libdb_cxx-// | $SED -e s/\.so//) -+ DB_VERSION_MAJOR=$(echo $DB_VERSION | cut -d"." -f1) -+ fi -+ AC_MSG_CHECKING([which db version to use]) -+ AC_MSG_RESULT(db$DB_VERSION_MAJOR version $DB_VERSION) -+ AC_LANG(C++) -+ AC_CHECK_HEADER(db_cxx.h, [ DB_INCLUDES=/usr/include ], -+ [ -+ CFLAGS=-I/usr/include/db$DB_VERSION_MAJOR -+ AC_CHECK_HEADER(db$DB_VERSION_MAJOR/db_cxx.h, -+ [ DB_INCLUDES=/usr/include/db$DB_VERSION_MAJOR ], -+ [ AC_MSG_ERROR(no. install the dbDB_VERSION_MAJOR libraries) ], [] -+ ) -+ ], [] -+ ) -+ if test "$enable_java" != "no"; then -+ if test -z $DB_JAR; then -+ # three different naming methods *grumble* Are there even more? -+ AC_CHECK_FILE(/usr/share/java/db.jar, [ JARVER=0 ], -+ [ -+ AC_CHECK_FILE(/usr/share/java/db-$DB_VERSION.jar, [ JARVER=1 ], -+ [ AC_CHECK_FILE(/usr/share/java/libdb$DB_VERSION-java.jar, -+ [ JARVER_LONGSTYLE=1 ], -+ [ AC_MSG_ERROR(db$DB_VERSION_MAJOR Java bindings not found)] -+ ) -+ ] -+ ) -+ ] -+ ) -+ if test "$JARVER" = "1"; then -+ DB_JAR=jar-$DB_VERSION.jar -+ else -+ DB_JAR=db.jar -+ fi -+ if test "$JARVER_LONGSTYLE" = "1"; then -+ DB_JAR=libdb$DB_VERSION-java.jar -+ fi -+ fi -+ fi -+ SCPDEFS="$SCPDEFS -DSYSTEM_DB" -+else -+ AC_MSG_RESULT([internal]) -+ SYSTEM_DB=NO -+ DB_VERSION=$(ls -1 ../berkeleydb/download/db* \ -+ | $SED -e s,\.\./berkeleydb/download/db-,, | $SED -e s,\.tar\.gz,, \ -+ | cut -d"." -f1,2) -+ DB_VERSION_MAJOR=$(echo $DB_VERSION | cut -d"." -f1) -+ DB_JAR=db.jar -+fi -+SCPDEFS="$SCPDEFS -DDB_VERSION=$DB_VERSION" -+AC_SUBST(SYSTEM_DB) -+AC_SUBST(DB_INCLUDES) -+AC_SUBST(DB_VERSION) -+AC_SUBST(DB_VERSION_MAJOR) -+AC_SUBST(DB_JAR) -+AC_SUBST(SCPDEFS) -+ -+dnl =================================================================== -+dnl Check for system neon -+dnl =================================================================== -+AC_MSG_CHECKING([which neon to use]) -+if test -z "$without_system_neon"; then -+ if test -n "$with_system_neon" -o -n "$with_system_libs"; then -+ AC_MSG_RESULT([external]) -+ AC_PATH_PROG(NEON_CONFIG, neon-config, no) -+ AC_MSG_CHECKING([whether neon version is 0.23.x]) -+ # check whether we have 0.23.x. 0.24.x is API-incompatible.... -+ NEON_VER=$($NEON_CONFIG --version | $AWK '{print $2}' \ -+ | cut -d"." -f1,2) -+ if test "$NEON_VER" = "0.23"; then -+ AC_MSG_RESULT([yes]) -+ SYSTEM_NEON=YES -+ NEON_CFLAGS="$($NEON_CONFIG --cflags) -DSYSTEM_NEON -DUSE_DAV_LOCKS=1" -+ NEON_LIBS=$($NEON_CONFIG --libs) -+ else -+ AC_MSG_ERROR([no. neon 0.24.x is API-incompatible. use 0.23.x]) -+ fi -+ else -+ AC_MSG_RESULT([internal]) -+ SYSTEM_NEON=NO -+ NEON_LIBS=-lneon -+ NEON_CFLAGS= -+ fi -+else -+ AC_MSG_RESULT([internal]) -+ SYSTEM_NEON=NO -+ NEON_LIBS=-lneon -+ NEON_CFLAGS= -+fi -+AC_SUBST(SYSTEM_NEON) -+AC_SUBST(NEON_LIBS) -+AC_SUBST(NEON_CFLAGS) -+ -+dnl =================================================================== -+dnl Check for system sane -+dnl =================================================================== -+AC_MSG_CHECKING([which sane.h to use]) -+if test -n "$with_system_sane_headers"; then -+ AC_MSG_RESULT([external]) -+ SYSTEM_SANE_H=YES -+ AC_CHECK_HEADER(sane/sane.h, [], -+ [AC_MSG_ERROR(sane.h not found. install the sane headers)], []) -+else -+ AC_MSG_RESULT([internal]) -+fi -+AC_SUBST(SYSTEM_SANE_H) -+ -+dnl =================================================================== -+dnl Check for system unixODBC -+dnl =================================================================== -+AC_MSG_CHECKING([which unixODBC headers to use]) -+if test -n "$with_system_unixodbc_headers"; then -+ AC_MSG_RESULT([external]) -+ SYSTEM_UNIXODBC_H=YES -+ AC_CHECK_HEADER(sqlext.h, [], -+ [AC_MSG_ERROR(unixODBC's aqlext.h not found. install the headers)], []) -+else -+ AC_MSG_RESULT([internal]) -+fi -+AC_SUBST(SYSTEM_UNIXODBC_H) -+ -+dnl =================================================================== - dnl Check whether the gtk 2.0 libraries are available. - dnl =================================================================== - if test -n "$ENABLE_CRASHDUMP" ; then -@@ -1431,6 +1673,101 @@ if test -n "$ENABLE_CRASHDUMP" ; then - fi - - dnl =================================================================== -+dnl Check whether we want to use fontconfig and if the library is -+dnl available. -+dnl =================================================================== -+AC_MSG_CHECKING([whether to use fontconfig]) -+if test -n "$enable_fontconfig"; then -+ AC_MSG_RESULT([yes]) -+ PKG_CHECK_MODULES( FONTCONFIG, fontconfig >= 1.0.1 ) -+ FONTCONFIG_FONTS=YES -+else -+ AC_MSG_RESULT([no]) -+ FONTCONFIG_FONTS=NO -+fi -+AC_SUBST(FONTCONFIG_FONTS) -+AC_SUBST(FONTCONFIG_LIBS) -+ -+dnl =================================================================== -+dnl Check for system freetype -+dnl =================================================================== -+AC_MSG_CHECKING([which freetype to use]) -+if test -n "$with_system_freetype" -o -n "$with_system_libs"; then -+ AC_MSG_RESULT([external]) -+ SYSTEM_FREETYPE=YES -+ USE_FREETYPE_CONFIG=NO -+ PKG_CHECK_MODULES( FREETYPE, freetype2, -+ [ USE_FREETYPE_CONFIG=NO ], -+ [ -+ AC_PATH_PROG( FREETYPE_CONFIG, freetype-config ) -+ if test -f "$FREETYPE_CONFIG"; then -+ USE_FREETYPE_CONFIG=YES -+ fi -+ ] -+ ) -+ if test "$USE_FREETYPE_CONFIG" = "YES"; then -+ FREETYPE_LIBS=$(freetype-config --libs) -+ FREETYPE_CFLAGS=$(freetype-config --cflags) -+ fi -+ SCPDEFS="$SCPDEFS -DSYSTEM_FREETYPE" -+else -+ AC_MSG_RESULT([internal]) -+ SYSTEM_FREETYPE=NO -+fi -+AC_SUBST(SYSTEM_FREETYPE) -+AC_SUBST(FREETYPE_LIBS) -+AC_SUBST(FREETYPE_CFLAGS) -+AC_SUBST(SCPDEFS) -+ -+dnl =================================================================== -+dnl Check for system myspell -+dnl =================================================================== -+AC_MSG_CHECKING([which myspell to use]) -+if test -n "$with_system_myspell" -o -n "$with_system_libs"; then -+ AC_MSG_RESULT([external]) -+ SYSTEM_MYSPELL=YES -+ PKG_CHECK_MODULES( MYSPELL, myspell, -+ [ MYSPELL_PKGCONFIG=YES ], -+ [ -+ AC_CHECK_HEADER(myspell/myspell.hxx, [], -+ [AC_MSG_ERROR(myspell headers not found.)], []) -+ MYSPELL_CFLAGS=-I/usr/include/myspell -+ AC_LANG(C++) -+ AC_CHECK_LIB(myspell, main, [], -+ [ AC_MSG_ERROR(myspell library not found.) ], []) -+ MYSPELL_LIBS=-lmyspell -+ ] -+ ) -+else -+ AC_MSG_RESULT([internal]) -+ SYSTEM_MYSPELL=NO -+ MYSPELL_LIBS=-lmyspell -+fi -+AC_SUBST(SYSTEM_MYSPELL) -+AC_SUBST(MYSPELL_CFLAGS) -+AC_SUBST(MYSPELL_LIBS) -+ -+dnl =================================================================== -+dnl Checking for altlinuxhyph -+dnl =================================================================== -+AC_MSG_CHECKING([which altlinuxhyph to use]) -+if test -n "$with_system_altlinuxhyph" -o -n "$with_system_libs"; then -+ AC_MSG_RESULT([external]) -+ SYSTEM_HYPH=YES -+ AC_CHECK_HEADER(hyphen.h, [], -+ [ AC_MSG_ERROR(altlinuxhyph headers not found.)], []) -+ AC_CHECK_MEMBER(struct _HyphenDict.cset, [], -+ [ AC_MSG_ERROR(no. You are sure you have altlinuyhyph headers?)], -+ [#include <hyphen.h>]) -+ AC_CHECK_LIB(hyph, hnj_hyphen_hyphenate, [], -+ [ AC_MSG_ERROR(altlinuxhyph library not found.)], []) -+else -+ AC_MSG_RESULT([internal]) -+ SYSTEM_HYPH=NO -+fi -+AC_SUBST(SYSTEM_HYPH) -+ -+dnl =================================================================== - dnl Checks for libraries. - dnl =================================================================== - dnl Check for Mac OS X native GUI, which may be used instead of X11. -@@ -1917,6 +2254,182 @@ AC_SUBST(WITH_FONTS) - AC_SUBST(SCPDEFS) - - dnl =================================================================== -+dnl =================================================================== -+dnl Check whether to build with system XRender -+dnl =================================================================== -+AC_MSG_CHECKING([whether to use system XRender]) -+if test -n "$with_system_xrender"; then -+ AC_MSG_RESULT([yes]) -+ SYSTEM_XRENDER=YES -+ AC_CHECK_LIB(Xrender, XRenderQueryVersion, [], -+ [AC_MSG_ERROR(Xrender not found or functional)], []) -+else -+ AC_MSG_RESULT([no]) -+ SYSTEM_XRENDER=NO -+fi -+AC_SUBST(SYSTEM_XRENDER) -+ -+dnl Test whether to include MySpell dictionaries -+dnl =================================================================== -+AC_MSG_CHECKING([whether to include MySpell dictionaries]) -+if test -z "$with_myspell_dicts"; then -+ AC_MSG_RESULT([yes]) -+ WITH_MYSPELL_DICTS=YES -+else -+ AC_MSG_RESULT([no]) -+ WITH_MYSPELL_DICTS=NO -+fi -+AC_SUBST(WITH_MYSPELL_DICTS) -+ -+dnl =================================================================== -+dnl Test whether to include FontOOo -+dnl =================================================================== -+AC_MSG_CHECKING([whether to include FontOOo]) -+if test -n "$enable_fontooo"; then -+ if test "$enable_fontooo" = "no"; then -+ AC_MSG_RESULT([no]) -+ WITH_FONTOOO=NO -+ SCPDEFS="$SCPDEFS -DWITHOUT_FONTOOO" -+ else -+ AC_MSG_RESULT([yes]) -+ WITH_FONTOOO=YES -+ fi -+else -+ AC_MSG_RESULT([no]) -+ WITH_FONTOOO=NO -+ SCPDEFS="$SCPDEFS -DWITHOUT_FONTOOO" -+fi -+AC_SUBST(WITH_FONTOOO) -+ -+if test "$WITH_FONTOOO" = "YES"; then -+ dnl =============================================================== -+ dnl Check whether to use libmspack from system -+ dnl =============================================================== -+ AC_MSG_CHECKING([whether to use system libmspack]) -+ if test -n "$with_system_mspack" -o -n "$with_system_libs"; then -+ AC_MSG_RESULT([yes]) -+ SYSTEM_MSPACK=YES -+ AC_CHECK_HEADER(mspack.h, [], -+ [AC_MSG_ERROR(mspack.h not found, install libmspack)], []) -+ AC_CHECK_LIB(mspack, mspack_create_cab_decompressor, [], -+ [AC_MSG_ERROR(libmspack not installed or functional)], []) -+ else -+ AC_MSG_RESULT([no]) -+ SYSTEM_MSPACK=NO -+ fi -+fi -+AC_SUBST(SYSTEM_MSPACK) -+ -+dnl ================================================================== -+dnl Check for system nas -+dnl =================================================================== -+AC_MSG_CHECKING([which nas to use]) -+if test -n "$with_system_nas" -o -n "$with_system_libs"; then -+ AC_MSG_RESULT([external]) -+ SYSTEM_NAS=YES -+ AC_CHECK_HEADER(audio/audiolib.h, [ NAS_INCLUDES=/usr/include ], -+ [ -+ CFLAGS=-I/usr/X11R6/include -+ AC_CHECK_HEADER(audio/audiolib.h, -+ [ NAS_INCLUDES=/usr/X11R6/include ], -+ [ AC_MSG_ERROR(no. install nas) ], [] -+ ) -+ ], [] -+ ) -+ AC_CHECK_LIB(audio, AuOpenServer, [], -+ [AC_MSG_ERROR(nas not found or functional)], [-L$XLIB -lXt]) -+else -+ AC_MSG_RESULT([internal]) -+ SYSTEM_NAS=NO -+fi -+AC_SUBST(SYSTEM_NAS) -+AC_SUBST(NAS_INCLUDES) -+ -+dnl =================================================================== -+dnl Check for system curl -+dnl =================================================================== -+AC_MSG_CHECKING([which curl to use]) -+if test -n "$with_system_curl" -o -n "$with_system_libs"; then -+ AC_MSG_RESULT([external]) -+ SYSTEM_CURL=YES -+ AC_CHECK_HEADER(curl/curl.h, [], -+ [ AC_MSG_ERROR([curl headers not found. install curl])], []) -+ AC_CHECK_LIB(curl, curl_easy_setopt, [], -+ [AC_MSG_ERROR(curl not found or functional)], [-L$XLIB -lXt]) -+ SCPDEFS="$SCPDEFS -DSYSTEM_CURL" -+else -+ AC_MSG_RESULT([internal]) -+ SYSTEM_CURL=NO -+fi -+AC_SUBST(SYSTEM_CURL) -+AC_SUBST(SCPDEFS) -+ -+dnl =================================================================== -+dnl Check for system X11 extensions -+dnl =================================================================== -+AC_MSG_CHECKING([which X11 extensions headers to use]) -+if test -n "$with_system_x11_extensions_headers"; then -+ AC_MSG_RESULT([external]) -+ SYSTEM_X11EXT_H=YES -+ AC_CHECK_HEADER(X11/extensions/render.h, [], -+ [AC_MSG_ERROR(X11's render.h not found.)], []) -+ AC_CHECK_HEADER(X11/extensions/renderproto.h, [], -+ [AC_MSG_ERROR(X11's renderproto.h not found.)], []) -+ AC_CHECK_HEADER(X11/extensions/Xrender.h, [], -+ [AC_MSG_ERROR(X11's Xrender.h not found.)], []) -+else -+ AC_MSG_RESULT([internal]) -+fi -+AC_SUBST(SYSTEM_X11EXT_H) -+ -+AC_MSG_CHECKING([whether and how to use Xinerama]) -+if test "$_os" = "Darwin"; then -+ USE_XINERAMA=YES -+ AC_MSG_RESULT([yes]) -+elif test "$_os" = "Linux"; then -+ if test -f "$XLIB/libXinerama.so" -a -f "$XLIB/libXinerama.a"; then -+ # we have both versions, let the user decide but use the static one -+ # per default -+ USE_XINERAMA=YES -+ if test -n "$with_dynamic_xinerama" -o "$with_system_libs"; then -+ XINERAMA_LINK=dynamic -+ else -+ XINERAMA_LINK=static -+ fi -+ elif test -f "$XLIB/libXinerama.so" -a ! -f "XLIB/libXinerama.a"; then -+ # we have only the dynamic version -+ USE_XINERAMA=YES -+ XINERAMA_LINK=dynamic -+ elif test -f "$XLIB/libXinerama.a"; then -+ # static version -+ if test "`uname -m`" = "i586" -o "`uname -m`" = "i686"; then -+ USE_XINERAMA=YES -+ XINERAMA_LINK=static -+ else -+ USE_XINERAMA_=NO -+ XINERAMA_LINK=none -+ fi -+ else -+ # no Xinerama -+ USE_XINERAMA=NO -+ XINERAMA_LINK=none -+ fi -+ if test "$USE_XINERAMA" = "YES"; then -+ AC_MSG_RESULT([yes, with $XINERAMA_LINK linking]) -+ AC_CHECK_HEADER(X11/extensions/Xinerama.h, [], -+ [AC_MSG_ERROR(Xinerama header not found.)], []) -+ AC_CHECK_LIB(Xinerama, XineramaIsActive, [], -+ [AC_MSG_ERROR(Xinerama not functional?)], [-L$XLIB -lXext]) -+ else -+ AC_MSG_RESULT([no, libXinerama not found or wrong architecture.]) -+ fi -+else -+ AC_MSG_RESULT([no]) -+fi -+AC_SUBST(USE_XINERAMA) -+AC_SUBST(XINERAMA_LINK) -+ -+dnl =================================================================== - dnl Test for the presence of Ant and that it works - dnl =================================================================== - -Index: config_office/set_soenv.in -=================================================================== ---- config_office/set_soenv.in.orig 2004-08-14 01:19:51.354365944 +0200 -+++ config_office/set_soenv.in 2004-08-14 01:23:23.676088136 +0200 -@@ -1310,7 +1310,14 @@ else - } - - $PYTHONPATH = '.'.$ps.'$SOLARVER'.$ds.'$UPD'.$ds.'$INPATH'.$ds.'lib'.$ps.'$SOLARVER'.$ds.'$UPD'.$ds.'$INPATH'.$ds.'lib'.$ds.'python'.$ps.'$SOLARVER'.$ds.'$UPD'.$ds.'$INPATH'.$ds.'lib'.$ds.'python'.$ds.'lib-dynload'; --$PYTHONHOME = '$SOLARVER'.$ds.'$UPD'.$ds.'$INPATH'; -+if ("@PYTHON@" eq "") -+{ -+ $PYTHONHOME = '$SOLARVER'.$ds.'$UPD'.$ds.'$INPATH'; -+} -+else -+{ -+ $PYTHONHOME = '@PYTHONHOME@'; -+} - - # - print "done\n"; -@@ -1734,11 +1741,50 @@ ToFile( "LIBSN_CFLAGS", "@LIBSN_CFL - ToFile( "LIBSN_LIBS", "@LIBSN_LIBS@", "e" ); - ToFile( "WITH_MOZILLA", "@WITH_MOZILLA@", "e" ); - ToFile( "WITH_FONTS", "@WITH_FONTS@", "e" ); -+ToFile( "WITH_MYSPELL_DICTS","@WITH_MYSPELL_DICTS@","e"); -+ToFile( "WITH_FONTOOO", "@WITH_FONTOOO@", "e" ); -+ToFile( "SYSTEM_MSPACK", "@SYSTEM_MSPACK@", "e" ); -+ToFile( "SYSTEM_PYTHON", "@PYTHON@", "e" ); -+ToFile( "PYTHON_CFLAGS", "@PYTHON_CFLAGS@", "e" ); -+ToFile( "PYMAJOR", "@PYMAJOR@", "e" ); -+ToFile( "PYMINOR", "@PYMINOR@", "e" ); -+ToFile( "PYMICRO", "@PYMICRO@", "e" ); -+ToFile( "PYVERSION", "@PYVERSION@", "e" ); - if ( '@ENABLE_RPATH@' eq "no" ) { - ToFile( "LINKFLAGSRUNPATH",'', "e" ); - } - ToFile( "SYSTEM_ZLIB", "@SYSTEM_ZLIB@", "e" ); - ToFile( "BUILD_DMAKE", "@BUILD_DMAKE@", "e" ); -+ToFile( "ENABLE_CUPS", "YES", "e" ); -+ToFile( "SYSTEM_NAS", "@SYSTEM_NAS@", "e" ); -+ToFile( "NAS_INCLUDES", "@NAS_INCLUDES@", "e" ); -+ToFile( "FONTCONFIG_FONTS", "@FONTCONFIG_FONTS@", "e" ); -+ToFile( "FONTCONFIG_LIBS", "@FONTCONFIG_LIBS@", "e" ); -+ToFile( "SYSTEM_FREETYPE", "@SYSTEM_FREETYPE@", "e" ); -+ToFile( "FREETYPE_LIBS", "@FREETYPE_LIBS@", "e" ); -+ToFile( "FREETYPE_CFLAGS", "@FREETYPE_CFLAGS@", "e" ); -+ToFile( "SYSTEM_DB", "@SYSTEM_DB@", "e" ); -+ToFile( "DB_VERSION", "@DB_VERSION@", "e" ); -+ToFile( "DB_INCLUDES", "@DB_INCLUDES@", "e" ); -+ToFile( "DB_JAR", "@DB_JAR@", "e" ); -+ToFile( "SYSTEM_CURL", "@SYSTEM_CURL@", "e" ); -+ToFile( "SYSTEM_SANE_H", "@SYSTEM_SANE_H@", "e" ); -+ToFile( "SYSTEM_X11EXT_H", "@SYSTEM_X11EXT_H@", "e" ); -+ToFile( "USE_XINERAMA", "@USE_XINERAMA@", "e" ); -+ToFile( "XINERAMA_LINK", "@XINERAMA_LINK@", "e" ); -+ToFile( "GTK_LIBS", "@GTK_LIBS@", "e" ); -+ToFile( "GTK_CFLAGS", "@GTK_CFLAGS@", "e" ); -+ToFile( "SYSTEM_MYSPELL", "@SYSTEM_MYSPELL@", "e" ); -+ToFile( "MYSPELL_CFLAGS", "@MYSPELL_CFLAGS@", "e" ); -+ToFile( "MYSPELL_LIBS", "@MYSPELL_LIBS@", "e" ); -+ToFile( "SYSTEM_HYPH", "@SYSTEM_HYPH@", "e" ); -+ToFile( "SYSTEM_NEON", "@SYSTEM_NEON@", "e" ); -+ToFile( "NEON_CFLAGS", "@NEON_CFLAGS@", "e" ); -+ToFile( "NEON_LIBS", "@NEON_LIBS@", "e" ); -+ToFile( "SYSTEM_UNIXODBC_H", "@SYSTEM_UNIXODBC_H@","e" ); -+ToFile( "SYSTEM_XRENDER", "@SYSTEM_XRENDER@", "e" ); -+#ToFile( "CPP", "@CPP@", "e" ); -+#ToFile( "CPPCXX", "@CPPCXX@", "e" ); - ToFile( "GXX_INCLUDE_PATH", "@GXX_INCLUDE_PATH@", "e" ); - ToFile( "COMMON_BUILD_TOOLS",$COMMON_BUILD_TOOLS, "e" ); - ToFile( "ENABLE_GTK", "@ENABLE_GTK@", "e" ); diff --git a/patches/OOO_1_1_2/crash-statusbar.diff b/patches/OOO_1_1_2/crash-statusbar.diff deleted file mode 100644 index b9dd962bc..000000000 --- a/patches/OOO_1_1_2/crash-statusbar.diff +++ /dev/null @@ -1,53 +0,0 @@ -Index: sfx2/source/statbar/stbmgr.cxx -=================================================================== -RCS file: /cvs/framework/sfx2/source/statbar/stbmgr.cxx,v -retrieving revision 1.5 -diff -u -p -u -r1.5 stbmgr.cxx ---- sfx2/source/statbar/stbmgr.cxx 27 Mar 2003 11:28:54 -0000 1.5 -+++ sfx2/source/statbar/stbmgr.cxx 21 Jul 2004 11:26:19 -0000 -@@ -143,6 +143,7 @@ friend class SfxStatusBarManager; - - private: - SfxStatusBarControl* GetItemAt( const MouseEvent &rEvt ); -+ DECL_LINK( ItemRemoved_Impl, void* ); - - protected: - virtual void Click(); -@@ -157,6 +158,7 @@ protected: - public: - SfxStatusBar_Impl( Window* pParent, - SfxStatusBarManager& rMgr ); -+ ~SfxStatusBar_Impl(); - void Init( SfxStatusBarManager* rMgr ); - - void CaptureMouse( SfxStatusBarControl &rCtrl ); -@@ -182,6 +184,29 @@ SfxStatusBar_Impl::SfxStatusBar_Impl( Wi - pLastFocusWin(0) - { - SetUniqueId( HID_STATUSBAR ); -+ -+ AddEventListener( LINK( this, SfxStatusBar_Impl, ItemRemoved_Impl ) ); -+} -+ -+SfxStatusBar_Impl::~SfxStatusBar_Impl() -+{ -+ RemoveEventListener( LINK( this, SfxStatusBar_Impl, ItemRemoved_Impl ) ); -+} -+ -+IMPL_LINK( SfxStatusBar_Impl, ItemRemoved_Impl, void*, pVoid ) -+{ -+ VclWindowEvent *pEvent = (VclWindowEvent *) pVoid; -+ -+ if (pEvent) -+ { -+ if( pEvent->GetId() == VCLEVENT_STATUSBAR_ITEMREMOVED || -+ pEvent->GetId() == VCLEVENT_STATUSBAR_ALLITEMSREMOVED ) -+ { -+ pLastControl = 0; -+ } -+ } -+ -+ return 0L; - } - - void SfxStatusBar_Impl::Init( SfxStatusBarManager* p ) diff --git a/patches/OOO_1_1_2/fpicker-build.diff b/patches/OOO_1_1_2/fpicker-build.diff deleted file mode 100644 index 02b96fde4..000000000 --- a/patches/OOO_1_1_2/fpicker-build.diff +++ /dev/null @@ -1,91 +0,0 @@ -Index: fpicker/prj/build.lst -=================================================================== -RCS file: /cvs/gsl/fpicker/prj/build.lst,v -retrieving revision 1.6 -diff -u -p -r1.6 build.lst ---- fpicker/prj/build.lst 14 Feb 2002 13:30:37 -0000 1.6 -+++ fpicker/prj/build.lst 15 Jun 2004 09:22:42 -0000 -@@ -2,4 +2,6 @@ fp fpicker : rdbmaker svtools NULL - fp fpicker\source\win32\filepicker nmake - w fp_win32_filepicker NULL - fp fpicker\source\win32\folderpicker nmake - w fp_win32_folderpicker NULL - fp fpicker\source\win32\misc nmake - w fp_win32_misc fp_win32_filepicker.w fp_win32_folderpicker.w NULL --fp fpicker\util nmake - w fp_util fp_win32_filepicker.w fp_win32_misc.w fp_win32_folderpicker.w NULL -+fp fpicker\source\unx nmake - u fp_unx_common NULL -+fp fpicker\source\unx\kde nmake - u fp_unx_kde_filepicker NULL -+fp fpicker\util nmake - all fp_util fp_win32_filepicker.w fp_win32_misc.w fp_win32_folderpicker.w fp_unx_common.u fp_unx_kde_filepicker.u NULL -Index: fpicker/prj/d.lst -=================================================================== -RCS file: /cvs/gsl/fpicker/prj/d.lst,v -retrieving revision 1.1 -diff -u -p -r1.1 d.lst ---- fpicker/prj/d.lst 28 Jun 2001 11:06:44 -0000 1.1 -+++ fpicker/prj/d.lst 15 Jun 2004 09:22:42 -0000 -@@ -1,4 +1,8 @@ - ..\%__SRC%\bin\*.dll %_DEST%\bin%_EXT%\*.dll -+..\%__SRC%\lib\*.lib %_DEST%\lib%_EXT%\* -+..\%__SRC%\lib\*.so %_DEST%\lib%_EXT%\* -+..\%__SRC%\bin\kdefilepicker %_DEST%\bin%_EXT%\kdefilepicker - - ..\source\win32\filepicker\*.xml %_DEST%\xml%_EXT%\*.xml - ..\source\win32\folderpicker\*.xml %_DEST%\xml%_EXT%\*.xml -+..\source\unx\*.xml %_DEST%\xml%_EXT%\*.xml -Index: fpicker/util/makefile.mk -=================================================================== -RCS file: /cvs/gsl/fpicker/util/makefile.mk,v -retrieving revision 1.3 -diff -u -p -r1.3 makefile.mk ---- fpicker/util/makefile.mk 26 Aug 2002 14:03:30 -0000 1.3 -+++ fpicker/util/makefile.mk 15 Jun 2004 09:22:43 -0000 -@@ -143,6 +143,52 @@ DEF2EXPORTFILE= exports.dxp - # "$(GUI)"=="WNT" - .ENDIF - -+# --- unx ----------------------------------------------------- -+ -+.IF "$(GUIBASE)" == "unx" -+ -+.IF "$(ENABLE_FPICKER_KDE)" == "TRUE" -+ -+SHL1TARGET=$(TARGET1) -+ -+SHL1STDLIBS=$(CPPULIB)\ -+ $(CPPUHELPERLIB)\ -+ $(SALLIB)\ -+ $(VCLLIB)\ -+ $(TOOLSLIB)\ -+ $(SVTOOLLIB) -+ -+SHL1DEPN= -+SHL1IMPLIB=i$(SHL1TARGET) -+ -+SHL1LIBS=$(SLB)$/fps.lib -+ -+SHL1OBJS=$(SLOFILES) -+ -+#SHL1RES=$(RES)$/$(TARGET1).res -+SHL1DEF=$(MISC)$/$(SHL1TARGET).def -+ -+DEF1NAME=$(SHL1TARGET) -+DEF1EXPORTFILE= exports.dxp -+ -+# kdefilepicker binary -+ -+APP2TARGET=kdefilepicker -+ -+APP2STDLIBS=\ -+ $(SALLIB) \ -+ $(FPICKER_KDE_LIBS) -lkio -+ -+APP2OBJS=\ -+ $(SLO)$/kdecommandthread.obj \ -+ $(SLO)$/kdefilepicker.obj \ -+ $(SLO)$/kdefilepicker.moc.obj \ -+ $(SLO)$/kdefpmain.obj \ -+ $(SLO)$/kdemodalityfilter.obj -+ -+.ENDIF # "$(ENABLE_FPICKER_KDE)" == "TRUE" -+ -+.ENDIF # "$(GUIBASE)" == "unx" - - .INCLUDE : target.mk - diff --git a/patches/OOO_1_1_2/gcc-i18n.diff b/patches/OOO_1_1_2/gcc-i18n.diff deleted file mode 100644 index a6adc53f2..000000000 --- a/patches/OOO_1_1_2/gcc-i18n.diff +++ /dev/null @@ -1,26 +0,0 @@ -Index: solenv/bin/gccinstlib.pl -=================================================================== -RCS file: /cvs/tools/solenv/bin/gccinstlib.pl,v -retrieving revision 1.2.50.1 -diff -u -r1.2.50.1 gccinstlib.pl ---- solenv/bin/gccinstlib.pl 16 Mar 2004 10:15:42 -0000 1.2.50.1 -+++ solenv/bin/gccinstlib.pl 16 Aug 2004 10:07:34 -0000 -@@ -74,8 +74,7 @@ - $Dest = pop(@ARGV) || die "No destination to copy to"; - - if ($Dest =~ /--help/ || @ARGV < 1) { -- printf ("Syntax:\n gcc-instlib <library-in-libpath ...> -- <destination-dir>\n"); -+ print "Syntax:\n gcc-instlib <library-in-libpath ...> <destination-dir>\n"; - exit (0); - } - foreach $File (@ARGV) { -@@ -105,7 +104,7 @@ - - $cc = $ENV{'CC'} || die "No CC environment set"; - -- open (GCCOut, "$cc -print-search-dirs|") || die "Failed to exec $cc -print-search-dirs: $!"; -+ open (GCCOut, "LANGUAGE=C LC_ALL=C $cc -print-search-dirs|") || die "Failed to exec $cc -print-search-dirs: $!"; - - while (<GCCOut>) { - if (/^([a-zA-Z]+): [=]{0,1}(.*)/) { diff --git a/patches/OOO_1_1_2/hungarian-help.diff b/patches/OOO_1_1_2/hungarian-help.diff deleted file mode 100644 index d1c478ff4..000000000 --- a/patches/OOO_1_1_2/hungarian-help.diff +++ /dev/null @@ -1,25 +0,0 @@ ---- scp/source/office/dir.scp -+++ scp/source/office/dir.scp -@@ -967,6 +967,11 @@ - DosName = "35"; - End - -+Directory GID_DIR_HELP_36 -+ ParentID = GID_DIR_HELP; -+ DosName = "36"; -+End -+ - Directory GID_DIR_HELP_37 - ParentID = GID_DIR_HELP; - DosName = "37"; - ---- scp/inc/gid.inc -+++ scp/inc/gid.inc -@@ -329,6 +329,7 @@ - #define GID_DIR_HELP_33 gid_Dir_Help_33 - #define GID_DIR_HELP_34 gid_Dir_Help_34 - #define GID_DIR_HELP_35 gid_Dir_Help_35 -+#define GID_DIR_HELP_36 gid_Dir_Help_36 - #define GID_DIR_HELP_37 gid_Dir_Help_37 - #define GID_DIR_HELP_50 gid_Dir_Help_50 - #define GID_DIR_HELP_39 gid_Dir_Help_39 diff --git a/patches/OOO_1_1_2/i18n-build-hindi-thai.diff b/patches/OOO_1_1_2/i18n-build-hindi-thai.diff deleted file mode 100644 index 2fcd9e4df..000000000 --- a/patches/OOO_1_1_2/i18n-build-hindi-thai.diff +++ /dev/null @@ -1,16 +0,0 @@ -Index: set_soenv.in -=================================================================== -RCS file: /cvs/tools/config_office/set_soenv.in,v -retrieving revision 1.10.6.8 -diff -u -r1.10.6.8 set_soenv.in ---- config_office/set_soenv.in 3 May 2004 15:26:57 -0000 1.10.6.8 -+++ config_office/set_soenv.in 10 Jun 2004 21:36:25 -0000 -@@ -50,7 +50,7 @@ - # - # Platform independent constant values. - my @LANGUAGES = ("AFRIK", "ARAB", "CAT", "CHINSIM", "CHINTRAD", "CZECH", "DAN", "DTCH", "ENUS", "ESTONIAN", "FINN", "FREN", "GREEK", "HEBREW", "HUNG", "ITAL", --"JAPN", "KOREAN", "NORBOK", "NORNYN", "NSOTHO", "POL", "PORT", "PORTBR", "RUSS", "SLOVAK", "SLOVENIAN", "SPAN", "SWED", "TURK", "WELSH", "ZULU" ); -+"JAPN", "KOREAN", "NORBOK", "NORNYN", "NSOTHO", "POL", "PORT", "PORTBR", "RUSS", "SLOVAK", "SLOVENIAN", "SPAN", "SWED", "TURK", "WELSH", "ZULU", "THAI", "HINDI" ); - my @DICTIONARIES = ("DADK", "DEDE", "ENGB", "ENUS", "ITIT", "RURU" ); - my ( $CALL_CDECL, $COMMON_OUTDIR, $NO_SRS_PATCH, $PRODUCT, $PROFULLSWITCH, $BIG_GOODIES, $BMP_WRITES_FLAG, - $common_build, $MK_UNROLL, $NO_REC_RES, $PROEXT, $SO3, $SOLAR_JAVA, diff --git a/patches/OOO_1_1_2/java_build_with_ibm_1_4.diff b/patches/OOO_1_1_2/java_build_with_ibm_1_4.diff deleted file mode 100644 index 125dae1d3..000000000 --- a/patches/OOO_1_1_2/java_build_with_ibm_1_4.diff +++ /dev/null @@ -1,60 +0,0 @@ ---- config_office/configure.in -+++ config_office/configure.in -@@ -1335,6 +1335,14 @@ - AC_MSG_RESULT([checked (JDK $_jdk)]) - fi - JAVA_HOME=`echo $JAVAC | $SED -n "s,//*bin//*javac,,p"` -+ -+ dnl test for the jar archive with core classes -+ dnl IBM Java, verison 1.4 uses core.jar instead of rt.jar -+ if test -f "$JAVA_HOME/jre/lib/core.jar" ; then -+ CORECLASS="core.jar" -+ else -+ CORECLASS="rt.jar" -+ fi - else - AC_MSG_ERROR([JAVA not found. You need at least jdk-1.3]) - fi -@@ -1351,6 +1359,7 @@ - fi - AC_SUBST(JAVA_HOME) - AC_SUBST(JDK) -+AC_SUBST(CORECLASS) - AC_SUBST(XSLTPROC) - - dnl =================================================================== ---- config_office/set_soenv.in -+++ config_office/set_soenv.in -@@ -374,9 +374,15 @@ - $CPU = "I"; - $CPUNAME = "INTEL"; - $DLLSUFFIX = "li"; -- $JRELIBDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."i386"; -- $JRETOOLKITDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."i386".$ds."client"; -- $JRETHREADDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."i386".$ds."native_threads"; -+ if ( '@JDK@' eq 'IBM') { -+ $JRELIBDIR = '$JAVA_HOME'.$ds."jre".$ds."bin"; -+ $JRETOOLKITDIR = '$JAVA_HOME'.$ds."jre".$ds."bin".$ds."classic"; -+ $JRETHREADDIR = '$JAVA_HOME'.$ds."jre".$ds."bin"; -+ } else { -+ $JRELIBDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."i386"; -+ $JRETOOLKITDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."i386".$ds."client"; -+ $JRETHREADDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."i386".$ds."native_threads"; -+ } - } - elsif (($machine_type eq "sparc") or ($machine_type eq "sparc64")) - -@@ -868,10 +874,11 @@ - $DMAKEROOT = '$SOLARENVINC'.$ds."startup"; - # Location of JDK classes .zip file. - # but in jdk 1.2 it is called rt.jar and it lives in jre/lib --$CLASSPATH = '$JAVA_HOME'.$ds.'jre'.$LIB.$ds."rt.jar".$ps.'.'; -+# and IBM Java, version 1.4 uses core.jar instead of rt.jar -+$CLASSPATH = '$JAVA_HOME'.$ds.'jre'.$LIB.$ds.'@CORECLASS@'.$ps.'.'; - # Location of the JDK supported standard classes.zip file. - # see above for why the change --$XCLASSPATH = '$JAVA_HOME'.$ds.'jre'.$LIB.$ds."rt.jar".$ps.'.'; -+$XCLASSPATH = '$JAVA_HOME'.$ds.'jre'.$LIB.$ds.'@CORECLASS@'.$ps.'.'; - - # Paths to run time shared libraries. - if ($platform eq "$Solaris") diff --git a/patches/OOO_1_1_2/kde-cut-paste-fix.diff b/patches/OOO_1_1_2/kde-cut-paste-fix.diff deleted file mode 100644 index a938cf67c..000000000 --- a/patches/OOO_1_1_2/kde-cut-paste-fix.diff +++ /dev/null @@ -1,257 +0,0 @@ -Index: dtrans/source/X11/X11_selection.hxx -=================================================================== -RCS file: /cvs/gsl/dtrans/source/X11/X11_selection.hxx,v -retrieving revision 1.23.10.2 -retrieving revision 1.23.10.2.18.1 -diff -u -p -r1.23.10.2 -r1.23.10.2.18.1 ---- dtrans/source/X11/X11_selection.hxx 15 Jan 2004 12:46:17 -0000 1.23.10.2 -+++ dtrans/source/X11/X11_selection.hxx 12 May 2004 12:40:07 -0000 1.23.10.2.18.1 -@@ -236,17 +236,15 @@ namespace x11 { - // property used to transfer the data - struct IncrementalTransfer - { -- Sequence< sal_Int8 > -- m_aData; -+ Sequence< sal_Int8 > m_aData; - int m_nBufferPos; - Window m_aRequestor; - Atom m_aProperty; - Atom m_aTarget; - int m_nFormat; - int m_nTransferStartTime; -- -- IncrementalTransfer( const Sequence< sal_Int8 >& rData, Window aRequestor, Atom aProperty, Atom aTarget, int nFormat ); - }; -+ int m_nIncrementalThreshold; - - // a struct to hold the data associated with a selection - struct Selection -@@ -431,7 +429,7 @@ namespace x11 { - ::std::hash_map< Atom, Selection* > - m_aSelections; - // IncrementalTransfers in progress -- ::std::hash_map< Window, ::std::list< IncrementalTransfer > > -+ std::hash_map< Window, std::hash_map< Atom, IncrementalTransfer > > - m_aIncrementals; - - // do not use X11 multithreading capabilities -Index: dtrans/source/X11/X11_selection.cxx -=================================================================== -RCS file: /cvs/gsl/dtrans/source/X11/X11_selection.cxx,v -retrieving revision 1.64.6.3 -retrieving revision 1.64.6.3.12.1 -diff -u -p -r1.64.6.3 -r1.64.6.3.12.1 ---- dtrans/source/X11/X11_selection.cxx 26 Jan 2004 17:38:29 -0000 1.64.6.3 -+++ dtrans/source/X11/X11_selection.cxx 12 May 2004 12:40:07 -0000 1.64.6.3.12.1 -@@ -109,7 +109,6 @@ - #include <rtl/tencinfo.h> - #endif - --#define INCR_MIN_SIZE 1024 - #define INCR_TIMEOUT 5 - - #define DRAG_EVENT_MASK ButtonPressMask |\ -@@ -238,26 +237,8 @@ rtl_TextEncoding x11::getTextPlainEncodi - - // ------------------------------------------------------------------------ - --SelectionManager::IncrementalTransfer::IncrementalTransfer( -- const Sequence< sal_Int8 >& rData, -- Window aRequestor, -- Atom aProperty, -- Atom aTarget, -- int nFormat -- ) : -- m_aData( rData ), -- m_aRequestor( aRequestor ), -- m_aProperty( aProperty ), -- m_aTarget( aTarget ), -- m_nFormat( nFormat ), -- m_nBufferPos( 0 ), -- m_nTransferStartTime( time( NULL ) ) --{ --} -- --// ------------------------------------------------------------------------ -- - SelectionManager::SelectionManager() : -+ m_nIncrementalThreshold( 15*1024 ), - m_pDisplay( NULL ), - m_aWindow( None ), - m_aDropWindow( None ), -@@ -436,6 +417,11 @@ void SelectionManager::initialize( const - m_aWindow = XCreateSimpleWindow( m_pDisplay, DefaultRootWindow( m_pDisplay ), - 10, 10, 10, 10, 0, 0, 1 ); - -+ // initialize threshold for incremetal transfers -+ // ICCCM says it should be smaller that the max request size -+ // which in turn is guaranteed to be at least 16k bytes -+ m_nIncrementalThreshold = XMaxRequestSize( m_pDisplay ) - 1024; -+ - if( m_aWindow ) - { - // initialize default cursors -@@ -1546,24 +1532,43 @@ bool SelectionManager::sendData( Selecti - if( bConverted ) - { - // conversion succeeded -- if( aData.getLength() > INCR_MIN_SIZE ) -+ if( aData.getLength() > m_nIncrementalThreshold ) - { - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "using INCR protocol\n" ); -+ std::hash_map< Window, std::hash_map< Atom, IncrementalTransfer > >::const_iterator win_it = m_aIncrementals.find( requestor ); -+ if( win_it != m_aIncrementals.end() ) -+ { -+ std::hash_map< Atom, IncrementalTransfer >::const_iterator inc_it = win_it->second.find( property ); -+ if( inc_it != win_it->second.end() ) -+ { -+ const IncrementalTransfer& rInc = inc_it->second; -+ fprintf( stderr, "premature end and new start for INCR transfer for window 0x%x, property %s, type %s\n", -+ rInc.m_aRequestor, -+ OUStringToOString( getString( rInc.m_aProperty ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), -+ OUStringToOString( getString( rInc.m_aTarget ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() -+ ); -+ } -+ } - #endif -- // use incr protocol -+ -+ // insert IncrementalTransfer -+ IncrementalTransfer& rInc = m_aIncrementals[ requestor ][ property ]; -+ rInc.m_aData = aData; -+ rInc.m_nBufferPos = 0; -+ rInc.m_aRequestor = requestor; -+ rInc.m_aProperty = property; -+ rInc.m_aTarget = target; -+ rInc.m_nFormat = nFormat; -+ rInc.m_nTransferStartTime = time( NULL ); -+ -+ // use incr protocol, signal start to requestor - int nBufferPos = 0; -- int nMinSize = INCR_MIN_SIZE; -+ int nMinSize = m_nIncrementalThreshold; -+ XSelectInput( m_pDisplay, requestor, PropertyChangeMask ); - XChangeProperty( m_pDisplay, requestor, property, - m_nINCRAtom, 32, PropModeReplace, (unsigned char*)&nMinSize, 1 ); -- XSelectInput( m_pDisplay, requestor, PropertyChangeMask ); -- IncrementalTransfer aTransfer( aData, -- requestor, -- property, -- target, -- nFormat -- ); -- m_aIncrementals[ requestor ].push_back( aTransfer ); -+ XFlush( m_pDisplay ); - } - else - XChangeProperty( m_pDisplay, -@@ -1907,43 +1912,80 @@ void SelectionManager::handleSendPropert - // feed incrementals - if( rNotify.state == PropertyDelete ) - { -- ::std::hash_map< Window, ::std::list< IncrementalTransfer > >::iterator it; -+ std::hash_map< Window, std::hash_map< Atom, IncrementalTransfer > >::iterator it; - it = m_aIncrementals.find( rNotify.window ); -- int nCurrentTime = time( NULL ); - if( it != m_aIncrementals.end() ) - { -- ::std::list< IncrementalTransfer >::iterator inc_it = it->second.begin(); -- while( inc_it != it->second.end() ) -+ int nCurrentTime = time( NULL ); -+ std::hash_map< Atom, IncrementalTransfer >::iterator inc_it; -+ // throw out aborted transfers -+ std::list< Atom > aTimeouts; -+ for( inc_it = it->second.begin(); inc_it != it->second.end(); ++inc_it ) - { -- bool bDone = false; -- if( inc_it->m_aProperty == rNotify.atom ) -+ if( (nCurrentTime - inc_it->second.m_nTransferStartTime) > INCR_TIMEOUT ) - { -- int nBytes = inc_it->m_aData.getLength() - inc_it->m_nBufferPos; -- nBytes = nBytes > INCR_MIN_SIZE ? INCR_MIN_SIZE : nBytes; -- XChangeProperty( -- m_pDisplay, -- inc_it->m_aRequestor, -- inc_it->m_aProperty, -- inc_it->m_aTarget, -- inc_it->m_nFormat, -- PropModeReplace, -- (const unsigned char*)inc_it->m_aData.getConstArray()+inc_it->m_nBufferPos, -- nBytes/(inc_it->m_nFormat/8) ); -- inc_it->m_nBufferPos += nBytes; -- if( nBytes == 0 ) -- bDone = true; -+ aTimeouts.push_back( inc_it->first ); -+#if OSL_DEBUG_LEVEL > 1 -+ const IncrementalTransfer& rInc = inc_it->second; -+ fprintf( stderr, "timeout on INCR transfer for window 0x%x, property %s, type %s\n", -+ rInc.m_aRequestor, -+ OUStringToOString( getString( rInc.m_aProperty ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), -+ OUStringToOString( getString( rInc.m_aTarget ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() -+ ); -+#endif - } -- else if( nCurrentTime - inc_it->m_nTransferStartTime > INCR_TIMEOUT ) -- bDone = true; -- if( bDone ) -+ } -+ -+ while( aTimeouts.begin() != aTimeouts.end() ) -+ { -+ // transfer broken, might even be a new client with the -+ // same window id -+ it->second.erase( aTimeouts.front() ); -+ aTimeouts.pop_front(); -+ } -+ -+ inc_it = it->second.find( rNotify.atom ); -+ if( inc_it != it->second.end() ) -+ { -+ IncrementalTransfer& rInc = inc_it->second; -+ -+ int nBytes = rInc.m_aData.getLength() - rInc.m_nBufferPos; -+ nBytes = (nBytes > m_nIncrementalThreshold) ? m_nIncrementalThreshold : nBytes; -+ if( nBytes < 0 ) // sanity check -+ nBytes = 0; -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "pushing %d bytes: \"%.*s\"...\n", -+ nBytes, nBytes > 32 ? 32 : nBytes, -+ (const unsigned char*)rInc.m_aData.getConstArray()+rInc.m_nBufferPos ); -+#endif -+ -+ XChangeProperty( m_pDisplay, -+ rInc.m_aRequestor, -+ rInc.m_aProperty, -+ rInc.m_aTarget, -+ rInc.m_nFormat, -+ PropModeReplace, -+ (const unsigned char*)rInc.m_aData.getConstArray()+rInc.m_nBufferPos, -+ nBytes/(rInc.m_nFormat/8) ); -+ rInc.m_nBufferPos += nBytes; -+ rInc.m_nTransferStartTime = nCurrentTime; -+ -+ if( nBytes == 0 ) // transfer finished - { -- ::std::list< IncrementalTransfer >::iterator temp_it = inc_it; -- ++inc_it; -- it->second.erase( temp_it ); -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "finished INCR transfer for window 0x%x, property %s, type %s\n", -+ rInc.m_aRequestor, -+ OUStringToOString( getString( rInc.m_aProperty ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), -+ OUStringToOString( getString( rInc.m_aTarget ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() -+ ); -+#endif -+ it->second.erase( inc_it ); - } -- else -- ++inc_it; -+ - } -+ // eventually clean up the hash map -+ if( it->second.begin() == it->second.end() ) -+ m_aIncrementals.erase( it ); - } - } - } diff --git a/patches/OOO_1_1_2/lingucomponent-memleaks.diff b/patches/OOO_1_1_2/lingucomponent-memleaks.diff deleted file mode 100644 index 8c474c25a..000000000 --- a/patches/OOO_1_1_2/lingucomponent-memleaks.diff +++ /dev/null @@ -1,57 +0,0 @@ ---- lingucomponent/source/spellcheck/myspell/affixmgr.cxx.~1.12.14.1.~ Fri May 7 11:48:19 2004 -+++ lingucomponent/source/spellcheck/myspell/affixmgr.cxx Sun Jun 6 10:34:16 2004 -@@ -763,7 +763,7 @@ - char * AffixMgr::get_compound() - { - if (! compound ) return NULL; -- return mystrdup(compound); -+ return compound; - } - - // utility method to look up root words in hash table ---- lingucomponent/source/spellcheck/myspell/suggestmgr.cxx.~1.7.14.3.~ Fri May 7 11:48:19 2004 -+++ lingucomponent/source/spellcheck/myspell/suggestmgr.cxx Sat Jun 5 17:08:29 2004 -@@ -375,21 +375,28 @@ - rp->astr, rp->alen); - for (int k = 0; k < nw; k++) { - sc = ngram(n, word, glst[k].word, NGRAM_ANY_MISMATCH); -- if (sc > thresh) { -- if (sc > gscore[lp]) { -- if (guess[lp]) free (guess[lp]); -- gscore[lp] = sc; -- guess[lp] = glst[k].word; -- lval = sc; -- for (j=0; j < MAX_GUESS; j++) -- if (gscore[j] < lval) { -- lp = j; -- lval = gscore[j]; -- } -- } else { -- free (glst[k].word); -- } -- } -+ if (sc > thresh) -+ { -+ if (sc > gscore[lp]) -+ { -+ if (guess[lp]) free(guess[lp]); -+ gscore[lp] = sc; -+ guess[lp] = glst[k].word; -+ glst[k].word = NULL; -+ lval = sc; -+ for (j=0; j < MAX_GUESS; j++) -+ { -+ if (gscore[j] < lval) -+ { -+ lp = j; -+ lval = gscore[j]; -+ } -+ } -+ } -+ } -+ free (glst[k].word); -+ glst[k].word = NULL; -+ glst[k].allow = 0; - } - } - } diff --git a/patches/OOO_1_1_2/neon-control-characters.diff b/patches/OOO_1_1_2/neon-control-characters.diff deleted file mode 100644 index 473f8b709..000000000 --- a/patches/OOO_1_1_2/neon-control-characters.diff +++ /dev/null @@ -1,91 +0,0 @@ ---- neon/neon.patch.orig 2004-06-08 20:32:52.000000000 +0200 -+++ neon/neon.patch 2004-06-08 20:33:00.369904697 +0200 -@@ -438,3 +438,88 @@ - /* RFC850/1036 style dates: Sunday, 06-Nov-94 08:49:37 GMT */ - n = sscanf(date, RFC1036_FORMAT, - wkday, &gmt.tm_mday, mon, &gmt.tm_year, -+*** misc/neon-0.23.5/src/ne_session.c 2002-09-17 22:08:01.000000000 +0200 -+--- misc/build/neon-0.23.5/src/ne_session.c 2004-06-08 19:21:04.683116987 +0200 -+*************** -+*** 33,38 **** -+--- 33,40 ---- -+ #include <errno.h> -+ #endif -+ -++ #include <ctype.h> /* for cleanse() */ -++ -+ #ifdef NEON_SSL -+ #include <openssl/ssl.h> -+ #include <openssl/err.h> -+*************** -+*** 242,250 **** -+ uri->scheme = ne_strdup(sess->scheme); -+ } -+ -+ const char *ne_get_error(ne_session *sess) -+ { -+! return sess->error; -+ } -+ -+ void ne_close_connection(ne_session *sess) -+--- 244,263 ---- -+ uri->scheme = ne_strdup(sess->scheme); -+ } -+ -++ /* Cleanse 'str' of non-printable characters. Duplicated in -++ * ne_utils.c for the duration of neon 0.23.x to prevent ABI -++ * change. */ -++ static char *cleanse(char *str) -++ { -++ char *pnt; -++ for (pnt = str; *pnt; pnt++) -++ if (iscntrl(*pnt) || !isprint(*pnt)) *pnt = ' '; -++ return str; -++ } -++ -+ const char *ne_get_error(ne_session *sess) -+ { -+! return cleanse(sess->error); -+ } -+ -+ void ne_close_connection(ne_session *sess) -+diff -cr misc/neon-0.23.5/src/ne_utils.c misc/build/neon-0.23.5/src/ne_utils.c -+*** misc/neon-0.23.5/src/ne_utils.c 2002-07-18 00:19:46.000000000 +0200 -+--- misc/build/neon-0.23.5/src/ne_utils.c 2004-06-08 19:21:04.684116818 +0200 -+*************** -+*** 129,134 **** -+--- 129,145 ---- -+ #endif -+ } -+ -++ /* Cleanse 'str' of non-printable characters. Duplicated in -++ * ne_session.c for the duration of neon 0.23.x to prevent ABI -++ * change. */ -++ static char *cleanse(char *str) -++ { -++ char *pnt; -++ for (pnt = str; *pnt; pnt++) -++ if (iscntrl(*pnt) || !isprint(*pnt)) *pnt = ' '; -++ return str; -++ } -++ -+ int ne_parse_statusline(const char *status_line, ne_status *st) -+ { -+ const char *part; -+*************** -+*** 177,183 **** -+ /* Fill in the results */ -+ st->major_version = major; -+ st->minor_version = minor; -+! st->reason_phrase = ne_strdup(part); -+ st->code = status_code; -+ st->klass = klass; -+ return 0; -+--- 188,194 ---- -+ /* Fill in the results */ -+ st->major_version = major; -+ st->minor_version = minor; -+! st->reason_phrase = cleanse(ne_strdup(part)); -+ st->code = status_code; -+ st->klass = klass; -+ return 0; diff --git a/patches/OOO_1_1_2/readd-lzwc.diff b/patches/OOO_1_1_2/readd-lzwc.diff deleted file mode 100644 index a11b24fb0..000000000 --- a/patches/OOO_1_1_2/readd-lzwc.diff +++ /dev/null @@ -1,290 +0,0 @@ ---- /dev/null 2004-04-29 03:59:24.000000000 +0200 -+++ goodies/source/filter.vcl/egif/giflzwc.cxx 2000-09-18 18:30:11.000000000 +0200 -@@ -0,0 +1,287 @@ -+/************************************************************************* -+ * -+ * $RCSfile$ -+ * -+ * $Revision$ -+ * -+ * last change: $Author$ $Date$ -+ * -+ * The Contents of this file are made available subject to the terms of -+ * either of the following licenses -+ * -+ * - GNU Lesser General Public License Version 2.1 -+ * - Sun Industry Standards Source License Version 1.1 -+ * -+ * Sun Microsystems Inc., October, 2000 -+ * -+ * GNU Lesser General Public License Version 2.1 -+ * ============================================= -+ * Copyright 2000 by Sun Microsystems, Inc. -+ * 901 San Antonio Road, Palo Alto, CA 94303, USA -+ * -+ * This library is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU Lesser General Public -+ * License version 2.1, as published by the Free Software Foundation. -+ * -+ * This library is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ * Lesser General Public License for more details. -+ * -+ * You should have received a copy of the GNU Lesser General Public -+ * License along with this library; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, -+ * MA 02111-1307 USA -+ * -+ * -+ * Sun Industry Standards Source License Version 1.1 -+ * ================================================= -+ * The contents of this file are subject to the Sun Industry Standards -+ * Source License Version 1.1 (the "License"); You may not use this file -+ * except in compliance with the License. You may obtain a copy of the -+ * License at http://www.openoffice.org/license.html. -+ * -+ * Software provided under this License is provided on an "AS IS" basis, -+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, -+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, -+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. -+ * See the License for the specific provisions governing your rights and -+ * obligations concerning the Software. -+ * -+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc. -+ * -+ * Copyright: 2000 by Sun Microsystems, Inc. -+ * -+ * All Rights Reserved. -+ * -+ * Contributor(s): _______________________________________ -+ * -+ * -+ ************************************************************************/ -+ -+#include <tools/stream.hxx> -+#include "giflzwc.hxx" -+ -+// ---------------------------- -+// - GIFImageDataOutputStream - -+// ---------------------------- -+ -+class GIFImageDataOutputStream -+{ -+private: -+ -+ void FlushBlockBuf(); -+ inline void FlushBitsBufsFullBytes(); -+ -+ SvStream& rStream; -+ BYTE* pBlockBuf; -+ BYTE nBlockBufSize; -+ ULONG nBitsBuf; -+ USHORT nBitsBufSize; -+ -+public: -+ -+ GIFImageDataOutputStream( SvStream & rGIF, BYTE nLZWDataSize ); -+ ~GIFImageDataOutputStream(); -+ -+ inline void WriteBits( USHORT nCode, USHORT nCodeLen ); -+}; -+ -+// ------------------------------------------------------------------------ -+ -+inline void GIFImageDataOutputStream::FlushBitsBufsFullBytes() -+{ -+ while (nBitsBufSize>=8) -+ { -+ if( nBlockBufSize==255 ) -+ FlushBlockBuf(); -+ -+ pBlockBuf[nBlockBufSize++] = (BYTE) nBitsBuf; -+ nBitsBuf >>= 8; -+ nBitsBufSize -= 8; -+ } -+} -+ -+// ------------------------------------------------------------------------ -+ -+inline void GIFImageDataOutputStream::WriteBits( USHORT nCode, USHORT nCodeLen ) -+{ -+ if( nBitsBufSize+nCodeLen>32 ) -+ FlushBitsBufsFullBytes(); -+ -+ nBitsBuf |= (ULONG) nCode << nBitsBufSize; -+ nBitsBufSize += nCodeLen; -+} -+ -+// ------------------------------------------------------------------------ -+ -+GIFImageDataOutputStream::GIFImageDataOutputStream( SvStream & rGIF, BYTE nLZWDataSize ) : -+ rStream(rGIF) -+{ -+ pBlockBuf = new BYTE[ 255 ]; -+ nBlockBufSize = 0; -+ nBitsBufSize = 0; -+ nBitsBuf = 0; -+ rStream << nLZWDataSize; -+} -+ -+// ------------------------------------------------------------------------ -+ -+ -+GIFImageDataOutputStream::~GIFImageDataOutputStream() -+{ -+ WriteBits(0,7); -+ FlushBitsBufsFullBytes(); -+ FlushBlockBuf(); -+ rStream << (BYTE)0; -+ delete[] pBlockBuf; -+} -+ -+// ------------------------------------------------------------------------ -+ -+void GIFImageDataOutputStream::FlushBlockBuf() -+{ -+ if( nBlockBufSize ) -+ { -+ rStream << (BYTE) nBlockBufSize; -+ rStream.Write( pBlockBuf,nBlockBufSize ); -+ nBlockBufSize = 0; -+ } -+} -+ -+// ------------------- -+// - GIFLZWCTreeNode - -+// ------------------- -+ -+struct GIFLZWCTreeNode -+{ -+ -+ GIFLZWCTreeNode* pBrother; // naechster Knoten, der den selben Vater hat -+ GIFLZWCTreeNode* pFirstChild; // erster Sohn -+ USHORT nCode; // Der Code fuer den String von Pixelwerten, der sich ergibt, wenn -+ USHORT nValue; // Der Pixelwert -+}; -+ -+// -------------------- -+// - GIFLZWCompressor - -+// -------------------- -+ -+GIFLZWCompressor::GIFLZWCompressor() -+{ -+ pIDOS=NULL; -+} -+ -+// ------------------------------------------------------------------------ -+ -+GIFLZWCompressor::~GIFLZWCompressor() -+{ -+ if (pIDOS!=NULL) EndCompression(); -+} -+ -+// ------------------------------------------------------------------------ -+ -+void GIFLZWCompressor::StartCompression( SvStream& rGIF, USHORT nPixelSize ) -+{ -+ if( !pIDOS ) -+ { -+ USHORT i; -+ -+ nDataSize = nPixelSize; -+ -+ if( nDataSize < 2 ) -+ nDataSize=2; -+ -+ nClearCode=1<<nDataSize; -+ nEOICode=nClearCode+1; -+ nTableSize=nEOICode+1; -+ nCodeSize=nDataSize+1; -+ -+ pIDOS=new GIFImageDataOutputStream(rGIF,(BYTE)nDataSize); -+ pTable=new GIFLZWCTreeNode[4096]; -+ -+ for (i=0; i<4096; i++) -+ { -+ pTable[i].pBrother = pTable[i].pFirstChild = NULL; -+ pTable[i].nValue = (BYTE) ( pTable[i].nCode = i ); -+ } -+ -+ pPrefix = NULL; -+ pIDOS->WriteBits( nClearCode,nCodeSize ); -+ } -+} -+ -+// ------------------------------------------------------------------------ -+ -+void GIFLZWCompressor::Compress( HPBYTE pSrc, ULONG nSize ) -+{ -+ if( pIDOS ) -+ { -+ GIFLZWCTreeNode* p; -+ USHORT i; -+ BYTE nV; -+ -+ if( !pPrefix && nSize ) -+ { -+ pPrefix=pTable+(*pSrc++); -+ nSize--; -+ } -+ -+ while( nSize ) -+ { -+ nSize--; -+ nV=*pSrc++; -+ for( p=pPrefix->pFirstChild; p!=NULL; p=p->pBrother ) -+ { -+ if (p->nValue==nV) -+ break; -+ } -+ -+ if( p) -+ pPrefix=p; -+ else -+ { -+ pIDOS->WriteBits(pPrefix->nCode,nCodeSize); -+ -+ if (nTableSize==4096) -+ { -+ pIDOS->WriteBits(nClearCode,nCodeSize); -+ -+ for (i=0; i<nClearCode; i++) -+ pTable[i].pFirstChild=NULL; -+ -+ nCodeSize=nDataSize+1; -+ nTableSize=nEOICode+1; -+ } -+ else -+ { -+ if(nTableSize==(USHORT)(1<<nCodeSize)) -+ nCodeSize++; -+ -+ p=pTable+(nTableSize++); -+ p->pBrother=pPrefix->pFirstChild; -+ pPrefix->pFirstChild=p; -+ p->nValue=nV; -+ p->pFirstChild=NULL; -+ } -+ -+ pPrefix=pTable+nV; -+ } -+ } -+ } -+} -+ -+// ------------------------------------------------------------------------ -+ -+void GIFLZWCompressor::EndCompression() -+{ -+ if( pIDOS ) -+ { -+ if( pPrefix ) -+ pIDOS->WriteBits(pPrefix->nCode,nCodeSize); -+ -+ pIDOS->WriteBits( nEOICode,nCodeSize ); -+ delete[] pTable; -+ delete pIDOS; -+ pIDOS=NULL; -+ } -+} diff --git a/patches/OOO_1_1_2/security-sonames.diff b/patches/OOO_1_1_2/security-sonames.diff deleted file mode 100644 index bf907067f..000000000 --- a/patches/OOO_1_1_2/security-sonames.diff +++ /dev/null @@ -1,20 +0,0 @@ ---- sal/osl/unx/security.c-old 2004-05-29 22:10:26.000000000 +0200 -+++ sal/osl/unx/security.c 2004-05-29 22:15:28.000000000 +0200 -@@ -248,7 +248,7 @@ - (but not for PAM-0.66 RH 6.0) */ - void *pam_hdl; - -- pam_hdl = dlopen( "libpam.so", RTLD_GLOBAL | RTLD_LAZY ); -+ pam_hdl = dlopen( "libpam.so.0" , RTLD_GLOBAL | RTLD_LAZY ); - - if ( pam_hdl != NULL ) - pam_module = (sal_PamModule*)calloc( 1, sizeof(sal_PamModule) ); -@@ -341,7 +345,7 @@ - { - oslModule crypt_library; - -- crypt_library = osl_psz_loadModule( "libcrypt.so", SAL_LOADMODULE_DEFAULT ); /* never closed */ -+ crypt_library = osl_psz_loadModule( "libcrypt.so.1", SAL_LOADMODULE_DEFAULT ); /* never closed */ - if ( crypt_library != NULL ) - crypt_sym = (char* (*)(const char *, const char *)) osl_psz_getSymbol(crypt_library, "crypt" ); - if ( crypt_sym == NULL ) /* no libcrypt or libcrypt without crypt */ diff --git a/patches/OOO_1_1_2/shellexec_allow_params.diff b/patches/OOO_1_1_2/shellexec_allow_params.diff deleted file mode 100644 index bdb203306..000000000 --- a/patches/OOO_1_1_2/shellexec_allow_params.diff +++ /dev/null @@ -1,37 +0,0 @@ ---- shell/source/unix/exec/shellexec.cxx 2004-05-04 14:17:59.740508616 +0200 -+++ shell/source/unix/exec/shellexec.cxx 2004-05-04 15:23:15.561213384 +0200 -@@ -294,6 +294,15 @@ void SAL_CALL ShellExec::execute( const - - if( aHandler.getLength() ) - { -+ OUString aHandlerParams; -+ -+ sal_Int32 nParamsIdx = aHandler.indexOf( (sal_Unicode) ' ' ); -+ if ( nParamsIdx > 0 && nParamsIdx < aHandler.getLength() ) -+ { -+ aHandlerParams = aHandler.copy( nParamsIdx + 1, aHandler.getLength() - nParamsIdx - 1 ); -+ aHandler = aHandler.copy( 0, nParamsIdx ); -+ } -+ - // search handler in system path if no absolute path given - FileBase::searchFileURL( aHandler, OUString(), aHandler ); - -@@ -302,12 +311,17 @@ void SAL_CALL ShellExec::execute( const - - // due to a possible convertion to file url, - // rebuild command line from scratch -- OUStringBuffer aBuffer( aHandler.getLength() + aURL.getLength() + 5 ); -+ OUStringBuffer aBuffer( aHandler.getLength() + aURL.getLength() + 6 ); - - aBuffer.append( (sal_Unicode) '\"' ); - aBuffer.append( aHandler ); - aBuffer.append( (sal_Unicode) '\"' ); - aBuffer.append( (sal_Unicode) ' ' ); -+ if ( aHandlerParams.getLength() ) -+ { -+ aBuffer.append( aHandlerParams ); -+ aBuffer.append( (sal_Unicode) ' ' ); -+ } - aBuffer.append( (sal_Unicode) '\'' ); - aBuffer.append( aURL ); - aBuffer.append( (sal_Unicode) '\'' ); diff --git a/patches/OOO_1_1_2/sparc-v8-fixes.diff b/patches/OOO_1_1_2/sparc-v8-fixes.diff deleted file mode 100644 index 6a3e7d095..000000000 --- a/patches/OOO_1_1_2/sparc-v8-fixes.diff +++ /dev/null @@ -1,98 +0,0 @@ -Index: sal/osl/unx/util.c -=================================================================== -RCS file: /cvs/porting/sal/osl/unx/util.c,v -retrieving revision 1.5 -diff -u -u -r1.5 util.c ---- sal/osl/unx/util.c 2 Jul 2003 13:35:19 -0000 1.5 -+++ sal/osl/unx/util.c 12 Jul 2004 08:02:39 -0000 -@@ -398,3 +398,23 @@ - - #endif - -+#if defined ( LINUX ) && defined ( SPARC ) -+#include <sys/utsname.h> -+void osl_InitSparcV9(void) __attribute__((constructor)); -+void osl_InterlockedCountSetV9(sal_Bool bV9); -+/* Determine which machine we are running on (sparc or sparc64) -+ * The approach is very similar to Solaris. -+ */ -+void osl_InitSparcV9(void) -+{ -+ struct utsname name; -+ int rc; -+ rc = uname(&name); -+ if ( rc != -1 ) { -+ if ( !strcmp( "sparc", name.machine )) -+ return; -+ osl_InterlockedCountSetV9(sal_True); -+ } -+} -+ -+#endif -Index: sal/osl/unx/asm/interlck_sparc.s -=================================================================== -RCS file: /cvs/porting/sal/osl/unx/asm/interlck_sparc.s,v -retrieving revision 1.3 -diff -u -u -r1.3 interlck_sparc.s ---- sal/osl/unx/asm/interlck_sparc.s 28 Apr 2003 17:13:44 -0000 1.3 -+++ sal/osl/unx/asm/interlck_sparc.s 12 Jul 2004 08:02:39 -0000 -@@ -248,7 +248,9 @@ - - 1: ld [%o0], %o1 - add %o1, 1, %o2 -- cas [%o0], %o1, %o2 -+! allow linux to build for v8 -+ .word 0xD5E21009 -+! cas [%o0], %o1, %o2 - cmp %o1, %o2 - bne 1b - nop ! delay slot -@@ -267,7 +269,9 @@ - - 1: ld [%o0], %o1 - sub %o1, 1, %o2 -- cas [%o0], %o1, %o2 -+! allow linux to build for v8 -+ .word 0xD5E21009 -+! cas [%o0], %o1, %o2 - cmp %o1, %o2 - bne 1b - nop ! delay slot -@@ -276,4 +280,3 @@ - - .type osl_decrementInterlockedCountV9,#function - .size osl_decrementInterlockedCountV9,.-osl_decrementInterlockedCountV9 -- -Index: sc/source/core/data/makefile.mk -=================================================================== -RCS file: /cvs/sc/sc/source/core/data/makefile.mk,v -retrieving revision 1.6.260.3 -diff -u -u -r1.6.260.3 makefile.mk ---- sc/source/core/data/makefile.mk 28 Jan 2004 10:02:07 -0000 1.6.260.3 -+++ sc/source/core/data/makefile.mk 12 Jul 2004 08:02:42 -0000 -@@ -205,7 +205,8 @@ - $(SLO)$/table3.obj \ - $(SLO)$/table4.obj \ - $(SLO)$/documen4.obj \ -- $(SLO)$/conditio.obj -+ $(SLO)$/conditio.obj \ -+ $(SLO)$/validat.obj - .ENDIF - - EXCEPTIONSFILES= \ -Index: solenv/inc/unxlngs.mk -=================================================================== -RCS file: /cvs/tools/solenv/inc/unxlngs.mk,v -retrieving revision 1.2.50.2 -diff -u -u -r1.2.50.2 unxlngs.mk ---- solenv/inc/unxlngs.mk 30 Mar 2004 13:17:38 -0000 1.2.50.2 -+++ solenv/inc/unxlngs.mk 12 Jul 2004 08:02:55 -0000 -@@ -62,7 +62,7 @@ - - # mk file for unxlngs - ASM=$(CC) --AFLAGS=-Wa,-Av8plus,-K,PIC -c $(CDEFS) -+AFLAGS=-Wa,-K,PIC -c $(CDEFS) - - SOLAR_JAVA*=TRUE - JAVAFLAGSDEBUG=-g diff --git a/patches/OOO_1_1_2/stlport-compile-fix.diff b/patches/OOO_1_1_2/stlport-compile-fix.diff deleted file mode 100644 index 282dc11cf..000000000 --- a/patches/OOO_1_1_2/stlport-compile-fix.diff +++ /dev/null @@ -1,12 +0,0 @@ ---- sw/source/ui/frmdlg/frmpage.cxx.orig 2004-03-31 14:55:12.000000000 +0000 -+++ sw/source/ui/frmdlg/frmpage.cxx 2004-03-31 14:55:23.000000000 +0000 -@@ -551,7 +551,7 @@ - const ::std::vector< String >& rPrev, const ::std::vector< String >& rThis, - const ::std::vector< String >& rNext, const ::std::vector< String >& rRemain) - { -- ::std::vector< const String >::iterator aIt; -+ ::std::vector< String >::const_iterator aIt; - USHORT nEntry = 0; - for(aIt = rPrev.begin(); aIt != rPrev.end(); aIt++) - nEntry = rBox.InsertEntry(*aIt); - diff --git a/patches/OOO_1_1_2/system-curl.diff b/patches/OOO_1_1_2/system-curl.diff deleted file mode 100644 index ddeca044e..000000000 --- a/patches/OOO_1_1_2/system-curl.diff +++ /dev/null @@ -1,91 +0,0 @@ ---- curl/makefile.mk 16 Jul 2003 17:24:06 -0000 1.8 -+++ curl/makefile.mk 22 Dec 2003 15:07:10 -0000 -@@ -71,6 +71,12 @@ - - # --- Files -------------------------------------------------------- - -+.IF "$(SYSTEM_CURL)" == "YES" -+@all: -+ -+ echo "Using curl already installed on system." -+.ENDIF -+ - TARFILE_NAME=curl-7.9.8 - - .IF "$(GUI)"=="UNX" -Index: office/files.scp -=================================================================== -RCS file: /cvs/installation/scp/source/office/files.scp,v -retrieving revision 1.369.16.3.12.3 -diff -u -r1.369.16.3.12.3 files.scp ---- scp/source/office/files.scp 13 Dec 2003 15:36:15 -0000 1.369.16.3.12.3 -+++ scp/source/office/files.scp 22 Dec 2003 19:38:30 -0000 -@@ -938,6 +938,8 @@ - #endif - End - -+#ifndef SYSTEM_CURL -+ - File GID_FILE_LIB_CURL - TXT_FILE_BODY; - Styles = (PACKED); -@@ -949,6 +951,7 @@ - #endif - End - -+#endif - - File GID_FILE_LIB_I18NREGEXP - TXT_FILE_BODY; -Index: ftpurl.hxx -=================================================================== -RCS file: /cvs/ucb/ucb/source/ucp/ftp/ftpurl.hxx,v -retrieving revision 1.11 -diff -u -r1.11 ftpurl.hxx ---- ucb/source/ucp/ftp/ftpurl.hxx 27 Mar 2003 17:26:48 -0000 1.11 -+++ ucb/source/ucp/ftp/ftpurl.hxx 15 Jan 2004 03:16:09 -0000 -@@ -80,6 +80,9 @@ - #include "ftpdirp.hxx" - #include "ftpcfunc.hxx" - -+#define TRUE 1 -+#define FALSE 0 -+ - namespace ftp { - - /** Forward declarations. -Index: ftphandleprovider.hxx -=================================================================== -RCS file: /cvs/ucb/ucb/source/ucp/ftp/ftphandleprovider.hxx,v -retrieving revision 1.2 -diff -u -r1.2 ftphandleprovider.hxx ---- ucb/source/ucp/ftp/ftphandleprovider.hxx 15 Oct 2002 09:21:17 -0000 1.2 -+++ ucb/source/ucp/ftp/ftphandleprovider.hxx 20 Jul 2004 22:02:48 -0000 -@@ -1,5 +1,5 @@ - #include <rtl/ustring.hxx> --#include <curl/types.h> -+#include <curl/curl.h> - - namespace ftp { - -Index: ftploaderthread.hxx -=================================================================== -RCS file: /cvs/ucb/ucb/source/ucp/ftp/ftploaderthread.hxx,v -retrieving revision 1.5 -diff -u -r1.5 ftploaderthread.hxx ---- ucb/source/ucp/ftp/ftploaderthread.hxx 28 Aug 2002 07:23:14 -0000 1.5 -+++ ucb/source/ucp/ftp/ftploaderthread.hxx 20 Jul 2004 22:02:48 -0000 -@@ -71,11 +71,10 @@ - #ifndef _OSL_THREAD_H_ - #include <osl/thread.h> - #endif --#ifndef __CURL_TYPES_H --#include <curl/types.h> -+#ifndef __CURL_CURL_H -+#include <curl/curl.h> - #endif - -- - namespace ftp { - - /** A loaderthread acts as factory for CURL-handles, diff --git a/patches/OOO_1_1_2/system-freetype.diff b/patches/OOO_1_1_2/system-freetype.diff deleted file mode 100644 index f60d6a2c7..000000000 --- a/patches/OOO_1_1_2/system-freetype.diff +++ /dev/null @@ -1,69 +0,0 @@ ---- solenv/inc/libs.mk 31 Oct 2003 16:23:21 -0000 1.66.14.1 -+++ solenv/inc/libs.mk 9 Dec 2003 11:50:20 -0000 -@@ -135,9 +135,12 @@ - BSTRPLIB=-lbtstrp - VCLLIBST=-lvcl - VCLLIB=$(SVLIB) --FREETYPELIB=-lfreetype --FREETYPELIBST=$(STATIC) -lfreetype $(DYNAMIC) -+.IF "$(SYSTEM_FREETYPE)"!="YES" -+ FREETYPE_LIBS=-lfreetype -+.ENDIF -+FREETYPELIB=$(FREETYPE_LIBS) -+FREETYPELIBST=$(STATIC) $(FREETYPE_LIBS) $(DYNAMIC) - XPLIB=-l_xp - TKLIB=-ltk$(OFFICEUPD)$(DLLPOSTFIX) - SVTOOLLIB=-lsvt$(OFFICEUPD)$(DLLPOSTFIX) - ---- vcl/source/glyphs/makefile.mk 15 Feb 2002 15:52:27 -0000 1.5 -+++ vcl/source/glyphs/makefile.mk 9 Dec 2003 11:50:47 -0000 -@@ -73,6 +73,7 @@ - # --- Files -------------------------------------------------------- - - .IF "$(USE_BUILTIN_RASTERIZER)" != "" -+CFLAGS += $(FREETYPE_CFLAGS) - SLOFILES=\ - $(SLO)$/glyphcache.obj \ - $(SLO)$/gcach_rbmp.obj \ -Index: freetype/makefile.mk -=================================================================== ---- freetype/makefile.mk.orig 2003-05-28 14:41:19.000000000 +0200 -+++ freetype/makefile.mk 2004-01-08 00:48:40.000000000 +0100 -@@ -75,12 +75,12 @@ TARGET=so_freetype - # the X11 port because there are some header conflicts - # and linktime conflicts as well. It is simply less of - # a headache to use the one provided. --.IF "$(OS)" == "MACOSX" -+.IF "$(OS)" == "MACOSX" || "$(SYSTEM_FREETYPE)" == "YES" - - dummy: -- @echo "Nothing to build for MACOSX" -+ @echo "Nothing to build for OS $(OS)" - --.ELSE # "$(OS)" == "MACOSX" -+.ELSE # "$(OS)" == "MACOSX" || "$(SYSTEM_FREETYPE)" == "YES" - - TARFILE_NAME=freetype-2.1.4 - -Index: scp/source/global/setupzip.scp -=================================================================== ---- scp/source/global/setupzip.scp.orig 2003-12-12 21:11:03.000000000 +0100 -+++ scp/source/global/setupzip.scp 2004-01-08 00:49:26.000000000 +0100 -@@ -556,6 +556,8 @@ End - - #ifdef UNX - -+#ifndef SYSTEM_FREETYPE -+ - #ifndef MACOSX - File GID_FILE_LIB_FREETYPE - #if defined (LINUX) && ( defined (CLASSIC_FAT_PRODUCT) || defined (OSL_PRODUCT) || defined (FAM_PRODUCT) ) -@@ -573,6 +575,8 @@ File GID_FILE_LIB_FREETYPE - End - #endif - -+#endif -+ - #if defined (OSL_PRODUCT) && !defined(WITHOUT_FONTS) - STD_FONTUNX_FILE( GID_FILE_FNT_VERA, Vera.ttf, Vera Sans) - #endif diff --git a/patches/OOO_1_1_2/system-nas.diff b/patches/OOO_1_1_2/system-nas.diff deleted file mode 100644 index 18eb6a81f..000000000 --- a/patches/OOO_1_1_2/system-nas.diff +++ /dev/null @@ -1,65 +0,0 @@ ---- vcl/unx/source/app/makefile.mk 15 Aug 2003 11:25:34 -0000 1.9.250.1 -+++ vcl/unx/source/app/makefile.mk 6 Dec 2003 19:16:55 -0000 -@@ -116,6 +116,11 @@ - CDEFS+=-DHAVE_LIBSN - CFLAGS+=$(LIBSN_CFLAGS) - .ENDIF - -+.IF "$(SYSTEM_NAS)"=="YES" -+CDEFS+=-DSYSTEM_NAS -+CFLAGS+=-I$(NAS_INCLUDES) -+.ENDIF -+ - .IF "$(OS)$(CPU)" == "SOLARISS" - .IF "$(COM)"!="GCC" - -Index: nas/makefile.mk -=================================================================== ---- nas/makefile.mk.orig 2003-06-12 11:45:13.000000000 +0200 -+++ nas/makefile.mk 2004-08-13 20:36:27.571942400 +0200 -@@ -71,13 +71,14 @@ TARGET=nas - - # --- Files -------------------------------------------------------- - --.IF "$(OS)" == "MACOSX" || "$(OS)" == "IRIX" -+.IF "$(GUI)"!="UNX" || "$(OS)" == "MACOSX" || "$(OS)" == "IRIX" || "$(SYSTEM_NAS)" == "YES" - - dummy: - @echo "Nothing to build for OS $(OS)" - --.ELSE "$(OS)" == "MACOSX" || "$(OS)" == "IRIX" -+.ELSE "$(OS)" == "MACOSX" || "$(OS)" == "IRIX" || "$(SYSTEM_NAS)" == "YES" - -+.IF "$(SYSTEM_NAS)"!="YES" - TARFILE_NAME=nas-1.6 - - PATCH_FILE_NAME=nas-1.6.patch -@@ -101,11 +102,15 @@ BUILD_FLAGS=CC="$(CC)" CXX="$(CXX)" -j$( - BUILD_FLAGS=CC="$(CC)" CXX="$(CXX)" - .ENDIF - -+.ENDIF -+ -+.IF "$(SYSTEM_NAS)"!="YES" - OUT2LIB= \ - lib/audio/libaudio.a - - OUT2INC= \ - include/audio/*.h -+.ENDIF - - .ENDIF # "$(GUI)"=="UNX" - -Index: vcl/util/makefile.mk -=================================================================== ---- vcl/util/makefile.mk.orig 2004-03-03 15:33:18.000000000 +0100 -+++ vcl/util/makefile.mk 2004-08-13 20:38:35.327520600 +0200 -@@ -311,6 +311,8 @@ SHL1STDLIBS += -lXinerama - .ENDIF - - .IF "$(OS)"=="LINUX" || "$(OS)"=="SOLARIS" || "$(OS)"=="FREEBSD" -+# some nas versions need -lXt, too -+SHL1STDLIBS += -lXt - SHL1STDLIBS += -laudio - .IF "$(OS)"=="SOLARIS" - # needed by libaudio.a diff --git a/patches/OOO_1_1_2/system-neon.diff b/patches/OOO_1_1_2/system-neon.diff deleted file mode 100644 index e4cd1c01a..000000000 --- a/patches/OOO_1_1_2/system-neon.diff +++ /dev/null @@ -1,48 +0,0 @@ ---- neon/makefile.mk 24 Oct 2002 11:50:58 -0000 1.5 -+++ neon/makefile.mk 3 Mar 2004 01:30:41 -0000 -@@ -71,6 +71,11 @@ - - # --- Files -------------------------------------------------------- - -+.IF "$(SYSTEM_NEON)" == "YES" -+@all: -+ @echo "Using system neon...." -+.ENDIF -+ - NEON_NAME=neon-0.23.5 - - TARFILE_NAME=$(NEON_NAME) ---- ucb/source/ucp/webdav/makefile.mk 28 Jan 2004 10:15:32 -0000 1.20.4.1 -+++ ucb/source/ucp/webdav/makefile.mk 3 Mar 2004 23:18:51 -0000 -@@ -84,8 +84,12 @@ - .INCLUDE: settings.mk - .INCLUDE: sv.mk - -+.IF "$(SYSTEM_NEON)" == "YES" -+CFLAGS+= $(NEON_CFLAGS) -+.ELSE - NEONINCDIR=external$/neon - CFLAGS+= -I$(SOLARINCDIR)$/$(NEONINCDIR) -+.ENDIF - - # --- General ----------------------------------------------------- - -Index: NeonSession.cxx -=================================================================== -RCS file: /cvs/ucb/ucb/source/ucp/webdav/NeonSession.cxx,v -retrieving revision 1.28.4.1 -diff -u -r1.28.4.1 NeonSession.cxx ---- ucb/source/ucp/webdav/NeonSession.cxx 9 Jan 2004 19:07:09 -0000 1.28.4.1 -+++ ucb/source/ucp/webdav/NeonSession.cxx 4 Mar 2004 00:07:29 -0000 -@@ -63,7 +63,11 @@ - - #include <string.h> - -+#ifndef USE_DAV_LOCKS -+#ifndef SYSTEM_NEON - #include <neon/config.h> /* for USE_DAV_LOCKS */ -+#endif -+#endif - - #ifndef NE_AUTH_H - #include <neon/ne_auth.h> diff --git a/patches/OOO_1_1_2/sysui-translations.diff b/patches/OOO_1_1_2/sysui-translations.diff deleted file mode 100644 index 126a704fd..000000000 --- a/patches/OOO_1_1_2/sysui-translations.diff +++ /dev/null @@ -1,537 +0,0 @@ -Index: documents.ulf -=================================================================== -RCS file: /cvs/gsl/sysui/desktop/share/documents.ulf,v -retrieving revision 1.7.8.5 -diff -u -r1.7.8.5 documents.ulf ---- sysui/desktop/share/documents.ulf 27 Apr 2004 18:01:05 -0000 1.7.8.5 -+++ sysui/desktop/share/documents.ulf 10 Jun 2004 17:51:01 -0000 -@@ -1,12 +1,11 @@ - [writer] - en = "%PRODUCTNAME Text Document" - de = "%PRODUCTNAME Textdokument" --pt = "%PRODUCTNAME Textdokument" - el = "%PRODUCTNAME ΈγγÏαφο κειμÎνου" - nl = "%PRODUCTNAME Tekstdocument" - fr = "%PRODUCTNAME Texte" - es = "Documento de texto de %PRODUCTNAME " --fi = "%PRODUCTNAME Textdokument" -+fi = "%PRODUCTNAME Tekstiasiakirja" - hu = "%PRODUCTNAME-szövegesdokumentum" - it = "%PRODUCTNAME Documento di testo" - cs = "Textový dokument %PRODUCTNAME" -@@ -21,10 +20,7 @@ - zh-TW = "%PRODUCTNAME æ–‡å—文件" - tr = "PRODUCTNAME Metin belgesi" - ar = "%PRODUCTNAME مستند نص" --he = "%PRODUCTNAME Textdokument" --ca = "%PRODUCTNAME Document de text" --th = "%PRODUCTNAME Textdokument" --hi-IN = "%PRODUCTNAME Textdokument" -+ca = "Document de text d'%PRODUCTNAME" - et = "%PRODUCTNAME-i tekstidokument" - sl = "Dokument z besedilom programa %PRODUCTNAME" - ru = "%PRODUCTNAME ТекÑтовый документ" -@@ -35,13 +31,10 @@ - [writer-template] - en = "%PRODUCTNAME Text Document Template" - de = "%PRODUCTNAME Textdokumentvorlage" --pt = "%PRODUCTNAME Textdokumentvorlage" --ru = "%PRODUCTNAME Textdokumentvorlage" --el = "%PRODUCTNAME Textdokumentvorlage" - nl = "%PRODUCTNAME Tekstdocumentsjabloon" - fr = "Modèle de texte %PRODUCTNAME" - es = "Plantilla de documento de texto de %PRODUCTNAME" --fi = "%PRODUCTNAME Textdokumentvorlage" -+fi = "%PRODUCTNAME Tekstiasiakirjamalli" - hu = "%PRODUCTNAME-szövegesdokumentumsablon" - it = "Modello di documento di testo %PRODUCTNAME" - cs = "Å ablona textového dokumentu %PRODUCTNAME" -@@ -54,12 +47,7 @@ - ko = "%PRODUCTNAME í…스트 문서 ì„œì‹ íŒŒì¼" - zh-CN = "%PRODUCTNAME æ–‡æœ¬æ–‡æ¡£æ ·å¼" - zh-TW = "%PRODUCTNAME æ–‡å—文件樣å¼" --tr = "%PRODUCTNAME Textdokumentvorlage" --ar = "%PRODUCTNAME Textdokumentvorlage" --he = "%PRODUCTNAME Textdokumentvorlage" --ca = "%PRODUCTNAME Textdokumentvorlage" --th = "%PRODUCTNAME Textdokumentvorlage" --hi-IN = "%PRODUCTNAME Textdokumentvorlage" -+ca = "%PRODUCTNAME Plantilla de document de text d'%PRODUCTNAME" - et = "%PRODUCTNAME-i tekstidokumendi mall" - sl = "Predloga dokumenta z besedilom programa %PRODUCTNAME" - ns = "%PRODUCTNAME Template ya Tokumente ya Sengwalwa" -@@ -69,13 +57,12 @@ - [writer-global] - en = "%PRODUCTNAME Master Document" - de = "%PRODUCTNAME Globaldokument" --pt = "%PRODUCTNAME Globaldokument" - ru = "%PRODUCTNAME СоÑтавной документ" - el = "%PRODUCTNAME KÏÏιο ÎγγÏαφο" - nl = "%PRODUCTNAME Masterdocument" - fr = "%PRODUCTNAME Document maître" - es = "Documento maestro de %PRODUCTNAME " --fi = "%PRODUCTNAME Globaldokument" -+fi = "%PRODUCTNAME Pääasiakirja" - hu = "%PRODUCTNAME-fÅ‘dokumentum" - it = "%PRODUCTNAME Documento master" - cs = "Hlavnà dokument %PRODUCTNAME" -@@ -90,10 +77,7 @@ - zh-TW = "%PRODUCTNAME 主控文件" - tr = "%PRODUCTNAME Ana belge" - ar = "%PRODUCTNAME مستند شام?" --he = "%PRODUCTNAME Globaldokument" --ca = "%PRODUCTNAME Globaldokument" --th = "%PRODUCTNAME Globaldokument" --hi-IN = "%PRODUCTNAME Globaldokument" -+ca = "%PRODUCTNAME "Document mestre d'%PRODUCTNAME" - et = "%PRODUCTNAME-i põhidokument" - sl = "Glavni dokument programa %PRODUCTNAME" - ns = "Tokumente ya Master ya %PRODUCTNAME" -@@ -103,13 +87,12 @@ - [writer-math] - en = "%PRODUCTNAME Formula" - de = "%PRODUCTNAME Formel" --pt = "%PRODUCTNAME Formel" - ru = "%PRODUCTNAME Формула" - el = "%PRODUCTNAME ΤÏπος" - nl = "%PRODUCTNAME Formule" - fr = "%PRODUCTNAME Formule" - es = "Fórmula %PRODUCTNAME " --fi = "%PRODUCTNAME Formel" -+fi = "%PRODUCTNAME Kaava" - hu = "%PRODUCTNAME-képlet" - it = "%PRODUCTNAME Formula" - cs = "Vzorec %PRODUCTNAME" -@@ -124,10 +107,7 @@ - zh-TW = "%PRODUCTNAME å…¬å¼" - tr = "%PRODUCTNAME Formül" - ar = "%PRODUCTNAME صيغة" --he = "%PRODUCTNAME Formel" --ca = "%PRODUCTNAME Formel" --th = "%PRODUCTNAME Formel" --hi-IN = "%PRODUCTNAME Formel" -+ca = "Fòrmula d'%PRODUCTNAME" - et = "%PRODUCTNAME-i valem" - sl = "Formula programa %PRODUCTNAME" - ns = "Fomula ya %PRODUCTNAME" -@@ -137,13 +117,12 @@ - [impress] - en = "%PRODUCTNAME Presentation" - de = "%PRODUCTNAME Präsentation" --pt = "%PRODUCTNAME Präsentation" - ru = "%PRODUCTNAME ПрезентациÑ" - el = "%PRODUCTNAME ΠαÏουσίαση" - nl = "%PRODUCTNAME Presentatie" - fr = "%PRODUCTNAME Présentation" --es = "Presentación %PRODUCTNAME " --fi = "%PRODUCTNAME Präsentation" -+es = "Presentación %PRODUCTNAME" -+fi = "%PRODUCTNAME Esitys" - hu = "%PRODUCTNAME-bemutató" - it = "%PRODUCTNAME Presentazione" - cs = "Prezentace %PRODUCTNAME" -@@ -156,12 +135,7 @@ - ko = "%PRODUCTNAME í”„ë ˆì í…Œì´ì…˜" - zh-CN = "%PRODUCTNAME 演示文稿" - zh-TW = "%PRODUCTNAME ç°¡å ±" --tr = "%PRODUCTNAME Pr?sentation" --ar = "%PRODUCTNAME Pr?sentation" --he = "%PRODUCTNAME Präsentation" --ca = "%PRODUCTNAME Pr„sentation" --th = "%PRODUCTNAME Präsentation" --hi-IN = "%PRODUCTNAME Präsentation" -+ca = "Presentació d'%PRODUCTNAME" - et = "%PRODUCTNAME-i esitlus" - sl = "Predstavitev programa %PRODUCTNAME" - ns = "TlhagiÅ¡o ya %PRODUCTNAME" -@@ -171,31 +145,22 @@ - [impress-template] - en = "%PRODUCTNAME Presentation Template" - de = "%PRODUCTNAME Präsentationsvorlage" --pt = "%PRODUCTNAME Präsentationsvorlage" --ru = "%PRODUCTNAME Pr?sentationsvorlage" --el = "%PRODUCTNAME Pr?sentationsvorlage" - nl = "%PRODUCTNAME Presentatiesjabloon" - fr = "Modèle de présentation %PRODUCTNAME" - es = "Plantilla de presentación de %PRODUCTNAME" --fi = "%PRODUCTNAME Präsentationsvorlage" -+fi = "%PRODUCTNAME Esitysmalli" - hu = "%PRODUCTNAME-bemutatósablon" - it = "Modello di presentazione %PRODUCTNAME" - cs = "Å ablona prezentace %PRODUCTNAME" - sk = "Å ablóna prezentácie %PRODUCTNAME" - da = "%PRODUCTNAME-præsentationsskabelon" - sv = "%PRODUCTNAME-presentationsmall" --pl = "%PRODUCTNAME Präsentationsvorlage" - pt-BR = "Modelo de apresentação %PRODUCTNAME" - ja = "%PRODUCTNAME プレゼンテーション テンプレート" - ko = "%PRODUCTNAME í”„ë ˆì í…Œì´ì…˜ ì„œì‹ íŒŒì¼" - zh-CN = "%PRODUCTNAME æ¼”ç¤ºæ–‡ç¨¿æ ·å¼" - zh-TW = "%PRODUCTNAME ç°¡å ±æ¨£å¼" --tr = "%PRODUCTNAME Präsentationsvorlage" --ar = "%PRODUCTNAME Pr?sentationsvorlage" --he = "%PRODUCTNAME Präsentationsvorlage" --ca = "%PRODUCTNAME Präsentationsvorlage" --th = "%PRODUCTNAME Präsentationsvorlage" --hi-IN = "%PRODUCTNAME Präsentationsvorlage" -+ca = ""Plantilla de presentació d'%PRODUCTNAME" - et = "%PRODUCTNAME-i esitluse mall" - sl = "Predloga predstavitve programa %PRODUCTNAME" - ns = "%PRODUCTNAME Template ya TlhagiÅ¡o" -@@ -205,13 +170,12 @@ - [draw] - en = "%PRODUCTNAME Drawing" - de = "%PRODUCTNAME Zeichnung" --pt = "%PRODUCTNAME Zeichnung" - ru = "%PRODUCTNAME РиÑунок" - el = "%PRODUCTNAME ΣχÎδιο" - nl = "%PRODUCTNAME Tekening" - fr = "%PRODUCTNAME Dessin" - es = "Dibujo %PRODUCTNAME" --fi = "%PRODUCTNAME Zeichnung" -+fi = "%PRODUCTNAME Piirros" - hu = "%PRODUCTNAME-rajz" - it = "%PRODUCTNAME Disegno" - cs = "Kresba %PRODUCTNAME" -@@ -226,10 +190,7 @@ - zh-TW = "%PRODUCTNAME 繪圖" - tr = "%PRODUCTNAME Çizim" - ar = "%PRODUCTNAME رسم" --he = "%PRODUCTNAME Zeichnung" --ca = "%PRODUCTNAME Dibuix" --th = "%PRODUCTNAME Zeichnung" --hi-IN = "%PRODUCTNAME Zeichnung" -+ca = "Dibuix d'%PRODUCTNAME" - et = "%PRODUCTNAME-i joonistus" - sl = "Risba programa %PRODUCTNAME" - ns = "Go thala ga %PRODUCTNAME" -@@ -239,31 +200,22 @@ - [draw-template] - en = "%PRODUCTNAME Drawing Template" - de = "%PRODUCTNAME Zeichnungsvorlage" --pt = "%PRODUCTNAME Zeichnungsvorlage" --ru = "%PRODUCTNAME Zeichnungsvorlage" --el = "%PRODUCTNAME Zeichnungsvorlage" - nl = "%PRODUCTNAME Tekeningsjabloon" - fr = "Modèle de dessin %PRODUCTNAME" - es = "Plantilla de dibujo de %PRODUCTNAME" --fi = "%PRODUCTNAME Zeichnungsvorlage" -+fi = "%PRODUCTNAME Piirrosmalli" - hu = "%PRODUCTNAME-rajzsablon" - it = "Modello di disegno %PRODUCTNAME" - cs = "Å ablona kresby %PRODUCTNAME" - sk = "Å ablóna kresby %PRODUCTNAME" - da = "%PRODUCTNAME-tegningsskabelon" - sv = "%PRODUCTNAME-teckningsmall" --pl = "%PRODUCTNAME Zeichnungsvorlage" - pt-BR = "Modelo de desenho %PRODUCTNAME" - ja = "%PRODUCTNAME 図形æ画テンプレート" - ko = "%PRODUCTNAME 그리기 ì„œì‹ íŒŒì¼" - zh-CN = "%PRODUCTNAME ç»˜å›¾æ ·å¼" - zh-TW = "%PRODUCTNAME 繪圖樣å¼" --tr = "%PRODUCTNAME Zeichnungsvorlage" --ar = "%PRODUCTNAME Zeichnungsvorlage" --he = "%PRODUCTNAME Zeichnungsvorlage" --ca = "%PRODUCTNAME Zeichnungsvorlage" --th = "%PRODUCTNAME Zeichnungsvorlage" --hi-IN = "%PRODUCTNAME Zeichnungsvorlage" -+ca = "Plantilla de dibuix d'%PRODUCTNAME" - et = "%PRODUCTNAME-i joonistuse mall" - sl = "Predloga risbe programa %PRODUCTNAME" - ns = "%PRODUCTNAME Template ya go Thala" -@@ -273,13 +225,12 @@ - [calc] - en = "%PRODUCTNAME Spreadsheet" - de = "%PRODUCTNAME Tabelle" --pt = "%PRODUCTNAME Tabelle" - ru = "%PRODUCTNAME ÐÐ»ÐµÐºÑ‚Ñ€Ð¾Ð½Ð½Ð°Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ð°" - el = "%PRODUCTNAME Πίνακας" - nl = "%PRODUCTNAME Tabel" - fr = "%PRODUCTNAME Classeur" --es = "Hoja de cálculo de %PRODUCTNAME " --fi = "%PRODUCTNAME Tabelle" -+es = "Hoja de cálculo de %PRODUCTNAME" -+fi = "%PRODUCTNAME Laskentataulukko" - hu = "%PRODUCTNAME-munkafüzet" - it = "%PRODUCTNAME Tabella" - cs = "SeÅ¡it %PRODUCTNAME" -@@ -293,11 +244,7 @@ - zh-CN = "%PRODUCTNAME 工作表" - zh-TW = "%PRODUCTNAME 工作表" - tr = "%PRODUCTNAME Tablo" --ar = "%PRODUCTNAME Tabelle" --he = "%PRODUCTNAME Tabelle" --ca = "%PRODUCTNAME Tabelle" --th = "%PRODUCTNAME Tabelle" --hi-IN = "%PRODUCTNAME Tabelle" -+ca = "Fulla de cÃ| lcul d'%PRODUCTNAME" - et = "%PRODUCTNAME-i arvutustabel" - sl = "Preglednica programa %PRODUCTNAME" - ns = "Pampiri ya go anega ya %PRODUCTNAME" -@@ -307,31 +254,22 @@ - [calc-template] - en = "%PRODUCTNAME Spreadsheet Template" - de = "%PRODUCTNAME Tabellenvorlage" --pt = "%PRODUCTNAME Tabellenvorlage" --ru = "%PRODUCTNAME Tabellenvorlage" --el = "%PRODUCTNAME Tabellenvorlage" - nl = "%PRODUCTNAME Werkbladsjabloon" - fr = "Modèle de classeur %PRODUCTNAME" - es = "Plantilla de hoja de cálculo de %PRODUCTNAME" --fi = "%PRODUCTNAME Tabellenvorlage" -+fi = "%PRODUCTNAME Laskentataulukkomalli" - hu = "%PRODUCTNAME-munkafüzetsablon" - it = "Modello di foglio elettronico %PRODUCTNAME" - cs = "Å ablona seÅ¡itu %PRODUCTNAME" - sk = "Å ablóna tabuľky %PRODUCTNAME" - da = "%PRODUCTNAME-regnearksskabelon" - sv = "%PRODUCTNAME-tabellmall" --pl = "%PRODUCTNAME Tabellenvorlage" - pt-BR = "Modelo de planilha %PRODUCTNAME" - ja = "%PRODUCTNAME 表計算テンプレート" - ko = "%PRODUCTNAME ìŠ¤í”„ë ˆë“œì‹œíŠ¸ ì„œì‹ íŒŒì¼" - zh-CN = "%PRODUCTNAME å·¥ä½œè¡¨æ ·å¼" - zh-TW = "%PRODUCTNAME 工作表樣å¼" --tr = "%PRODUCTNAME Tabellenvorlage" --ar = "%PRODUCTNAME Tabellenvorlage" --he = "%PRODUCTNAME Tabellenvorlage" --ca = "%PRODUCTNAME Tabellenvorlage" --th = "%PRODUCTNAME Tabellenvorlage" --hi-IN = "%PRODUCTNAME Tabellenvorlage" -+ca = "Plantilla de fulla de cÃ| lcul d'%PRODUCTNAME" - et = "%PRODUCTNAME-i arvutustabeli mall" - sl = "Predloga preglednice programa %PRODUCTNAME" - ns = "%PRODUCTNAME Template ya Pampiri ya go Anega" -Index: launcher_comment.ulf -=================================================================== -RCS file: /cvs/gsl/sysui/desktop/share/launcher_comment.ulf,v -retrieving revision 1.8.8.6 -diff -u -r1.8.8.6 launcher_comment.ulf ---- sysui/desktop/share/launcher_comment.ulf 27 Apr 2004 18:01:17 -0000 1.8.8.6 -+++ sysui/desktop/share/launcher_comment.ulf 10 Jun 2004 17:51:01 -0000 -@@ -1,13 +1,12 @@ - [writer] - en = "%PRODUCTNAME Text Document" - de = "%PRODUCTNAME Textdokument" --pt = "%PRODUCTNAME Textdokument" - ru = "%PRODUCTNAME ТекÑтовый документ" - el = "%PRODUCTNAME ΈγγÏαφο κειμÎνου" - nl = "%PRODUCTNAME Tekstdocument" - fr = "%PRODUCTNAME Texte" --es = "Documento de texto %PRODUCTNAME " --fi = "%PRODUCTNAME Textdokument" -+es = "Documento de texto %PRODUCTNAME" -+fi = "%PRODUCTNAME Tekstiasiakirja" - hu = "%PRODUCTNAME-szövegesdokumentum" - it = "%PRODUCTNAME Documento di testo" - cs = "Textový dokument %PRODUCTNAME" -@@ -22,10 +21,7 @@ - zh-TW = "%PRODUCTNAME æ–‡å—文件" - tr = "PRODUCTNAME Metin belgesi" - ar = "%PRODUCTNAME مستند نص" --he = "%PRODUCTNAME Textdokument" --ca = "%PRODUCTNAME Document de text" --th = "%PRODUCTNAME Textdokument" --hi-IN = "%PRODUCTNAME Textdokument" -+ca = "Document de text d'%PRODUCTNAME" - et = "%PRODUCTNAME-i tekstidokument" - sl = "Dokument z besedilom programa %PRODUCTNAME" - cy = "Dogfen Testun %PRODUCTNAME" -@@ -36,13 +32,12 @@ - [web] - en = "%PRODUCTNAME HTML Document" - de = "%PRODUCTNAME HTML Dokument" --pt = "%PRODUCTNAME HTML Dokument" - ru = "%PRODUCTNAME HTML-документ" - el = "%PRODUCTNAME ΈγγÏαφο HTML" - nl = "%PRODUCTNAME HTML-document" - fr = "%PRODUCTNAME Document HTML" --es = "Documento HTML %PRODUCTNAME " --fi = "%PRODUCTNAME HTML Dokument" -+es = "Documento HTML %PRODUCTNAME" -+fi = "%PRODUCTNAME HTML-asiakirja" - hu = "%PRODUCTNAME HTML-dokumentum" - it = "%PRODUCTNAME Documento HTML" - cs = "HTML dokument %PRODUCTNAME" -@@ -55,12 +50,7 @@ - ko = "%PRODUCTNAME HTML 문서" - zh-CN = "%PRODUCTNAME HTML 文档" - zh-TW = "%PRODUCTNAME HTML 文件" --tr = "%PRODUCTNAME HTML Dokument" --ar = "%PRODUCTNAME HTML Dokument" --he = "%PRODUCTNAME HTML Dokument" --ca = "%PRODUCTNAME HTML Dokument" --th = "%PRODUCTNAME HTML Dokument" --hi-IN = "%PRODUCTNAME HTML Dokument" -+ca = "Document HTML d'%PRODUCTNAME" - et = "%PRODUCTNAME-i HTML-dokument" - sl = "HTML dokument programa %PRODUCTNAME" - ns = "Tokumente ya HTML ya %PRODUCTNAME" -@@ -70,13 +60,12 @@ - [impress] - en = "%PRODUCTNAME Presentation" - de = "%PRODUCTNAME Präsentation" --pt = "%PRODUCTNAME Präsentation" - ru = "%PRODUCTNAME ПрезентациÑ" - el = "%PRODUCTNAME ΠαÏουσίαση" - nl = "%PRODUCTNAME Presentatie" - fr = "%PRODUCTNAME Présentation" --es = "Presentación %PRODUCTNAME " --fi = "%PRODUCTNAME Präsentation" -+es = "Presentación %PRODUCTNAME" -+fi = "%PRODUCTNAME Esitys" - hu = "%PRODUCTNAME-bemutató" - it = "%PRODUCTNAME Presentazione" - cs = "Prezentace %PRODUCTNAME" -@@ -89,12 +78,7 @@ - ko = "%PRODUCTNAME í”„ë ˆì í…Œì´ì…˜" - zh-CN = "%PRODUCTNAME 演示文稿" - zh-TW = "%PRODUCTNAME ç°¡å ±" --tr = "%PRODUCTNAME Pr?sentation" --ar = "%PRODUCTNAME Pr?sentation" --he = "%PRODUCTNAME Präsentation" --ca = "%PRODUCTNAME Pr„sentation" --th = "%PRODUCTNAME Präsentation" --hi-IN = "%PRODUCTNAME Präsentation" -+ca = "Presentació d'%PRODUCTNAME" - et = "%PRODUCTNAME-i esitlus" - sl = "Predstavitev programa %PRODUCTNAME" - ns = "TlhagiÅ¡o ya %PRODUCTNAME" -@@ -110,7 +94,7 @@ - nl = "%PRODUCTNAME Tekening" - fr = "%PRODUCTNAME Dessin" - es = "Dibujo %PRODUCTNAME" --fi = "%PRODUCTNAME Zeichnung" -+fi = "%PRODUCTNAME Pirros" - hu = "%PRODUCTNAME-rajz" - it = "%PRODUCTNAME Disegno" - cs = "Kresba %PRODUCTNAME" -@@ -126,7 +110,7 @@ - tr = "%PRODUCTNAME Çizim" - ar = "%PRODUCTNAME رسم" - he = "%PRODUCTNAME Zeichnung" --ca = "%PRODUCTNAME Dibuix" -+ca = "Dibuix d'%PRODUCTNAME" - th = "%PRODUCTNAME Zeichnung" - hi-IN = "%PRODUCTNAME Zeichnung" - et = "%PRODUCTNAME-i joonistus" -@@ -138,13 +122,12 @@ - [calc] - en = "%PRODUCTNAME Spreadsheet" - de = "%PRODUCTNAME Tabelle" --pt = "%PRODUCTNAME Tabelle" - ru = "%PRODUCTNAME ÐÐ»ÐµÐºÑ‚Ñ€Ð¾Ð½Ð½Ð°Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ð°" - el = "%PRODUCTNAME Πίνακας" - nl = "%PRODUCTNAME Tabel" - fr = "%PRODUCTNAME Classeur" - es = "Hoja de cálculo %PRODUCTNAME" --fi = "%PRODUCTNAME Tabelle" -+fi = "%PRODUCTNAME Laskentataulukko" - hu = "PRODUCTNAME-munkafüzet" - it = "%PRODUCTNAME Tabella" - cs = "SeÅ¡it %PRODUCTNAME" -@@ -158,11 +141,7 @@ - zh-CN = "%PRODUCTNAME 工作表" - zh-TW = "%PRODUCTNAME 工作表" - tr = "%PRODUCTNAME Tablo" --ar = "%PRODUCTNAME Tabelle" --he = "%PRODUCTNAME Tabelle" --ca = "%PRODUCTNAME Tabelle" --th = "%PRODUCTNAME Tabelle" --hi-IN = "%PRODUCTNAME Tabelle" -+ca = "Fulla de cÃ| lcul d'%PRODUCTNAME" - et = "%PRODUCTNAME-i arvutustabel" - sl = "Preglednica programa %PRODUCTNAME" - ns = "Pampiri ya go anega ya %PRODUCTNAME" -@@ -172,13 +151,12 @@ - [math] - en = "%PRODUCTNAME Formula" - de = "%PRODUCTNAME Formel" --pt = "%PRODUCTNAME Formel" - ru = "%PRODUCTNAME Формула" - el = "%PRODUCTNAME ΤÏπος" - nl = "%PRODUCTNAME Formule" - fr = "%PRODUCTNAME Formule" - es = "Fórmula %PRODUCTNAME " --fi = "%PRODUCTNAME Formel" -+fi = "%PRODUCTNAME Kaava" - hu = "%PRODUCTNAME-képlet" - it = "%PRODUCTNAME Formula" - cs = "Vzorec %PRODUCTNAME" -@@ -193,10 +171,7 @@ - zh-TW = "%PRODUCTNAME å…¬å¼" - tr = "%PRODUCTNAME Formül" - ar = "%PRODUCTNAME صيغة" --he = "%PRODUCTNAME Formel" --ca = "%PRODUCTNAME Formel" --th = "%PRODUCTNAME Formel" --hi-IN = "%PRODUCTNAME Formel" -+ca = "Fòrmula d'%PRODUCTNAME" - et = "%PRODUCTNAME-i valem" - sl = "Formula programa %PRODUCTNAME" - ns = "Fomula ya %PRODUCTNAME" -Index: launcher_name.ulf -=================================================================== -RCS file: /cvs/gsl/sysui/desktop/share/launcher_name.ulf,v -retrieving revision 1.7.8.5 -diff -u -r1.7.8.5 launcher_name.ulf ---- sysui/desktop/share/launcher_name.ulf 27 Apr 2004 18:01:32 -0000 1.7.8.5 -+++ sysui/desktop/share/launcher_name.ulf 10 Jun 2004 17:51:01 -0000 -@@ -1,13 +1,11 @@ - [printeradmin] - en = "%PRODUCTNAME Printer Administration" - de = "%PRODUCTNAME Drucker Verwaltung" --pt = "%PRODUCTNAME Drucker Verwaltung" - ru = "%PRODUCTNAME Управление принтером" --el = "%PRODUCTNAME Drucker Verwaltung" - nl = "%PRODUCTNAME printerbeheer" - fr = "%PRODUCTNAME Gestion des imprimantes" --es = "Administración de la impresora de %PRODUCTNAME " --fi = "%PRODUCTNAME Drucker Verwaltung" -+es = "Administración de la impresora de %PRODUCTNAME -+fi = "%PRODUCTNAME Tulostinhallinta" - hu = "%PRODUCTNAME Nyomtatókezelés" - it = "%PRODUCTNAME Gestione stampanti" - cs = "Administrace tiskáren %PRODUCTNAME" -@@ -21,11 +19,7 @@ - zh-CN = "%PRODUCTNAME 打å°æœºç®¡ç†" - zh-TW = "%PRODUCTNAME å°è¡¨æ©Ÿç®¡ç†" - tr = "%PRODUCTNAME Printer Administration" --ar = "%PRODUCTNAME Drucker Verwaltung" --he = "%PRODUCTNAME Drucker Verwaltung" --ca = "%PRODUCTNAME Drucker Verwaltung" --th = "%PRODUCTNAME Drucker Verwaltung" --hi-IN = "%PRODUCTNAME Drucker Verwaltung" -+ca = "Administració d'impressó d'%PRODUCTNAME" - et = "%PRODUCTNAME-i printerite haldamine" - sl = "%PRODUCTNAME nastavitve tiskalnika" - cy = "Gweinyddiad Argraffu %PRODUCTNAME" -@@ -36,13 +30,12 @@ - [template] - en = "%PRODUCTNAME From Template" - de = "%PRODUCTNAME Aus Vorlage" --pt = "%PRODUCTNAME Aus Vorlage" - ru = "%PRODUCTNAME Из шаблона" - el = "%PRODUCTNAME Από Ï€Ïότυπο" - nl = "%PRODUCTNAME Uit sjabloon" - fr = "À partir d'un modèle %PRODUCTNAME" - es = "A partir de una plantilla de %PRODUCTNAME" --fi = "%PRODUCTNAME Aus Vorlage" -+fi = "%PRODUCTNAME Asiakirjamallipohjasta" - hu = "%PRODUCTNAME sablonból" - it = "%PRODUCTNAME Da modello" - cs = "Ze Å¡ablony %PRODUCTNAME" -@@ -55,12 +48,7 @@ - ko = "%PRODUCTNAME ì„œì‹ íŒŒì¼ë¡œë¶€í„°" - zh-CN = "%PRODUCTNAME é‡‡ç”¨æ ·å¼" - zh-TW = "%PRODUCTNAME 採用樣å¼" --tr = "%PRODUCTNAME Aus Vorlage" --ar = "%PRODUCTNAME Aus Vorlage" --he = "%PRODUCTNAME Aus Vorlage" --ca = "%PRODUCTNAME Aus Vorlage" --th = "%PRODUCTNAME Aus Vorlage" --hi-IN = "%PRODUCTNAME Aus Vorlage" -+ca = "Des d'una plantilla d'%PRODUCTNAME" - et = "%PRODUCTNAME mallist" - sl = "%PRODUCTNAME iz predloge" - ns = "%PRODUCTNAME go tÅ¡wa go Template" diff --git a/patches/OOO_1_1_2/vcl-arabic-fallback.diff b/patches/OOO_1_1_2/vcl-arabic-fallback.diff deleted file mode 100644 index 33cc5574f..000000000 --- a/patches/OOO_1_1_2/vcl-arabic-fallback.diff +++ /dev/null @@ -1,20 +0,0 @@ -=================================================================== -RCS file: /opt/sourcecast/data/ccvs/repository/gsl/vcl/source/gdi/sallayout.cxx,v -retrieving revision 1.46.10.6 -retrieving revision 1.46.10.6.8.1 -diff -u -r1.46.10.6 -r1.46.10.6.8.1 ---- vcl/source/gdi/sallayout.cxx 2004/04/07 11:02:20 1.46.10.6 -+++ vcl/source/gdi/sallayout.cxx 2004/05/03 11:04:49 1.46.10.6.8.1 -@@ -822,9 +822,10 @@ - nXPosMax = nXPos; - } - -- // rightmost cluster edge is leftmost edge of next cluster -+ // when the current cluster overlaps with the next one assume -+ // rightmost cluster edge is the leftmost edge of next cluster - if( (i > 0) && (nXPosMax > pG[1].maLinearPos.X()) ) -- nXPosMax = pG->maLinearPos.X(); -+ nXPosMax = pG[1].maLinearPos.X(); - - // character width is sum of glyph cluster widths - pCharWidths[n] += nXPosMax - nXPosMin; diff --git a/patches/OOO_1_1_2/vcl-xinerama-link-dynamic.diff b/patches/OOO_1_1_2/vcl-xinerama-link-dynamic.diff deleted file mode 100644 index 3f239eb7c..000000000 --- a/patches/OOO_1_1_2/vcl-xinerama-link-dynamic.diff +++ /dev/null @@ -1,65 +0,0 @@ -Index: vcl/unx/source/app/makefile.mk -=================================================================== ---- vcl/unx/source/app/makefile.mk.orig 2004-08-13 21:12:07.124680944 +0200 -+++ vcl/unx/source/app/makefile.mk 2004-08-14 01:13:03.649346528 +0200 -@@ -116,6 +116,11 @@ CDEFS+=-DHAVE_LIBSN - CFLAGS+=$(LIBSN_CFLAGS) - .ENDIF - -+ -+.IF "$(USE_XINERAMA)" != "NO" -+CDEFS+=-DUSE_XINERAMA -+.ENDIF -+ - .IF "$(OS)$(CPU)" == "SOLARISS" - .IF "$(COM)"!="GCC" - SLOFILES+=$(SLO)$/getfpsols.obj -Index: vcl/unx/source/app/saldisp.cxx -=================================================================== ---- vcl/unx/source/app/saldisp.cxx.orig 2004-08-13 21:12:07.142678208 +0200 -+++ vcl/unx/source/app/saldisp.cxx 2004-08-14 01:13:03.670343336 +0200 -@@ -235,7 +235,7 @@ extern "C" { int gethostname(char*,int); - - #include <X11/Xatom.h> - #ifndef SOLARIS --#if defined(X86) || defined(MACOSX) -+#ifdef USE_XINERAMA - #include <X11/extensions/Xinerama.h> - #endif - #endif -@@ -3029,6 +3029,7 @@ void SalDisplay::GetScreenFontResolution - - void SalDisplay::InitXinerama() - { -+#ifdef USE_XINERAMA - #if defined( SOLARIS ) - // do this load on call for benefit of Solaris < 8 - rtl::OUString aLib( RTL_CONSTASCII_USTRINGPARAM( "libXext.so" ) ); -@@ -3088,6 +3089,7 @@ void SalDisplay::InitXinerama() - } - #endif - #endif -+#endif - #ifdef DEBUG - if( m_bXinerama ) - { -Index: vcl/util/makefile.mk -=================================================================== ---- vcl/util/makefile.mk.orig 2004-08-14 01:12:59.544970488 +0200 -+++ vcl/util/makefile.mk 2004-08-14 01:13:03.672343032 +0200 -@@ -298,9 +298,13 @@ SHL1STDLIBS += -lXext -lSM -lICE -lX11 - .IF "$(USE_XPRINT)" == "TRUE" - SHL1STDLIBS += -lXp -lXext -lSM -lICE -lX11 - .ELSE --.IF "$(CPU)" == "I" -+.IF "$(USE_XINERAMA)" != "NO" -+.IF "$(XINERAMA_LINK)" == "dynamic" -+SHL1STDLIBS += -lXinerama -+.ELSE - SHL1STDLIBS += -Wl,-Bstatic -lXinerama -Wl,-Bdynamic --.ENDIF -+.ENDIF # $(XINERAMA_LINK) -+.ENDIF # $(USE_XINERAMA) - SHL1STDLIBS += -lXext -lSM -lICE -lX11 - .ENDIF # "$(USE_XPRINT)" == "TRUE" - .ENDIF # "$(OS)"=="SOLARIS" diff --git a/patches/evo2/connectivity-source-drivers-evoab1-5-makefile-mk.diff b/patches/evo2/connectivity-source-drivers-evoab1-5-makefile-mk.diff index 9ca8e7d35..754a87a76 100644 --- a/patches/evo2/connectivity-source-drivers-evoab1-5-makefile-mk.diff +++ b/patches/evo2/connectivity-source-drivers-evoab1-5-makefile-mk.diff @@ -124,7 +124,7 @@ +.IF "$(DBFILELIB)" == "" +SHL1STDLIBS+= ifile$(UPD).lib +.ENDIF -+SHL1STDLIBS+=`pkg-config --libs libebook-1.0 ` ++SHL1STDLIBS+=`pkg-config --libs libebook-1.0` -lgobject-2.0 + +SHL1DEPN= +SHL1IMPLIB= i$(TARGET) diff --git a/patches/vclplug/crash-ppd-parse.diff b/patches/vclplug/crash-ppd-parse.diff index 8c41014b0..6d0edd6cc 100644 --- a/patches/vclplug/crash-ppd-parse.diff +++ b/patches/vclplug/crash-ppd-parse.diff @@ -1,22 +1,28 @@ ---- psprint.good/source/printer/cupsmgr.cxx 2004-09-27 04:24:33.000000000 +0100 -+++ psprint/source/printer/cupsmgr.cxx 2004-09-29 17:19:32.578417056 +0100 -@@ -495,11 +495,14 @@ - - rInfo.m_pParser = pNewParser; - rInfo.m_aContext.setParser( pNewParser ); -- for( int i = 0; i < pPPD->num_groups; i++ ) -- updatePrinterContextInfo( pPPD->groups + i, rInfo ); -- -- // clean up the mess -- m_pCUPSWrapper->ppdClose( pPPD ); -+ if (pPPD) -+ { -+ for( int i = 0; i < pPPD->num_groups; i++ ) -+ updatePrinterContextInfo( pPPD->groups + i, rInfo ); -+ -+ // clean up the mess -+ m_pCUPSWrapper->ppdClose( pPPD ); -+ } - - // remove temporary PPD file - unlink( pPPDFile ); +diff -urd psprint/source/printer/cupsmgr.cxx psprint-fixppdcrash/source/printer/cupsmgr.cxx +--- psprint/source/printer/cupsmgr.cxx 2004-11-09 16:37:51.000000000 +0000 ++++ psprint-fixppdcrash/source/printer/cupsmgr.cxx 2004-11-24 21:42:59.000000000 +0000 +@@ -601,14 +601,20 @@ + // remember the default context for later use + PPDContext& rContext = m_aDefaultContexts[ aPrinter ]; + rContext.setParser( pNewParser ); +- for( int i = 0; i < pPPD->num_groups; i++ ) +- updatePrinterContextInfo( pPPD->groups + i, rContext ); ++ if(pPPD) ++ { ++ for( int i = 0; i < pPPD->num_groups; i++ ) ++ updatePrinterContextInfo( pPPD->groups + i, rContext ); ++ } + + rInfo.m_pParser = pNewParser; + rInfo.m_aContext = rContext; + +- // clean up the mess +- m_pCUPSWrapper->ppdClose( pPPD ); ++ if(pPPD) ++ { ++ // clean up the mess ++ m_pCUPSWrapper->ppdClose( pPPD ); ++ } + } + #if OSL_DEBUG_LEVEL > 1 + else diff --git a/patches/vclplug/psprint-defaultencoding.diff b/patches/vclplug/psprint-defaultencoding.diff new file mode 100644 index 000000000..8a5f39b54 --- /dev/null +++ b/patches/vclplug/psprint-defaultencoding.diff @@ -0,0 +1,27 @@ +--- psprint/source/fontmanager/fontmanager.cxx 2004-10-13 09:22:36.000000000 +0100 ++++ psprint-patched/source/fontmanager/fontmanager.cxx 2004-11-25 18:10:05.000000000 +0000 +@@ -829,10 +829,10 @@ + + if( m_aEncoding == RTL_TEXTENCODING_DONTKNOW ) + m_aEncoding = nAdobeEncoding == 1 ? +- RTL_TEXTENCODING_ADOBE_STANDARD : RTL_TEXTENCODING_SYMBOL; ++ RTL_TEXTENCODING_MS_1252 : RTL_TEXTENCODING_SYMBOL; + } + else if( m_aEncoding == RTL_TEXTENCODING_DONTKNOW ) +- m_aEncoding = RTL_TEXTENCODING_ADOBE_STANDARD; ++ m_aEncoding = RTL_TEXTENCODING_MS_1252; + + // try to parse the font name and decide wether it might be a + // japanese font. Who invented this PITA ? +@@ -1669,10 +1669,7 @@ + const char* pEnc = rtl_getBestUnixCharsetFromTextEncoding( pFont->m_aEncoding ); + if( ! pEnc ) + { +- if( pFont->m_aEncoding == RTL_TEXTENCODING_ADOBE_STANDARD ) +- pEnc = "adobe-standard"; +- else +- pEnc = "iso8859-1"; ++ pEnc = "iso8859-1"; + } + aXLFD .append( pEnc ); + diff --git a/patches/vclplug/psprint-fontconfigvar.diff b/patches/vclplug/psprint-fontconfigvar.diff new file mode 100644 index 000000000..c951eae0c --- /dev/null +++ b/patches/vclplug/psprint-fontconfigvar.diff @@ -0,0 +1,11 @@ +--- psprint/source/fontmanager/makefile.mk 2004-03-15 12:03:52.000000000 +0000 ++++ psprint-patched/source/fontmanager/makefile.mk 2004-11-25 23:01:53.000000000 +0000 +@@ -72,7 +72,7 @@ + + CFLAGS+= -I..$/fontsubset + +-.IF "$(ENABLE_FONTCONFIG)" != "" ++.IF "$(FONTCONFIG_FONTS)" != "" + CDEFS += -DENABLE_FONTCONFIG + .ENDIF + diff --git a/patches/vclplug/psprint-m46-to-m53.diff b/patches/vclplug/psprint-m46-to-m53.diff deleted file mode 100644 index 3c474399f..000000000 --- a/patches/vclplug/psprint-m46-to-m53.diff +++ /dev/null @@ -1,1618 +0,0 @@ -Index: inc/cupsmgr.hxx -=================================================================== -RCS file: /cvs/gsl/psprint/inc/cupsmgr.hxx,v -retrieving revision 1.2 -retrieving revision 1.3 -diff -w -u -r1.2 -r1.3 ---- psprint/inc/cupsmgr.hxx 17 Mar 2004 10:47:45 -0000 1.2 -+++ psprint/inc/cupsmgr.hxx 23 Jul 2004 10:07:09 -0000 1.3 -@@ -64,6 +64,8 @@ - - #include <psprint/printerinfomanager.hxx> - #include <osl/module.h> -+#include <osl/thread.h> -+#include <osl/mutex.hxx> - - namespace psp - { -@@ -83,7 +85,7 @@ - std::hash_map< FILE*, rtl::OString, FPtrHash > m_aSpoolFiles; - int m_nDests; - void* m_pDests; -- bool m_bFirstDest; -+ bool m_bNewDests; - std::hash_map< rtl::OUString, int, rtl::OUStringHash > m_aCUPSDestMap; - - rtl::OString m_aUser; -@@ -92,10 +94,16 @@ - // the password, so this cannot be helped - rtl::OString m_aPassword; - -- CUPSManager( CUPSWrapper*, int nDests = 0, void* pDests = NULL ); -+ osl::Mutex m_aCUPSMutex; -+ oslThread m_aDestThread; -+ -+ CUPSManager( CUPSWrapper* ); - virtual ~CUPSManager(); - - virtual void initialize(); -+ -+ void runDests(); -+ static void runDestThread(void* pMgr); - public: - - static CUPSManager* tryLoadCUPS(); -Index: inc/psprint/fontcache.hxx -=================================================================== -RCS file: /cvs/gsl/psprint/inc/psprint/fontcache.hxx,v -retrieving revision 1.3 -retrieving revision 1.4 -diff -w -u -r1.3 -r1.4 ---- psprint/inc/psprint/fontcache.hxx 2 Feb 2004 18:52:33 -0000 1.3 -+++ psprint/inc/psprint/fontcache.hxx 5 Jul 2004 09:21:57 -0000 1.4 -@@ -108,6 +108,7 @@ - void clearCache(); - - void copyPrintFont( const PrintFontManager::PrintFont* pFrom, PrintFontManager::PrintFont* pTo ) const; -+ bool equalsPrintFont( const PrintFontManager::PrintFont* pLeft, PrintFontManager::PrintFont* pRight ) const; - PrintFontManager::PrintFont* clonePrintFont( const PrintFontManager::PrintFont* pFont ) const; - - void createCacheDir( int nDirID ); -Index: inc/psprint/fontmanager.hxx -=================================================================== -RCS file: /cvs/gsl/psprint/inc/psprint/fontmanager.hxx,v -retrieving revision 1.18 -retrieving revision 1.19 -diff -w -u -r1.18 -r1.19 ---- psprint/inc/psprint/fontmanager.hxx 17 Jun 2004 13:50:47 -0000 1.18 -+++ psprint/inc/psprint/fontmanager.hxx 5 Jul 2004 09:22:12 -0000 1.19 -@@ -191,6 +191,17 @@ - weight::type m_eWeight; - pitch::type m_ePitch; - rtl_TextEncoding m_aEncoding; -+ -+ FastPrintFontInfo() : -+ m_nID( 0 ), -+ m_eType( fonttype::Unknown ), -+ m_eFamilyStyle( family::Unknown ), -+ m_eItalic( italic::Unknown ), -+ m_eWidth( width::Unknown ), -+ m_eWeight( weight::Unknown ), -+ m_ePitch( pitch::Unknown ), -+ m_aEncoding( RTL_TEXTENCODING_DONTKNOW ) -+ {} - }; - - struct PrintFontInfo : public FastPrintFontInfo -@@ -199,6 +210,14 @@ - int m_nDescend; - int m_nLeading; - int m_nWidth; -+ -+ PrintFontInfo() : -+ FastPrintFontInfo(), -+ m_nAscend( 0 ), -+ m_nDescend( 0 ), -+ m_nLeading( 0 ), -+ m_nWidth( 0 ) -+ {} - }; - - // the values are per thousand of the font size -@@ -208,6 +227,10 @@ - short int width, height; - - CharacterMetric() : width( 0 ), height( 0 ) {} -+ bool operator==( const CharacterMetric& rOther ) const -+ { return rOther.width == width && rOther.height == height; } -+ bool operator!=( const CharacterMetric& rOther ) const -+ { return rOther.width != width || rOther.height != height; } - }; - - struct KernPair -@@ -421,11 +444,18 @@ - - void getServerDirectories(); // get font server directories on e.g. redhat - -- // try to initialize from libfontconfig -- // returns true if at least one font was added by libfontconfig, -- // else returns false (e.g. no libfontconfig found -- // called from initialize() -+ /* try to initialize fonts from libfontconfig -+ -+ called from <code>initialize()</code> -+ -+ @returns -+ true if at least one font was added by libfontconfig -+ false else (e.g. no libfontconfig found) -+ */ - bool initFontconfig(); -+ /* deinitialize fontconfig -+ */ -+ void deinitFontconfig(); - - static bool parseXLFD( const rtl::OString& rXLFD, XLFDEntry& rEntry ); - void parseXLFD_appendAliases( const std::list< rtl::OString >& rXLFDs, std::list< XLFDEntry >& rEntries ) const; -@@ -657,6 +687,36 @@ - - // returns false if there were not any - bool getAlternativeFamilyNames( fontID nFont, std::list< rtl::OUString >& rNames ) const; -+ -+ /* system dependendent font matching -+ -+ <p> -+ <code>matchFont</code> matches a pattern of font characteristics -+ and returns the closest match if possibe. If a match was found -+ the <code>FastPrintFontInfo</code> passed in as parameter -+ will be update to the found matching font. -+ </p> -+ <p> -+ implementation note: currently the function is only implemented -+ for fontconfig. -+ </p> -+ -+ @param rInfo -+ out of the FastPrintFontInfo structure the following -+ fields will be used for the match: -+ <ul> -+ <li>family name</li> -+ <li>italic</li> -+ <li>width</li> -+ <li>weight</li> -+ <li>pitch</li> -+ </ul> -+ -+ @returns -+ true if a match was found -+ false else -+ */ -+ bool matchFont( FastPrintFontInfo& rInfo ); - }; - - } // namespace -Index: inc/psprint/ppdparser.hxx -=================================================================== -RCS file: /cvs/gsl/psprint/inc/psprint/ppdparser.hxx,v -retrieving revision 1.5 -retrieving revision 1.6 -diff -w -u -r1.5 -r1.6 ---- psprint/inc/psprint/ppdparser.hxx 17 Mar 2004 10:48:09 -0000 1.5 -+++ psprint/inc/psprint/ppdparser.hxx 23 Jul 2004 10:07:44 -0000 1.6 -@@ -223,7 +223,7 @@ - static void initPPDFiles(); - static String getPPDFile( const String& rFile ); - public: -- static const PPDParser* getParser( String aFile ); -+ static const PPDParser* getParser( const String& rFile ); - static String getPPDPrinterName( const String& rFile ); - static void freeAll(); - -Index: inc/psprint/printerinfomanager.hxx -=================================================================== -RCS file: /cvs/gsl/psprint/inc/psprint/printerinfomanager.hxx,v -retrieving revision 1.6 -retrieving revision 1.7 -diff -w -u -r1.6 -r1.7 ---- psprint/inc/psprint/printerinfomanager.hxx 17 Mar 2004 10:48:31 -0000 1.6 -+++ psprint/inc/psprint/printerinfomanager.hxx 23 Jul 2004 09:58:25 -0000 1.7 -@@ -143,6 +143,11 @@ - m_aFontSubstitutes; - std::hash_map< fontID, fontID > - m_aFontSubstitutions; -+ -+ PrinterInfo() : -+ JobData(), -+ m_bPerformFontSubstitution( false ) -+ {} - }; - - class PrinterInfoManager -Index: source/fontmanager/fontcache.cxx -=================================================================== -RCS file: /cvs/gsl/psprint/source/fontmanager/fontcache.cxx,v -retrieving revision 1.10 -retrieving revision 1.11 -diff -w -u -r1.10 -r1.11 ---- psprint/source/fontmanager/fontcache.cxx 17 Mar 2004 10:48:54 -0000 1.10 -+++ psprint/source/fontmanager/fontcache.cxx 5 Jul 2004 09:22:24 -0000 1.11 -@@ -549,6 +549,73 @@ - } - - /* -+ * FontCache::equalsPrintFont -+ */ -+bool FontCache::equalsPrintFont( const PrintFontManager::PrintFont* pLeft, PrintFontManager::PrintFont* pRight ) const -+{ -+ if( pLeft->m_eType != pRight->m_eType ) -+ return false; -+ switch( pLeft->m_eType ) -+ { -+ case fonttype::TrueType: -+ { -+ const PrintFontManager::TrueTypeFontFile* pLT = static_cast<const PrintFontManager::TrueTypeFontFile*>(pLeft); -+ const PrintFontManager::TrueTypeFontFile* pRT = static_cast<const PrintFontManager::TrueTypeFontFile*>(pRight); -+ if( pRT->m_nDirectory != pLT->m_nDirectory || -+ pRT->m_aFontFile != pLT->m_aFontFile || -+ pRT->m_nCollectionEntry != pLT->m_nCollectionEntry || -+ pRT->m_nTypeFlags != pLT->m_nTypeFlags ) -+ return false; -+ } -+ break; -+ case fonttype::Type1: -+ { -+ const PrintFontManager::Type1FontFile* pLT = static_cast<const PrintFontManager::Type1FontFile*>(pLeft); -+ const PrintFontManager::Type1FontFile* pRT = static_cast<const PrintFontManager::Type1FontFile*>(pRight); -+ if( pRT->m_nDirectory != pLT->m_nDirectory || -+ pRT->m_aFontFile != pLT->m_aFontFile || -+ pRT->m_aMetricFile != pLT->m_aMetricFile ) -+ return false; -+ } -+ break; -+ case fonttype::Builtin: -+ { -+ const PrintFontManager::BuiltinFont* pLT = static_cast<const PrintFontManager::BuiltinFont*>(pLeft); -+ const PrintFontManager::BuiltinFont* pRT = static_cast<const PrintFontManager::BuiltinFont*>(pRight); -+ if( pRT->m_nDirectory != pLT->m_nDirectory || -+ pRT->m_aMetricFile != pLT->m_aMetricFile ) -+ return false; -+ } -+ break; -+ default: break; -+ } -+ if( pRight->m_nFamilyName != pLeft->m_nFamilyName || -+ pRight->m_nPSName != pLeft->m_nPSName || -+ pRight->m_eItalic != pLeft->m_eItalic || -+ pRight->m_eWeight != pLeft->m_eWeight || -+ pRight->m_eWidth != pLeft->m_eWidth || -+ pRight->m_ePitch != pLeft->m_ePitch || -+ pRight->m_aEncoding != pLeft->m_aEncoding || -+ pRight->m_aGlobalMetricX != pLeft->m_aGlobalMetricX || -+ pRight->m_aGlobalMetricY != pLeft->m_aGlobalMetricY || -+ pRight->m_nAscend != pLeft->m_nAscend || -+ pRight->m_nDescend != pLeft->m_nDescend || -+ pRight->m_nLeading != pLeft->m_nLeading || -+ pRight->m_nXMin != pLeft->m_nXMin || -+ pRight->m_nYMin != pLeft->m_nYMin || -+ pRight->m_nXMax != pLeft->m_nXMax || -+ pRight->m_nYMax != pLeft->m_nYMax || -+ pRight->m_bHaveVerticalSubstitutedGlyphs != pLeft->m_bHaveVerticalSubstitutedGlyphs ) -+ return false; -+ std::list< int >::const_iterator lit, rit; -+ for( lit = pLeft->m_aAliases.begin(), rit = pRight->m_aAliases.begin(); -+ lit != pLeft->m_aAliases.end() && rit != pRight->m_aAliases.end() && (*lit) == (*rit); -+ ++lit, ++rit ) -+ ; -+ return lit == pLeft->m_aAliases.end() && rit == pRight->m_aAliases.end(); -+} -+ -+/* - * FontCache::clonePrintFont - */ - PrintFontManager::PrintFont* FontCache::clonePrintFont( const PrintFontManager::PrintFont* pOldFont ) const -@@ -650,7 +717,13 @@ - createCacheDir( nDirID ); - - if( pCacheFont ) -+ { -+ if( ! equalsPrintFont( pFont, pCacheFont ) ) -+ { - copyPrintFont( pFont, pCacheFont ); -+ m_bDoFlush = true; -+ } -+ } - else - { - pCacheFont = clonePrintFont( pFont ); -@@ -662,8 +735,8 @@ - struct stat aStat; - if( ! stat( aPath.GetBuffer(), &aStat ) ) - m_aCache[nDirID].m_aEntries[aFile].m_nTimestamp = (sal_Int64)aStat.st_mtime; -- } - m_bDoFlush = true; -+ } - if( bFlush ) - flush(); - } -Index: source/fontmanager/fontconfig.cxx -=================================================================== -RCS file: /cvs/gsl/psprint/source/fontmanager/fontconfig.cxx,v -retrieving revision 1.4 -retrieving revision 1.6 -diff -w -u -r1.4 -r1.6 ---- psprint/source/fontmanager/fontconfig.cxx 1 Jun 2004 09:35:26 -0000 1.4 -+++ psprint/source/fontmanager/fontconfig.cxx 23 Jul 2004 10:08:07 -0000 1.6 -@@ -61,6 +61,10 @@ - - #ifdef ENABLE_FONTCONFIG - #include <fontconfig/fontconfig.h> -+// be compatible with fontconfig 2.2.0 release -+#ifndef FC_WEIGHT_BOOK -+#define FC_WEIGHT_BOOK 75 -+#endif - #else - typedef void FcConfig; - typedef void FcObjectSet; -@@ -68,8 +72,8 @@ - typedef void FcFontSet; - typedef int FcResult; - typedef int FcBool; -+typedef int FcMatchKind; - typedef char FcChar8; -- - #endif - - #include <cstdio> -@@ -98,6 +102,7 @@ - class FontCfgWrapper - { - void* m_pLib; -+ FcConfig* m_pDefConfig; - - FcConfig* (*m_pFcInitLoadConfigAndFonts)(); - FcObjectSet* (*m_pFcObjectSetVaBuild)(const char*,va_list); -@@ -105,20 +110,34 @@ - FcPattern* (*m_pFcPatternCreate)(); - void (*m_pFcPatternDestroy)(FcPattern*); - FcFontSet* (*m_pFcFontList)(FcConfig*,FcPattern*,FcObjectSet*); -+ FcFontSet* (*m_pFcFontSetCreate)(); - void (*m_pFcFontSetDestroy)(FcFontSet*); -+ FcBool (*m_pFcFontSetAdd)(FcFontSet*,FcPattern*); - FcResult (*m_pFcPatternGetString)(const FcPattern*,const char*,int,FcChar8**); - FcResult (*m_pFcPatternGetInteger)(const FcPattern*,const char*,int,int*); - FcResult (*m_pFcPatternGetDouble)(const FcPattern*,const char*,int,double*); - FcResult (*m_pFcPatternGetBool)(const FcPattern*,const char*,int,FcBool*); -+ void (*m_pFcDefaultSubstitute)(FcPattern *); -+ FcPattern* (*m_pFcFontMatch)(FcConfig*,FcPattern*,FcResult*); -+ FcBool (*m_pFcConfigSubstitute)(FcConfig*,FcPattern*,FcMatchKind); -+ FcBool (*m_pFcPatternAddInteger)(FcPattern*,const char*,int); -+ FcBool (*m_pFcPatternAddString)(FcPattern*,const char*,const FcChar8*); - - void* loadSymbol( const char* ); --public: -+ - FontCfgWrapper(); - ~FontCfgWrapper(); - -+public: -+ static FontCfgWrapper& get(); -+ static void release(); -+ - bool isValid() const - { return m_pLib != NULL;} - -+ FcConfig* getDefConfig() { return m_pDefConfig; } -+ -+ - FcConfig* FcInitLoadConfigAndFonts() - { return m_pFcInitLoadConfigAndFonts(); } - -@@ -143,8 +162,12 @@ - FcFontSet* FcFontList( FcConfig* pConfig, FcPattern* pPattern, FcObjectSet* pSet ) - { return m_pFcFontList( pConfig, pPattern, pSet ); } - -+ FcFontSet* FcFontSetCreate() -+ { return m_pFcFontSetCreate(); } - void FcFontSetDestroy( FcFontSet* pSet ) - { m_pFcFontSetDestroy( pSet );} -+ FcBool FcFontSetAdd( FcFontSet* pSet, FcPattern* pPattern ) -+ { return m_pFcFontSetAdd( pSet, pPattern ); } - - FcResult FcPatternGetString( const FcPattern* pPattern, const char* object, int n, FcChar8** s ) - { return m_pFcPatternGetString( pPattern, object, n, s ); } -@@ -157,6 +180,16 @@ - - FcResult FcPatternGetBool( const FcPattern* pPattern, const char* object, int n, FcBool* s ) - { return m_pFcPatternGetBool( pPattern, object, n, s ); } -+ void FcDefaultSubstitute( FcPattern* pPattern ) -+ { m_pFcDefaultSubstitute( pPattern ); } -+ FcPattern* FcFontMatch( FcConfig* pConfig, FcPattern* pPattern, FcResult* pResult ) -+ { return m_pFcFontMatch( pConfig, pPattern, pResult ); } -+ FcBool FcConfigSubstitute( FcConfig* pConfig, FcPattern* pPattern, FcMatchKind eKind ) -+ { return m_pFcConfigSubstitute( pConfig, pPattern, eKind ); } -+ FcBool FcPatternAddInteger( FcPattern* pPattern, const char* pObject, int nValue ) -+ { return m_pFcPatternAddInteger( pPattern, pObject, nValue ); } -+ FcBool FcPatternAddString( FcPattern* pPattern, const char* pObject, const FcChar8* pString ) -+ { return m_pFcPatternAddString( pPattern, pObject, pString ); } - }; - - void* FontCfgWrapper::loadSymbol( const char* pSymbol ) -@@ -170,7 +203,8 @@ - } - - FontCfgWrapper::FontCfgWrapper() -- : m_pLib( NULL ) -+ : m_pLib( NULL ), -+ m_pDefConfig( NULL ) - { - #ifdef ENABLE_FONTCONFIG - OUString aLib( RTL_CONSTASCII_USTRINGPARAM( "libfontconfig.so.1" ) ); -@@ -202,8 +236,12 @@ - loadSymbol( "FcPatternDestroy" ); - m_pFcFontList = (FcFontSet*(*)(FcConfig*,FcPattern*,FcObjectSet*)) - loadSymbol( "FcFontList" ); -+ m_pFcFontSetCreate = (FcFontSet*(*)()) -+ loadSymbol( "FcFontSetCreate" ); - m_pFcFontSetDestroy = (void(*)(FcFontSet*)) - loadSymbol( "FcFontSetDestroy" ); -+ m_pFcFontSetAdd = (FcBool(*)(FcFontSet*,FcPattern*)) -+ loadSymbol( "FcFontSetAdd" ); - m_pFcPatternGetString = (FcResult(*)(const FcPattern*,const char*,int,FcChar8**)) - loadSymbol( "FcPatternGetString" ); - m_pFcPatternGetInteger = (FcResult(*)(const FcPattern*,const char*,int,int*)) -@@ -212,6 +250,16 @@ - loadSymbol( "FcPatternGetDouble" ); - m_pFcPatternGetBool = (FcResult(*)(const FcPattern*,const char*,int,FcBool*)) - loadSymbol( "FcPatternGetBool" ); -+ m_pFcDefaultSubstitute = (void(*)(FcPattern *)) -+ loadSymbol( "FcDefaultSubstitute" ); -+ m_pFcFontMatch = (FcPattern*(*)(FcConfig*,FcPattern*,FcResult*)) -+ loadSymbol( "FcFontMatch" ); -+ m_pFcConfigSubstitute = (FcBool(*)(FcConfig*,FcPattern*,FcMatchKind)) -+ loadSymbol( "FcConfigSubstitute" ); -+ m_pFcPatternAddInteger = (FcBool(*)(FcPattern*,const char*,int)) -+ loadSymbol( "FcPatternAddInteger" ); -+ m_pFcPatternAddString = (FcBool(*)(FcPattern*,const char*,const FcChar8*)) -+ loadSymbol( "FcPatternAddString" ); - - if( ! ( - m_pFcInitLoadConfigAndFonts && -@@ -220,11 +268,18 @@ - m_pFcPatternCreate && - m_pFcPatternDestroy && - m_pFcFontList && -+ m_pFcFontSetCreate && - m_pFcFontSetDestroy && -+ m_pFcFontSetAdd && - m_pFcPatternGetString && - m_pFcPatternGetInteger && - m_pFcPatternGetDouble && -- m_pFcPatternGetBool -+ m_pFcPatternGetBool && -+ m_pFcDefaultSubstitute && -+ m_pFcFontMatch && -+ m_pFcConfigSubstitute && -+ m_pFcPatternAddInteger && -+ m_pFcPatternAddString - ) ) - { - osl_unloadModule( m_pLib ); -@@ -233,6 +288,13 @@ - fprintf( stderr, "not all needed symbols were found in libfontconfig\n" ); - #endif - } -+ -+ m_pDefConfig = FcInitLoadConfigAndFonts(); -+ if( ! m_pDefConfig ) -+ { -+ osl_unloadModule( m_pLib ); -+ m_pLib = NULL; -+ } - } - - FontCfgWrapper::~FontCfgWrapper() -@@ -241,6 +303,24 @@ - osl_unloadModule( m_pLib ); - } - -+static FontCfgWrapper* pOneInstance = NULL; -+ -+FontCfgWrapper& FontCfgWrapper::get() -+{ -+ if( ! pOneInstance ) -+ pOneInstance = new FontCfgWrapper(); -+ return *pOneInstance; -+} -+ -+void FontCfgWrapper::release() -+{ -+ if( pOneInstance ) -+ { -+ delete pOneInstance; -+ pOneInstance = NULL; -+ } -+} -+ - /* - * PrintFontManager::initFontconfig - */ -@@ -249,24 +329,22 @@ - int nFonts = 0; - - #ifdef ENABLE_FONTCONFIG -- FontCfgWrapper aWrapper; -- if( ! aWrapper.isValid() ) -+ FontCfgWrapper& rWrapper = FontCfgWrapper::get(); -+ if( ! rWrapper.isValid() ) - return false; - -- FcConfig* pConfig = aWrapper.FcInitLoadConfigAndFonts(); -- if( ! pConfig ) -- return false; -- -- FcObjectSet* pOSet = aWrapper.FcObjectSetBuild( FC_FAMILY, -+ FcConfig* pConfig = rWrapper.getDefConfig(); -+ FcObjectSet* pOSet = rWrapper.FcObjectSetBuild( FC_FAMILY, - FC_STYLE, - FC_SLANT, - FC_WEIGHT, - FC_SPACING, - FC_FILE, - FC_OUTLINE, -+ FC_INDEX, - NULL ); -- FcPattern* pPattern = aWrapper.FcPatternCreate(); -- FcFontSet* pFSet = aWrapper.FcFontList( pConfig, pPattern, pOSet ); -+ FcPattern* pPattern = rWrapper.FcPatternCreate(); -+ FcFontSet* pFSet = rWrapper.FcFontList( pConfig, pPattern, pOSet ); - - if( pFSet ) - { -@@ -281,16 +359,17 @@ - int slant = 0; - int weight = 0; - int spacing = 0; -+ int nCollectionEntry = -1; - FcBool outline = false; - -- FcResult eFileRes = aWrapper.FcPatternGetString( pFSet->fonts[i], FC_FILE, 0, &file ); -- FcResult eFamilyRes = aWrapper.FcPatternGetString( pFSet->fonts[i], FC_FAMILY, 0, &family ); -- FcResult eStyleRes = aWrapper.FcPatternGetString( pFSet->fonts[i], FC_STYLE, 0, &style ); -- FcResult eSlantRes = aWrapper.FcPatternGetInteger( pFSet->fonts[i], FC_SLANT, 0, &slant ); -- FcResult eWeightRes = aWrapper.FcPatternGetInteger( pFSet->fonts[i], FC_WEIGHT, 0, &weight ); -- FcResult eSpacRes = aWrapper.FcPatternGetInteger( pFSet->fonts[i], FC_SPACING, 0, &spacing ); -- FcResult eOutRes = aWrapper.FcPatternGetBool( pFSet->fonts[i], FC_OUTLINE, 0, &outline ); -- -+ FcResult eFileRes = rWrapper.FcPatternGetString( pFSet->fonts[i], FC_FILE, 0, &file ); -+ FcResult eFamilyRes = rWrapper.FcPatternGetString( pFSet->fonts[i], FC_FAMILY, 0, &family ); -+ FcResult eStyleRes = rWrapper.FcPatternGetString( pFSet->fonts[i], FC_STYLE, 0, &style ); -+ FcResult eSlantRes = rWrapper.FcPatternGetInteger( pFSet->fonts[i], FC_SLANT, 0, &slant ); -+ FcResult eWeightRes = rWrapper.FcPatternGetInteger( pFSet->fonts[i], FC_WEIGHT, 0, &weight ); -+ FcResult eSpacRes = rWrapper.FcPatternGetInteger( pFSet->fonts[i], FC_SPACING, 0, &spacing ); -+ FcResult eOutRes = rWrapper.FcPatternGetBool( pFSet->fonts[i], FC_OUTLINE, 0, &outline ); -+ FcResult eIndexRes = rWrapper.FcPatternGetInteger( pFSet->fonts[i], FC_INDEX, 0, &nCollectionEntry ); - - if( eFileRes != FcResultMatch || eFamilyRes != FcResultMatch || eOutRes != FcResultMatch ) - continue; -@@ -327,81 +406,132 @@ - // not described by fontconfig (e.g. alias names, PSName) - std::list< OString > aDummy; - analyzeFontFile( nDirID, aBase, true, aDummy, aFonts ); -- } - #if OSL_DEBUG_LEVEL > 1 -- if( aFonts.size() > 1 ) -- fprintf( stderr, "Warning: file contains more than one font, updating all to fontconfig data\n" ); -- else if( aFonts.empty() ) -+ if( aFonts.empty() ) - fprintf( stderr, "Warning: file is unusable to psprint\n" ); - #endif -+ } -+ if( aFonts.empty() ) -+ continue; -+ - int nFamilyName = m_pAtoms->getAtom( ATOM_FAMILYNAME, OStringToOUString( OString( (sal_Char*)family ), osl_getThreadTextEncoding() ), sal_True ); -+ PrintFont* pUpdate = aFonts.front(); -+ if( ++aFonts.begin() != aFonts.end() ) // more than one font -+ { -+ // a collection entry, get the correct index -+ if( eIndexRes == FcResultMatch && nCollectionEntry != -1 ) -+ { -+ for( std::list< PrintFont* >::iterator it = aFonts.begin(); it != aFonts.end(); ++it ) -+ { -+ if( (*it)->m_eType == fonttype::TrueType && -+ static_cast<TrueTypeFontFile*>(*it)->m_nCollectionEntry == nCollectionEntry ) -+ { -+ pUpdate = *it; -+ break; -+ } -+ } -+ // update collection entry -+ // additional entries will be created in the cache -+ // if this is a new index (that is if the loop above -+ // ran to the end of the list) -+ if( pUpdate->m_eType == fonttype::TrueType ) // sanity check, this should always be the case here -+ static_cast<TrueTypeFontFile*>(pUpdate)->m_nCollectionEntry = nCollectionEntry; -+ } -+ else -+ { -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "multiple fonts for file, but no index in fontconfig pattern ! (index res = %d collection entry = %d\nfile will not be used\n", eIndexRes, nCollectionEntry ); -+#endif -+ // we have found more than one font in this file -+ // but fontconfig will not tell us which index is meant -+ // -> something is in disorder, do not use this font -+ pUpdate = NULL; -+ } -+ } - -- for( std::list< PrintFont* >::iterator it = aFonts.begin(); -- it != aFonts.end(); ++it ) -+ if( pUpdate ) - { - // set family name -- if( (*it)->m_nFamilyName != nFamilyName ) -+ if( pUpdate->m_nFamilyName != nFamilyName ) - { -- (*it)->m_aAliases.remove( (*it)->m_nFamilyName ); -- (*it)->m_aAliases.push_back( (*it)->m_nFamilyName ); -- (*it)->m_aAliases.remove( nFamilyName ); -- (*it)->m_nFamilyName = nFamilyName; -+ pUpdate->m_aAliases.remove( pUpdate->m_nFamilyName ); -+ pUpdate->m_aAliases.push_back( pUpdate->m_nFamilyName ); -+ pUpdate->m_aAliases.remove( nFamilyName ); -+ pUpdate->m_nFamilyName = nFamilyName; - } - if( eWeightRes == FcResultMatch ) - { - // set weight -- if( weight == FC_WEIGHT_LIGHT ) -- (*it)->m_eWeight = weight::Light; -- else if( weight == FC_WEIGHT_MEDIUM ) -- (*it)->m_eWeight = weight::Medium; -- else if( weight == FC_WEIGHT_DEMIBOLD ) -- (*it)->m_eWeight = weight::SemiBold; -- else if( weight == FC_WEIGHT_BOLD ) -- (*it)->m_eWeight = weight::Bold; -- else if( weight == FC_WEIGHT_BLACK ) -- (*it)->m_eWeight = weight::Black; -+ if( weight <= FC_WEIGHT_THIN ) -+ pUpdate->m_eWeight = weight::Thin; -+ else if( weight <= FC_WEIGHT_ULTRALIGHT ) -+ pUpdate->m_eWeight = weight::UltraLight; -+ else if( weight <= FC_WEIGHT_LIGHT ) -+ pUpdate->m_eWeight = weight::Light; -+ else if( weight <= FC_WEIGHT_BOOK ) -+ pUpdate->m_eWeight = weight::SemiLight; -+ else if( weight <= FC_WEIGHT_NORMAL ) -+ pUpdate->m_eWeight = weight::Normal; -+ else if( weight <= FC_WEIGHT_MEDIUM ) -+ pUpdate->m_eWeight = weight::Medium; -+ else if( weight <= FC_WEIGHT_SEMIBOLD ) -+ pUpdate->m_eWeight = weight::SemiBold; -+ else if( weight <= FC_WEIGHT_BOLD ) -+ pUpdate->m_eWeight = weight::Bold; -+ else if( weight <= FC_WEIGHT_ULTRABOLD ) -+ pUpdate->m_eWeight = weight::UltraBold; -+ else -+ pUpdate->m_eWeight = weight::Black; - } - if( eSpacRes == FcResultMatch ) - { - // set pitch - if( spacing == FC_PROPORTIONAL ) -- (*it)->m_ePitch = pitch::Variable; -+ pUpdate->m_ePitch = pitch::Variable; - else if( spacing == FC_MONO || spacing == FC_CHARCELL ) -- (*it)->m_ePitch = pitch::Fixed; -+ pUpdate->m_ePitch = pitch::Fixed; - } - if( eSlantRes == FcResultMatch ) - { - // set italic - if( slant == FC_SLANT_ROMAN ) -- (*it)->m_eItalic = italic::Upright; -+ pUpdate->m_eItalic = italic::Upright; - else if( slant == FC_SLANT_ITALIC ) -- (*it)->m_eItalic = italic::Italic; -+ pUpdate->m_eItalic = italic::Italic; - else if( slant == FC_SLANT_OBLIQUE ) -- (*it)->m_eItalic = italic::Oblique; -+ pUpdate->m_eItalic = italic::Oblique; - } - - // update font cache -- m_pFontCache->updateFontCacheEntry( *it, false ); -+ m_pFontCache->updateFontCacheEntry( pUpdate, false ); - // sort into known fonts - fontID aFont = m_nNextFontID++; -- m_aFonts[ aFont ] = *it; -+ m_aFonts[ aFont ] = pUpdate; - m_aFontFileToFontID[ aBase ].insert( aFont ); - nFonts++; - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "inserted font %s as fontID %d\n", family, aFont ); - #endif - } -+ // clean up the fonts we did not put into the list -+ for( std::list< PrintFont* >::iterator it = aFonts.begin(); it != aFonts.end(); ++it ) -+ { -+ if( *it != pUpdate ) -+ { -+ m_pFontCache->updateFontCacheEntry( *it, false ); // prepare a cache entry for a collection item -+ delete *it; -+ } -+ } - } - } -- - - // cleanup - if( pPattern ) -- aWrapper.FcPatternDestroy( pPattern ); -+ rWrapper.FcPatternDestroy( pPattern ); - if( pFSet ) -- aWrapper.FcFontSetDestroy( pFSet ); -+ rWrapper.FcFontSetDestroy( pFSet ); - if( pOSet ) -- aWrapper.FcObjectSetDestroy( pOSet ); -+ rWrapper.FcObjectSetDestroy( pOSet ); - - // how does one get rid of the config ? - #if OSL_DEBUG_LEVEL > 1 -@@ -409,4 +539,125 @@ - #endif - #endif // ENABLE_FONTCONFIG - return nFonts != 0; -+} -+ -+void PrintFontManager::deinitFontconfig() -+{ -+ FontCfgWrapper::release(); -+} -+ -+bool PrintFontManager::matchFont( FastPrintFontInfo& rInfo ) -+{ -+#ifdef ENABLE_FONTCONFIG -+ FontCfgWrapper& rWrapper = FontCfgWrapper::get(); -+ if( ! rWrapper.isValid() ) -+ return false; -+ -+ FcConfig* pConfig = rWrapper.getDefConfig(); -+ FcPattern* pPattern = rWrapper.FcPatternCreate(); -+ -+ // populate pattern with font characteristics -+ OString aFamily = OUStringToOString( rInfo.m_aFamilyName, RTL_TEXTENCODING_UTF8 ); -+ if( aFamily.getLength() ) -+ rWrapper.FcPatternAddString( pPattern, FC_FAMILY, (FcChar8*)aFamily.getStr() ); -+ if( rInfo.m_eItalic != italic::Unknown ) -+ { -+ int nSlant = FC_SLANT_ROMAN; -+ switch( rInfo.m_eItalic ) -+ { -+ case italic::Italic: nSlant = FC_SLANT_ITALIC;break; -+ case italic::Oblique: nSlant = FC_SLANT_OBLIQUE;break; -+ default: -+ break; -+ } -+ rWrapper.FcPatternAddInteger( pPattern, FC_SLANT, nSlant ); -+ } -+ if( rInfo.m_eWeight != weight::Unknown ) -+ { -+ int nWeight = FC_WEIGHT_NORMAL; -+ switch( rInfo.m_eWeight ) -+ { -+ case weight::Thin: nWeight = FC_WEIGHT_THIN;break; -+ case weight::UltraLight: nWeight = FC_WEIGHT_ULTRALIGHT;break; -+ case weight::Light: nWeight = FC_WEIGHT_LIGHT;break; -+ case weight::SemiLight: nWeight = FC_WEIGHT_BOOK;break; -+ case weight::Normal: nWeight = FC_WEIGHT_NORMAL;break; -+ case weight::Medium: nWeight = FC_WEIGHT_MEDIUM;break; -+ case weight::SemiBold: nWeight = FC_WEIGHT_SEMIBOLD;break; -+ case weight::Bold: nWeight = FC_WEIGHT_BOLD;break; -+ case weight::UltraBold: nWeight = FC_WEIGHT_ULTRABOLD;break; -+ case weight::Black: nWeight = FC_WEIGHT_BLACK;break; -+ default: -+ break; -+ } -+ rWrapper.FcPatternAddInteger( pPattern, FC_WEIGHT, nWeight ); -+ } -+ if( rInfo.m_eWidth != width::Unknown ) -+ { -+ int nWidth = FC_WIDTH_NORMAL; -+ switch( rInfo.m_eWidth ) -+ { -+ case width::UltraCondensed: nWidth = FC_WIDTH_ULTRACONDENSED;break; -+ case width::ExtraCondensed: nWidth = FC_WIDTH_EXTRACONDENSED;break; -+ case width::Condensed: nWidth = FC_WIDTH_CONDENSED;break; -+ case width::SemiCondensed: nWidth = FC_WIDTH_SEMICONDENSED;break; -+ case width::Normal: nWidth = FC_WIDTH_NORMAL;break; -+ case width::SemiExpanded: nWidth = FC_WIDTH_SEMIEXPANDED;break; -+ case width::Expanded: nWidth = FC_WIDTH_EXPANDED;break; -+ case width::ExtraExpanded: nWidth = FC_WIDTH_EXTRAEXPANDED;break; -+ case width::UltraExpanded: nWidth = FC_WIDTH_ULTRACONDENSED;break; -+ default: -+ break; -+ } -+ rWrapper.FcPatternAddInteger( pPattern, FC_WIDTH, nWidth ); -+ } -+ if( rInfo.m_ePitch != pitch::Unknown ) -+ { -+ int nSpacing = FC_PROPORTIONAL; -+ switch( rInfo.m_ePitch ) -+ { -+ case pitch::Fixed: nSpacing = FC_MONO;break; -+ case pitch::Variable: nSpacing = FC_PROPORTIONAL;break; -+ default: -+ break; -+ } -+ rWrapper.FcPatternAddInteger( pPattern, FC_SPACING, nSpacing ); -+ } -+ -+ rWrapper.FcConfigSubstitute( pConfig, pPattern, FcMatchPattern ); -+ rWrapper.FcDefaultSubstitute( pPattern ); -+ FcResult eResult = FcResultNoMatch; -+ FcPattern* pResult = rWrapper.FcFontMatch( pConfig, pPattern, &eResult ); -+ bool bSuccess = false; -+ if( pResult ) -+ { -+ FcFontSet* pSet = rWrapper.FcFontSetCreate(); -+ rWrapper.FcFontSetAdd( pSet, pResult ); -+ if( pSet->nfont > 0 ) -+ { -+ //extract the closest match -+ FcChar8* file = NULL; -+ FcResult eFileRes = rWrapper.FcPatternGetString( pSet->fonts[0], FC_FILE, 0, &file ); -+ if( eFileRes == FcResultMatch ) -+ { -+ OString aDir, aBase, aOrgPath( (sal_Char*)file ); -+ splitPath( aOrgPath, aDir, aBase ); -+ int nDirID = getDirectoryAtom( aDir, true ); -+ fontID aFont = findFontFileID( nDirID, aBase ); -+ if( aFont > 0 ) -+ bSuccess = getFontFastInfo( aFont, rInfo ); -+ } -+ } -+ // info: destroying the pSet destroys pResult implicitly -+ // since pResult was "added" to pSet -+ rWrapper.FcFontSetDestroy( pSet ); -+ } -+ -+ // cleanup -+ rWrapper.FcPatternDestroy( pPattern ); -+ -+ return bSuccess; -+#else -+ return false; -+#endif - } -Index: source/fontmanager/fontmanager.cxx -=================================================================== -RCS file: /cvs/gsl/psprint/source/fontmanager/fontmanager.cxx,v -retrieving revision 1.50 -retrieving revision 1.51 -diff -w -u -r1.50 -r1.51 ---- psprint/source/fontmanager/fontmanager.cxx 17 Jun 2004 13:51:09 -0000 1.50 -+++ psprint/source/fontmanager/fontmanager.cxx 5 Jul 2004 09:22:51 -0000 1.51 -@@ -581,10 +581,10 @@ - case 2: - { - const sal_uInt8* pSubTable = pTable; -- sal_uInt16 nRowWidth = getUInt16BE( pTable ); -+ /*sal_uInt16 nRowWidth =*/ getUInt16BE( pTable ); - sal_uInt16 nOfLeft = getUInt16BE( pTable ); - sal_uInt16 nOfRight = getUInt16BE( pTable ); -- sal_uInt16 nOfArray = getUInt16BE( pTable ); -+ /*sal_uInt16 nOfArray =*/ getUInt16BE( pTable ); - const sal_uInt8* pTmp = pSubTable + nOfLeft; - sal_uInt16 nFirstLeft = getUInt16BE( pTmp ); - sal_uInt16 nLastLeft = getUInt16BE( pTmp ) + nFirstLeft - 1; -@@ -592,7 +592,7 @@ - sal_uInt16 nFirstRight = getUInt16BE( pTmp ); - sal_uInt16 nLastRight = getUInt16BE( pTmp ) + nFirstRight -1; - -- int nPairs = (int)(nLastLeft-nFirstLeft+1)*(int)(nLastRight-nFirstRight+1); -+ // int nPairs = (int)(nLastLeft-nFirstLeft+1)*(int)(nLastRight-nFirstRight+1); - for( aPair.first = nFirstLeft; aPair.first < nLastLeft; aPair.first++ ) - { - for( aPair.second = 0; aPair.second < nLastRight; aPair.second++ ) -@@ -634,18 +634,18 @@ - - // Loop through each of the 'kern' subtables - KernPair aPair; -- for( i = 0; i < pImplTTFont->nkern; i++ ) -+ for( i = 0; (unsigned int)i < pImplTTFont->nkern; i++ ) - { - const sal_uInt8* pTable = pImplTTFont->kerntables[i]; - -- sal_uInt32 nLength = getUInt32BE( pTable ); -+ /*sal_uInt32 nLength =*/ getUInt32BE( pTable ); - sal_uInt16 nCoverage = getUInt16BE( pTable ); -- sal_uInt16 nTupleIndex = getUInt16BE( pTable ); -+ /*sal_uInt16 nTupleIndex =*/ getUInt16BE( pTable ); - - // Get kerning type -- sal_Bool bKernVertical = nCoverage & 0x8000; -- sal_Bool bKernCrossStream = nCoverage & 0x4000; -- sal_Bool bKernVariation = nCoverage & 0x2000; -+ // sal_Bool bKernVertical = nCoverage & 0x8000; -+ // sal_Bool bKernCrossStream = nCoverage & 0x4000; -+ // sal_Bool bKernVariation = nCoverage & 0x2000; - - // Kerning sub-table format, 0 through 3 - sal_uInt8 nSubTableFormat = nCoverage & 0x00FF; -@@ -1154,6 +1154,7 @@ - - PrintFontManager::~PrintFontManager() - { -+ deinitFontconfig(); - for( ::std::hash_map< fontID, PrintFont* >::const_iterator it = m_aFonts.begin(); it != m_aFonts.end(); ++it ) - delete (*it).second; - delete m_pAtoms; -@@ -1238,7 +1239,7 @@ - // first look for an adjacent file - static const char* pSuffix[] = { ".afm", ".AFM" }; - -- for( int i = 0; i < sizeof(pSuffix)/sizeof(pSuffix[0]); i++ ) -+ for( unsigned int i = 0; i < sizeof(pSuffix)/sizeof(pSuffix[0]); i++ ) - { - ByteString aName( rFontFile ); - aName.Erase( aName.Len()-4 ); -@@ -1549,6 +1550,8 @@ - break; - case fonttype::TrueType: - static_cast<TrueTypeFontFile*>(pFont)->m_aXLFD = rXLFDs.front(); -+ break; -+ default: - break; - } - } -Index: source/helper/ppdparser.cxx -=================================================================== -RCS file: /cvs/gsl/psprint/source/helper/ppdparser.cxx,v -retrieving revision 1.14 -retrieving revision 1.16 -diff -w -u -r1.14 -r1.16 ---- psprint/source/helper/ppdparser.cxx 18 May 2004 10:45:57 -0000 1.14 -+++ psprint/source/helper/ppdparser.cxx 30 Jul 2004 15:14:16 -0000 1.16 -@@ -68,7 +68,7 @@ - namespace psp { class PPDKey; } - - namespace _STL { --struct hash< const psp::PPDKey* > -+template<> struct hash< const psp::PPDKey* > - { - size_t operator()( const psp::PPDKey * pKey) const - { return (size_t)pKey; } -@@ -268,16 +268,19 @@ - return aName; - } - --const PPDParser* PPDParser::getParser( String aFile ) -+const PPDParser* PPDParser::getParser( const String& rFile ) - { - static ::osl::Mutex aMutex; - ::osl::Guard< ::osl::Mutex > aGuard( aMutex ); - -- if( aFile.CompareToAscii( "CUPS:", 5 ) != COMPARE_EQUAL ) -- aFile = getPPDFile( aFile ); -+ String aFile = rFile; -+ if( rFile.CompareToAscii( "CUPS:", 5 ) != COMPARE_EQUAL ) -+ aFile = getPPDFile( rFile ); - if( ! aFile.Len() ) - { -- fprintf( stderr, "Could not get printer PPD file!\n" ); -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "Could not get printer PPD file \"%s\" !\n", OUStringToOString( rFile, osl_getThreadTextEncoding() ).getStr() ); -+#endif - return NULL; - } - -@@ -294,12 +297,16 @@ - if( rMgr.getType() == PrinterInfoManager::CUPS ) - { - pNewParser = const_cast<PPDParser*>(static_cast<CUPSManager&>(rMgr).createCUPSParser( aFile )); -- if( pNewParser ) -- pNewParser->m_aFile = aFile; - } - } - if( pNewParser ) -- aAllParsers.push_back( pNewParser ); -+ { -+ // this may actually be the SGENPRT parser, -+ // so ensure uniquness here -+ aAllParsers.remove( pNewParser ); -+ // insert new parser to list -+ aAllParsers.push_front( pNewParser ); -+ } - return pNewParser; - } - - - -Index: source/printer/printerinfomanager.cxx -=================================================================== -RCS file: /cvs/gsl/psprint/source/printer/printerinfomanager.cxx,v -retrieving revision 1.23 -retrieving revision 1.25 -diff -w -u -r1.23 -r1.25 ---- psprint/source/printer/printerinfomanager.cxx 17 Mar 2004 10:51:45 -0000 1.23 -+++ psprint/source/printer/printerinfomanager.cxx 23 Jul 2004 10:09:11 -0000 1.25 -@@ -133,6 +133,9 @@ - - if( pManager ) - pManager->initialize(); -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "PrinterInfoManager::get create Manager of type %d\n", pManager->getType() ); -+#endif - } - - return *pManager; -@@ -1161,7 +1164,7 @@ - if( nSubstitute != -1 ) - { - rInfo.m_aFontSubstitutions[ it->m_nID ] = nSubstitute; --#if OSL_DEBUG_LEVEL > 1 -+#if OSL_DEBUG_LEVEL > 2 - FastPrintFontInfo aInfo; - rFontManager.getFontFastInfo( nSubstitute, aInfo ); - fprintf( stderr, -@@ -1220,7 +1223,8 @@ - { - const PrinterInfo& rPrinterInfo = getPrinterInfo (rPrintername); - const rtl::OUString& rCommand = rPrinterInfo.m_aCommand; -- const rtl::OString aShellCommand = OUStringToOString (rCommand, RTL_TEXTENCODING_ISO_8859_1); -+ rtl::OString aShellCommand = OUStringToOString (rCommand, RTL_TEXTENCODING_ISO_8859_1); -+ aShellCommand += rtl::OString( " 2>/dev/null" ); - - return popen (aShellCommand.getStr(), "w"); - } -@@ -1282,7 +1286,7 @@ - const char* pPrintCommand; - const char* pForeToken; - const char* pAftToken; -- int nForeTokenCount; -+ unsigned int nForeTokenCount; - }; - - static const struct SystemCommandParameters aParms[] = -@@ -1312,7 +1316,7 @@ - { - char pBuffer[1024]; - ByteString aPrtQueueCmd, aForeToken, aAftToken, aString; -- int nForeTokenCount = 0, i; -+ unsigned int nForeTokenCount = 0, i; - FILE *pPipe; - bool bSuccess = false; - std::list< ByteString > aLines; -@@ -1355,6 +1359,7 @@ - else - #endif - { -+ aPrtQueueCmd += ByteString( " 2>/dev/null" ); - if( pPipe = popen( aPrtQueueCmd.GetBuffer(), "r" ) ) - { - while( fgets( pBuffer, 1024, pPipe ) ) -@@ -1403,7 +1408,7 @@ - ByteString aOutLine( aLines.front() ); - aLines.pop_front(); - -- for( int i = 0; i < nForeTokenCount && nPos != STRING_NOTFOUND; i++ ) -+ for( i = 0; i < nForeTokenCount && nPos != STRING_NOTFOUND; i++ ) - { - nPos = aOutLine.Search( aForeToken, nPos ); - if( nPos != STRING_NOTFOUND && aOutLine.Len() >= nPos+aForeToken.Len() ) -@@ -1496,6 +1501,7 @@ - return( applePrintSysType ); - } - -+#if 0 - /* - * macxp_GetSystemPrintFormat() - * -@@ -1509,7 +1515,7 @@ - * therefore the environment variable OOO_PRINT_PS_DIRECTLY, if set, - * forces OOo to NOT undergo the PS -> PDF translation by default. - */ --/*sal_Int32 macxp_GetSystemPrintFormat( void ) -+sal_Int32 macxp_GetSystemPrintFormat( void ) - { - int printFormat; - int err; -@@ -1520,15 +1526,15 @@ - - /* Check for presence of OSAScript executable, which is - * believed to be MacOS X only (ie not present on Darwin). -- * -+ */ - err = stat( "/usr/bin/osascript", &status ); - if ( err == 0 ) - { -- /* Check to see if the user wants to print PS anyway * -+ /* Check to see if the user wants to print PS anyway */ - pPDFOverride = getenv( "OOO_PRINT_PS_DIRECTLY" ); - if ( pPDFOverride == NULL ) - { -- /* Now we have to check for ps2pdf to make sure we can do the conversion * -+ /* Now we have to check for ps2pdf to make sure we can do the conversion */ - err = stat( kApplePS2PDFLocation, &status ); - if ( err == 0 ) - { -@@ -1541,6 +1547,7 @@ - } - - return( printFormat ); --}*/ -+} -+#endif - #endif - ---- ../OOO_1_1_3_fix2/psprint/source/printer/cupsmgr.cxx 2004-08-30 16:46:55.000000000 +0100 -+++ psprint/source/printer/cupsmgr.cxx 2004-09-07 11:18:11.200669640 +0100 -@@ -1,10 +1,10 @@ - /************************************************************************* - * -- * -+ * $RCSfile$ - * -- * -+ * $Revision$ - * -- * -+ * last change: $Author$ $Date$ - * - * The Contents of this file are made available subject to the terms of - * either of the following licenses -@@ -70,6 +70,7 @@ - - #include <osl/thread.h> - #include <osl/diagnose.h> -+#include <osl/conditn.hxx> - #include <rtl/ustrbuf.hxx> - #include <cupsmgr.hxx> - -@@ -78,20 +79,21 @@ - class CUPSWrapper - { - oslModule m_pLib; -+ osl::Mutex m_aGetPPDMutex; - - int (*m_pcupsPrintFile)(const char*, const char*, const char*, int, cups_option_t*); - int (*m_pcupsGetDests)(cups_dest_t**); - void (*m_pcupsSetDests)(int,cups_dest_t*); - void (*m_pcupsFreeDests)(int,cups_dest_t*); -- const char* (*m_pcupsGetPPD)(const char*); -+ const char* (*m_pcupsGetPPD)(const char*); - int (*m_pcupsMarkOptions)(ppd_file_t*,int,cups_option_t*); - int (*m_pcupsAddOption)(const char*,const char*,int,cups_option_t**); - void (*m_pcupsFreeOptions)(int,cups_option_t*); - ppd_file_t* (*m_pppdOpenFile)(const char* pFile); - void (*m_pppdClose)(ppd_file_t*); -- const char* (*m_pcupsServer)(); -+ const char* (*m_pcupsServer)(); - void (*m_pcupsSetPasswordCB)(const char*(cb)(const char*)); -- const char* (*m_pcupsUser)(); -+ const char* (*m_pcupsUser)(); - void (*m_pcupsSetUser)(const char*); - - void* loadSymbol( const char* ); -@@ -117,8 +119,7 @@ - cups_option_t* pOptions ) - { return m_pcupsPrintFile( pPrinter, pFileName, pTitle, nOptions, pOptions ); } - -- const char* cupsGetPPD( const char* pPrinter ) -- { return m_pcupsGetPPD( pPrinter ); } -+ const char* cupsGetPPD( const char* pPrinter ); - - int cupsMarkOptions(ppd_file_t* pPPD, int nOptions, cups_option_t* pOptions ) - { return m_pcupsMarkOptions(pPPD, nOptions, pOptions); } -@@ -251,6 +252,70 @@ - return m_pLib != NULL; - } - -+static struct GetPPDAttribs -+{ -+ const char* (*pFunction)(const char*); -+ osl::Condition m_aCondition; -+ const char* m_pParameter; -+ const char* m_pResult; -+ oslThread m_aThread; -+} *pAttribs = NULL; -+ -+extern "C" { -+ static void getPPDWorker(void*) -+ { -+ pAttribs->m_pResult = pAttribs->pFunction( pAttribs->m_pParameter ); -+ if( pAttribs->m_aCondition.check() ) -+ { -+ // timed out, unlink file -+ if( pAttribs->m_pResult ) -+ unlink( pAttribs->m_pResult ); -+ delete pAttribs; -+ pAttribs = NULL; -+ } -+ else -+ pAttribs->m_aCondition.set(); -+ } -+} -+ -+const char* CUPSWrapper::cupsGetPPD( const char* pPrinter ) -+{ -+ const char* pResult = NULL; -+ -+ // if one thread hangs in cupsGetPPD already, don't start another -+ if( ! pAttribs ) -+ { -+ pAttribs = new GetPPDAttribs(); -+ pAttribs->pFunction = m_pcupsGetPPD; -+ pAttribs->m_aCondition.reset(); -+ pAttribs->m_pParameter = pPrinter; -+ pAttribs->m_pResult = NULL; -+ pAttribs->m_aThread = osl_createThread( getPPDWorker, NULL ); -+ -+ TimeValue aValue; -+ aValue.Seconds = 5; -+ aValue.Nanosec = 0; -+ if( pAttribs->m_aCondition.wait( &aValue ) == Condition::result_ok ) -+ { -+ osl_destroyThread( pAttribs->m_aThread ); -+ pResult = pAttribs->m_pResult; -+ delete pAttribs; -+ pAttribs = NULL; -+ } -+ else -+ { -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "cupsGetPPD %s timed out\n", pPrinter ); -+#endif -+ // should the thread awake again notify it to clean up itself -+ pAttribs->m_aCondition.set(); -+ osl_destroyThread( pAttribs->m_aThread ); -+ } -+ } -+ -+ return pResult; -+} -+ - static const char* setPasswordCallback( const char* pIn ) - { - const char* pRet = NULL; -@@ -276,66 +341,91 @@ - // try to load CUPS - CUPSWrapper* pWrapper = new CUPSWrapper(); - if( pWrapper->isValid() ) -- { -- // check if there are any dests; if not -- // CUPS is unconfigured (at least) and -- // should not be used -- cups_dest_t* pDests = NULL; -- int nDests = pWrapper->cupsGetDests( &pDests ); -- if( nDests && pDests ) -- pManager = new CUPSManager( pWrapper, nDests, pDests ); --#if OSL_DEBUG_LEVEL > 1 -- else -- fprintf( stderr, "CUPS loaded but no dests -> CUPS disabled\n" ); --#endif -- } -- // something failed, don't use CUPS -- if( ! pManager ) -+ pManager = new CUPSManager( pWrapper ); -+ else - delete pWrapper; - } - #endif - return pManager; - } - --CUPSManager::CUPSManager( CUPSWrapper* pWrapper, int nDests, void* pDests ) : -+CUPSManager::CUPSManager( CUPSWrapper* pWrapper ) : - PrinterInfoManager( CUPS ), - m_pCUPSWrapper( pWrapper ), -- m_nDests( nDests ), -- m_pDests( pDests ) -+ m_nDests( 0 ), -+ m_pDests( NULL ), -+ m_bNewDests( false ) - { -- m_bFirstDest = (nDests && pDests); -+ m_aDestThread = osl_createThread( runDestThread, this ); - } - - CUPSManager::~CUPSManager() - { -+ if( m_aDestThread ) -+ { -+ // if the thread is still running here, then -+ // cupsGetDests is hung; terminate the thread instead of joining -+ osl_terminateThread( m_aDestThread ); -+ osl_destroyThread( m_aDestThread ); -+ } -+ - if( m_nDests && m_pDests ) - m_pCUPSWrapper->cupsFreeDests( m_nDests, (cups_dest_t*)m_pDests ); - delete m_pCUPSWrapper; - } - -+void CUPSManager::runDestThread( void* pThis ) -+{ -+ ((CUPSManager*)pThis)->runDests(); -+} -+ -+void CUPSManager::runDests() -+{ -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "starting cupsGetDests\n" ); -+#endif -+ osl::MutexGuard aGuard( m_aCUPSMutex ); -+ -+ m_nDests = m_pCUPSWrapper->cupsGetDests( (cups_dest_t**)&m_pDests ); -+ m_bNewDests = true; -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "finished cupsGetDests\n" ); -+#endif -+} -+ - void CUPSManager::initialize() - { -+ // get normal printers, clear printer list -+ PrinterInfoManager::initialize(); -+ - #ifdef ENABLE_CUPS -- // there may have been a previous run -- if( m_nDests && m_pDests && !m_bFirstDest ) -- m_pCUPSWrapper->cupsFreeDests( m_nDests, (cups_dest_t*)m_pDests ); -- m_aPrinters.clear(); -+ // check whether thread has completed -+ // if not behave like old printing system -+ osl::MutexGuard aGuard( m_aCUPSMutex ); -+ -+ if( ! (m_nDests && m_pDests ) ) -+ return; -+ -+ // dest thread has run, clean up -+ if( m_aDestThread ) -+ { -+ osl_joinWithThread( m_aDestThread ); -+ osl_destroyThread( m_aDestThread ); -+ m_aDestThread = NULL; -+ } -+ -+ // clear old stuff - m_aCUPSDestMap.clear(); - -- // get normal printers -- PrinterInfoManager::initialize(); -+#if 0 -+ // update dests -+ m_pCUPSWrapper->cupsFreeDests( m_nDests, (cups_dest_t*)m_pDests ); -+ m_nDests = m_pCUPSWrapper->cupsGetDests( (cups_dest_t**)&m_pDests ); -+#endif -+ m_bNewDests = false; - - rtl_TextEncoding aEncoding = osl_getThreadTextEncoding(); -- int nPrinter = 0; -- -- // get CUPS dests if this is not the first run after the constructor -- // in which case m_pDests was already intialized -- if( m_bFirstDest && m_nDests && m_pDests ) -- nPrinter = m_nDests; -- else -- m_nDests = nPrinter = m_pCUPSWrapper->cupsGetDests( (cups_dest_t**)&m_pDests ); -- -- m_bFirstDest = false; -+ int nPrinter = m_nDests; - - // add CUPS printers, should there be a printer - // with the same name as a CUPS printer, overwrite it -@@ -464,53 +554,60 @@ - aPrinter = rPrinter; - - #ifdef ENABLE_CUPS -- std::hash_map< OUString, int, OUStringHash >::iterator dest_it = -- m_aCUPSDestMap.find( aPrinter ); -- if( dest_it != m_aCUPSDestMap.end() ) -+ if( m_aCUPSMutex.tryToAcquire() && m_nDests && m_pDests ) - { -- cups_dest_t* pDest = ((cups_dest_t*)m_pDests) + dest_it->second; -- const char* pPPDFile = m_pCUPSWrapper->cupsGetPPD( pDest->name ); -+ std::hash_map< OUString, int, OUStringHash >::iterator dest_it = -+ m_aCUPSDestMap.find( aPrinter ); -+ if( dest_it != m_aCUPSDestMap.end() ) -+ { -+ cups_dest_t* pDest = ((cups_dest_t*)m_pDests) + dest_it->second; -+ const char* pPPDFile = m_pCUPSWrapper->cupsGetPPD( pDest->name ); - #if OSL_DEBUG_LEVEL > 1 -- fprintf( stderr, "PPD for %s is %s\n", OUStringToOString( aPrinter, osl_getThreadTextEncoding() ).getStr(), pPPDFile ); -+ fprintf( stderr, "PPD for %s is %s\n", OUStringToOString( aPrinter, osl_getThreadTextEncoding() ).getStr(), pPPDFile ); - #endif -- if( pPPDFile ) -- { -- rtl_TextEncoding aEncoding = osl_getThreadTextEncoding(); -- OUString aFileName( OStringToOUString( pPPDFile, aEncoding ) ); -- // create the new parser -- pNewParser = new PPDParser( aFileName ); -- -- // update the printer info with context information -- ppd_file_t* pPPD = m_pCUPSWrapper->ppdOpenFile( pPPDFile ); -- /*int nConflicts =*/ m_pCUPSWrapper->cupsMarkOptions( pPPD, pDest->num_options, pDest->options ); --#if OSL_DEBUG_LEVEL > 1 -- fprintf( stderr, "processing the following options for printer %s (instance %s):\n", -- pDest->name, pDest->instance ); -- for( int k = 0; k < pDest->num_options; k++ ) -- fprintf( stderr, " \"%s\" = \"%s\"\n", -- pDest->options[k].name, -- pDest->options[k].value ); --#endif -- PrinterInfo& rInfo = m_aPrinters[ aPrinter ].m_aInfo; -- -- rInfo.m_pParser = pNewParser; -- rInfo.m_aContext.setParser( pNewParser ); -- for( int i = 0; i < pPPD->num_groups; i++ ) -- updatePrinterContextInfo( pPPD->groups + i, rInfo ); -+ if( pPPDFile ) -+ { -+ rtl_TextEncoding aEncoding = osl_getThreadTextEncoding(); -+ OUString aFileName( OStringToOUString( pPPDFile, aEncoding ) ); -+ // create the new parser -+ PPDParser* pCUPSParser = new PPDParser( aFileName ); -+ pCUPSParser->m_aFile = rPrinter; -+ pNewParser = pCUPSParser; -+ -+ // update the printer info with context information -+ ppd_file_t* pPPD = m_pCUPSWrapper->ppdOpenFile( pPPDFile ); -+ /*int nConflicts =*/ m_pCUPSWrapper->cupsMarkOptions( pPPD, pDest->num_options, pDest->options ); -+#if OSL_DEBUG_LEVEL > 1 -+ fprintf( stderr, "processing the following options for printer %s (instance %s):\n", -+ pDest->name, pDest->instance ); -+ for( int k = 0; k < pDest->num_options; k++ ) -+ fprintf( stderr, " \"%s\" = \"%s\"\n", -+ pDest->options[k].name, -+ pDest->options[k].value ); -+#endif -+ PrinterInfo& rInfo = m_aPrinters[ aPrinter ].m_aInfo; -+ -+ rInfo.m_pParser = pNewParser; -+ rInfo.m_aContext.setParser( pNewParser ); -+ for( int i = 0; i < pPPD->num_groups; i++ ) -+ updatePrinterContextInfo( pPPD->groups + i, rInfo ); - -- // clean up the mess -- m_pCUPSWrapper->ppdClose( pPPD ); -+ // clean up the mess -+ m_pCUPSWrapper->ppdClose( pPPD ); - -- // remove temporary PPD file -- unlink( pPPDFile ); -- } -+ // remove temporary PPD file -+ unlink( pPPDFile ); -+ } - #if OSL_DEBUG_LEVEL > 1 -- else -- fprintf( stderr, "no dest found for printer %s\n", OUStringToOString( aPrinter, osl_getThreadTextEncoding() ).getStr() ); -+ else -+ fprintf( stderr, "no dest found for printer %s\n", OUStringToOString( aPrinter, osl_getThreadTextEncoding() ).getStr() ); - #endif -+ } -+ m_aCUPSMutex.release(); - } -- if( ! pNewParser ) - #endif // ENABLE_CUPS -+ -+ if( ! pNewParser ) - { - // get the default PPD - pNewParser = PPDParser::getParser( String( RTL_CONSTASCII_USTRINGPARAM( "SGENPRT" ) ) ); -@@ -583,6 +680,8 @@ - fclose( pFile ); - rtl_TextEncoding aEnc = osl_getThreadTextEncoding(); - -+ osl::MutexGuard aGuard( m_aCUPSMutex ); -+ - std::hash_map< OUString, int, OUStringHash >::iterator dest_it = - m_aCUPSDestMap.find( rPrintername ); - if( dest_it != m_aCUPSDestMap.end() ) -@@ -625,7 +724,18 @@ - - bool CUPSManager::checkPrintersChanged() - { -- return PrinterInfoManager::checkPrintersChanged(); -+ bool bChanged = false; -+ if( m_aCUPSMutex.tryToAcquire() ) -+ { -+ bChanged = m_bNewDests; -+ m_aCUPSMutex.release(); -+ initialize(); -+ } -+ -+ if( ! bChanged ) -+ bChanged = PrinterInfoManager::checkPrintersChanged(); -+ -+ return bChanged; - } - - bool CUPSManager::addPrinter( const OUString& rName, const OUString& rDriver ) -@@ -648,23 +758,23 @@ - - bool CUPSManager::setDefaultPrinter( const OUString& rName ) - { -+ bool bSuccess = false; - #ifdef ENABLE_CUPS - std::hash_map< OUString, int, OUStringHash >::iterator nit = - m_aCUPSDestMap.find( rName ); -- if( nit == m_aCUPSDestMap.end() ) -- return false; -- -- cups_dest_t* pDests = (cups_dest_t*)m_pDests; -- for( int i = 0; i < m_nDests; i++ ) -- pDests[i].is_default = 0; -- pDests[ nit->second ].is_default = 1; -- m_pCUPSWrapper->cupsSetDests( m_nDests, (cups_dest_t*)m_pDests ); -- m_aDefaultPrinter = rName; -- -- return true; --#else -- return false; -+ if( nit != m_aCUPSDestMap.end() && m_aCUPSMutex.tryToAcquire() ) -+ { -+ cups_dest_t* pDests = (cups_dest_t*)m_pDests; -+ for( int i = 0; i < m_nDests; i++ ) -+ pDests[i].is_default = 0; -+ pDests[ nit->second ].is_default = 1; -+ m_pCUPSWrapper->cupsSetDests( m_nDests, (cups_dest_t*)m_pDests ); -+ m_aDefaultPrinter = rName; -+ m_aCUPSMutex.release(); -+ bSuccess = true; -+ } - #endif -+ return bSuccess; - } - - bool CUPSManager::writePrinterConfig() -@@ -684,32 +794,39 @@ - if( ! prt->second.m_bModified ) - continue; - -- bDestModified = true; -- cups_dest_t* pDest = ((cups_dest_t*)m_pDests) + nit->second; -- PrinterInfo& rInfo = prt->second.m_aInfo; -- -- // create new option list -- int nNewOptions = 0; -- cups_option_t* pNewOptions = NULL; -- int nValues = rInfo.m_aContext.countValuesModified(); -- for( int i = 0; i < nValues; i++ ) -+ if( m_aCUPSMutex.tryToAcquire() ) - { -- const PPDKey* pKey = rInfo.m_aContext.getModifiedKey( i ); -- const PPDValue* pValue = rInfo.m_aContext.getValue( pKey ); -- if( pKey && pValue ) // sanity check -+ bDestModified = true; -+ cups_dest_t* pDest = ((cups_dest_t*)m_pDests) + nit->second; -+ PrinterInfo& rInfo = prt->second.m_aInfo; -+ -+ // create new option list -+ int nNewOptions = 0; -+ cups_option_t* pNewOptions = NULL; -+ int nValues = rInfo.m_aContext.countValuesModified(); -+ for( int i = 0; i < nValues; i++ ) - { -- OString aName = OUStringToOString( pKey->getKey(), aEncoding ); -- OString aValue = OUStringToOString( pValue->m_aOption, aEncoding ); -- nNewOptions = m_pCUPSWrapper->cupsAddOption( aName.getStr(), aValue.getStr(), nNewOptions, &pNewOptions ); -+ const PPDKey* pKey = rInfo.m_aContext.getModifiedKey( i ); -+ const PPDValue* pValue = rInfo.m_aContext.getValue( pKey ); -+ if( pKey && pValue ) // sanity check -+ { -+ OString aName = OUStringToOString( pKey->getKey(), aEncoding ); -+ OString aValue = OUStringToOString( pValue->m_aOption, aEncoding ); -+ nNewOptions = m_pCUPSWrapper->cupsAddOption( aName.getStr(), aValue.getStr(), nNewOptions, &pNewOptions ); -+ } - } -+ // set PPD options on CUPS dest -+ m_pCUPSWrapper->cupsFreeOptions( pDest->num_options, pDest->options ); -+ pDest->num_options = nNewOptions; -+ pDest->options = pNewOptions; -+ m_aCUPSMutex.release(); - } -- // set PPD options on CUPS dest -- m_pCUPSWrapper->cupsFreeOptions( pDest->num_options, pDest->options ); -- pDest->num_options = nNewOptions; -- pDest->options = pNewOptions; - } -- if( bDestModified ) -+ if( bDestModified && m_aCUPSMutex.tryToAcquire() ) -+ { - m_pCUPSWrapper->cupsSetDests( m_nDests, (cups_dest_t*)m_pDests ); -+ m_aCUPSMutex.release(); -+ } - #endif // ENABLE_CUPS - - return PrinterInfoManager::writePrinterConfig(); -@@ -731,6 +848,8 @@ - (bool(*)(const OString&,OString&,OString&))osl_getSymbol( pLib, aSym.pData ); - if( getpw ) - { -+ osl::MutexGuard aGuard( m_aCUPSMutex ); -+ - OString aUser = m_pCUPSWrapper->cupsUser(); - OString aServer = m_pCUPSWrapper->cupsServer(); - OString aPassword; diff --git a/patches/vclplug/psprint-nojvmfwk.diff b/patches/vclplug/psprint-nojvmfwk.diff new file mode 100644 index 000000000..d18d9622f --- /dev/null +++ b/patches/vclplug/psprint-nojvmfwk.diff @@ -0,0 +1,146 @@ +Index: psprint/source/helper/helper.cxx +=================================================================== +--- psprint/source/helper/helper.cxx.orig 2004-12-03 12:51:50.722009016 +0000 ++++ psprint/source/helper/helper.cxx 2004-12-03 12:52:00.583509840 +0000 +@@ -73,7 +73,7 @@ + #include <rtl/bootstrap.hxx> + #include <sal/config.h> + #ifdef SOLAR_JAVA +-#include <jvmfwk/framework.h> ++#include "jvmaccess/javainfo.hxx" + #endif // SOLAR_JAVA + + #ifdef MACOSX +@@ -247,36 +247,87 @@ const OUString& psp::getFontPath() + + // append jre/jdk fonts if possible + OString aJREpath; +- +-#ifdef SOLAR_JAVA +- JavaInfo * pInfo = NULL; +- javaFrameworkError jerr = jfw_getSelectedJRE( & pInfo); +- if (jerr == JFW_E_NONE && pInfo != NULL) +- { +- OUString aSys; +- if( osl_getSystemPathFromFileURL( pInfo->sLocation, &aSys.pData ) == osl_File_E_None ) +- aJREpath = OUStringToOString( aSys, osl_getThreadTextEncoding() ); +- } +- jfw_freeJavaInfo(pInfo); +-#endif +- +- if( aJREpath.getLength() > 0 ) ++ if( aUserPath.getLength() ) + { +- OString aTestPath( aJREpath ); +- aTestPath += "/jre/lib/fonts"; +- if( access( aTestPath.getStr(), R_OK ) ) ++ OUString aJavaRc( aUserPath ); ++ aJavaRc += OUString( RTL_CONSTASCII_USTRINGPARAM( "/user/config/" SAL_CONFIGFILE( "java" ) ) ); ++ Config aConfig( aJavaRc ); ++ aConfig.SetGroup( "Java" ); ++ aJREpath = aConfig.ReadKey( "Home" ); ++ if( ! aJREpath.getLength() ) ++ { ++ aJavaRc = aNetPath; ++ aJavaRc += OUString( RTL_CONSTASCII_USTRINGPARAM( "/share/config/" SAL_CONFIGFILE("java") ) ); ++ Config aShareConfig( aJavaRc ); ++ aShareConfig.SetGroup( "Java" ); ++ aJREpath = aShareConfig.ReadKey( "Home" ); ++ } ++ ++ if( aJREpath.compareTo( "file:", 5 ) == 0 ) + { +- aTestPath = aJREpath; +- aTestPath += "/lib/fonts"; ++ OUString aURL( OStringToOUString( aJREpath, osl_getThreadTextEncoding() ) ); ++ OUString aSys; ++ if( osl_getSystemPathFromFileURL( aURL.pData, &aSys.pData ) == osl_File_E_None ) ++ aJREpath = OUStringToOString( aSys, osl_getThreadTextEncoding() ); ++ } ++ ++ if( aJREpath.getLength() > 0 ) ++ { ++ OString aTestPath( aJREpath ); ++ aTestPath += "/jre/lib/fonts"; + if( access( aTestPath.getStr(), R_OK ) ) +- aJREpath = OString(); ++ { ++ aTestPath = aJREpath; ++ aTestPath += "/lib/fonts"; ++ if( access( aTestPath.getStr(), R_OK ) ) ++ aJREpath = OString(); ++ else ++ aJREpath = aTestPath; ++ } + else + aJREpath = aTestPath; + } +- else +- aJREpath = aTestPath; + } + ++#ifdef SOLAR_JAVA ++ // if no javarc (e.g. in setup) exists or it failed try the UDK method ++ if( ! aJREpath.getLength() ) ++ { ++ OString aJavaLib; ++ try ++ { ++ OUString aLib; ++ if (osl::FileBase::getSystemPathFromFileURL( ++ jvmaccess::JavaInfo::createBestInfo(true). ++ getRuntimeLibLocation(), ++ aLib) ++ == osl::FileBase::E_None) ++ aLib.convertToString( ++ &aJavaLib, osl_getThreadTextEncoding(), ++ RTL_UNICODETOTEXT_FLAGS_UNDEFINED_ERROR ++ | RTL_UNICODETOTEXT_FLAGS_INVALID_ERROR); ++ } ++ catch (jvmaccess::JavaInfo::InitException &) ++ {} ++ ++ if (aJavaLib.getLength() != 0) ++ { ++ sal_Int32 nIndex; ++ while( ( nIndex = aJavaLib.lastIndexOf( '/' ) ) != -1 ) ++ { ++ aJavaLib = aJavaLib.copy( 0, nIndex ); ++ OString aTmpPath = aJavaLib; ++ aTmpPath += "/lib/fonts"; ++ if( access( aTmpPath.getStr(), R_OK ) == 0 ) ++ { ++ aJREpath = aTmpPath; ++ break; ++ } ++ } ++ } ++ } ++#endif // SOLAR_JAVA ++ + if( aJREpath.getLength() ) + { + aPath += OUString( RTL_CONSTASCII_USTRINGPARAM( ";" ) ); +Index: psprint/prj/build.lst +=================================================================== +--- psprint/prj/build.lst.orig 2004-12-03 12:40:47.820785320 +0000 ++++ psprint/prj/build.lst 2004-12-03 12:52:14.974322104 +0000 +@@ -1,4 +1,4 @@ +-pp psprint : tools unotools cpputools jvmaccess SO:print_header jvmfwk NULL ++pp psprint : tools unotools cpputools jvmaccess SO:print_header NULL + pp psprint usr1 - all pp_mkout NULL + pp psprint\source\fontsubset nmake - all pp_fontsset NULL + pp psprint\source\printer nmake - u pp_printer NULL +Index: psprint/util/makefile.mk +=================================================================== +--- psprint/util/makefile.mk.orig 2004-12-03 12:40:47.863778784 +0000 ++++ psprint/util/makefile.mk 2004-12-03 13:10:17.206797760 +0000 +@@ -105,7 +105,7 @@ SHL1STDLIBS=$(UNOTOOLSLIB) \ + $(SALLIB) \ + -lX11 + .IF "$(SOLAR_JAVA)"!="" +-SHL1STDLIBS+=$(JVMFWKLIB) ++SHL1STDLIBS+=$(JVMACCESSLIB) + .ENDIF + + SHL1DEF= $(MISC)$/$(SHL1TARGET).def diff --git a/patches/vclplug/vcl-source-gdi-utf8-msfonts-fixup.diff b/patches/vclplug/vcl-source-gdi-utf8-msfonts-fixup.diff new file mode 100644 index 000000000..3ee20c67f --- /dev/null +++ b/patches/vclplug/vcl-source-gdi-utf8-msfonts-fixup.diff @@ -0,0 +1,214 @@ +--- vcl/source/gdi/outdev3.cxx.utf8-msfonts 2004-11-02 13:05:07.952153488 -0500 ++++ vcl/source/gdi/outdev3.cxx 2004-11-02 13:18:26.199801400 -0500 +@@ -404,10 +404,10 @@ + + // ======================================================================= + +-struct ImplLocaliziedFontName ++struct ImplLocalizedFontName + { + const char* mpEnglishName; +- const sal_Unicode* mpLocaliziedNames; ++ const sal_Unicode* mpLocalizedNames; + }; + + static sal_Unicode const aBatang[] = { 0xBC14, 0xD0D5, 0, 0 }; +@@ -441,13 +441,19 @@ + static sal_Unicode const aHei[] = { 0x6865, 0, 0 }; + static sal_Unicode const aKai[] = { 0x6B61, 0, 0 }; + static sal_Unicode const aMing[] = { 0x6D69, 0x6E67, 0, 0 }; +-static sal_Unicode const aMSGothic[] = { 0xFF2D, 0xFF33, ' ', 0x30B4, 0x30B7, 0x30C3, 0x30AF, 0, 0 }; +-static sal_Unicode const aMSPGothic[] = { 0xFF2D, 0xFF33, ' ', 0xFF30, 0x30B4, 0x30B7, 0x30C3, 0x30AF, 0, 0 }; +-static sal_Unicode const aMSMincho[] = { 0xFF2D, 0xFF33, ' ', 0x660E, 0x671D, 0, 0 }; +-static sal_Unicode const aMSPMincho[] = { 0xFF2D, 0xFF33, ' ', 0xFF30, 0x660E, 0x671D, 0, 0 }; +-static sal_Unicode const aHGMinchoL[] = { 'h', 'g', 0x660E, 0x671D, 'l', 0, 0 }; +-static sal_Unicode const aHGGothicB[] = { 'h', 'g', 0x30B4, 0x30B7, 0x30C3, 0x30AF, 'b', 0, 0 }; +-static sal_Unicode const aHGHeiseiMin[] = { 'h', 'g', 0x5E73, 0x6210, 0x660E, 0x671D, 0x4F53, 0, 'h', 'g', 0x5E73, 0x6210, 0x660E, 0x671D, 0x4F53, 'w', '3', 'x', '1', '2', 0, 0 }; ++static sal_Unicode const aMSGothic[] = { 'm','s', 0x30B4, 0x30B7, 0x30C3, 0x30AF, 0, 0 }; ++static sal_Unicode const aMSPGothic[] = { 'm','s','p', 0x30B4, 0x30B7, 0x30C3, 0x30AF, 0, 0 }; ++static sal_Unicode const aMSMincho[] = { 'm', 's', 0x660E, 0x671D, 0 }; ++static sal_Unicode const aMSPMincho[] = { 'm','s','p', 0x660E, 0x671D, 0 }; ++static sal_Unicode const aHGMinchoL[] = { 'h','g', 0x660E, 0x671D, 'l', 0, 0 }; ++static sal_Unicode const aHGGothicB[] = { 'h','g', 0x30B4, 0x30B7, 0x30C3, 0x30AF, 'b', 0 }; ++static sal_Unicode const aHGPMinchoL[] = { 'h','g','p', 0x660E, 0x671D, 'l', 0 }; ++static sal_Unicode const aHGPGothicB[] = { 'h','g','p', 0x30B4, 0x30B7, 0x30C3, 0x30AF, 'b', 0 }; ++static sal_Unicode const aHGMinchoLSun[] = { 'h','g', 0x660E, 0x671D, 'l', 's', 'u', 'n', 0 }; ++static sal_Unicode const aHGPMinchoLSun[] = { 'h','g','p', 0x660E, 0x671D, 'l', 's', 'u', 'n', 0 }; ++static sal_Unicode const aHGGothicBSun[] = { 'h','g', 0x30B4, 0x30B7, 0x30C3, 0x30AF, 'b', 's', 'u', 'n', 0 }; ++static sal_Unicode const aHGPGothicBSun[] = { 'h','g','p', 0x30B4, 0x30B7, 0x30C3, 0x30AF, 'b', 's', 'u', 'n', 0 }; ++static sal_Unicode const aHGHeiseiMin[] = { 'h','g', 0x5E73, 0x6210, 0x660E, 0x671D, 0x4F53, 0, 'h', 'g', 0x5E73, 0x6210, 0x660E, 0x671D, 0x4F53, 'w', '3', 'x', '1', '2', 0, 0 }; + static sal_Unicode const aSunDotum[] = { 0xC36C, 0xB3CB, 0xC6C0, 0, 0 }; + static sal_Unicode const aSunGulim[] = { 0xC36C, 0xAD74, 0xB9BC, 0, 0 }; + static sal_Unicode const aSunBatang[] = { 0xC36C, 0xBC14, 0xD0D5, 0, 0 }; +@@ -479,8 +485,6 @@ + static sal_Unicode const aMagicR[] = { 0xD734, 0xBA3C, 0xB9E4, 0xC9C1, 0xCCB4, 0, 0 }; + static sal_Unicode const aSunCrystal[] = { 0xC36C, 0xD06C, 0xB9AC, 0xC2A4, 0xD0C8, 0, 0 }; + static sal_Unicode const aSunSaemmul[] = { 0xC36C, 0xC0D8, 0xBB3C, 0, 0 }; +-static sal_Unicode const aHYShortSamulMedium[] = { 'h', 'y', 0xC595, 0xC740, 0xC0D8, 0xBB3C, 'm', 0, 0 }; +-static sal_Unicode const aHYShortSamul[] = { 'h', 'y', 0xC595, 0xC740, 0xC0D8, 0xBB3C, 0, 0 }; + static sal_Unicode const aHaansoftBatang[] = { 0xD55C, 0xCEF4, 0xBC14, 0xD0D5, 0, 0 }; + static sal_Unicode const aHaansoftDotum[] = { 0xD55C, 0xCEF4, 0xB3CB, 0xC6C0, 0, 0 }; + static sal_Unicode const aHyhaeseo[] = { 0xD55C, 0xC591, 0xD574, 0xC11C, 0, 0 }; +@@ -489,11 +493,49 @@ + static sal_Unicode const aMDArt[] = { 'm', 'd', 0xC544, 0xD2B8, 0xCCB4, 0, 0 }; + static sal_Unicode const aMDAlong[] = { 'm', 'd', 0xC544, 0xB871, 0xCCB4, 0, 0 }; + static sal_Unicode const aMDEasop[] = { 'm', 'd', 0xC774, 0xC19D, 0xCCB4, 0, 0 }; +-static sal_Unicode const HYShortSamulMedium[] = { 'h', 'y', 0xC595, 0xC740, 0xC0D8, 0xBB3C, 'm', 0, 0 }; +-static sal_Unicode const HYShortSamul[] = { 'h', 'y', 0xC595, 0xC740, 0xC0D8, 0xBB3C, 0, 0 }; ++static sal_Unicode const aHYShortSamulMedium[] = { 'h', 'y', 0xC595, 0xC740, 0xC0D8, 0xBB3C, 'm', 0 }; ++static sal_Unicode const aHYShortSamul[] = { 'h', 'y', 0xC595, 0xC740, 0xC0D8, 0xBB3C, 0 }; ++static sal_Unicode const aHGGothicE[] = { 'h','g', 0xFF7A, 0xFF9E, 0xFF7C, 0xFF6F, 0xFF78, 'e', 0 }; ++static sal_Unicode const aHGPGothicE[] = { 'h','g','p', 0xFF7A, 0xFF9E, 0xFF7C, 0xFF6F, 0xFF78, 'e', 0 }; ++static sal_Unicode const aHGSGothicE[] = { 'h','g','s', 0xFF7A, 0xFF9E, 0xFF7C, 0xFF6F, 0xFF78, 'e', 0 }; ++static sal_Unicode const aHGGothicM[] = { 'h','g', 0xFF7A, 0xFF9E, 0xFF7C, 0xFF6F, 0xFF78, 'm', 0 }; ++static sal_Unicode const aHGPGothicM[] = { 'h','g','p', 0xFF7A, 0xFF9E, 0xFF7C, 0xFF6F, 0xFF78, 'm', 0 }; ++static sal_Unicode const aHGSGothicM[] = { 'h','g','s', 0xFF7A, 0xFF9E, 0xFF7C, 0xFF6F, 0xFF78, 'm', 0 }; ++static sal_Unicode const aHGGyoshotai[] = { 'h','g', 0x884C, 0x66F8, 0x4F53, 0 }; ++static sal_Unicode const aHGPGyoshotai[] = { 'h','g','p', 0x884C, 0x66F8, 0x4F53, 0 }; ++static sal_Unicode const aHGSGyoshotai[] = { 'h','g','s', 0x884C, 0x66F8, 0x4F53, 0 }; ++static sal_Unicode const aHGKyokashotai[] = { 'h','g', 0x6559, 0x79D1, 0x66F8, 0x4F53, 0 }; ++static sal_Unicode const aHGPKyokashotai[] = { 'h','g','p', 0x6559, 0x79D1, 0x66F8, 0x4F53, 0 }; ++static sal_Unicode const aHGSKyokashotai[] = { 'h','g','s', 0x6559, 0x79D1, 0x66F8, 0x4F53, 0 }; ++static sal_Unicode const aHGMinchoB[] = { 'h','g', 0x660E, 0x671D, 'b', 0 }; ++static sal_Unicode const aHGPMinchoB[] = { 'h','g','p', 0x660E, 0x671D, 'b', 0 }; ++static sal_Unicode const aHGSMinchoB[] = { 'h','g','s', 0x660E, 0x671D, 'b', 0 }; ++static sal_Unicode const aHGMinchoE[] = { 'h','g', 0x660E, 0x671D, 'e', 0 }; ++static sal_Unicode const aHGPMinchoE[] = { 'h','g','p', 0x660E, 0x671D, 'e', 0 }; ++static sal_Unicode const aHGSMinchoE[] = { 'h','g','s', 0x660E, 0x671D, 'e', 0 }; ++static sal_Unicode const aHGSoeiKakupoptai[] = { 'h','g', 0x5275,0x82F1,0x89D2,0xFF8E, ++ 0xFF9F,0xFF6F,0xFF8C,0xFF9F,0x4F53,0}; ++static sal_Unicode const aHGPSoeiKakupoptai[] = { 'h','g', 'p', 0x5275,0x82F1,0x89D2,0xFF8E, ++ 0xFF9F,0xFF6F,0xFF8C,0xFF9F,0x4F53,0}; ++static sal_Unicode const aHGSSoeiKakupoptai[] = { 'h','g', 's', 0x5275,0x82F1,0x89D2,0xFF8E, ++ 0xFF9F,0xFF6F,0xFF8C,0xFF9F,0x4F53,0}; ++static sal_Unicode const aHGSoeiPresenceEB[] = { 'h','g', 0x5275,0x82F1,0xFF8C,0xFF9F, ++ 0xFF9A,0xFF7E,0xFF9E,0xFF9D,0xFF7D, 'e','b',0}; ++static sal_Unicode const aHGPSoeiPresenceEB[] = { 'h','g','p', 0x5275,0x82F1,0xFF8C,0xFF9F, ++ 0xFF9A,0xFF7E,0xFF9E,0xFF9D,0xFF7D, 'e','b',0}; ++static sal_Unicode const aHGSSoeiPresenceEB[] = { 'h','g','s', 0x5275,0x82F1,0xFF8C,0xFF9F, ++ 0xFF9A,0xFF7E,0xFF9E,0xFF9D,0xFF7D, 'e','b',0}; ++static sal_Unicode const aHGSoeiKakugothicUB[] = { 'h','g', 0x5275,0x82F1,0x89D2,0xFF7A, ++ 0xFF9E,0xFF7C,0xFF6F,0xFF78,'u','b',0}; ++static sal_Unicode const aHGPSoeiKakugothicUB[] = { 'h','g','p', 0x5275,0x82F1,0x89D2,0xFF7A, ++ 0xFF9E,0xFF7C,0xFF6F,0xFF78,'u','b',0}; ++static sal_Unicode const aHGSSoeiKakugothicUB[] = { 'h','g','s', 0x5275,0x82F1,0x89D2,0xFF7A, ++ 0xFF9E,0xFF7C,0xFF6F,0xFF78,'u','b',0}; ++static sal_Unicode const aHGSeikaishotaiPRO[] = { 'h','g', 0x6B63,0x6977,0x66F8,0x4F53, '-','p','r','o',0}; ++static sal_Unicode const aHGMaruGothicMPRO[] = { 'h','g', 0x4E38,0xFF7A,0xFF9E,0xFF7C,0xFF6F,0xFF78, '-','p','r','o',0}; + + +-static ImplLocaliziedFontName const aImplLocaliziedNamesList[] = ++static ImplLocalizedFontName aImplLocalizedNamesList[] = + { + { "batang", aBatang }, + { "batangche", aBatangChe }, +@@ -530,6 +572,12 @@ + { "mspmincho", aMSPMincho }, + { "hgminchol", aHGMinchoL }, + { "hggothicb", aHGGothicB }, ++{ "hgpminchol", aHGPMinchoL }, ++{ "hgpgothicb", aHGPGothicB }, ++{ "hgmincholsun", aHGMinchoLSun }, ++{ "hggothicbsun", aHGGothicBSun }, ++{ "hgpmincholsun", aHGPMinchoLSun }, ++{ "hgpgothicbsun", aHGPGothicBSun }, + { "hgheiseimin", aHGHeiseiMin }, + { "sundotum", aSunDotum }, + { "sungulim", aSunGulim }, +@@ -572,8 +620,35 @@ + { "mdart", aMDArt }, + { "mdalong", aMDAlong }, + { "mdeasop", aMDEasop }, +-{ "hyshortsamulmedium", HYShortSamulMedium }, +-{ "hyshortsamul", HYShortSamul }, ++{ "hggothice", aHGGothicE }, ++{ "hgpgothice", aHGPGothicE }, ++{ "hgpothice", aHGSGothicE }, ++{ "hggothicm", aHGGothicM }, ++{ "hgpgothicm", aHGPGothicM }, ++{ "hgpgothicm", aHGSGothicM }, ++{ "hggyoshotai", aHGGyoshotai }, ++{ "hgpgyoshotai", aHGPGyoshotai }, ++{ "hgsgyoshotai", aHGSGyoshotai }, ++{ "hgkyokashotai", aHGKyokashotai }, ++{ "hgpkyokashotai", aHGPKyokashotai }, ++{ "hgskyokashotai", aHGSKyokashotai }, ++{ "hgminchob", aHGMinchoB }, ++{ "hgpminchob", aHGPMinchoB }, ++{ "hgsminchob", aHGSMinchoB }, ++{ "hgminchoe", aHGMinchoE }, ++{ "hgpminchoe", aHGPMinchoE }, ++{ "hgsminchoe", aHGSMinchoE }, ++{ "hgsoeikakupoptai", aHGSoeiKakupoptai }, ++{ "hgpsoeikakupopta", aHGPSoeiKakupoptai }, ++{ "hgssoeikakupopta", aHGSSoeiKakupoptai }, ++{ "hgsoeipresenceeb", aHGSoeiPresenceEB }, ++{ "hgpsoeipresenceeb", aHGPSoeiPresenceEB }, ++{ "hgssoeipresenceeb", aHGSSoeiPresenceEB }, ++{ "hgsoeikakugothicub", aHGSoeiKakugothicUB }, ++{ "hgpsoeikakugothicub", aHGPSoeiKakugothicUB }, ++{ "hgssoeikakugothicub", aHGSSoeiKakugothicUB }, ++{ "hgseikaishotaipro", aHGSeikaishotaiPRO }, ++{ "hgmarugothicmpro", aHGMaruGothicMPRO }, + { NULL, NULL }, + }; + +@@ -665,24 +740,16 @@ + i++; + } + +- // Translate localizied name to English ASCII name +- const ImplLocaliziedFontName* pTranslateNames = aImplLocaliziedNamesList; ++ // Translate localized name to English ASCII name ++ // TODO: replace the O(n) search! ++ const ImplLocalizedFontName* pTranslateNames = aImplLocalizedNamesList; + while ( bTranslate && pTranslateNames->mpEnglishName ) + { +- const sal_Unicode* pLocaliziedName = pTranslateNames->mpLocaliziedNames; +- while ( *pLocaliziedName ) ++ const sal_Unicode* pLocalizedName = pTranslateNames->mpLocalizedNames; ++ if ( rName.Equals( pLocalizedName ) ) + { +- if ( rName.Equals( pLocaliziedName ) ) +- { +- rName.AssignAscii( pTranslateNames->mpEnglishName ); +- bTranslate = FALSE; +- break; +- } +- +- // Run to the end of the Token (\0\0 is the end mark) +- while ( *pLocaliziedName ) +- pLocaliziedName++; +- pLocaliziedName++; ++ rName.AssignAscii( pTranslateNames->mpEnglishName ); ++ break; + } + + pTranslateNames++; +@@ -1216,7 +1283,7 @@ + } + fprintf( stderr, " OutputDevice::GetDefaultFont() Type=\"%s\" lang=%d flags=%d FontName=\"%s\"\n", + s, eLang, nFlags, +- OUStringToOString( aFont.GetName(), osl_getThreadTextEncoding() ).getStr() ++ OUStringToOString( aFont.GetName(), RTL_TEXTENCODING_UTF8 ).getStr() + ); + #endif + +@@ -4927,7 +4994,7 @@ + + #if OSL_DEBUG_LEVEL > 2 + fprintf( stderr, " OutputDevice::SetFont() FontName=\"%s\"\n", +- OUStringToOString( aFont.GetName(), osl_getThreadTextEncoding() ).getStr() ); ++ OUStringToOString( aFont.GetName(), RTL_TEXTENCODING_UTF8 ).getStr() ); + #endif + + if ( !maFont.IsSameInstance( aFont ) ) +@@ -5327,7 +5394,7 @@ + + #if OSL_DEBUG_LEVEL > 2 + fprintf( stderr, " OutputDevice::DrawText(\"%s\")\n", +- OUStringToOString( rStr, osl_getThreadTextEncoding() ).getStr() ); ++ OUStringToOString( rStr, RTL_TEXTENCODING_UTF8 ).getStr() ); + #endif + + if ( mpMetaFile ) diff --git a/patches/vclplug/vcl-source-gdi.diff b/patches/vclplug/vcl-source-gdi.diff index 6d059d99c..39cff42c1 100644 --- a/patches/vclplug/vcl-source-gdi.diff +++ b/patches/vclplug/vcl-source-gdi.diff @@ -536,15 +536,7 @@ diff -u -p -u -r1.2.292.1 -r1.5 switch( eFilter ) { -@@ -620,7 +618,7 @@ BOOL Bitmap::ImplEmbossGrey( const BmpFi - aGrey.SetIndex( 0 ); - else - { -- const double fGrey = nDotL / sqrt( nNx * nNx + nNy * nNy + nZ2 ); -+ const double fGrey = nDotL / sqrt( (double)(nNx * nNx + nNy * nNy + nZ2) ); - aGrey.SetIndex( (BYTE) VOS_BOUND( fGrey, 0, 255 ) ); - } - + Index: vcl/source/gdi/color.cxx =================================================================== RCS file: /cvs/gsl/vcl/source/gdi/color.cxx,v @@ -1454,18 +1446,6 @@ diff -u -p -u -r1.13 -r1.14 } } } -@@ -1317,11 +1308,7 @@ String StarSymbolToMSMultiFontImpl::Conv - String StarSymbolToMSMultiFontImpl::ConvertString(String &rString, - xub_StrLen& rIndex) - { --#if 1 - typedef ::std::multimap<sal_Unicode, SymbolEntry>::iterator MI; --#else -- typedef ::std::multimap<sal_Unicode, SymbolEntry>::const_iterator MI; --#endif - typedef ::std::pair<MI, MI> Result; - - String sRet; Index: vcl/source/gdi/gdimtf.cxx =================================================================== RCS file: /cvs/gsl/vcl/source/gdi/gdimtf.cxx,v diff --git a/patches/vclplug/vcl-unx-source-gdi.diff b/patches/vclplug/vcl-unx-source-gdi.diff index 29d649121..7989f4d08 100644 --- a/patches/vclplug/vcl-unx-source-gdi.diff +++ b/patches/vclplug/vcl-unx-source-gdi.diff @@ -3,9 +3,10 @@ Index: vcl/unx/source/gdi/cdeint.cxx RCS file: /cvs/gsl/vcl/unx/source/gdi/cdeint.cxx,v retrieving revision 1.8 retrieving revision 1.9 -diff -u -p -u -r1.8 -r1.9 ---- vcl/unx/source/gdi/cdeint.cxx 24 Jun 2002 15:53:02 -0000 1.8 -+++ vcl/unx/source/gdi/cdeint.cxx 18 Nov 2003 14:44:27 -0000 1.9 +Index: vcl/unx/source/gdi/cdeint.cxx +=================================================================== +--- vcl/unx/source/gdi/cdeint.cxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/cdeint.cxx 2004-09-14 14:09:32.367288400 +0200 @@ -64,14 +64,12 @@ #include <salunx.h> #include <saldisp.hxx> @@ -24,12 +25,8 @@ diff -u -p -u -r1.8 -r1.9 mnRefCount++; Index: vcl/unx/source/gdi/dtint.cxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/dtint.cxx,v -retrieving revision 1.16.82.1 -retrieving revision 1.22 -diff -u -p -u -r1.16.82.1 -r1.22 ---- vcl/unx/source/gdi/dtint.cxx 15 Jan 2004 12:52:24 -0000 1.16.82.1 -+++ vcl/unx/source/gdi/dtint.cxx 10 May 2004 15:58:19 -0000 1.22 +--- vcl/unx/source/gdi/dtint.cxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/dtint.cxx 2004-09-14 14:09:32.371287792 +0200 @@ -72,10 +72,8 @@ #include <cdeint.hxx> #endif @@ -143,7 +140,7 @@ diff -u -p -u -r1.16.82.1 -r1.22 void DtIntegrator::GetSystemLook( AllSettings& rSettings ) { --} + } - -Color DtIntegrator::parseColor( const ByteString& rLine ) -{ @@ -563,15 +560,11 @@ diff -u -p -u -r1.16.82.1 -r1.22 - rSettings.SetMouseSettings( aMouseSettings ); - rSettings.SetStyleSettings( aStyleSettings ); - } - } +-} Index: vcl/unx/source/gdi/gcach_xpeer.cxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/gcach_xpeer.cxx,v -retrieving revision 1.32.18.1 -retrieving revision 1.37 -diff -u -p -u -r1.32.18.1 -r1.37 ---- vcl/unx/source/gdi/gcach_xpeer.cxx 9 Jan 2004 18:14:01 -0000 1.32.18.1 -+++ vcl/unx/source/gdi/gcach_xpeer.cxx 4 Feb 2004 11:05:23 -0000 1.37 +--- vcl/unx/source/gdi/gcach_xpeer.cxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/gcach_xpeer.cxx 2004-09-14 14:09:32.372287640 +0200 @@ -61,6 +61,7 @@ #include <rtl/ustring.hxx> @@ -643,12 +636,8 @@ diff -u -p -u -r1.32.18.1 -r1.37 rGlyphData.SetOffset( +maRawBitmap.mnXOffset, +maRawBitmap.mnYOffset ); Index: vcl/unx/source/gdi/kdeint.cxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/kdeint.cxx,v -retrieving revision 1.10 -retrieving revision 1.12 -diff -u -p -u -r1.10 -r1.12 ---- vcl/unx/source/gdi/kdeint.cxx 16 Jul 2003 17:46:57 -0000 1.10 -+++ vcl/unx/source/gdi/kdeint.cxx 6 Jan 2004 14:37:00 -0000 1.12 +--- vcl/unx/source/gdi/kdeint.cxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/kdeint.cxx 2004-09-14 14:09:32.373287488 +0200 @@ -60,18 +60,18 @@ ************************************************************************/ @@ -691,12 +680,8 @@ diff -u -p -u -r1.10 -r1.12 if( pTryFiles[i][0] == '~' ) Index: vcl/unx/source/gdi/makefile.mk =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/makefile.mk,v -retrieving revision 1.9 -retrieving revision 1.13 -diff -u -p -u -r1.9 -r1.13 ---- vcl/unx/source/gdi/makefile.mk 27 Aug 2002 14:52:35 -0000 1.9 -+++ vcl/unx/source/gdi/makefile.mk 10 May 2004 15:58:32 -0000 1.13 +--- vcl/unx/source/gdi/makefile.mk.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/makefile.mk 2004-09-14 14:09:32.374287336 +0200 @@ -80,24 +80,29 @@ dummy: .ELSE # "$(GUIBASE)"!="unx" @@ -733,21 +718,19 @@ diff -u -p -u -r1.9 -r1.13 .IF "$(USE_XPRINT)" == "TRUE" CFLAGS+=-D_USE_PRINT_EXTENSION_=1 -@@ -113,8 +118,6 @@ ENVCFLAGS+=-DUSE_CDE - - .IF "$(USE_BUILTIN_RASTERIZER)" != "" +@@ -115,8 +120,6 @@ ENVCFLAGS+=-DUSE_CDE SLOFILES+= $(SLO)$/gcach_xpeer.obj --.ENDIF -- .ENDIF +-.ENDIF +- .ENDIF # "$(GUIBASE)"!="unx" + + # --- Targets ------------------------------------------------------ Index: vcl/unx/source/gdi/pspgraphics.cxx =================================================================== -RCS file: vcl/unx/source/gdi/pspgraphics.cxx -diff -N vcl/unx/source/gdi/pspgraphics.cxx ---- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ vcl/unx/source/gdi/pspgraphics.cxx 17 Jun 2004 12:28:07 -0000 1.4 +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ vcl/unx/source/gdi/pspgraphics.cxx 2004-09-14 14:09:32.377286880 +0200 @@ -0,0 +1,1355 @@ +/************************************************************************* + * @@ -2106,12 +2089,8 @@ diff -N vcl/unx/source/gdi/pspgraphics.cxx +} Index: vcl/unx/source/gdi/salbmp.cxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/salbmp.cxx,v -retrieving revision 1.8.274.1 -retrieving revision 1.14 -diff -u -p -u -r1.8.274.1 -r1.14 ---- vcl/unx/source/gdi/salbmp.cxx 15 Jan 2004 12:52:46 -0000 1.8.274.1 -+++ vcl/unx/source/gdi/salbmp.cxx 22 Jun 2004 17:42:38 -0000 1.14 +--- vcl/unx/source/gdi/salbmp.cxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/salbmp.cxx 2004-09-14 14:09:32.382286120 +0200 @@ -59,20 +59,18 @@ * ************************************************************************/ @@ -2638,12 +2617,8 @@ diff -u -p -u -r1.8.274.1 -r1.14 { Index: vcl/unx/source/gdi/salgdi.cxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/salgdi.cxx,v -retrieving revision 1.24.120.2 -retrieving revision 1.33 -diff -u -p -u -r1.24.120.2 -r1.33 ---- vcl/unx/source/gdi/salgdi.cxx 15 Jan 2004 12:53:28 -0000 1.24.120.2 -+++ vcl/unx/source/gdi/salgdi.cxx 22 Jun 2004 17:42:18 -0000 1.33 +--- vcl/unx/source/gdi/salgdi.cxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/salgdi.cxx 2004-09-14 14:09:32.386285512 +0200 @@ -59,14 +59,22 @@ * ************************************************************************/ @@ -3951,12 +3926,8 @@ diff -u -p -u -r1.24.120.2 -r1.33 - Index: vcl/unx/source/gdi/salgdi2.cxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/salgdi2.cxx,v -retrieving revision 1.18.68.1 -retrieving revision 1.25 -diff -u -p -u -r1.18.68.1 -r1.25 ---- vcl/unx/source/gdi/salgdi2.cxx 15 Jan 2004 12:53:52 -0000 1.18.68.1 -+++ vcl/unx/source/gdi/salgdi2.cxx 22 Jun 2004 17:42:46 -0000 1.25 +--- vcl/unx/source/gdi/salgdi2.cxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/salgdi2.cxx 2004-09-14 14:09:32.406282472 +0200 @@ -59,9 +59,6 @@ * ************************************************************************/ @@ -5315,12 +5286,8 @@ diff -u -p -u -r1.18.68.1 -r1.25 Index: vcl/unx/source/gdi/salgdi3.cxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/salgdi3.cxx,v -retrieving revision 1.105.46.5 -retrieving revision 1.119 -diff -u -p -u -r1.105.46.5 -r1.119 ---- vcl/unx/source/gdi/salgdi3.cxx 13 Feb 2004 14:03:54 -0000 1.105.46.5 -+++ vcl/unx/source/gdi/salgdi3.cxx 17 Jun 2004 12:29:09 -0000 1.119 +--- vcl/unx/source/gdi/salgdi3.cxx.orig 2004-09-12 14:46:23.000000000 +0200 ++++ vcl/unx/source/gdi/salgdi3.cxx 2004-09-14 14:11:55.218571704 +0200 @@ -59,10 +59,6 @@ * ************************************************************************/ @@ -5664,7 +5631,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 for( int nStart = 0; rSalLayout.GetNextGlyphs( 1, &nGlyph, aPos, nStart ); ) { Pixmap aStipple = aX11GlyphPeer.GetPixmap( rFont, nGlyph ); -@@ -1124,186 +1015,27 @@ void SalGraphicsData::DrawServerSimpleFo +@@ -1124,200 +1015,27 @@ void SalGraphicsData::DrawServerSimpleFo //-------------------------------------------------------------------------- @@ -5733,10 +5700,24 @@ diff -u -p -u -r1.105.46.5 -r1.119 - // apply pair kerning to prev glyph if requested - if( SAL_LAYOUT_KERNING_PAIRS & rArgs.mnFlags ) - { -- // TODO: get kerning value from printer -- int nKern = 0; //GetGlyphKernValue( nOldGlyphId, nGlyphIndex ); -- nGlyphWidth += nKern; -- aPrevItem.mnNewWidth = nGlyphWidth; +- if( nOldGlyphId > 0 ) +- { +- const std::list< psp::KernPair >& rKernPairs = mrPrinterGfx.getKernPairs(mbVertical); +- for( std::list< psp::KernPair >::const_iterator it = rKernPairs.begin(); +- it != rKernPairs.end(); ++it ) +- { +- if( it->first == nOldGlyphId && it->second == nGlyphIndex ) +- { +- int nTextScale = mrPrinterGfx.GetFontWidth(); +- if( ! nTextScale ) +- nTextScale = mrPrinterGfx.GetFontHeight(); +- int nKern = (mbVertical ? it->kern_y : it->kern_x) * nTextScale; +- nGlyphWidth += nKern; +- aPrevItem.mnNewWidth = nGlyphWidth; +- break; +- } +- } +- } - } - - // finish previous glyph @@ -5866,7 +5847,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 else { // draw complex text -@@ -1326,35 +1058,7 @@ void SalGraphicsData::DispatchServerFont +@@ -1340,35 +1058,7 @@ void SalGraphicsData::DispatchServerFont //-------------------------------------------------------------------------- @@ -5903,7 +5884,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 const Point& rPoint, const sal_Unicode* pStr, int nLength ) { Display* pDisplay = GetXDisplay(); -@@ -1383,8 +1087,9 @@ void SalGraphicsData::DrawStringUCS2MB( +@@ -1397,8 +1087,9 @@ void SalGraphicsData::DrawStringUCS2MB( { XTextItem16 *pTextItem = (XTextItem16*)alloca( nLength * sizeof(XTextItem16) ); XChar2b *pMBChar = (XChar2b*)pStr; @@ -5914,7 +5895,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 { rtl_TextEncoding nEnc; XFontStruct* pFontStruct = rFont.GetFontStruct( pStr[nChar], &nEnc ); -@@ -1406,15 +1111,13 @@ void SalGraphicsData::DrawStringUCS2MB( +@@ -1420,15 +1111,13 @@ void SalGraphicsData::DrawStringUCS2MB( //-------------------------------------------------------------------------- @@ -5931,7 +5912,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 if( mXFont[0] ) nPairs = mXFont[0]->GetFontCodeRanges( pCodePairs ); return nPairs; -@@ -1449,204 +1152,32 @@ CheckNoNegativeCoordinateWorkaround() +@@ -1463,204 +1152,32 @@ CheckNoNegativeCoordinateWorkaround() // // ---------------------------------------------------------------------------- @@ -5990,29 +5971,29 @@ diff -u -p -u -r1.105.46.5 -r1.119 { -#ifndef _USE_PRINT_EXTENSION_ - if (maGraphicsData.m_pPrinterGfx != NULL) -- { ++ if( nTextColor_ != nSalColor ) + { - psp::PrinterColor aColor (SALCOLOR_RED (nSalColor), - SALCOLOR_GREEN (nSalColor), - SALCOLOR_BLUE (nSalColor)); - maGraphicsData.m_pPrinterGfx->SetTextColor (aColor); -- } ++ nTextColor_ = nSalColor; ++ nTextPixel_ = GetPixel( nSalColor ); ++ bFontGC_ = FALSE; + } - else - { -#endif - - if( _GetTextColor() != nSalColor ) -+ if( nTextColor_ != nSalColor ) - { +- { - _GetTextColor() = nSalColor; - _GetTextPixel() = _GetPixel( nSalColor ); - _IsFontGC() = FALSE; - } - -#ifndef _USE_PRINT_EXTENSION_ -+ nTextColor_ = nSalColor; -+ nTextPixel_ = GetPixel( nSalColor ); -+ bFontGC_ = FALSE; - } +- } -#endif } @@ -6149,7 +6130,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 { // inform font manager rtl::OUString aUSystemPath; -@@ -1662,7 +1193,7 @@ ImplFontData* SalGraphics::AddTempDevFon +@@ -1676,7 +1193,7 @@ ImplFontData* SalGraphics::AddTempDevFon psp::FastPrintFontInfo aInfo; rMgr.getFontFastInfo( nFontId, aInfo ); ImplFontData* pFontData = new ImplFontData; @@ -6158,7 +6139,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 pFontData->maName = rFontName; pFontData->mnQuality += 5800; -@@ -1676,148 +1207,83 @@ ImplFontData* SalGraphics::AddTempDevFon +@@ -1690,164 +1207,82 @@ ImplFontData* SalGraphics::AddTempDevFon // ---------------------------------------------------------------------------- @@ -6167,35 +6148,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 { -#ifndef _USE_PRINT_EXTENSION_ - if (maGraphicsData.m_pJobData != NULL) -+ XlfdStorage* pFonts = GetDisplay()->GetXlfdList(); -+ -+ for ( int nIdx = 0; nIdx < pFonts->GetCount(); nIdx++ ) -+ { -+ ImplFontData *pFontData = new ImplFontData; -+ pFonts->Get(nIdx)->ToImplFontData( pFontData ); -+ if( pFontData->maName.CompareIgnoreCaseToAscii( "itc ", 4 ) == COMPARE_EQUAL ) -+ pFontData->maName = pFontData->maName.Copy( 4 ); -+ pFontData->mbSubsettable = FALSE; -+ pFontData->mbEmbeddable = FALSE; -+ pList->Add( pFontData ); -+ } -+ -+ aX11GlyphPeer.SetDisplay( GetXDisplay(), -+ GetDisplay()->GetVisual()->GetVisual() ); -+#ifdef MACOSX -+ GlyphCache::EnsureInstance( aX11GlyphPeer, true ); -+#else -+ GlyphCache::EnsureInstance( aX11GlyphPeer, false ); -+#endif -+ GlyphCache& rGC = GlyphCache::GetInstance(); -+ -+ const psp::PrintFontManager& rMgr = psp::PrintFontManager::get(); -+ ::std::list< psp::fontID > aList; -+ ::std::list< psp::fontID >::iterator it; -+ rMgr.getFontList( aList ); -+ unicodeKernMap aKernTab; -+ for( it = aList.begin(); it != aList.end(); ++it ) - { +- { - const char* pLangBoost = NULL; - const LanguageType aLang = Application::GetSettings().GetUILanguage(); - switch( aLang ) @@ -6225,39 +6178,17 @@ diff -u -p -u -r1.105.46.5 -r1.119 - - ::std::list< psp::fontID >::iterator it; - for (it = aList.begin(); it != aList.end(); ++it) -+ psp::FastPrintFontInfo aInfo; -+ if( rMgr.getFontFastInfo( *it, aInfo ) ) - { +- { - psp::FastPrintFontInfo aInfo; - if (rMgr.getFontFastInfo (*it, aInfo)) -+ if( aInfo.m_eType == psp::fonttype::Builtin ) -+ continue; -+ ImplFontData aFontData; -+ PspGraphics::SetImplFontData( aInfo, aFontData ); -+ // prefer builtin_rasterizer fonts -+ aFontData.mnQuality += 4096; -+ // prefer truetype fonts -+ if( aInfo.m_eType == psp::fonttype::TrueType ) -+ aFontData.mnQuality += 1000; -+ int nFaceNum = rMgr.getFontFaceNumber( aInfo.m_nID ); -+ if( aFontData.maName.CompareIgnoreCaseToAscii( "itc ", 4 ) == COMPARE_EQUAL ) -+ aFontData.maName = aFontData.maName.Copy( 4 ); -+ if( nFaceNum < 0 ) -+ nFaceNum = 0; -+ -+ -+ const unicodeKernMap* pKernTab = NULL; -+ if( aInfo.m_eType == psp::fonttype::Type1 ) - { +- { - ImplFontData *pFontData = new ImplFontData; - SetImplFontData( aInfo, *pFontData ); - pFontData->mpSysData = (void*)*it; - if( pFontData->maName.CompareIgnoreCaseToAscii( "itc ", 4 ) == COMPARE_EQUAL ) - pFontData->maName = pFontData->maName.Copy( 4 ); - if( aInfo.m_eType == psp::fonttype::TrueType ) -+ const std::list< psp::KernPair >& rKernPairs = rMgr.getKernPairs( *it ); -+ if( rKernPairs.size() ) - { +- { - // prefer truetype fonts - pFontData->mnQuality += 10; - // asian type 1 fonts are not known @@ -6270,29 +6201,35 @@ diff -u -p -u -r1.105.46.5 -r1.119 - if( pLangBoost && aFileName.Copy( nPos+1, 3 ).EqualsIgnoreCaseAscii( pLangBoost ) ) - pFontData->mnQuality += 10; - } -+ aKernTab.clear(); -+ for( std::list< psp::KernPair >::const_iterator it = rKernPairs.begin(); -+ it != rKernPairs.end(); ++it ) -+ aKernTab[ it->first ][ it->second ] = it->kern_x; -+ pKernTab = & aKernTab; - } +- } - pList->Add( pFontData ); - } -+ -+ // handling of alias names is done by GlyphCache::FetchFontList -+ rGC.AddFontFile( rMgr.getFontFileSysPath( aInfo.m_nID ), nFaceNum, -+ aInfo.m_nID, &aFontData, pKernTab ); - } - } +- } +- } +- } - else -#endif - { - XlfdStorage* pFonts = _GetDisplay()->GetXlfdList(); - +- - for ( int nIdx = 0; nIdx < pFonts->GetCount(); nIdx++ ) - { - ImplFontData *pFontData = new ImplFontData; --#ifdef MACOSX ++ XlfdStorage* pFonts = GetDisplay()->GetXlfdList(); ++ ++ for ( int nIdx = 0; nIdx < pFonts->GetCount(); nIdx++ ) ++ { ++ ImplFontData *pFontData = new ImplFontData; ++ pFonts->Get(nIdx)->ToImplFontData( pFontData ); ++ if( pFontData->maName.CompareIgnoreCaseToAscii( "itc ", 4 ) == COMPARE_EQUAL ) ++ pFontData->maName = pFontData->maName.Copy( 4 ); ++ pFontData->mbSubsettable = FALSE; ++ pFontData->mbEmbeddable = FALSE; ++ pList->Add( pFontData ); ++ } ++ ++ aX11GlyphPeer.SetDisplay( GetXDisplay(), ++ GetDisplay()->GetVisual()->GetVisual() ); + #ifdef MACOSX - // don't use bitmap X fonts on OS X - if ( pFonts->Get(nIdx)->GetFontType() != TYPE_RASTER ) -#endif @@ -6311,17 +6248,31 @@ diff -u -p -u -r1.105.46.5 -r1.119 - maGraphicsData.GetDisplay()->GetVisual()->GetVisual() ); -#ifdef MACOSX - GlyphCache::EnsureInstance( aX11GlyphPeer, true ); --#else ++ GlyphCache::EnsureInstance( aX11GlyphPeer, true ); + #else - GlyphCache::EnsureInstance( aX11GlyphPeer, false ); --#endif ++ GlyphCache::EnsureInstance( aX11GlyphPeer, false ); + #endif - GlyphCache& rGC = GlyphCache::GetInstance(); - - const psp::PrintFontManager& rMgr = psp::PrintFontManager::get(); - ::std::list< psp::fontID > aList; - ::std::list< psp::fontID >::iterator it; - rMgr.getFontList( aList ); +- unicodeKernMap aKernTab; - for( it = aList.begin(); it != aList.end(); ++it ) -- { ++ GlyphCache& rGC = GlyphCache::GetInstance(); ++ ++ const psp::PrintFontManager& rMgr = psp::PrintFontManager::get(); ++ ::std::list< psp::fontID > aList; ++ ::std::list< psp::fontID >::iterator it; ++ rMgr.getFontList( aList ); ++ unicodeKernMap aKernTab; ++ for( it = aList.begin(); it != aList.end(); ++it ) ++ { ++ psp::FastPrintFontInfo aInfo; ++ if( rMgr.getFontFastInfo( *it, aInfo ) ) + { - psp::FastPrintFontInfo aInfo; - if( rMgr.getFontFastInfo( *it, aInfo ) ) - { @@ -6339,14 +6290,58 @@ diff -u -p -u -r1.105.46.5 -r1.119 - aFontData.maName = aFontData.maName.Copy( 4 ); - if( nFaceNum < 0 ) - nFaceNum = 0; ++ if( aInfo.m_eType == psp::fonttype::Builtin ) ++ continue; ++ ImplFontData aFontData; ++ PspGraphics::SetImplFontData( aInfo, aFontData ); ++ // prefer builtin_rasterizer fonts ++ aFontData.mnQuality += 4096; ++ // prefer truetype fonts ++ if( aInfo.m_eType == psp::fonttype::TrueType ) ++ aFontData.mnQuality += 1000; ++ int nFaceNum = rMgr.getFontFaceNumber( aInfo.m_nID ); ++ if( aFontData.maName.CompareIgnoreCaseToAscii( "itc ", 4 ) == COMPARE_EQUAL ) ++ aFontData.maName = aFontData.maName.Copy( 4 ); ++ if( nFaceNum < 0 ) ++ nFaceNum = 0; ++ + +- const unicodeKernMap* pKernTab = NULL; +- if( aInfo.m_eType == psp::fonttype::Type1 ) ++ const unicodeKernMap* pKernTab = NULL; ++ if( aInfo.m_eType == psp::fonttype::Type1 ) ++ { ++ const std::list< psp::KernPair >& rKernPairs = rMgr.getKernPairs( *it ); ++ if( rKernPairs.size() ) + { +- const std::list< psp::KernPair >& rKernPairs = rMgr.getKernPairs( *it ); +- if( rKernPairs.size() ) +- { +- aKernTab.clear(); +- for( std::list< psp::KernPair >::const_iterator it = rKernPairs.begin(); +- it != rKernPairs.end(); ++it ) +- aKernTab[ it->first ][ it->second ] = it->kern_x; +- pKernTab = & aKernTab; +- } ++ aKernTab.clear(); ++ for( std::list< psp::KernPair >::const_iterator it = rKernPairs.begin(); ++ it != rKernPairs.end(); ++it ) ++ aKernTab[ it->first ][ it->second ] = it->kern_x; ++ pKernTab = & aKernTab; + } +- - rGC.AddFontFile( rMgr.getFontFileSysPath( aInfo.m_nID ), nFaceNum, -- aInfo.m_nID, &aFontData ); -- } -- } +- aInfo.m_nID, &aFontData, pKernTab ); + } ++ ++ // handling of alias names is done by GlyphCache::FetchFontList ++ rGC.AddFontFile( rMgr.getFontFileSysPath( aInfo.m_nID ), nFaceNum, ++ aInfo.m_nID, &aFontData, pKernTab ); + } - - rGC.FetchFontList( pList ); -#endif // USE_BUILTIN_RASTERIZER -- } + } + rGC.FetchFontList( pList ); } @@ -6369,7 +6364,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 } // ---------------------------------------------------------------------------- -@@ -1831,136 +1297,53 @@ sal_DivideNeg( long n1, long n2 ) +@@ -1861,136 +1296,53 @@ sal_DivideNeg( long n1, long n2 ) // ---------------------------------------------------------------------------- void @@ -6517,7 +6512,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 if( !pSF ) return FALSE; -@@ -1972,13 +1355,13 @@ BOOL SalGraphics::GetGlyphBoundRect( lon +@@ -2002,13 +1354,13 @@ BOOL SalGraphics::GetGlyphBoundRect( lon // --------------------------------------------------------------------------- @@ -6533,7 +6528,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 if( !pSF ) return FALSE; -@@ -1991,29 +1374,13 @@ BOOL SalGraphics::GetGlyphOutline( long +@@ -2021,29 +1373,13 @@ BOOL SalGraphics::GetGlyphOutline( long //-------------------------------------------------------------------------- @@ -6565,7 +6560,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 else if( mXFont[ nFallbackLevel ] ) pLayout = new X11FontLayout( *mXFont[ nFallbackLevel ] ); else -@@ -2024,18 +1391,10 @@ SalLayout* SalGraphicsData::GetTextLayou +@@ -2054,18 +1390,10 @@ SalLayout* SalGraphicsData::GetTextLayou //-------------------------------------------------------------------------- @@ -6586,7 +6581,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 sal_uInt8* pEncoding, sal_Int32* pWidths, int nGlyphs, -@@ -2049,41 +1408,7 @@ BOOL SalGraphics::CreateFontSubset( +@@ -2079,41 +1407,7 @@ BOOL SalGraphics::CreateFontSubset( // which this method was created). The correct way would // be to have the GlyphCache search for the ImplFontData pFont psp::fontID aFont = (psp::fontID)pFont->mpSysData; @@ -6629,7 +6624,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 #else return FALSE; #endif -@@ -2091,7 +1416,7 @@ BOOL SalGraphics::CreateFontSubset( +@@ -2121,7 +1415,7 @@ BOOL SalGraphics::CreateFontSubset( //-------------------------------------------------------------------------- @@ -6638,7 +6633,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 { #ifndef _USE_PRINT_EXTENSION_ // in this context the sysdata member of pFont should -@@ -2100,61 +1425,7 @@ const void* SalGraphics::GetEmbedFontDat +@@ -2130,61 +1424,7 @@ const void* SalGraphics::GetEmbedFontDat // which this method was created). The correct way would // be to have the GlyphCache search for the ImplFontData pFont psp::fontID aFont = (psp::fontID)pFont->mpSysData; @@ -6701,7 +6696,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 #else return NULL; #endif -@@ -2162,14 +1433,16 @@ const void* SalGraphics::GetEmbedFontDat +@@ -2192,14 +1432,16 @@ const void* SalGraphics::GetEmbedFontDat //-------------------------------------------------------------------------- @@ -6721,7 +6716,7 @@ diff -u -p -u -r1.105.46.5 -r1.119 { #ifndef _USE_PRINT_EXTENSION_ // in this context the sysdata member of pFont should -@@ -2178,17 +1451,7 @@ const std::map< sal_Unicode, sal_Int32 > +@@ -2208,17 +1450,7 @@ const std::map< sal_Unicode, sal_Int32 > // which this method was created). The correct way would // be to have the GlyphCache search for the ImplFontData pFont psp::fontID aFont = (psp::fontID)pFont->mpSysData; @@ -6742,10 +6737,8 @@ diff -u -p -u -r1.105.46.5 -r1.119 #endif Index: vcl/unx/source/gdi/salnativewidgets-kde.cxx =================================================================== -RCS file: vcl/unx/source/gdi/salnativewidgets-kde.cxx -diff -N vcl/unx/source/gdi/salnativewidgets-kde.cxx ---- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ vcl/unx/source/gdi/salnativewidgets-kde.cxx 10 May 2004 15:59:25 -0000 1.2 +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ vcl/unx/source/gdi/salnativewidgets-kde.cxx 2004-09-14 14:09:32.421280192 +0200 @@ -0,0 +1,1633 @@ +/************************************************************************* + * @@ -8382,12 +8375,8 @@ diff -N vcl/unx/source/gdi/salnativewidgets-kde.cxx +/* vim: set tabstop=8 shiftwidth=4: */ Index: vcl/unx/source/gdi/salogl.cxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/salogl.cxx,v -retrieving revision 1.7 -retrieving revision 1.11 -diff -u -p -u -r1.7 -r1.11 ---- vcl/unx/source/gdi/salogl.cxx 15 Apr 2003 16:10:05 -0000 1.7 -+++ vcl/unx/source/gdi/salogl.cxx 10 May 2004 15:59:38 -0000 1.11 +--- vcl/unx/source/gdi/salogl.cxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/salogl.cxx 2004-09-14 14:09:32.422280040 +0200 @@ -59,8 +59,6 @@ * ************************************************************************/ @@ -8679,12 +8668,8 @@ diff -u -p -u -r1.7 -r1.11 int nVisuals ) Index: vcl/unx/source/gdi/salprnpsp.cxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/salprnpsp.cxx,v -retrieving revision 1.27.40.2 -retrieving revision 1.33 -diff -u -p -u -r1.27.40.2 -r1.33 ---- vcl/unx/source/gdi/salprnpsp.cxx 28 Jan 2004 15:25:52 -0000 1.27.40.2 -+++ vcl/unx/source/gdi/salprnpsp.cxx 10 May 2004 15:59:51 -0000 1.33 +--- vcl/unx/source/gdi/salprnpsp.cxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/salprnpsp.cxx 2004-09-14 14:09:32.426279432 +0200 @@ -79,14 +79,14 @@ #ifndef _SV_JOBSET_H #include <jobset.h> @@ -9256,12 +9241,8 @@ diff -u -p -u -r1.27.40.2 -r1.33 Index: vcl/unx/source/gdi/salvd.cxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/salvd.cxx,v -retrieving revision 1.4 -retrieving revision 1.8 -diff -u -p -u -r1.4 -r1.8 ---- vcl/unx/source/gdi/salvd.cxx 27 Mar 2003 17:58:52 -0000 1.4 -+++ vcl/unx/source/gdi/salvd.cxx 10 May 2004 16:00:04 -0000 1.8 +--- vcl/unx/source/gdi/salvd.cxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/salvd.cxx 2004-09-14 14:09:32.427279280 +0200 @@ -59,9 +59,6 @@ * ************************************************************************/ @@ -9484,12 +9465,8 @@ diff -u -p -u -r1.4 -r1.8 } Index: vcl/unx/source/gdi/xfont.cxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/xfont.cxx,v -retrieving revision 1.29.82.2 -retrieving revision 1.36 -diff -u -p -u -r1.29.82.2 -r1.36 ---- vcl/unx/source/gdi/xfont.cxx 26 Jan 2004 17:26:20 -0000 1.29.82.2 -+++ vcl/unx/source/gdi/xfont.cxx 17 Jun 2004 12:29:36 -0000 1.36 +--- vcl/unx/source/gdi/xfont.cxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/xfont.cxx 2004-09-14 14:09:32.428279128 +0200 @@ -76,8 +76,11 @@ #ifndef _SV_OUTFONT_HXX #include <outfont.hxx> @@ -9514,7 +9491,7 @@ diff -u -p -u -r1.29.82.2 -r1.36 mpRangeCodes(NULL), mnRangeCount(-1) { -@@ -434,7 +438,7 @@ ExtendedFontStruct::GetDefaultWidth() +@@ -437,7 +440,7 @@ ExtendedFontStruct::GetDefaultWidth() // is compatible with iso8859-X at least in the range to 0x7f sal_Size ExtendedFontStruct::GetCharWidth8( sal_Unicode nFrom, sal_Unicode nTo, @@ -9523,7 +9500,7 @@ diff -u -p -u -r1.29.82.2 -r1.36 { if ( !(nFrom <= nTo) ) return 0; -@@ -477,7 +481,7 @@ ExtendedFontStruct::GetCharWidth8( sal_U +@@ -480,7 +483,7 @@ ExtendedFontStruct::GetCharWidth8( sal_U // Handle utf16 encoded fonts, which do not require conversion sal_Size ExtendedFontStruct::GetCharWidthUTF16( sal_Unicode nFrom, sal_Unicode nTo, @@ -9532,7 +9509,7 @@ diff -u -p -u -r1.29.82.2 -r1.36 { if ( !(nFrom <= nTo) ) return 0; -@@ -523,7 +527,7 @@ ExtendedFontStruct::GetCharWidthUTF16( s +@@ -526,7 +529,7 @@ ExtendedFontStruct::GetCharWidthUTF16( s // font in fontstruct, 8 and 16 bit fonts are handled the same way sal_Size ExtendedFontStruct::GetCharWidth16( sal_Unicode nFrom, sal_Unicode nTo, @@ -9541,7 +9518,7 @@ diff -u -p -u -r1.29.82.2 -r1.36 { if ( nFrom > nTo ) return 0; -@@ -608,8 +612,8 @@ ExtendedFontStruct::GetCharWidth16( sal_ +@@ -611,8 +614,8 @@ ExtendedFontStruct::GetCharWidth16( sal_ } sal_Size @@ -9552,7 +9529,7 @@ diff -u -p -u -r1.29.82.2 -r1.36 { sal_Size nConverted = 0; -@@ -707,7 +711,9 @@ bool X11FontLayout::LayoutText( ImplLayo +@@ -710,7 +713,9 @@ bool X11FontLayout::LayoutText( ImplLayo { Point aNewPos( 0, 0 ); bool bRightToLeft; @@ -9563,7 +9540,7 @@ diff -u -p -u -r1.29.82.2 -r1.36 { sal_Unicode cChar = rArgs.mpStr[ nCharPos ]; if( bRightToLeft ) -@@ -722,7 +728,7 @@ bool X11FontLayout::LayoutText( ImplLayo +@@ -725,7 +730,7 @@ bool X11FontLayout::LayoutText( ImplLayo nGlyphIndex = 0; // drop NotDef fallback glyphs } @@ -9572,7 +9549,7 @@ diff -u -p -u -r1.29.82.2 -r1.36 mrFont.GetCharWidth( cChar, &nPhysGlyphWidth, &nLogGlyphWidth ); int nGlyphFlags = (nPhysGlyphWidth > 0) ? 0 : GlyphItem::IS_IN_CLUSTER; if( bRightToLeft ) -@@ -753,7 +759,7 @@ void X11FontLayout::DrawText( SalGraphic +@@ -756,7 +761,7 @@ void X11FontLayout::DrawText( SalGraphic int nMaxGlyphs = GetOrientation() ? 1 : MAXGLYPHS; Point aPos; @@ -9581,7 +9558,7 @@ diff -u -p -u -r1.29.82.2 -r1.36 sal_Unicode pStr[ MAXGLYPHS ]; for( int nStart=0;;) { -@@ -764,7 +770,7 @@ void X11FontLayout::DrawText( SalGraphic +@@ -767,7 +772,7 @@ void X11FontLayout::DrawText( SalGraphic for( int i = 0; i < nGlyphCount; ++i ) pStr[ i ] = aGlyphAry[ i ] & GF_IDXMASK; @@ -9592,12 +9569,8 @@ diff -u -p -u -r1.29.82.2 -r1.36 Index: vcl/unx/source/gdi/xlfd_attr.cxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/xlfd_attr.cxx,v -retrieving revision 1.14 -retrieving revision 1.15 -diff -u -p -u -r1.14 -r1.15 ---- vcl/unx/source/gdi/xlfd_attr.cxx 12 Jun 2003 08:19:39 -0000 1.14 -+++ vcl/unx/source/gdi/xlfd_attr.cxx 6 Jan 2004 14:41:47 -0000 1.15 +--- vcl/unx/source/gdi/xlfd_attr.cxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/xlfd_attr.cxx 2004-09-14 14:09:32.433278368 +0200 @@ -120,10 +120,12 @@ Attribute::Compare( const char *p, int n const rtl::OString& Attribute::GetKey () @@ -9614,12 +9587,8 @@ diff -u -p -u -r1.14 -r1.15 Index: vcl/unx/source/gdi/xlfd_extd.cxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/xlfd_extd.cxx,v -retrieving revision 1.16.46.2 -retrieving revision 1.21 -diff -u -p -u -r1.16.46.2 -r1.21 ---- vcl/unx/source/gdi/xlfd_extd.cxx 26 Jan 2004 17:26:45 -0000 1.16.46.2 -+++ vcl/unx/source/gdi/xlfd_extd.cxx 30 Mar 2004 13:43:43 -0000 1.21 +--- vcl/unx/source/gdi/xlfd_extd.cxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/xlfd_extd.cxx 2004-09-14 14:09:32.435278064 +0200 @@ -652,7 +652,7 @@ ScalableBitmapXlfd::ToString( ByteString rString += '-'; rString += ByteString::CreateFromInt32( rInfo.mnResolutionY ); @@ -9733,12 +9702,8 @@ diff -u -p -u -r1.16.46.2 -r1.21 AppendAttribute( mpFactory->RetrieveCharset(rInfo.mnCharset), rString ); Index: vcl/unx/source/gdi/xlfd_extd.hxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/xlfd_extd.hxx,v -retrieving revision 1.9.120.2 -retrieving revision 1.12 -diff -u -p -u -r1.9.120.2 -r1.12 ---- vcl/unx/source/gdi/xlfd_extd.hxx 26 Jan 2004 17:27:37 -0000 1.9.120.2 -+++ vcl/unx/source/gdi/xlfd_extd.hxx 17 Mar 2004 10:07:56 -0000 1.12 +--- vcl/unx/source/gdi/xlfd_extd.hxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/xlfd_extd.hxx 2004-09-14 14:09:32.435278064 +0200 @@ -93,8 +93,8 @@ class XlfdStorage; class ExtendedXlfd { @@ -9752,12 +9717,8 @@ diff -u -p -u -r1.9.120.2 -r1.12 ExtendedXlfd(); Index: vcl/unx/source/gdi/xlfd_smpl.cxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/xlfd_smpl.cxx,v -retrieving revision 1.5 -retrieving revision 1.7 -diff -u -p -u -r1.5 -r1.7 ---- vcl/unx/source/gdi/xlfd_smpl.cxx 15 Apr 2003 16:11:23 -0000 1.5 -+++ vcl/unx/source/gdi/xlfd_smpl.cxx 18 May 2004 13:49:24 -0000 1.7 +--- vcl/unx/source/gdi/xlfd_smpl.cxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/xlfd_smpl.cxx 2004-09-14 14:09:32.436277912 +0200 @@ -282,12 +282,12 @@ Xlfd::ToString( ByteString &rString ) co AppendAttribute( mpFactory->RetrieveSetwidth(mnSetwidth), rString ); AppendAttribute( mpFactory->RetrieveAddstyle(mnAddstyle), rString ); @@ -9779,12 +9740,8 @@ diff -u -p -u -r1.5 -r1.7 Index: vcl/unx/source/gdi/xprintext.cxx =================================================================== -RCS file: /cvs/gsl/vcl/unx/source/gdi/xprintext.cxx,v -retrieving revision 1.6 -retrieving revision 1.8 -diff -u -p -u -r1.6 -r1.8 ---- vcl/unx/source/gdi/xprintext.cxx 15 Apr 2003 16:11:42 -0000 1.6 -+++ vcl/unx/source/gdi/xprintext.cxx 30 Mar 2004 13:43:56 -0000 1.8 +--- vcl/unx/source/gdi/xprintext.cxx.orig 2004-09-12 14:26:04.000000000 +0200 ++++ vcl/unx/source/gdi/xprintext.cxx 2004-09-14 14:09:32.437277760 +0200 @@ -59,8 +59,6 @@ * ************************************************************************/ diff --git a/patches/vclplug/vcl-util.diff b/patches/vclplug/vcl-util.diff index 3b7413cd8..e75085f7d 100644 --- a/patches/vclplug/vcl-util.diff +++ b/patches/vclplug/vcl-util.diff @@ -129,7 +129,7 @@ Index: vcl/util/makefile.mk # --- UNX ---------------------------------------------------------------- .IF "$(GUI)"=="UNX" -@@ -278,53 +256,126 @@ SHL1STDLIBS += -ldl +@@ -278,53 +256,128 @@ SHL1STDLIBS += -ldl SHL1STDLIBS += -framework Cocoa .ENDIF @@ -171,7 +171,9 @@ Index: vcl/util/makefile.mk + +.IF "$(OS)"=="LINUX" || "$(OS)"=="SOLARIS" || "$(OS)"=="FREEBSD" +# some nas versions need -lXt, too -+SHL2STDLIBS += -lXt ++# we do not need it and do not use it because it breaks Essbase Addin to be used with Sun JRE 1.4 ++# there is a bug in such JRE, see http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4638291 ++#SHL2STDLIBS += -lXt +SHL2STDLIBS += -laudio +.IF "$(OS)"=="SOLARIS" +# needed by libaudio.a @@ -243,7 +245,7 @@ Index: vcl/util/makefile.mk -.IF "$(OS)"=="LINUX" || "$(OS)"=="SOLARIS" || "$(OS)"=="FREEBSD" -# some nas versions need -lXt, too --SHL1STDLIBS += -lXt +-#we must not link with Xt !!! it requires Xm which is not available on all platforms -SHL1STDLIBS += -laudio -.IF "$(OS)"=="SOLARIS" -# needed by libaudio.a diff --git a/patches/vclplug/xim-fixes.diff b/patches/vclplug/xim-fixes.diff index 3f29a0502..1e052590e 100644 --- a/patches/vclplug/xim-fixes.diff +++ b/patches/vclplug/xim-fixes.diff @@ -31,18 +31,6 @@ } LanguageType GtkSalFrame::GetInputLanguage() -@@ -1641,8 +1661,11 @@ - { - aLastPressEvent.window = NULL; - return TRUE; - } - -+ if (pThis->m_bWasPreedit) -+ pThis->EndExtTextInput(0); -+ - GTK_YIELD_GRAB(); - - vcl::DeletionListener aDel( pThis ); @@ -1751,6 +1803,9 @@ } } diff --git a/patches/wpd/writerperfect-source-stream-wpxsvstream-cxx.diff b/patches/wpd/writerperfect-source-stream-wpxsvstream-cxx.diff index 3dcc7e414..7c39ac884 100644 --- a/patches/wpd/writerperfect-source-stream-wpxsvstream-cxx.diff +++ b/patches/wpd/writerperfect-source-stream-wpxsvstream-cxx.diff @@ -95,7 +95,7 @@ + rtl::OUString::createFromAscii( "PerfectOffice_MAIN" ), + STREAM_STD_READ ); + -+ Reference < XInputStream > xContents = new utl::OInputStreamWrapper( mxChildStream ); ++ Reference < XInputStream > xContents = new utl::OSeekableInputStreamWrapper( mxChildStream ); + if (xContents.is()) + return new WPXSvInputStream( xContents ); + else |