[ooo-build-commit] .: patches/dev300 patches/vba
Jan Holesovsky
kendy at kemper.freedesktop.org
Fri Apr 23 07:45:50 PDT 2010
patches/dev300/apply | 373
patches/dev300/basegfx-boxclipper-m13.diff | 3359
patches/dev300/bridges-testcppu-x86_64-fixes.diff | 172
patches/dev300/buildfix-extensions-npwrap-no-gtk.diff | 12
patches/dev300/calc-note-position-fix.diff | 31
patches/dev300/calc-perf-filtering-with-notes-m14.diff | 62
patches/dev300/calc-perf-page-and-manual-breaks-m14.diff | 1595
patches/dev300/calc-perf-speedup-pagebreak-update-m14.diff | 1263
patches/dev300/calc-perf-table-hidden-flags-m14.diff | 3736
patches/dev300/connectivity-build-fix-mac.diff | 9
patches/dev300/connectivity-build-fix.diff | 49
patches/dev300/cws-impressmedia01-backport-m13.diff | 2662
patches/dev300/cws-impressmedia01-backport-m14.diff | 2605
patches/dev300/debian-splash-m12.diff | 11
patches/dev300/default-no-registration-menu-m13.diff | 197
patches/dev300/default-no-startup-wizard-m13.diff | 47
patches/dev300/desktop-config-migration-m13.diff | 478
patches/dev300/docx-export-enable-m13.diff | 433
patches/dev300/docx-export-enable-m14.diff | 433
patches/dev300/extensions_deliver-m13.diff | 31
patches/dev300/find-moved-help.diff | 160
patches/dev300/fit-list-to-size-m7.diff | 1224
patches/dev300/fix-es-accelerators-m14.diff | 241
patches/dev300/fix-gtk-a11y-gail-version-warning.diff | 13
patches/dev300/helpcontent-scalc-01-localize-m7.diff | 428
patches/dev300/helpcontent2-auxiliary-cfg-m13.diff | 336
patches/dev300/i107917.diff | 25
patches/dev300/i109407_BUSCAR.diff | 20
patches/dev300/layout-post-cws-layoutdialogs2-mysteriously-missing-m13.diff | 229
patches/dev300/libxmlsec-findcerts.diff | 11
patches/dev300/mysqlc-from-OOO320_m14.diff |12132 --
patches/dev300/mysqlc-missing-buildfixes-from-DEV300.diff | 30
patches/dev300/novell-palette-m13.diff | 25
patches/dev300/novell-win32-installer-branding-m14.diff | 100
patches/dev300/novell-win32-odma-m12.diff | 2501
patches/dev300/ooo83878.unopkg.enablelinking-m13.diff | 372
patches/dev300/oox-fix-list-style-apply-m14.diff | 14
patches/dev300/oox-fix-placeholder-layout-m14.diff | 105
patches/dev300/oox-import-drawing-font-spacing-m14.diff | 83
patches/dev300/oox-import-text-vert-anchor-and-anchorctr-m14.diff | 130
patches/dev300/oox-pptx-import-fix-placeholder-text-style-m14.diff | 168
patches/dev300/oox-pptx-import-fix-subtitle-placeholder-m14.diff | 17
patches/dev300/oox-pptx-import-fix-text-body-properties-priority-m14.diff | 60
patches/dev300/oox-pptx-import-fix-text-body-vert-2-m14.diff | 26
patches/dev300/oox-pptx-import-fix-text-body-vert-m14.diff | 13
patches/dev300/oox-smartart-import-m13.diff | 6081 -
patches/dev300/pdfimport-no-license-m13.diff | 20
patches/dev300/pptx-filter-as-a-separate-lib-m12.diff |12701 --
patches/dev300/pptx-gfx-layout-fix-m14.diff | 351
patches/dev300/presentation-minimizer-no-license-m13.diff | 20
patches/dev300/presenterscreen-no-license-m13.diff | 55
patches/dev300/redirect-extensions-m12.diff | 181
patches/dev300/reduced-disable-auto-spellcheck.diff | 11
patches/dev300/reportdesign-mention-package-l10n-m7.diff | 1160
patches/dev300/reportdesigner-no-license-m13.diff | 14
patches/dev300/scp2-user-config-ooo3-m13.diff | 22
patches/dev300/scp2_extensions-m13.diff | 2187
patches/dev300/sd-sound-m13.diff | 743
patches/dev300/sdext-minimizer-docked.diff | 24
patches/dev300/sfx2-qstart-nocrash.diff | 164
patches/dev300/slideshow-effect-rewind-sdext-m13.diff | 72
patches/dev300/solenv-installer-unopkg-call-m13.diff | 11
patches/dev300/speed-local-link-except-m13.diff | 227
patches/dev300/sw-uno-fix.diff | 12
patches/dev300/unxsplash-rework-m13.diff | 2317
patches/dev300/vcl-drawtransparent-fix.diff | 14
patches/dev300/vcl-free-renderpicture.diff | 79
patches/dev300/vcl-gtk-2.8-unsupported-link-colors.diff | 25
patches/dev300/vcl-xinerama-clone-fix.diff | 47
patches/dev300/win32-cygwin-1.7-m13.diff | 61
patches/dev300/writerfilter-docx-numbering-m13.diff | 4016
patches/dev300/xlsx-shared-import-and-export-m14.diff | 544
patches/dev300/xmlhelp-build-without-java.diff | 22
patches/vba/cws-npower12-m13.diff |54516 ----------
patches/vba/cws-vbasupportdev300-m13.diff |48656 --------
75 files changed, 33 insertions(+), 170341 deletions(-)
New commits:
commit 4642aed1eb34556299293152c9f9fd4fb043bcec
Author: Jan Holesovsky <kendy at suse.cz>
Date: Fri Apr 23 16:43:49 2010 +0200
OLDEST_SUPPORTED=ooo320-m15 + the appropriate cleanup.
* patches/dev300/apply: Kill everything older than m15.
* patches/dev300/basegfx-boxclipper-m13.diff:
* patches/dev300/bridges-testcppu-x86_64-fixes.diff:
* patches/dev300/buildfix-extensions-npwrap-no-gtk.diff:
* patches/dev300/calc-note-position-fix.diff:
* patches/dev300/calc-perf-filtering-with-notes-m14.diff:
* patches/dev300/calc-perf-page-and-manual-breaks-m14.diff:
* patches/dev300/calc-perf-speedup-pagebreak-update-m14.diff:
* patches/dev300/calc-perf-table-hidden-flags-m14.diff:
* patches/dev300/connectivity-build-fix-mac.diff:
* patches/dev300/connectivity-build-fix.diff:
* patches/dev300/cws-impressmedia01-backport-m13.diff:
* patches/dev300/cws-impressmedia01-backport-m14.diff:
* patches/dev300/debian-splash-m12.diff:
* patches/dev300/default-no-registration-menu-m13.diff:
* patches/dev300/default-no-startup-wizard-m13.diff:
* patches/dev300/desktop-config-migration-m13.diff:
* patches/dev300/docx-export-enable-m13.diff:
* patches/dev300/docx-export-enable-m14.diff:
* patches/dev300/extensions_deliver-m13.diff:
* patches/dev300/find-moved-help.diff:
* patches/dev300/fit-list-to-size-m7.diff:
* patches/dev300/fix-es-accelerators-m14.diff:
* patches/dev300/fix-gtk-a11y-gail-version-warning.diff:
* patches/dev300/helpcontent-scalc-01-localize-m7.diff:
* patches/dev300/helpcontent2-auxiliary-cfg-m13.diff:
* patches/dev300/i107917.diff:
* patches/dev300/i109407_BUSCAR.diff:
* patches/dev300/layout-post-cws-layoutdialogs2-mysteriously-missing-m13.diff:
* patches/dev300/libxmlsec-findcerts.diff:
* patches/dev300/mysqlc-from-OOO320_m14.diff:
* patches/dev300/mysqlc-missing-buildfixes-from-DEV300.diff:
* patches/dev300/novell-palette-m13.diff:
* patches/dev300/novell-win32-installer-branding-m14.diff:
* patches/dev300/novell-win32-odma-m12.diff:
* patches/dev300/ooo83878.unopkg.enablelinking-m13.diff:
* patches/dev300/oox-fix-list-style-apply-m14.diff:
* patches/dev300/oox-fix-placeholder-layout-m14.diff:
* patches/dev300/oox-import-drawing-font-spacing-m14.diff:
* patches/dev300/oox-import-text-vert-anchor-and-anchorctr-m14.diff:
* patches/dev300/oox-pptx-import-fix-placeholder-text-style-m14.diff:
* patches/dev300/oox-pptx-import-fix-subtitle-placeholder-m14.diff:
* patches/dev300/oox-pptx-import-fix-text-body-properties-priority-m14.diff:
* patches/dev300/oox-pptx-import-fix-text-body-vert-2-m14.diff:
* patches/dev300/oox-pptx-import-fix-text-body-vert-m14.diff:
* patches/dev300/oox-smartart-import-m13.diff:
* patches/dev300/pdfimport-no-license-m13.diff:
* patches/dev300/pptx-filter-as-a-separate-lib-m12.diff:
* patches/dev300/pptx-gfx-layout-fix-m14.diff:
* patches/dev300/presentation-minimizer-no-license-m13.diff:
* patches/dev300/presenterscreen-no-license-m13.diff:
* patches/dev300/redirect-extensions-m12.diff:
* patches/dev300/reduced-disable-auto-spellcheck.diff:
* patches/dev300/reportdesign-mention-package-l10n-m7.diff:
* patches/dev300/reportdesigner-no-license-m13.diff:
* patches/dev300/scp2-user-config-ooo3-m13.diff:
* patches/dev300/scp2_extensions-m13.diff:
* patches/dev300/sd-sound-m13.diff:
* patches/dev300/sdext-minimizer-docked.diff:
* patches/dev300/sfx2-qstart-nocrash.diff:
* patches/dev300/slideshow-effect-rewind-sdext-m13.diff:
* patches/dev300/solenv-installer-unopkg-call-m13.diff:
* patches/dev300/speed-local-link-except-m13.diff:
* patches/dev300/sw-uno-fix.diff:
* patches/dev300/unxsplash-rework-m13.diff:
* patches/dev300/vcl-drawtransparent-fix.diff:
* patches/dev300/vcl-free-renderpicture.diff:
* patches/dev300/vcl-gtk-2.8-unsupported-link-colors.diff:
* patches/dev300/vcl-xinerama-clone-fix.diff:
* patches/dev300/win32-cygwin-1.7-m13.diff:
* patches/dev300/writerfilter-docx-numbering-m13.diff:
* patches/dev300/xlsx-shared-import-and-export-m14.diff:
* patches/dev300/xmlhelp-build-without-java.diff:
* patches/vba/cws-npower12-m13.diff:
* patches/vba/cws-vbasupportdev300-m13.diff:
diff --git a/patches/dev300/apply b/patches/dev300/apply
index f76f257..c8f252d 100644
--- a/patches/dev300/apply
+++ b/patches/dev300/apply
@@ -7,7 +7,7 @@
PATCHPATH=.:../evo2:../vba:../mono:../64bit:../cairo:../gstreamer:../ooxml:../postgresql:../emf+:../unittesting:../lwp
# might be space separated list to support more MWS
-OLDEST_SUPPORTED=ooo320-m7
+OLDEST_SUPPORTED=ooo320-m15
# -------- Functional sub-sets --------
Common : PreprocessPatches, BuildBits, TemporaryHacks, FixesNotForUpstream, \
@@ -78,7 +78,6 @@ SUSE-11.0 : NovellBase, BerkeleyDB43, EMFPlus, CairoFonts, PostgreSQL
SUSE-11.1 : NovellBase, BerkeleyDB43, EMFPlus, CairoFonts, ImpressFontSize, PostgreSQL
SUSE-11.2 : NovellBase, BerkeleyDB43, EMFPlus, CairoFonts, ImpressFontSize, PostgreSQL, OptionalIconThemes, SUSE112
SUSE : NovellBase, BerkeleyDB43, EMFPlus, CairoFonts, ImpressFontSize, PostgreSQL, OptionalIconThemes, SUSE112
-SUSE-reduced:NovellBase,BerkeleyDB43, ReducedDefaults
# Slackware
Slackware : LinuxCommon, SlackwareOnly, NotDebian, Mono, msaccess, CairoFonts
# Debian
@@ -176,9 +175,7 @@ ooo-build-resources-svx-dialogs-hrc.diff, kohei
[ HelpContent ]
helpcontent-scalc-01.diff, kohei
-[ LocalizeFixes < ooo320-m8 ]
-helpcontent-scalc-01-localize-m7.diff, kohei
-[ LocalizeFixes >= ooo320-m8]
+[ LocalizeFixes ]
helpcontent-scalc-01-localize.diff, kohei
[ CWSBackports ]
@@ -280,10 +277,6 @@ fix-linkoo.diff, i#83548, jholesov
# fix a11y bug
fix-gtk-a11y.diff, i#98533, michael
-[ TemporaryHacks < ooo320-m14 ]
-fix-gtk-a11y-gail-version-warning.diff, pmladek
-
-[ TemporaryHacks ]
# Update linkoo for dev300 TODO file upstream
linkoo-dev300.diff, jholesov
@@ -398,47 +391,23 @@ writerperfect-nocondensedparagraphs.diff, fridrich
offapi-typecheck-whitelist.diff, thorsten
-[ FixesNotForUpstream < ooo320-m13 ]
-# re-direct to plugins via http://extensions.go-oo.org/
-redirect-extensions-m12.diff
-[ FixesNotForUpstream >= ooo320-m13 ]
# re-direct to plugins via http://extensions.go-oo.org/
redirect-extensions.diff
-[ ExtensionFixes < ooo320-m14]
-reportdesigner-no-license-m13.diff
-presenterscreen-no-license-m13.diff
-presentation-minimizer-no-license-m13.diff
-pdfimport-no-license-m13.diff
-
-[ ExtensionFixes >= ooo320-m14 ]
+[ ExtensionFixes ]
reportdesigner-no-license.diff
presenterscreen-no-license.diff
presentation-minimizer-no-license.diff
pdfimport-no-license.diff
-
-[ ExtensionFixes ]
wiki-publisher-no-license.diff
# Fixing build breake in apache-common module when you use UTF-8 based locale in the build system
apache-commons-build-fix-invalid-chars.diff, kami
build-java-target-extensions.diff, i#93115, pmladek
-[ ExtensionFixes < ooo320-m14 ]
-# ooo320-m14 fortunately has no toolbar at all anymore
-sdext-minimizer-docked.diff, thorsten
-
-[ ExtensionFixes < ooo320-m14 ]
-# Fix from Andre, allows to step back one animation effect
-slideshow-effect-rewind-sdext-m13.diff, i#48179, thorsten
-[ ExtensionFixes >= ooo320-m14 ]
# Fix from Andre, allows to step back one animation effect
slideshow-effect-rewind-sdext.diff, i#48179, thorsten
-[ Fixes < ooo320-m8 ]
-# gtk quickstarter crashes on disable/exit
-sfx2-qstart-nocrash.diff, i#101245, michael
-
[ Fixes ]
# Fix from Andre, allows to step back one animation effect
slideshow-effect-rewind.diff, i#48179, thorsten
@@ -459,19 +428,14 @@ sdext-noarch-identifier.diff, pmladek
# IMPORTANT: the second part of the patch is build-ant-1.6-swext.diff
build-ant-1.6.diff, i#90830, pmladek
-[ Fixes < ooo320-m8 ]
-# find the moved help when registering extension
-find-moved-help.diff, rene, i#107283
-
-[ Fixes ]
-# printf arguments cleanup
-buildfix-fmtargs.diff, cabral
-
[ Fixes < ooo320-m16 ]
# fix mozilla plugin on 64bit archs
plugin.long.diff, i#110747, cmc
[ Fixes ]
+# printf arguments cleanup
+buildfix-fmtargs.diff, cabral
+
# sd printing fixes
printing-bugfix-254573.diff, n#254573, rodo
@@ -493,16 +457,10 @@ wizards-source-importwizard-filesmodul-xba.diff, i#56633, noelpwer
# ooo-build only fix n#145906#
automation-testtool-oobuildfix.diff, n#145906, noelpwer
-[ Fixes < ooo320-m14 ]
-# fixes some .cfg files in helpcontent2/source/auxiliary to use right
-# lang code instead of en-US..
-helpcontent2-auxiliary-cfg-m13.diff, pmladek
-[ Fixes >= ooo320-m14 ]
# fixes some .cfg files in helpcontent2/source/auxiliary to use right
# lang code instead of en-US..
helpcontent2-auxiliary-cfg.diff, pmladek
-[ Fixes]
# .. and add eu
helpcontent2-auxiliary-eu.diff, i#108534
@@ -525,13 +483,6 @@ xmlsecurity-verify-usages.diff, i#76871, pmladek
# do not force to do it the user manually
jvmfwk-modified-javavendors-xml.diff, i#99619, pmladek
-[ Fixes < ooo320-m2 ]
-# find locked certs, fix by Jacob Berkman <jberkman at novell.com>
-# FIXME: 2009-10-16: Don't know if some corresponding fix is needed
-# for the libxmlsec 1.2.12 now used in ooo320-m2. --tml
-libxmlsec-findcerts.diff, i#76870, pmladek
-
-[ Fixes ]
# avoid error messages about missing directories with templates
sfx2-check-existing-template-dirs.diff, i#100518, pmladek
@@ -539,9 +490,6 @@ sfx2-check-existing-template-dirs.diff, i#100518, pmladek
# FIXME: temporarily disabled as this causes a race condition in calc's cell format dialog.
#vcl-kerning-fix.diff, n#464436, i#26519, cbosdo
-[ Fixes < ooo320-m9 ]
-i107917.diff, i#107917
-
[ LinuxOnly ]
# fix that allows OOo to work with a standard (unpatched) libjpeg,
jpegc.c.diff, i#80674, n#272574, flr
@@ -575,13 +523,6 @@ customunittext-pixel.diff, i#61043, atimar
# make CustomUnitText "%" consistent
customunittext-percent.diff, i#80784, atimar
-[ Fixes < ooo320-m15 ]
-# x86_64 doesn't pass SmallStructs and AllFloats testcppu tests
-# NLPSolver do not work on x86_64 without this fix
-# fix by Caolan
-bridges-testcppu-x86_64-fixes.diff, i#98028, n#575704, pmladek
-
-[ Fixes ]
# fix ARM bridges
branch_directly_to_cpp_vtable_call_on_arm.diff, i#105359
@@ -671,12 +612,8 @@ gnome-vfs-late-init.diff, i#84137, jholesov
# due to being unused. fix properly.
hack-readd-GetStringParam.diff
-[ QuickStarter < ooo320-m14 ]
-unxsplash-rework-m13.diff, i#60696, michael/jholesov
-[ QuickStarter >= ooo320-m14 ]
unxsplash-rework.diff, i#60696, michael/jholesov
-[ QuickStarter ]
# handling of osl pipe has changed, see i#84045
unxsplash-new-osl-pipe.diff, i#60696, jholesov
@@ -695,7 +632,6 @@ unxsplash-3layer.diff, i#60696, jholesov
# fix bitmap reading; the lines are aliased to 4 bytes
unxsplash-bmp-alias.diff, i#60696, jholesov
-[ QuickStarter >= ooo320-m14 ]
# FIXME: we need to install also the intro.bmp because the splash supports only the bmp file format
unxsplash-install-bmp-intro.diff, pmladek
@@ -712,10 +648,6 @@ sfx2-qstartfixes.diff, i#108846, caolan
sw-ww8-field-fix.diff, i#61075, i#89667, cbosdo
sw-ww8font-fix.diff, cbosdo
-[ WriterFixes < ooo320-m12 ]
-sw-uno-fix.diff, i#108426, cbosdo
-
-[ WriterFixes ]
# Added by Octavio Alvarez <alvarezp at alvarezp.ods.org>
# The first patch is to prevent losing functionality because
# of the second patch.
@@ -928,13 +860,11 @@ calc-general-type-auto-decimal-svtools.diff, n#541973, i#46511, kohei
calc-general-type-auto-decimal-officecfg.diff, n#541973, i#46511, kohei
calc-general-type-auto-decimal-sc-dbf-fix.diff, i#111074, kohei
-[ CalcFixes >= dev300-m61 >= ooo320-m1 ]
# FIXME. hack. readd XclExpInterfaceEnd::WriteBody as in m60 as
# calc-xls-export-encryption-condfmt-fix.diff patches it. Kohei, please check
# --rengelhard
hack-readd-XclExpInterfaceEnd-WriteBody.diff
-[ CalcFixes ]
# Correctly encrypt zero bytes in the conditional formatting records.
calc-xls-export-encryption-condfmt-fix.diff, n#541058, i#105933, kohei
@@ -948,15 +878,9 @@ calc-xls-import-slanted-border-oox.diff, n#549728, i#38709, kohei
# TAB key to auto-complete word and move the cell cursor.
calc-auto-tab-complete.diff, i#18748, muthusuba/kohei
-[ CalcFixes < ooo320-m15 ]
-# Speed up filtering performance with notes.
-calc-perf-filtering-with-notes-m14.diff, n#556927, kohei
-
-[ CalcFixes >= ooo320-m15 ]
# Speed up filtering performance with notes.
calc-perf-filtering-with-notes.diff, n#556927, kohei
-[ CalcFixes ]
# Use current range separator for range lists.
calc-formula-range-separator-fix.diff, n#556268, kohei
@@ -997,16 +921,6 @@ calc-perf-ods-import-properties.diff, n#498547, i#109384, kohei
# squash USHORT where SCROW or SCCOL should have been used.
calc-row-limit-bad-ushort.diff, n#509768, i#109385, kohei
-[ CalcRowLimit < ooo320-m15 ]
-# better algorithm to search for best-fit zoom level during page break calculation,
-# and to optimize pagenations by as much as 900% by using better data structure
-# for flag storage.
-calc-perf-page-and-manual-breaks-m14.diff, n#503482, i#109386, kohei
-
-# refactor to store hidden and filtered flags in flat_segment_tree structure.
-calc-perf-table-hidden-flags-m14.diff, n#495140, i#109387, kohei
-
-[ CalcRowLimit >= ooo320-m15 ]
# better algorithm to search for best-fit zoom level during page break calculation,
# and to optimize pagenations by as much as 900% by using better data structure
# for flag storage.
@@ -1015,7 +929,6 @@ calc-perf-page-and-manual-breaks.diff, n#503482, i#109386, kohei
# refactor to store hidden and filtered flags in flat_segment_tree structure.
calc-perf-table-hidden-flags.diff, n#495140, i#109387, kohei
-[ CalcRowLimit ]
# type cast to SCROW and SCCOL for row and column, not to USHORT!
calc-ods-export-no-more-ushort.diff, n#501029, i#109385, kohei
@@ -1035,15 +948,9 @@ calc-perf-rowheight-no-progress-bar.diff, n#514156, kohei
# speed up row's hidden state query during pagenation.
calc-perf-page-and-manual-breaks-fwd-iterator.diff, n#503482, i#109386, kohei
-[ CalcRowLimit < ooo320-m15 ]
-# Refactor row height storage to speed up page break updates.
-calc-perf-speedup-pagebreak-update-m14.diff, n#554955, i#109391, kohei
-
-[ CalcRowLimit >= ooo320-m15 ]
# Refactor row height storage to speed up page break updates.
calc-perf-speedup-pagebreak-update.diff, n#554955, i#109391, kohei
-[ CalcRowLimit ]
# Use manual breaks hidden/filtered flags when querying for last flagged row.
calc-perf-last-rowflags-fix.diff, n#568146, i#109391, kohei
@@ -1056,16 +963,11 @@ calc-xls-export-row-height-wrapped-text.diff, n#580094, kohei
# fix for print selected cells functionality.
calc-print-selected-cells-fix.diff, n#569328, i#109386, kohei
-[ LinuxOnly < ooo320-m14 ]
-# accelerate linking, by extreme cunning i#63927
-# this is an increasingly marginal win ...
-speed-local-link-except-m13.diff, i#63927, michael
-[ LinuxOnly >= ooo320-m14 ]
+[ LinuxOnly ]
# accelerate linking, by extreme cunning i#63927
# this is an increasingly marginal win ...
speed-local-link-except.diff, i#63927, michael
-[ LinuxOnly ]
# the file this one patches ends with CR chars... :-(
speed-local-link-except-offuh.diff
@@ -1127,13 +1029,9 @@ go-oo-team.diff, michael
# add in an entry for a corporate common dictionary
corporate-dictionary.diff, michael
-[ NovellOnly < ooo320-m14 ]
# Some Novell colors ...
-novell-palette-m13.diff, michael
-[ NovellOnly >= ooo320-m14 ]
novell-palette.diff, michael
-[ NovellOnly ]
# finally disable -fsigned-char on pcc
solenv-really-use-unsinged-char-on-ppc.diff, i#81127, n#169875, pmladek
@@ -1160,10 +1058,6 @@ SectionOwner => kohei
# Swap the delete and backspace key bindings but leave the menus alone.
sc-default-delete-backspace-key.diff, i#17965, kohei
-[ CustomUserConfig < ooo320-m14 ]
-# migrate keyboard shortcuts & reset character set for CSV import dialog.
-desktop-config-migration-m13.diff n#367160, n#376473, n#421070, n#466064, kohei/jholesov
-[ CustomUserConfig >= ooo320-m14 ]
# migrate keyboard shortcuts & reset character set for CSV import dialog.
desktop-config-migration.diff n#367160, n#376473, n#421070, n#466064, kohei/jholesov
@@ -1197,14 +1091,10 @@ jdbc-driver-classpaths-debian.diff
# build using -O2 on x86 and sparc according to Debian policy.
debian-opt.diff
-[ LocalizeFixes and DebianBaseOnly >= ooo320-m8 ]
+[ LocalizeFixes and DebianBaseOnly ]
# mention openoffice.org-report-builder instead of getting people
# to download it from elsewhere
reportdesign-mention-package-l10n.diff, rengelha
-[ LocalizeFixes and DebianBaseOnly < ooo320-m8 ]
-# mention openoffice.org-report-builder instead of getting people
-# to download it from elsewhere
-reportdesign-mention-package-l10n-m7.diff, rengelha
[ GoOoSplash ]
# move progress bar for go-oo splash
@@ -1215,15 +1105,9 @@ reportdesign-mention-package-l10n-m7.diff, rengelha
SectionOwner => Slackware
pushfont-psstream.diff
-[ SlackwareOnly < ooo320-m14 ]
-scp2-user-config-ooo3-m13.diff
-[ SlackwareOnly >= ooo320-m14 ]
scp2-user-config-ooo3.diff
-[ DebianBaseOnly < ooo320-m13 ]
-# fix the splash progressbar colors
-debian-splash-m12.diff
-[ DebianBaseOnly >= ooo320-m13 ]
+[ DebianBaseOnly ]
# fix the splash progressbar colors
debian-splash.diff
@@ -1231,9 +1115,6 @@ debian-splash.diff
SectionOwner => DropLine
pushfont-psstream.diff, i#84481
-[ DroplineGNOMEOnly < ooo320-m14 ]
-scp2-user-config-ooo3-m13.diff
-[ DroplineGNOMEOnly >= ooo320-m14 ]
scp2-user-config-ooo3.diff
@@ -1259,10 +1140,6 @@ mdv-exceptcxx-include-string.diff, cabral
SectionOwner => gghibo
help-support-mdv.diff
-[ MandrivaOnlyUnix < ooo320-m14 ]
-# change user config dir name from ~/.openoffice.org3 to ~/.ooo3
-scp2-user-config-ooo3-m13.diff, pmladek
-[ MandrivaOnlyUnix >= ooo320-m14 ]
scp2-user-config-ooo3.diff, pmladek
@@ -1270,12 +1147,10 @@ scp2-user-config-ooo3.diff, pmladek
# Help Support page
help-support.diff, michael
+
# change user config dir name from ~/.openoffice.org3 to ~/.ooo3
-[ NovellOnlyUnix < ooo320-m14 ]
-scp2-user-config-ooo3-m13.diff, pmladek
-[ NovellOnlyUnix >= ooo320-m14 ]
scp2-user-config-ooo3.diff, pmladek
-[ NovellOnlyUnix ]
+
# Push fonts into the ps stream always
pushfont-psstream.diff, i#84481, michael
@@ -1328,11 +1203,6 @@ ucb-neon-0.24.diff, pmladek
# it builds fine with boost-1,36 here
build-enable-boost-1.36.diff, i#105772, pmladek
-[ BuildBits < ooo320-m15 ]
-# fix npwrap.cxx build without gtk
-buildfix-extensions-npwrap-no-gtk.diff, i#110833, gentoo#306181, pmladek
-
-[ BuildBits ]
# don't break dmake with environment variables containing space in the name
# [which is a broken setup, but apparently most apps don't break with that ;-)]
dmake-space-in-envvar-name.diff, i#101786, jholesov
@@ -1343,7 +1213,7 @@ db4.8.diff, rengelha
# find gsicheck in the solver
transex3-localize-gsicheck-path.diff, i#109378, pmladek
-[ BuildBits < dev300-m66 ]
+# upstreamed in m66
armeabi-softfp-buildfix.diff, i#105302, doko
[ BuildBits ]
@@ -1384,12 +1254,6 @@ build-java-1.4-regcomp.diff, i#12345, pmladek
# another fallback to load libhsqldb with JRE 1.4
connectivity-load-libhsqldb-with-jre-1.4.diff, n#431360, pmladek
-[ GTK28 < ooo320-m14 ]
-
-# clean solution is included in ooo320-m14
-# gtk-2.8 does not know the link-color properties;
-# do not try to read them to avoid annoying warning messages
-vcl-gtk-2.8-unsupported-link-colors.diff, n#440514, pmladek
[ GoOoOnlyWin32 ]
SectionOwner => tml
@@ -1407,10 +1271,6 @@ SectionOwner => tml
novell-win32-vrb-branding.diff, n#191913, i#68817
novell-win32-registry-branding.diff, n#191913
-[ NovellOnlyWin32 < ooo320-m14 ]
-novell-win32-installer-branding-m14.diff
-
-[ NovellOnlyWin32 >= ooo320-m14 ]
novell-win32-installer-branding.diff
# drop stuff that is needed only on Win9x
@@ -1434,14 +1294,9 @@ recovery-report.diff, i#53531, martink
# Controversial bits - no use filing up-stream
#
-[ Defaults < ooo320-m14 ]
-# automatically do any migration we can, with no wizard
-default-no-startup-wizard-m13.diff, michael
-[ Defaults >= ooo320-m14 ]
# automatically do any migration we can, with no wizard
default-no-startup-wizard.diff, michael
-[ Defaults ]
# don't throw up the style dialog on 1st run
default-no-style-dialog.diff, michael
@@ -1453,13 +1308,9 @@ default-no-registration.diff, michael
# => Tango should be preferred over Industrial.
tango-prefer-over-industrial.diff, n#304615, pmladek
-[ Defaults < ooo320-m14 ]
-# no Help->registration dialog by default
-default-no-registration-menu-m13.diff, michael
-[ Defaults >= ooo320-m14 ]
# no Help->registration dialog by default
default-no-registration-menu.diff, michael
-[ Defaults ]
+
# CR line endings again...
default-no-registration-menu-sd.diff, michael/kohei
@@ -1560,7 +1411,6 @@ open-url-support-iceanimals.diff
# FIXME: is anybody using this feature?
#FIXME src680: separate-helpcontent.diff, jholesov
-[ BuildBits >= dev300-m61 >= ooo320-m1 ]
# use --hash-style=gnu linking when supported
speed-hash-style.diff, pmladek
@@ -1863,19 +1713,13 @@ mono-climaker-config.diff
mono-climaker-bridgetest.diff
-[ VBAObjects < ooo320-m14 ]
-cws-npower12-m13.diff
-[ VBAObjects >= ooo320-m14 ]
-cws-npower12.diff
-
[ VBAObjects ]
SectionOwner => noelpwer
-[ VBAObjects < ooo320-m14 ]
-cws-vbasupportdev300-m13.diff
-[ VBAObjects >= ooo320-m14 ]
+
+cws-npower12.diff
+
cws-vbasupportdev300.diff
-[ VBAObjects ]
eventhelper-closecrash-fix.diff, n#438606, i#106270
# make sure no vba libraries are loaded ( if not filtering )
vba-dont-load-for-odf.diff
@@ -2325,28 +2169,17 @@ writerfilter-source-dmapper-domainmapper-debug.diff
docx-fixes01.diff, cbosdo
docx-vml-import.diff, cbosdo
-[ OOXML < ooo320-m14 ]
-writerfilter-docx-numbering-m13.diff, n#536407, cbosdo
-[ OOXML >= ooo320-m14 ]
writerfilter-docx-numbering.diff, n#536407, cbosdo
-[ OOXML ]
# Ugly temporary fix
docx-ugly-fix.diff, n#548701, cbosdo
buildfix-oox-depends-on-unotools.diff
-[ OOXML < ooo320-m15 ]
-oox-fix-placeholder-layout-m14.diff, n#485316, n#480223, rodo
-[ OOXML >= ooo320-m15 ]
oox-fix-placeholder-layout.diff, n#485316, n#480223, rodo
-[ OOXML < ooo320-m15 ]
-oox-fix-list-style-apply-m14.diff, n#485417, rodo
-[ OOXML >= ooo320-m15 ]
oox-fix-list-style-apply.diff, n#485417, rodo
-[ OOXML ]
# FIXME: 2009-09-02: Applies but causes compilation errors. --tml
# oox-import-chart-externalref.diff, n#480868, janneke
@@ -2370,32 +2203,20 @@ oox-custom-shape-polygons.diff, n#485418, rodo
# FIXME_ 2009-09-02: Applies but causes compilation errors. --tml
# oox-import-sheet-protect.diff, n#481317, janneke
-[ OOXML < ooo320-m15 ]
-oox-import-drawing-font-spacing-m14.diff, n#479822, rodo
-oox-import-text-vert-anchor-and-anchorctr-m14.diff, n#479829, rodo
-[ OOXML >= ooo320-m15 ]
oox-import-drawing-font-spacing.diff, n#479822, rodo
oox-import-text-vert-anchor-and-anchorctr.diff, n#479829, rodo
-[ OOXML ]
oox-pptx-import-fix-layout.diff, n#480223, rodo
oox-pptx-import-fix-wipe-transition.diff, n#480243, rodo
[ OpenGLTransitions and OOXML ]
oox-pptx-import-fix-transition-auto-advance.diff, n#480243, rodo
-[ OOXML < ooo320-m15 ]
-oox-pptx-import-fix-subtitle-placeholder-m14.diff, n#480243, rodo
-oox-pptx-import-fix-text-body-vert-m14.diff, n#479829, rodo
-[ OOXML >= ooo320-m15 ]
+[ OOXML ]
oox-pptx-import-fix-subtitle-placeholder.diff, n#480243, rodo
oox-pptx-import-fix-text-body-vert.diff, n#479829, rodo
-
-[ OOXML ]
oox-pptx-import-fix-hidden-slides.diff, n#480229, rodo
-
-[ OOXML ]
# FIXME: 2009-08-12: Does not apply, upstream code refactored, not
# clear what to do. --tml
# oox-import-zoom-setting-with-tab-color.diff, n#494603, janneke
@@ -2419,12 +2240,12 @@ sdbc-postgresql-config_office.diff
# FIXME: still needed?
kde4-buildfix-connectivity.diff
-[ Fixes < dev300-m68 ]
# needed by optional-icon-themes.diff
+# upstreamed in m68
kde4-oxygen-icons.diff, i#103482
-[ KDE4 < dev300-m65 ]
# Further fixes on top of existing kde4 support
+# upstreamed in m65
kde4_fpicker_fixes.diff
kde4_vcl_fixes.diff
@@ -2447,10 +2268,11 @@ qt-moc-detect.diff
# Not yet ported to co-exist with the KDE3 stuff
kde4-kab.diff
-[ OptionalIconThemes < dev300-m68 ]
+[ OptionalIconThemes ]
# FIXME: seems to work well but I am not brave enough to put it into common section at this stage
# fallback to any installed icon theme
# show only the installed icon themes in Tools/Options.../OpenOffice.org/View
+# upstreamed in m68
optional-icon-themes.diff, i#105062, bnc#529404, pmladek
# search also /usr/share for icons
@@ -2564,11 +2386,6 @@ ooo86080.unopkg.bodge.diff
oooXXXX.partial-revert-ooo95118.diff
-[ FedoraCommonFixes < ooo320-m14 ]
-# add unopkg add --link option to register uncompressed extensions
-# it helps to get automatic depencies when packaging extensions in RPMs
-ooo83878.unopkg.enablelinking-m13.diff, i#83878, bnc#493994, caolan
-[ FedoraCommonFixes >= ooo320-m14 ]
# add unopkg add --link option to register uncompressed extensions
# it helps to get automatic depencies when packaging extensions in RPMs
ooo83878.unopkg.enablelinking.diff, i#83878, bnc#493994, caolan
@@ -2628,7 +2445,7 @@ binfilter-dont-extern-sRTF-sHTML.diff, i#86772, jholesov
# search also gij32, ..., so the 32-bit package works on 64-bit
jvmfwk-gij32.diff, n#222708, pmladek
-[ SUSE101 >= ooo320-m14 ]
+[ SUSE101 ]
sled10-splash.diff, i#123456, pmladek
[ SUSE112 ]
@@ -2722,11 +2539,7 @@ wmf-pattern-brush.diff, n#232232, rodo
# FIXME: these bits are part of layoutdialogs2 -- some things got
# removed upstream, apparently.
-[ LayoutDialogs < ooo320-m14 ]
-layout-post-cws-layoutdialogs2-mysteriously-missing-m13.diff
-[ LayoutDialogs >= ooo320-m14 ]
layout-post-cws-layoutdialogs2-mysteriously-missing.diff
-[ LayoutDialogs ]
layout-post-cws-layoutdialogs2-edit-noop-reversal.diff, n#552450
layout-localize-fix-sc.diff
@@ -2872,15 +2685,7 @@ unit-deliver.diff
unit-comphelper.diff
unit-sc.diff
-[ ReducedDefaults ]
-SectionOwner => jholesov
-
-# disable automatic spellchecking by default
-reduced-disable-auto-spellcheck.diff
-
-[ Features < ooo320-m13 ]
-novell-win32-odma-m12.diff, i#6885, i#32741, tml
-[ Features >= ooo320-m13 ]
+[ Features ]
novell-win32-odma.diff, i#6885, i#32741, tml
[ VOSremoval ]
@@ -2991,13 +2796,7 @@ linkwarn-sd-no-dnd-links.diff, n#348149, thorsten
[ IntegrateExtensions ]
scp2_build_extensions.diff
scp2_makefile_extensions.diff
-
-[ IntegrateExtensions < ooo320-m14 ]
-scp2_extensions-m13.diff
-[ IntegrateExtensions >= ooo320-m14 ]
scp2_extensions.diff
-
-[ IntegrateExtensions ]
scp2_extensions_templates.diff
extensions_configure.diff
extensions_packinfo.diff
@@ -3006,9 +2805,6 @@ premium-splitted-language-packages.diff
scp2_accessories_templates.diff
scp2_accessories_templates_makefile.diff
-[ IntegrateExtensions < ooo320-m14 ]
-extensions_deliver-m13.diff
-[ IntegrateExtensions >= ooo320-m14 ]
extensions_deliver.diff
@@ -3132,17 +2928,9 @@ sd-view-zoom-fix.diff, n#380013, i#88939, thorsten
sd-custom-show-fix.diff, n#355638, i#90145, thorsten
-[ Fixes > ooo320-m7 ]
# have Impress outline text boxes shrink font automatically when text
# starts to overflow
fit-list-to-size.diff, i#94086, thorsten
-
-[ Fixes <= ooo320-m7 ]
-# have Impress outline text boxes shrink font automatically when text
-# starts to overflow
-fit-list-to-size-m7.diff, i#94086, thorsten
-
-[ Fixes ]
fit-list-to-size-style-defaults.diff, i#94086, thorsten
fit-list-to-size-popup.diff, i#94086, thorsten
@@ -3210,9 +2998,6 @@ l10n-build-only-selected-langs.diff, i#106185, pmladek
# fix "buleano"
es-fix-buleano.diff, deb#576842, i#110674, rengelha
-[ LocalizeFixes < ooo320-m13 ]
-i109407_BUSCAR.diff
-
[ BFFixes ]
fit-list-to-size-binfilter.diff, i#94086, thorsten
@@ -3246,13 +3031,9 @@ jurt-jnilib-deliver.diff, i#93516, thorsten
timely-canvas-disposing.diff, i#94007, thorsten
# only build full package for en_US, use langpacks for the rest
instset-prefer-langpacks.diff, thorsten
-[ Fixes < ooo320-m14 ]
-# call unopkg such that java does not require interactive session
-solenv-installer-unopkg-call-m13.diff, thorsten
-[ Fixes >= ooo320-m14 ]
# call unopkg such that java does not require interactive session
solenv-installer-unopkg-call.diff, thorsten
-[ Fixes ]
+
# (disabled) debug code extracting SdrOLE streams to some tmp location
svx-debug-sdrolestreams.diff, thorsten
sal-disable-backtrace.diff, thorsten
@@ -3265,9 +3046,6 @@ svtools-svrtf-token-ignore-case.diff, n#417818, flr
# fix wrong en-US accelerators in Impress
fix-sd-accelerators.diff, n#463733, i#97088, jholesov
-[ Fixes < ooo320-m15 ]
-fix-es-accelerators-m14.diff, i#102645
-[ Fixes >= ooo320-m15]
fix-es-accelerators.diff, i#102645
[ MinGW ]
@@ -3290,14 +3068,9 @@ sw-insert-pagebreak-in-numbered-paragraph.diff, n#396648, Amelia Wang
# and in the Start Menu on Windows
win32-tooltips.diff, tml
-[ Fixes < ooo320-m14 ]
-# In Cygwin 1.7 the trailing dot hack from i#59477 is harmful
-win32-cygwin-1.7-m13.diff, i#59477, tml
-[ Fixes >= ooo320-m14 ]
# In Cygwin 1.7 the trailing dot hack from i#59477 is harmful
win32-cygwin-1.7.diff, i#59477, tml
-[ Fixes ]
# Recognize Windows SDK 7
win32-sdk7.diff, tml
@@ -3307,7 +3080,6 @@ win32-dxsdk-200908.diff, tml
# Experimental support for Interix
win32-interix.diff, tml
-[ Fixes ]
# fix problem with calling private and protected members in layout code
sfx2-privateprotectedpublic.diff
# UI + core to make OLE editing optionally outplace
@@ -3341,9 +3113,10 @@ ooop-langpack-policy.diff
[ NovellOnly ]
mail-document-subject.diff, n#459176
-[ OOXMLExport < ooo320-m13 ]
-pptx-filter-as-a-separate-lib-m12.diff
-[ OOXMLExport >= ooo320-m13 ]
+[ OOXMLExport ]
+# Enable the DOCX export (and few related features in oox)
+docx-export-enable.diff, jholesov
+
pptx-filter-as-a-separate-lib.diff
[ OOXMLExport and not OpenGLTransitions ]
@@ -3352,17 +3125,6 @@ pptx-filter-as-a-separate-lib-sd-build-lst-without-transogl.diff
[ OOXMLExport and OpenGLTransitions ]
pptx-filter-as-a-separate-lib-sd-build-lst-with-transogl.diff
-[ OOXMLExport < ooo320-m14 ]
-# Enable the DOCX export (and few related features in oox)
-docx-export-enable-m13.diff, jholesov
-[ OOXMLExport == ooo320-m14 ]
-# Enable the DOCX export (and few related features in oox)
-docx-export-enable-m14.diff, jholesov
-[ OOXMLExport >= ooo320-m15 ]
-# Enable the DOCX export (and few related features in oox)
-docx-export-enable.diff, jholesov
-
-
[ OOXMLExport ]
# Snapshot of the pptx export filter at the time of creation of ooxml03
# This is until 0475--fix-crash-introduced-by-Jonathan-s-changes-in-eppt.patch
@@ -3376,16 +3138,10 @@ pptx-snapshot-at-ooxml03-creation.diff
pptx-the-rest-from-git.diff
pptx-export-empty-animations-node-and-groupshape-fix.diff, rodo
-[ OOXMLExport < ooo320-m15 ]
-# ugly temp fix to make GraphicShapeContext recognise layout
-pptx-gfx-layout-fix-m14.diff, thorsten
-[ OOXMLExport >= ooo320-15 ]
# ugly temp fix to make GraphicShapeContext recognise layout
pptx-gfx-layout-fix.diff, thorsten
-[ OOXMLExport ]
# handles case where a connector shape is not connected
-
pptx-fix-connector-crash.diff, n#499129, thorsten
[ OOXMLExport321 ]
@@ -3406,11 +3162,6 @@ xlsx-filter-as-a-separate-lib-guards.diff
# should contain all the available changes.
xlsx-snapshot.diff
-[ OOXMLExport321 < ooo320-m15 ]
-# Make the xlsx export and import work at the same time
-# (converts the xlsx export to a UNO filter)
-xlsx-shared-import-and-export-m14.diff
-[ OOXMLExport321 >= ooo320-m15 ]
# Make the xlsx export and import work at the same time
# (converts the xlsx export to a UNO filter)
xlsx-shared-import-and-export.diff
@@ -3478,10 +3229,8 @@ xlsx-shared-xlsx-export-no-more-svstream-sotstorage.diff
# hack to ignore writerfilter when odf-converter is present
odf-converter-ignore-writerfilter.diff, n#348471, n#502173, jholesov
-[ OOXMLExport < ooo320-m14 ]
-oox-smartart-import-m13.diff, thorsten
-[ OOXMLExport >= ooo320-m14 ]
oox-smartart-import.diff, thorsten
+
[ OOXMLExportDevel ]
xlsx-shared-oox-smartart-import-m13.diff
@@ -3528,10 +3277,6 @@ edit-links-decode-unicode-uri.diff, i#104166, kohei
# cache fontconfig's pre-substitution result for better rendering performance.
fontconfig-cache-pre-substitution.diff, n#529532, kohei
-[ OOXML < ooo320-m15 ]
-oox-pptx-import-fix-placeholder-text-style-m14.diff, n#479834, rodo
-oox-pptx-import-fix-text-body-properties-priority-m14.diff, n#403402, rodo
-[ OOXML >= ooo320-m15 ]
oox-pptx-import-fix-placeholder-text-style.diff, n#479834, rodo
oox-pptx-import-fix-text-body-properties-priority.diff, n#403402, rodo
@@ -3584,13 +3329,7 @@ writer-doc-comparison.diff, tzvetelina
writer-doc-comparison-help.diff, tzvetelina
-[ MySQL < ooo320-m14 ]
-mysqlc-from-OOO320_m14.diff
-[ MySQL < ooo320-m15 ]
-mysqlc-missing-buildfixes-from-DEV300.diff
-[ MySQL < ooo320-m14 ]
-mysqlc-no-license.diff
-[ ExtensionFixes >= ooo320-m14 ]
+[ ExtensionFixes ]
mysqlc-no-license.diff
[ MySQL and DebianBaseOnly ]
@@ -3644,9 +3383,6 @@ sd-no-macro-recorder-in-ui.diff, fridrich
starmath-no-macro-recorder-in-ui.diff, fridrich
sw-no-macro-recorder-in-ui.diff, fridrich
-[ Fixes < ooo320-m8 ]
-xmlhelp-build-without-java.diff, rodo
-
[ Fixes ]
filter-fix-build-FCFGMerge.cfg.diff, rodo
store-crash-fix.diff, thorsten
@@ -3679,11 +3415,6 @@ ww8-image-position.diff
# add missing patch to upstreamed ppt gradient fix
ppt-customshape-shading-fix.diff, i#102797, thorsten
-[ Fixes < ooo320-m8 ]
-# fix RenderBadPicture crash in xinerama cases
-vcl-free-renderpicture.diff, i#107248, thorsten
-
-[ Fixes ]
# fix fullscreen window manager hints
vcl-fullscreenmode-fix.diff, n#551402, i#107249, thorsten
@@ -3744,7 +3475,8 @@ docx-fixes02.diff, n#581604, cbosdo
[ kFreeBSD ]
cws-kfreebsdport01v2.diff, rengelha
-[ HPPA < dev300-m66 ]
+[ HPPA ]
+# upstreamed in m66
cws-linuxhppa1.diff, i#107051
[ AXP ]
@@ -3792,9 +3524,7 @@ piece-io.diff
piece-l10n.diff
piece-remotebridges.diff
piece-rsc.diff
-[ PieceBits >= ooo320-m15 ]
piece-postprocess.diff
-[ PieceBits ]
piece-scp2.diff
piece-solenv.diff
piece-services.diff
@@ -3956,11 +3686,6 @@ calc-english-func-names-sc.diff, i#38765, kohei
calc-english-func-names-formula.diff, i#38765, kohei
calc-english-func-names-officecfg.diff, i#38765, kohei
-[ CalcFixes < ooo320-m15 ]
-# Fix incorrect positioning of cell notes during row insertion.
-calc-note-position-fix.diff, n#579454, kohei
-
-[ CalcFixes ]
# Insert current date or time to current cell
calc-insert-current-time-framework.diff, kohei
calc-insert-current-time-offapi.diff, kohei
@@ -4010,15 +3735,6 @@ framework-menubar-fix.diff, thorsten
# backport from 3.3 - prevent crash in headless svp mode
cws-sb118-headless-fix.diff, i#108681, thorsten
-[ Fixes < ooo320-m12 ]
-vcl-drawtransparent-fix.diff, i#107763, thorsten
-
-[ BuildBits == ooo320-m11 ]
-connectivity-build-fix.diff, i#107957, fridrich
-
-[ BuildBits < ooo320-m14 ]
-connectivity-build-fix-mac.diff, thorsten
-
[ BuildBits ]
# Allow oowintool to detect java sdk 1.6.x
oowintool-java6.diff, fridrich
@@ -4047,46 +3763,26 @@ SectionOwner => thorsten
# make opengl transitions work on OSX, too
transogl-crossplatform.diff, ericb
-[ Features < ooo320-m14 ]
-# embed generic media files inside odf docs, 1st part
-# FIXME: svx-sound.diff depends on this diff
-cws-impressmedia01-backport-m13.diff, i#83753, thorsten
-[ Features == ooo320-m14 ]
-# embed generic media files inside odf docs, 1st part
-# FIXME: svx-sound.diff depends on this diff
-cws-impressmedia01-backport-m14.diff, i#83753, thorsten
-[ Features >= ooo320-m15 ]
+[ Features ]
# embed generic media files inside odf docs, 1st part
# FIXME: svx-sound.diff depends on this diff
cws-impressmedia01-backport.diff, i#83753, thorsten
-[ Features ]
cws-impressmedia01-crash-fix.diff, n#588570, thorsten
[ Fixes ]
svx-sound.diff, n#515553, rodo
-[ Fixes < ooo320-m14 ]
-sd-sound-m13.diff, n#515553, rodo
-[ Fixes >= ooo320-m14 ]
sd-sound.diff, n#515553, rodo
-[ Fixes ]
slideshow-sound.diff, n#515553, rodo
sd-avoid-looping-fix.diff, thorsten
svx-validate-paradepth.diff, thorsten
vcl-pngread-greypalette-fix.diff, thorsten
svx-textpropreader-limit-fix.diff, thorsten
-[ Fixes < ooo320-m14 ]
-vcl-xinerama-clone-fix.diff, n#578730, thorsten
-[ Fixes ]
basegfx-colorspace-fix.diff, i#109364, thorsten
vbahelper-optionality-fix.diff, i#108853, ericb
vcl-gtk-process-events-on-exit.diff, rodo
sfx2-add-to-recently-used-after-save.diff, rodo
-[ Fixes < ooo320-m14 ]
-basegfx-boxclipper-m13.diff, i#72418, thorsten
-[ Fixes >= ooo320-m14 ]
basegfx-boxclipper.diff, i#72418, thorsten
-[ Fixes ]
basegfx-clipstate.diff, i#72418, thorsten
slideshow-clipstate.diff, i#72418, thorsten
svtools-wmf-clipperf.diff, n#535304, thorsten
@@ -4138,7 +3834,4 @@ magyarlinuxlibertine-fonts.diff
[ OOXML ]
oox-import-helper-property-map-dump.diff, rodo
-[ OOXML < ooo320-m15 ]
-oox-pptx-import-fix-text-body-vert-2-m14.diff, n#479829, rodo
-[ OOXML >= ooo320-m15 ]
oox-pptx-import-fix-text-body-vert-2.diff, n#479829, rodo
diff --git a/patches/dev300/basegfx-boxclipper-m13.diff b/patches/dev300/basegfx-boxclipper-m13.diff
deleted file mode 100644
index af8f967..0000000
--- a/patches/dev300/basegfx-boxclipper-m13.diff
+++ /dev/null
@@ -1,3359 +0,0 @@
-The new boxclipper code from 3.3
-
-From: Thorsten Behrens <tbehrens at novell.com>
-
-
----
-
- basegfx/inc/basegfx/polygon/b2dpolygon.hxx | 10
- basegfx/inc/basegfx/polygon/b2dpolypolygon.hxx | 6
- basegfx/inc/basegfx/range/b2dmultirange.hxx | 117 ---
- basegfx/inc/basegfx/range/b2dpolyrange.hxx | 139 ++++
- basegfx/inc/basegfx/range/b2drangeclipper.hxx | 53 +
- basegfx/qa/mkpolygons.pl | 344 +++++++++
- basegfx/source/polygon/b2dpolygon.cxx | 102 ++-
- basegfx/source/polygon/b2dpolypolygon.cxx | 40 +
- basegfx/source/range/b2dmultirange.cxx | 282 -------
- basegfx/source/range/b2dpolyrange.cxx | 371 +++++++++
- basegfx/source/range/b2drangeclipper.cxx | 950 ++++++++++++++++++++++++
- basegfx/source/range/makefile.mk | 3
- basegfx/test/basegfx2d.cxx | 248 +-----
- basegfx/test/boxclipper.cxx | 426 +++++++++++
- basegfx/test/makefile.mk | 5
- 15 files changed, 2457 insertions(+), 639 deletions(-)
- delete mode 100644 basegfx/inc/basegfx/range/b2dmultirange.hxx
- create mode 100644 basegfx/inc/basegfx/range/b2dpolyrange.hxx
- create mode 100644 basegfx/inc/basegfx/range/b2drangeclipper.hxx
- create mode 100644 basegfx/qa/mkpolygons.pl
- delete mode 100644 basegfx/source/range/b2dmultirange.cxx
- create mode 100644 basegfx/source/range/b2dpolyrange.cxx
- create mode 100644 basegfx/source/range/b2drangeclipper.cxx
- create mode 100644 basegfx/test/boxclipper.cxx
-
-
-diff --git basegfx/inc/basegfx/polygon/b2dpolygon.hxx basegfx/inc/basegfx/polygon/b2dpolygon.hxx
-index 067680e..e7f60c1 100644
---- basegfx/inc/basegfx/polygon/b2dpolygon.hxx
-+++ basegfx/inc/basegfx/polygon/b2dpolygon.hxx
-@@ -83,7 +83,7 @@ namespace basegfx
- sal_uInt32 count() const;
-
- /// Coordinate interface
-- basegfx::B2DPoint getB2DPoint(sal_uInt32 nIndex) const;
-+ const basegfx::B2DPoint& getB2DPoint(sal_uInt32 nIndex) const;
- void setB2DPoint(sal_uInt32 nIndex, const basegfx::B2DPoint& rValue);
-
- /// Coordinate insert/append
-@@ -201,7 +201,7 @@ namespace basegfx
- @return
- The outer range of the bezier curve/polygon
- */
-- B2DRange getB2DRange() const;
-+ const B2DRange& getB2DRange() const;
-
- /** insert other 2D polygons
-
-@@ -261,6 +261,12 @@ namespace basegfx
-
- /// apply transformation given in matrix form
- void transform(const basegfx::B2DHomMatrix& rMatrix);
-+
-+ // point iterators
-+ const B2DPoint* begin() const;
-+ const B2DPoint* end() const;
-+ B2DPoint* begin();
-+ B2DPoint* end();
- };
- } // end of namespace basegfx
-
-diff --git basegfx/inc/basegfx/polygon/b2dpolypolygon.hxx basegfx/inc/basegfx/polygon/b2dpolypolygon.hxx
-index 38048f8..1b8ba65 100644
---- basegfx/inc/basegfx/polygon/b2dpolypolygon.hxx
-+++ basegfx/inc/basegfx/polygon/b2dpolypolygon.hxx
-@@ -128,6 +128,12 @@ namespace basegfx
-
- // apply transformation given in matrix form to the polygon
- void transform(const basegfx::B2DHomMatrix& rMatrix);
-+
-+ // polygon iterators
-+ const B2DPolygon* begin() const;
-+ const B2DPolygon* end() const;
-+ B2DPolygon* begin();
-+ B2DPolygon* end();
- };
- } // end of namespace basegfx
-
-diff --git basegfx/inc/basegfx/range/b2dmultirange.hxx basegfx/inc/basegfx/range/b2dmultirange.hxx
-deleted file mode 100644
-index 447b0bf..0000000
---- basegfx/inc/basegfx/range/b2dmultirange.hxx
-+++ /dev/null
-@@ -1,117 +0,0 @@
--/*************************************************************************
-- *
-- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-- *
-- * Copyright 2008 by Sun Microsystems, Inc.
-- *
-- * OpenOffice.org - a multi-platform office productivity suite
-- *
-- * $RCSfile: b2dmultirange.hxx,v $
-- * $Revision: 1.6 $
-- *
-- * This file is part of OpenOffice.org.
-- *
-- * OpenOffice.org is free software: you can redistribute it and/or modify
-- * it under the terms of the GNU Lesser General Public License version 3
-- * only, as published by the Free Software Foundation.
-- *
-- * OpenOffice.org 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 version 3 for more details
-- * (a copy is included in the LICENSE file that accompanied this code).
-- *
-- * You should have received a copy of the GNU Lesser General Public License
-- * version 3 along with OpenOffice.org. If not, see
-- * <http://www.openoffice.org/license.html>
-- * for a copy of the LGPLv3 License.
-- *
-- ************************************************************************/
--
--#ifndef _BGFX_RANGE_B2DMULTIRANGE_HXX
--#define _BGFX_RANGE_B2DMULTIRANGE_HXX
--
--#include <o3tl/cow_wrapper.hxx>
--#include <memory>
--
--
--namespace basegfx
--{
-- class B2DTuple;
-- class B2DRange;
-- class B2DPolyPolygon;
-- class ImplB2DMultiRange;
--
-- /** Multiple ranges in one object.
--
-- This class combines multiple ranges in one object, providing a
-- total, enclosing range for it.
--
-- You can use this class e.g. when updating views containing
-- rectangular objects. Add each modified object to a
-- B2DMultiRange, then test each viewable object against
-- intersection with the multi range.
-- */
-- class B2DMultiRange
-- {
-- public:
-- B2DMultiRange();
-- ~B2DMultiRange();
--
-- /** Create a multi range with exactly one containing range
-- */
-- explicit B2DMultiRange( const B2DRange& rRange );
--
-- B2DMultiRange( const B2DMultiRange& );
-- B2DMultiRange& operator=( const B2DMultiRange& );
--
-- /** Check whether range is empty.
--
-- @return true, if this object either contains no ranges at
-- all, or all contained ranges are empty.
-- */
-- bool isEmpty() const;
--
-- /** Reset to empty.
--
-- After this call, the object will not contain any ranges,
-- and isEmpty() will return true.
-- */
-- void reset();
--
-- /** Test whether given tuple is inside one or more of the
-- included ranges.
-- */
-- bool isInside( const B2DTuple& rTuple ) const;
--
-- /** Test whether given range is inside one or more of the
-- included ranges.
-- */
-- bool isInside( const B2DRange& rRange ) const;
--
-- /** Test whether given range overlaps one or more of the
-- included ranges.
-- */
-- bool overlaps( const B2DRange& rRange ) const;
--
-- /** Add given range to the number of contained ranges.
-- */
-- void addRange( const B2DRange& rRange );
--
-- /** Get overall bound rect for all included ranges.
-- */
-- B2DRange getBounds() const;
--
-- /** Request poly-polygon representing the added ranges.
--
-- This method creates a poly-polygon, consisting exactly out
-- of the contained ranges.
-- */
-- B2DPolyPolygon getPolyPolygon() const;
--
-- private:
-- o3tl::cow_wrapper< ImplB2DMultiRange > mpImpl;
-- };
--}
--
--#endif /* _BGFX_RANGE_B2DMULTIRANGE_HXX */
-diff --git basegfx/inc/basegfx/range/b2dpolyrange.hxx basegfx/inc/basegfx/range/b2dpolyrange.hxx
-new file mode 100644
-index 0000000..0c07dc2
---- /dev/null
-+++ basegfx/inc/basegfx/range/b2dpolyrange.hxx
-@@ -0,0 +1,139 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: b2dmultirange.hxx,v $
-+ * $Revision: 1.6 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org 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 version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org. If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+#ifndef _BGFX_RANGE_B2DPOLYRANGE_HXX
-+#define _BGFX_RANGE_B2DPOLYRANGE_HXX
-+
-+#include <o3tl/cow_wrapper.hxx>
-+#include <boost/tuple/tuple.hpp>
-+#include <basegfx/vector/b2enums.hxx>
-+
-+namespace basegfx
-+{
-+ class B2DTuple;
-+ class B2DRange;
-+ class B2DPolyPolygon;
-+ class ImplB2DPolyRange;
-+
-+ /** Multiple ranges in one object.
-+
-+ This class combines multiple ranges in one object, providing a
-+ total, enclosing range for it.
-+
-+ You can use this class e.g. when updating views containing
-+ rectangular objects. Add each modified object to a
-+ B2DMultiRange, then test each viewable object against
-+ intersection with the multi range.
-+
-+ Similar in spirit to the poly-polygon vs. polygon relationship.
-+
-+ Note that comparable to polygons, a poly-range can also
-+ contain 'holes' - this is encoded via polygon orientation at
-+ the poly-polygon, and via explicit flags for the poly-range.
-+ */
-+ class B2DPolyRange
-+ {
-+ public:
-+ typedef boost::tuple<B2DRange,B2VectorOrientation> ElementType ;
-+
-+ B2DPolyRange();
-+ ~B2DPolyRange();
-+
-+ /** Create a multi range with exactly one containing range
-+ */
-+ explicit B2DPolyRange( const ElementType& rElement );
-+ B2DPolyRange( const B2DRange& rRange, B2VectorOrientation eOrient );
-+ B2DPolyRange( const B2DPolyRange& );
-+ B2DPolyRange& operator=( const B2DPolyRange& );
-+
-+ /// unshare this poly-range with all internally shared instances
-+ void makeUnique();
-+
-+ bool operator==(const B2DPolyRange&) const;
-+ bool operator!=(const B2DPolyRange&) const;
-+
-+ /// Number of included ranges
-+ sal_uInt32 count() const;
-+
-+ ElementType getElement(sal_uInt32 nIndex) const;
-+ void setElement(sal_uInt32 nIndex, const ElementType& rElement );
-+ void setElement(sal_uInt32 nIndex, const B2DRange& rRange, B2VectorOrientation eOrient );
-+
-+ // insert/append a single range
-+ void insertElement(sal_uInt32 nIndex, const ElementType& rElement, sal_uInt32 nCount = 1);
-+ void insertElement(sal_uInt32 nIndex, const B2DRange& rRange, B2VectorOrientation eOrient, sal_uInt32 nCount = 1);
-+ void appendElement(const ElementType& rElement, sal_uInt32 nCount = 1);
-+ void appendElement(const B2DRange& rRange, B2VectorOrientation eOrient, sal_uInt32 nCount = 1);
-+
-+ // insert/append multiple ranges
-+ void insertPolyRange(sal_uInt32 nIndex, const B2DPolyRange&);
-+ void appendPolyRange(const B2DPolyRange&);
-+
-+ void remove(sal_uInt32 nIndex, sal_uInt32 nCount = 1);
-+ void clear();
-+
-+ // flip range orientations - converts holes to solids, and vice versa
-+ void flip();
-+
-+ /** Get overall range
-+
-+ @return
-+ The union range of all contained ranges
-+ */
-+ B2DRange getBounds() const;
-+
-+ /** Test whether given tuple is inside one or more of the
-+ included ranges. Does *not* use overall range, but checks
-+ individually.
-+ */
-+ bool isInside( const B2DTuple& rTuple ) const;
-+
-+ /** Test whether given range is inside one or more of the
-+ included ranges. Does *not* use overall range, but checks
-+ individually.
-+ */
-+ bool isInside( const B2DRange& rRange ) const;
-+
-+ /** Test whether given range overlaps one or more of the
-+ included ranges. Does *not* use overall range, but checks
-+ individually.
-+ */
-+ bool overlaps( const B2DRange& rRange ) const;
-+
-+ /** Request a poly-polygon with solved cross-overs
-+ */
-+ B2DPolyPolygon solveCrossovers() const;
-+
-+ private:
-+ o3tl::cow_wrapper< ImplB2DPolyRange > mpImpl;
-+ };
-+}
-+
-+#endif /* _BGFX_RANGE_B2DPOLYRANGE_HXX */
-diff --git basegfx/inc/basegfx/range/b2drangeclipper.hxx basegfx/inc/basegfx/range/b2drangeclipper.hxx
-new file mode 100644
-index 0000000..1b08bbf
---- /dev/null
-+++ basegfx/inc/basegfx/range/b2drangeclipper.hxx
-@@ -0,0 +1,53 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: b2dmultirange.hxx,v $
-+ * $Revision: 1.6 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org 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 version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org. If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+#ifndef _BGFX_RANGE_B2DRANGECLIPPER_HXX
-+#define _BGFX_RANGE_B2DRANGECLIPPER_HXX
-+
-+#include <basegfx/range/b2dpolyrange.hxx>
-+#include <vector>
-+
-+namespace basegfx
-+{
-+ namespace tools
-+ {
-+ /** Extract poly-polygon w/o self-intersections from poly-range
-+
-+ Similar to the solveCrossovers(const B2DPolyPolygon&)
-+ method, this one calculates a self-intersection-free
-+ poly-polygon with the same topology, and encoding
-+ inside/outsidedness via polygon orientation and layering.
-+ */
-+ B2DPolyPolygon solveCrossovers(const std::vector<B2DRange>& rRanges,
-+ const std::vector<B2VectorOrientation>& rOrientations);
-+ }
-+}
-+
-+#endif /* _BGFX_RANGE_B2DRANGECLIPPER_HXX */
-diff --git basegfx/qa/mkpolygons.pl basegfx/qa/mkpolygons.pl
-new file mode 100644
-index 0000000..47ef7ba
---- /dev/null
-+++ basegfx/qa/mkpolygons.pl
-@@ -0,0 +1,344 @@
-+:
-+eval 'exec perl -wS $0 ${1+"$@"}'
-+ if 0;
-+
-+#
-+# 2009 Copyright Novell, Inc. & Sun Microsystems, Inc.
-+#
-+# OpenOffice.org is free software: you can redistribute it and/or modify
-+# it under the terms of the GNU Lesser General Public License version 3
-+# only, as published by the Free Software Foundation.
-+#
-+
-+use IO::File;
-+use Cwd;
-+use File::Spec;
-+use File::Spec::Functions;
-+use File::Temp;
-+use File::Path;
-+
-+$TempDir = "";
-+
-+
-+# all the XML package generation is a blatant rip from AF's
-+# write-calc-doc.pl
-+
-+
-+###############################################################################
-+# Open a file with the given name.
-+# First it is checked if the temporary directory, in which all files for
-+# the document are gathered, is already present and create it if it is not.
-+# Then create the path to the file inside the temporary directory.
-+# Finally open the file and return a file handle to it.
-+#
-+sub open_file
-+{
-+ my $filename = pop @_;
-+
-+ # Create base directory of temporary directory tree if not alreay
-+ # present.
-+ if ($TempDir eq "")
-+ {
-+ $TempDir = File::Temp::tempdir (CLEANUP => 1);
-+ }
-+
-+ # Create the path to the file.
-+ my $fullname = File::Spec->catfile ($TempDir, $filename);
-+ my ($volume,$directories,$file) = File::Spec->splitpath ($fullname);
-+ mkpath (File::Spec->catpath ($volume,$directories,""));
-+
-+ # Open the file and return a file handle to it.
-+ return new IO::File ($fullname, "w");
-+}
-+
-+
-+###############################################################################
-+# Zip the files in the directory tree into the given file.
-+#
-+sub zip_dirtree
-+{
-+ my $filename = pop @_;
-+
-+ my $cwd = getcwd;
-+ my $zip_name = $filename;
-+
-+ # We are about to change the directory.
-+ # Therefore create an absolute pathname for the zip archive.
-+
-+ # First transfer the drive from $cwd to $zip_name. This is a
-+ # workaround for a bug in file_name_is_absolute which thinks
-+ # the the path \bla is an absolute path under DOS.
-+ my ($volume,$directories,$file) = File::Spec->splitpath ($zip_name);
-+ my ($volume_cwd,$directories_cwd,$file_cwd) = File::Spec->splitpath ($cwd);
-+ $volume = $volume_cwd if ($volume eq "");
-+ $zip_name = File::Spec->catpath ($volume,$directories,$file);
-+
-+ # Add the current working directory to a relative path.
-+ if ( ! file_name_is_absolute ($zip_name))
-+ {
-+ $zip_name = File::Spec->catfile ($cwd, $zip_name);
-+
-+ # Try everything to clean up the name.
-+ $zip_name = File::Spec->rel2abs ($filename);
-+ $zip_name = File::Spec->canonpath ($zip_name);
-+
-+ # Remove .. directories from the middle of the path.
-+ while ($zip_name =~ /\/[^\/][^\.\/][^\/]*\/\.\.\//)
-+ {
-+ $zip_name = $` . "/" . $';
-+ }
-+ }
-+
-+ # Just in case the zip program gets confused by an existing file with the
-+ # same name as the one to be written that file is removed first.
-+ if ( -e $filename)
-+ {
-+ if (unlink ($filename) == 0)
-+ {
-+ print "Existing file $filename could not be deleted.\n";
-+ print "Please close the application that uses it, then try again.\n";
-+ return;
-+ }
-+ }
-+
-+ # Finally create the zip file. First change into the temporary directory
-+ # so that the resulting zip file contains only paths relative to it.
-+ print "zipping [$ZipCmd $ZipFlags $zip_name *]\n";
-+ chdir ($TempDir);
-+ system ("$ZipCmd $ZipFlags $zip_name *");
-+ chdir ($cwd);
-+}
-+
-+
-+sub writeHeader
-+{
-+ print $OUT qq~<?xml version="1.0" encoding="UTF-8"?>
-+
-+<office:document-content xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:fo
rm:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:smil="urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0" xmlns:anim="urn:oasis:names:tc:opendocument:xmlns:animation:1.0" office:version="1.0">
-+ <office:scripts/>
-+ <office:automatic-styles>
-+ <style:style style:name="dp1" style:family="drawing-page">
-+ <style:drawing-page-properties presentation:background-visible="true" presentation:background-objects-visible="true" presentation:display-footer="true" presentation:display-page-number="false" presentation:display-date-time="true"/>
-+ </style:style>
-+ <style:style style:name="gr1" style:family="graphic" style:parent-style-name="standard">
-+ <style:graphic-properties draw:textarea-horizontal-align="center" draw:fill="none" draw:stroke="none" draw:textarea-vertical-align="middle"/>
-+ </style:style>
-+ <style:style style:name="gr2" style:family="graphic" style:parent-style-name="standard">
-+ <style:graphic-properties draw:textarea-horizontal-align="center" draw:textarea-vertical-align="middle"/>
-+ </style:style>
-+ <style:style style:name="pr1" style:family="presentation" style:parent-style-name="Default-title">
-+ <style:graphic-properties draw:fill-color="#ffffff" draw:auto-grow-height="true" fo:min-height="3.508cm"/>
-+ </style:style>
-+ <style:style style:name="pr2" style:family="presentation" style:parent-style-name="Default-notes">
-+ <style:graphic-properties draw:fill-color="#ffffff" draw:auto-grow-height="true" fo:min-height="13.367cm"/>
-+ </style:style>
-+ <style:style style:name="P1" style:family="paragraph">
-+ <style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm"/>
-+ </style:style>
-+ <style:style style:name="P2" style:family="paragraph">
-+ <style:paragraph-properties fo:margin-left="0.6cm" fo:margin-right="0cm" fo:text-indent="-0.6cm"/>
-+ </style:style>
-+ <text:list-style style:name="L1">
-+ <text:list-level-style-bullet text:level="1" text:bullet-char="â">
-+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
-+ </text:list-level-style-bullet>
-+ <text:list-level-style-bullet text:level="2" text:bullet-char="â">
-+ <style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/>
-+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
-+ </text:list-level-style-bullet>
-+ <text:list-level-style-bullet text:level="3" text:bullet-char="â">
-+ <style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/>
-+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
-+ </text:list-level-style-bullet>
-+ <text:list-level-style-bullet text:level="4" text:bullet-char="â">
-+ <style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/>
-+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
-+ </text:list-level-style-bullet>
-+ <text:list-level-style-bullet text:level="5" text:bullet-char="â">
-+ <style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/>
-+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
-+ </text:list-level-style-bullet>
-+ <text:list-level-style-bullet text:level="6" text:bullet-char="â">
-+ <style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/>
-+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
-+ </text:list-level-style-bullet>
-+ <text:list-level-style-bullet text:level="7" text:bullet-char="â">
-+ <style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/>
-+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
-+ </text:list-level-style-bullet>
-+ <text:list-level-style-bullet text:level="8" text:bullet-char="â">
-+ <style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/>
-+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
-+ </text:list-level-style-bullet>
-+ <text:list-level-style-bullet text:level="9" text:bullet-char="â">
-+ <style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/>
-+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
-+ </text:list-level-style-bullet>
-+ </text:list-style>
-+ </office:automatic-styles>
-+ <office:body>
-+ <office:presentation>
-+~;
-+
-+}
-+
-+sub writeSlideHeader
-+{
-+ my $titleText = pop @_;
-+ my $slideNum = pop @_;
-+
-+ print $OUT " <draw:page draw:name=\"page1\" draw:style-name=\"dp1\" draw:master-page-name=\"Default\">\n";
-+ print $OUT " <office:forms form:automatic-focus=\"false\" form:apply-design-mode=\"false\"/>\n";
-+ print $OUT " <draw:rect draw:style-name=\"gr1\" draw:text-style-name=\"P1\" draw:id=\"id$slideNum\" draw:layer=\"layout\" svg:width=\"17.5cm\" svg:height=\"6cm\" svg:x=\"5cm\" svg:y=\"4cm\">\n";
-+ print $OUT " <text:p text:style-name=\"P2\">Slide: $slideNum</text:p>\n";
-+ print $OUT " <text:p text:style-name=\"P2\">Path: $titleText</text:p>\n";
-+ print $OUT " </draw:rect>\n";
-+}
-+
-+
-+sub writeSlideFooter
-+{
-+ print $OUT " <presentation:notes draw:style-name=\"dp1\">\n";
-+ print $OUT " <draw:page-thumbnail draw:style-name=\"gr1\" draw:layer=\"layout\" svg:width=\"14.851cm\" svg:height=\"11.138cm\" svg:x=\"3.068cm\" svg:y=\"2.257cm\" draw:page-number=\"1\" presentation:class=\"page\"/>\n";
-+ print $OUT " <draw:frame presentation:style-name=\"pr3\" draw:layer=\"layout\" svg:width=\"16.79cm\" svg:height=\"13.116cm\" svg:x=\"2.098cm\" svg:y=\"14.109cm\" presentation:class=\"notes\" presentation:placeholder=\"true\">\n";
-+ print $OUT " <draw:text-box/>\n";
-+ print $OUT " </draw:frame>\n";
-+ print $OUT " </presentation:notes>\n";
-+ print $OUT " </draw:page>\n";
-+}
-+
-+sub writeFooter
-+{
-+ print $OUT qq~ <presentation:settings presentation:full-screen="false"/>
-+ </office:presentation>
-+ </office:body>
-+</office:document-content>
-+~;
-+
-+}
-+
-+sub writePath
-+{
-+ my $pathAry = pop @_;
-+ my $path = $pathAry->[1];
-+ my $viewBox = $pathAry->[0];
-+
-+ print $OUT " <draw:path draw:style-name=\"gr2\" draw:text-style-name=\"P1\" draw:layer=\"layout\" svg:width=\"10cm\" svg:height=\"10cm\" svg:x=\"5cm\" svg:y=\"5cm\" svg:viewBox=\"";
-+ print $OUT $viewBox;
-+ print $OUT "\" svg:d=\"";
-+ print $OUT $path;
-+ print $OUT "\">\n";
-+ print $OUT " <text:p/>\n";
-+ print $OUT " </draw:path>\n";
-+}
-+
-+sub writeManifest
-+{
-+ my $outFile = open_file("META-INF/manifest.xml");
-+
-+ print $outFile qq~<?xml version="1.0" encoding="UTF-8"?>
-+<!DOCTYPE manifest:manifest PUBLIC "-//OpenOffice.org//DTD Manifest 1.0//EN" "Manifest.dtd">
-+<manifest:manifest xmlns:manifest="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0">
-+ <manifest:file-entry manifest:media-type="application/vnd.oasis.opendocument.presentation" manifest:full-path="/"/>
-+ <manifest:file-entry manifest:media-type="text/xml" manifest:full-path="content.xml"/>
-+</manifest:manifest>
-+~;
-+
-+ $outFile->close;
-+}
-+
-+
-+###############################################################################
-+# Print usage information.
-+#
-+sub usage ()
-+{
-+ print <<END_OF_USAGE;
-+usage: $0 <option>* [<SvgD-values>]
-+
-+output-file-name defaults to polygons.odp.
-+
-+ -h Print this usage information.
-+ -o output-file-name
-+END_OF_USAGE
-+}
-+
-+###############################################################################
-+# Process the command line.
-+#
-+sub process_command_line
-+{
-+ foreach (@ARGV)
-+ {
-+ if (/^-h/)
-+ {
-+ usage;
-+ exit 0;
-+ }
-+ }
-+
-+ $global_output_name = "polygons.odp";
-+ my $j = 0, $noMoreOptions = 0;
-+ for (my $i=0; $i<$#ARGV; $i++)
-+ {
-+ if ( !$noMoreOptions and $ARGV[$i] eq "-o")
-+ {
-+ $i++;
-+ $global_output_name = $ARGV[$i];
-+ }
-+ elsif ( !$noMoreOptions and $ARGV[$i] eq "--")
-+ {
-+ $noMoreOptions = 1;
-+ }
-+ elsif ( !$noMoreOptions and $ARGV[$i] =~ /^-/)
-+ {
-+ print "Unknown option $ARGV[$i]\n";
-+ usage;
-+ exit 1;
-+ }
-+ else
-+ {
-+ push(@paths, [$ARGV[$i],$ARGV[$i+1]]);
-+ $i++;
-+ }
-+ }
-+
-+ print "output to $global_output_name\n";
-+}
-+
-+###############################################################################
-+# Main
-+###############################################################################
-+
-+$ZipCmd = $ENV{LOG_FILE_ZIP_CMD};
-+$ZipFlags = $ENV{LOG_FILE_ZIP_FLAGS};
-+# Provide default values for the zip command and it's flags.
-+if ( ! defined $ZipCmd)
-+{
-+ $ZipCmd = "zip" unless defined $ZipCmd;
-+ $ZipFlags = "-r -q" unless defined $ZipFlags;
-+}
-+
-+process_command_line();
-+
-+writeManifest();
-+
-+$OUT = open_file( "content.xml" );
-+
-+writeHeader();
-+
-+$pathNum=0;
-+foreach $path (@paths)
-+{
-+ writeSlideHeader($pathNum, $path->[1]);
-+ writePath($path);
-+ writeSlideFooter();
-+ $pathNum++;
-+}
-+
-+writeFooter();
-+
-+$OUT->close;
-+
-+zip_dirtree ($global_output_name);
-+
-diff --git basegfx/source/polygon/b2dpolygon.cxx basegfx/source/polygon/b2dpolygon.cxx
-index 02a25e6..c30d070 100644
---- basegfx/source/polygon/b2dpolygon.cxx
-+++ basegfx/source/polygon/b2dpolygon.cxx
-@@ -44,38 +44,24 @@
-
- //////////////////////////////////////////////////////////////////////////////
-
--class CoordinateData2D
-+struct CoordinateData2D : public basegfx::B2DPoint
- {
-- basegfx::B2DPoint maPoint;
--
- public:
-- CoordinateData2D()
-- : maPoint()
-- {}
--
-+ CoordinateData2D() {}
-+
- explicit CoordinateData2D(const basegfx::B2DPoint& rData)
-- : maPoint(rData)
-+ : B2DPoint(rData)
- {}
-
-- const basegfx::B2DPoint& getCoordinate() const
-- {
-- return maPoint;
-+ CoordinateData2D& operator=(const basegfx::B2DPoint& rData)
-+ {
-+ B2DPoint::operator=(rData);
-+ return *this;
- }
-
-- void setCoordinate(const basegfx::B2DPoint& rValue)
-- {
-- if(rValue != maPoint)
-- maPoint = rValue;
-- }
--
-- bool operator==(const CoordinateData2D& rData ) const
-- {
-- return (maPoint == rData.getCoordinate());
-- }
--
- void transform(const basegfx::B2DHomMatrix& rMatrix)
- {
-- maPoint *= rMatrix;
-+ *this *= rMatrix;
- }
- };
-
-@@ -115,12 +101,12 @@ public:
-
- const basegfx::B2DPoint& getCoordinate(sal_uInt32 nIndex) const
- {
-- return maVector[nIndex].getCoordinate();
-+ return maVector[nIndex];
- }
-
- void setCoordinate(sal_uInt32 nIndex, const basegfx::B2DPoint& rValue)
- {
-- maVector[nIndex].setCoordinate(rValue);
-+ maVector[nIndex] = rValue;
- }
-
- void insert(sal_uInt32 nIndex, const CoordinateData2D& rValue, sal_uInt32 nCount)
-@@ -221,6 +207,26 @@ public:
- aStart->transform(rMatrix);
- }
- }
-+
-+ const basegfx::B2DPoint* begin() const
-+ {
-+ return &maVector.front();
-+ }
-+
-+ const basegfx::B2DPoint* end() const
-+ {
-+ return &maVector[maVector.size()];
-+ }
-+
-+ basegfx::B2DPoint* begin()
-+ {
-+ return &maVector.front();
-+ }
-+
-+ basegfx::B2DPoint* end()
-+ {
-+ return &maVector[maVector.size()];
-+ }
- };
-
- //////////////////////////////////////////////////////////////////////////////
-@@ -1113,6 +1119,28 @@ public:
- maPoints.transform(rMatrix);
- }
- }
-+
-+ const basegfx::B2DPoint* begin() const
-+ {
-+ return maPoints.begin();
-+ }
-+
-+ const basegfx::B2DPoint* end() const
-+ {
-+ return maPoints.end();
-+ }
-+
-+ basegfx::B2DPoint* begin()
-+ {
-+ mpBufferedData.reset();
-+ return maPoints.begin();
-+ }
-+
-+ basegfx::B2DPoint* end()
-+ {
-+ mpBufferedData.reset();
-+ return maPoints.end();
-+ }
- };
-
- //////////////////////////////////////////////////////////////////////////////
-@@ -1173,7 +1201,7 @@ namespace basegfx
- return mpPolygon->count();
- }
-
-- B2DPoint B2DPolygon::getB2DPoint(sal_uInt32 nIndex) const
-+ const B2DPoint& B2DPolygon::getB2DPoint(sal_uInt32 nIndex) const
- {
- OSL_ENSURE(nIndex < mpPolygon->count(), "B2DPolygon access outside range (!)");
-
-@@ -1432,7 +1460,7 @@ namespace basegfx
- return mpPolygon->getDefaultAdaptiveSubdivision(*this);
- }
-
-- B2DRange B2DPolygon::getB2DRange() const
-+ const B2DRange& B2DPolygon::getB2DRange() const
- {
- return mpPolygon->getB2DRange(*this);
- }
-@@ -1540,6 +1568,26 @@ namespace basegfx
- mpPolygon->transform(rMatrix);
- }
- }
-+
-+ const B2DPoint* B2DPolygon::begin() const
-+ {
-+ return mpPolygon->begin();
-+ }
-+
-+ const B2DPoint* B2DPolygon::end() const
-+ {
-+ return mpPolygon->end();
-+ }
-+
-+ B2DPoint* B2DPolygon::begin()
-+ {
-+ return mpPolygon->begin();
-+ }
-+
-+ B2DPoint* B2DPolygon::end()
-+ {
-+ return mpPolygon->end();
-+ }
- } // end of namespace basegfx
-
- //////////////////////////////////////////////////////////////////////////////
-diff --git basegfx/source/polygon/b2dpolypolygon.cxx basegfx/source/polygon/b2dpolypolygon.cxx
-index 67cd079..4be35f7 100644
---- basegfx/source/polygon/b2dpolypolygon.cxx
-+++ basegfx/source/polygon/b2dpolypolygon.cxx
-@@ -166,6 +166,26 @@ public:
- maPolygons.end(),
- std::mem_fun_ref( &basegfx::B2DPolygon::makeUnique ));
- }
-+
-+ const basegfx::B2DPolygon* begin() const
-+ {
-+ return &maPolygons.front();
-+ }
-+
-+ const basegfx::B2DPolygon* end() const
-+ {
-+ return &maPolygons[maPolygons.size()];
-+ }
-+
-+ basegfx::B2DPolygon* begin()
-+ {
-+ return &maPolygons.front();
-+ }
-+
-+ basegfx::B2DPolygon* end()
-+ {
-+ return &maPolygons[maPolygons.size()];
-+ }
- };
-
- //////////////////////////////////////////////////////////////////////////////
-@@ -378,6 +398,26 @@ namespace basegfx
- mpPolyPolygon->transform(rMatrix);
- }
- }
-+
-+ const B2DPolygon* B2DPolyPolygon::begin() const
-+ {
-+ return mpPolyPolygon->begin();
-+ }
-+
-+ const B2DPolygon* B2DPolyPolygon::end() const
-+ {
-+ return mpPolyPolygon->end();
-+ }
-+
-+ B2DPolygon* B2DPolyPolygon::begin()
-+ {
-+ return mpPolyPolygon->begin();
-+ }
-+
-+ B2DPolygon* B2DPolyPolygon::end()
-+ {
-+ return mpPolyPolygon->end();
-+ }
- } // end of namespace basegfx
-
- // eof
-diff --git basegfx/source/range/b2dmultirange.cxx basegfx/source/range/b2dmultirange.cxx
-deleted file mode 100644
-index 738c5d1..0000000
---- basegfx/source/range/b2dmultirange.cxx
-+++ /dev/null
-@@ -1,282 +0,0 @@
--/*************************************************************************
-- *
-- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-- *
-- * Copyright 2008 by Sun Microsystems, Inc.
-- *
-- * OpenOffice.org - a multi-platform office productivity suite
-- *
-- * $RCSfile: b2dmultirange.cxx,v $
-- * $Revision: 1.8 $
-- *
-- * This file is part of OpenOffice.org.
-- *
-- * OpenOffice.org is free software: you can redistribute it and/or modify
-- * it under the terms of the GNU Lesser General Public License version 3
-- * only, as published by the Free Software Foundation.
-- *
-- * OpenOffice.org 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 version 3 for more details
-- * (a copy is included in the LICENSE file that accompanied this code).
-- *
-- * You should have received a copy of the GNU Lesser General Public License
-- * version 3 along with OpenOffice.org. If not, see
-- * <http://www.openoffice.org/license.html>
-- * for a copy of the LGPLv3 License.
-- *
-- ************************************************************************/
--
--// MARKER(update_precomp.py): autogen include statement, do not remove
--#include "precompiled_basegfx.hxx"
--#include <basegfx/range/b2drange.hxx>
--#include <basegfx/tuple/b2dtuple.hxx>
--#include <basegfx/polygon/b2dpolypolygon.hxx>
--#include <basegfx/range/b2dmultirange.hxx>
--#include <basegfx/polygon/b2dpolygontools.hxx>
--#include <basegfx/polygon/b2dpolypolygontools.hxx>
--#include <basegfx/polygon/b2dpolypolygoncutter.hxx>
--#include <boost/bind.hpp>
--#include <boost/mem_fn.hpp>
--#include <algorithm>
--#include <vector>
--
--
--namespace basegfx
--{
-- class ImplB2DMultiRange
-- {
-- public:
-- ImplB2DMultiRange() :
-- maBounds(),
-- maRanges()
-- {
-- }
--
-- explicit ImplB2DMultiRange( const B2DRange& rRange ) :
-- maBounds(),
-- maRanges( 1, rRange )
-- {
-- }
--
-- bool isEmpty() const
-- {
-- // no ranges at all, or all ranges empty
-- return maRanges.empty() ||
-- ::std::count_if( maRanges.begin(),
-- maRanges.end(),
-- ::boost::mem_fn( &B2DRange::isEmpty ) )
-- == static_cast<VectorOfRanges::difference_type>(maRanges.size());
-- }
--
-- void reset()
-- {
-- // swap in empty vector
-- VectorOfRanges aTmp;
-- maRanges.swap( aTmp );
--
-- maBounds.reset();
-- }
--
-- template< typename ValueType > bool isInside( const ValueType& rValue ) const
-- {
-- if( !maBounds.isInside( rValue ) )
-- return false;
--
-- // cannot use ::boost::bind here, since isInside is overloaded.
-- // It is currently not possible to resolve the overload
-- // by considering one of the other template arguments.
-- VectorOfRanges::const_iterator aCurr( maRanges.begin() );
-- const VectorOfRanges::const_iterator aEnd ( maRanges.end() );
-- while( aCurr != aEnd )
-- if( aCurr->isInside( rValue ) )
-- return true;
--
-- return false;
-- }
--
-- bool overlaps( const B2DRange& rRange ) const
-- {
-- if( !maBounds.overlaps( rRange ) )
-- return false;
--
-- const VectorOfRanges::const_iterator aEnd( maRanges.end() );
-- return ::std::find_if( maRanges.begin(),
-- aEnd,
-- ::boost::bind<bool>( ::boost::mem_fn( &B2DRange::overlaps ),
-- _1,
-- rRange ) ) != aEnd;
-- }
--
-- void addRange( const B2DRange& rRange )
-- {
-- maRanges.push_back( rRange );
-- maBounds.expand( rRange );
-- }
--
-- B2DRange getBounds() const
-- {
-- return maBounds;
-- }
--
-- B2DPolyPolygon getPolyPolygon() const
-- {
-- B2DPolyPolygon aRes;
--
-- // Make range vector unique ( have to avoid duplicate
-- // rectangles. The polygon clipper will return an empty
-- // result in this case).
-- VectorOfRanges aUniqueRanges;
-- aUniqueRanges.reserve( maRanges.size() );
--
-- VectorOfRanges::const_iterator aCurr( maRanges.begin() );
-- const VectorOfRanges::const_iterator aEnd ( maRanges.end() );
-- while( aCurr != aEnd )
-- {
-- // TODO(F3): It's plain wasted resources to apply a
-- // general clipping algorithm to the problem at
-- // hand. Go for a dedicated, scan-line-based approach.
-- VectorOfRanges::const_iterator aCurrScan( aCurr+1 );
-- VectorOfRanges::const_iterator aFound( aEnd );
-- while( aCurrScan != aEnd )
-- {
-- if( aCurrScan->equal( *aCurr ) ||
-- aCurrScan->isInside( *aCurr ) )
-- {
-- // current probe is equal to aCurr, or
-- // completely contains aCurr. Thus, stop
-- // searching, because aCurr is definitely not
-- // a member of the unique rect list
-- aFound = aCurrScan;
-- break;
-- }
--
-- ++aCurrScan;
-- }
--
-- if( aFound == aEnd )
-- {
-- // check whether aCurr is fully contained in one
-- // of the already added rects. If yes, we can skip
-- // it.
-- bool bUnique( true );
-- VectorOfRanges::const_iterator aCurrUnique( aUniqueRanges.begin() );
-- VectorOfRanges::const_iterator aEndUnique ( aUniqueRanges.end() );
-- while( aCurrUnique != aEndUnique )
-- {
-- if( aCurrUnique->isInside( *aCurr ) )
-- {
-- // fully contained, no need to add
-- bUnique = false;
-- break;
-- }
--
-- ++aCurrUnique;
-- }
--
-- if( bUnique )
-- aUniqueRanges.push_back( *aCurr );
-- }
--
-- ++aCurr;
-- }
--
-- VectorOfRanges::const_iterator aCurrUnique( aUniqueRanges.begin() );
-- const VectorOfRanges::const_iterator aEndUnique ( aUniqueRanges.end() );
-- while( aCurrUnique != aEndUnique )
-- {
-- // simply merge all unique parts (OR)
-- aRes.append( tools::createPolygonFromRect( *aCurrUnique++ ) );
-- }
--
-- // remove redundant intersections. Note: since all added
-- // rectangles are positively oriented, this method cannot
-- // generate any holes.
-- aRes = basegfx::tools::solveCrossovers(aRes);
-- aRes = basegfx::tools::stripNeutralPolygons(aRes);
-- aRes = basegfx::tools::stripDispensablePolygons(aRes, false);
--
-- return aRes;
-- }
--
-- private:
-- typedef ::std::vector< B2DRange > VectorOfRanges;
--
-- B2DRange maBounds;
-- VectorOfRanges maRanges;
-- };
--
--
-- // ====================================================================
--
--
-- B2DMultiRange::B2DMultiRange() :
-- mpImpl()
-- {
-- }
--
-- B2DMultiRange::B2DMultiRange( const B2DRange& rRange ) :
-- mpImpl( ImplB2DMultiRange( rRange ) )
-- {
-- }
--
-- B2DMultiRange::~B2DMultiRange()
-- {
-- // otherwise, ImplB2DMultiRange would be an incomplete type
-- }
--
-- B2DMultiRange::B2DMultiRange( const B2DMultiRange& rSrc ) :
-- mpImpl( rSrc.mpImpl )
-- {
-- }
--
-- B2DMultiRange& B2DMultiRange::operator=( const B2DMultiRange& rSrc )
-- {
-- mpImpl = rSrc.mpImpl;
-- return *this;
-- }
--
-- bool B2DMultiRange::isEmpty() const
-- {
-- return mpImpl->isEmpty();
-- }
--
-- void B2DMultiRange::reset()
-- {
-- mpImpl->reset();
-- }
--
-- bool B2DMultiRange::isInside( const B2DTuple& rTuple ) const
-- {
-- return mpImpl->isInside( rTuple );
-- }
--
-- bool B2DMultiRange::isInside( const B2DRange& rRange ) const
-- {
-- return mpImpl->isInside( rRange );
-- }
--
-- bool B2DMultiRange::overlaps( const B2DRange& rRange ) const
-- {
-- return mpImpl->overlaps( rRange );
-- }
--
-- void B2DMultiRange::addRange( const B2DRange& rRange )
-- {
-- mpImpl->addRange( rRange );
-- }
--
-- B2DRange B2DMultiRange::getBounds() const
-- {
-- return mpImpl->getBounds();
-- }
--
-- B2DPolyPolygon B2DMultiRange::getPolyPolygon() const
-- {
-- return mpImpl->getPolyPolygon();
-- }
--
--} // end of namespace basegfx
--
--// eof
-diff --git basegfx/source/range/b2dpolyrange.cxx basegfx/source/range/b2dpolyrange.cxx
-new file mode 100644
-index 0000000..ae94f14
---- /dev/null
-+++ basegfx/source/range/b2dpolyrange.cxx
-@@ -0,0 +1,371 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: b2dmultirange.cxx,v $
-+ * $Revision: 1.8 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org 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 version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org. If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+// MARKER(update_precomp.py): autogen include statement, do not remove
-+#include "precompiled_basegfx.hxx"
-+#include <basegfx/range/b2dpolyrange.hxx>
-+
-+#include <basegfx/range/b2drange.hxx>
-+#include <basegfx/range/b2drangeclipper.hxx>
-+#include <basegfx/tuple/b2dtuple.hxx>
-+#include <basegfx/polygon/b2dpolypolygon.hxx>
-+
-+#include <boost/bind.hpp>
-+#include <boost/tuple/tuple.hpp>
-+#include <algorithm>
-+#include <vector>
-+
-+static basegfx::B2VectorOrientation flipOrientation(
-+ basegfx::B2VectorOrientation eOrient)
-+{
-+ return eOrient == basegfx::ORIENTATION_POSITIVE ?
-+ basegfx::ORIENTATION_NEGATIVE : basegfx::ORIENTATION_POSITIVE;
-+}
-+
-+namespace basegfx
-+{
-+ class ImplB2DPolyRange
-+ {
-+ void updateBounds()
-+ {
-+ maBounds.reset();
-+ std::for_each(maRanges.begin(),
-+ maRanges.end(),
-+ boost::bind(
-+ (void (B2DRange::*)(const B2DRange&))(
-+ &B2DRange::expand),
-+ boost::ref(maBounds),
-+ _1));
-+ }
-+
-+ public:
-+ ImplB2DPolyRange() :
-+ maBounds(),
-+ maRanges(),
-+ maOrient()
-+ {}
-+
-+ explicit ImplB2DPolyRange( const B2DPolyRange::ElementType& rElem ) :
-+ maBounds( boost::get<0>(rElem) ),
-+ maRanges( 1, boost::get<0>(rElem) ),
-+ maOrient( 1, boost::get<1>(rElem) )
-+ {}
-+
-+ explicit ImplB2DPolyRange( const B2DRange& rRange, B2VectorOrientation eOrient ) :
-+ maBounds( rRange ),
-+ maRanges( 1, rRange ),
-+ maOrient( 1, eOrient )
-+ {}
-+
-+ bool operator==(const ImplB2DPolyRange& rRHS) const
-+ {
-+ return maRanges == rRHS.maRanges && maOrient == rRHS.maOrient;
-+ }
-+
-+ sal_uInt32 count() const
-+ {
-+ return maRanges.size();
-+ }
-+
-+ B2DPolyRange::ElementType getElement(sal_uInt32 nIndex) const
-+ {
-+ return boost::make_tuple(maRanges[nIndex],
-+ maOrient[nIndex]);
-+ }
-+
-+ void setElement(sal_uInt32 nIndex, const B2DPolyRange::ElementType& rElement )
-+ {
-+ maRanges[nIndex] = boost::get<0>(rElement);
-+ maOrient[nIndex] = boost::get<1>(rElement);
-+ updateBounds();
-+ }
-+
-+ void setElement(sal_uInt32 nIndex, const B2DRange& rRange, B2VectorOrientation eOrient )
-+ {
-+ maRanges[nIndex] = rRange;
-+ maOrient[nIndex] = eOrient;
-+ updateBounds();
-+ }
-+
-+ void insertElement(sal_uInt32 nIndex, const B2DPolyRange::ElementType& rElement, sal_uInt32 nCount)
-+ {
-+ maRanges.insert(maRanges.begin()+nIndex, nCount, boost::get<0>(rElement));
-+ maOrient.insert(maOrient.begin()+nIndex, nCount, boost::get<1>(rElement));
-+ maBounds.expand(boost::get<0>(rElement));
-+ }
-+
-+ void insertElement(sal_uInt32 nIndex, const B2DRange& rRange, B2VectorOrientation eOrient, sal_uInt32 nCount)
-+ {
-+ maRanges.insert(maRanges.begin()+nIndex, nCount, rRange);
-+ maOrient.insert(maOrient.begin()+nIndex, nCount, eOrient);
-+ maBounds.expand(rRange);
-+ }
-+
-+ void appendElement(const B2DPolyRange::ElementType& rElement, sal_uInt32 nCount)
-+ {
-+ maRanges.insert(maRanges.end(), nCount, boost::get<0>(rElement));
-+ maOrient.insert(maOrient.end(), nCount, boost::get<1>(rElement));
-+ maBounds.expand(boost::get<0>(rElement));
-+ }
-+
-+ void appendElement(const B2DRange& rRange, B2VectorOrientation eOrient, sal_uInt32 nCount)
-+ {
-+ maRanges.insert(maRanges.end(), nCount, rRange);
-+ maOrient.insert(maOrient.end(), nCount, eOrient);
-+ maBounds.expand(rRange);
-+ }
-+
-+ void insertPolyRange(sal_uInt32 nIndex, const ImplB2DPolyRange& rPolyRange)
-+ {
-+ maRanges.insert(maRanges.begin()+nIndex, rPolyRange.maRanges.begin(), rPolyRange.maRanges.end());
-+ maOrient.insert(maOrient.begin()+nIndex, rPolyRange.maOrient.begin(), rPolyRange.maOrient.end());
-+ updateBounds();
-+ }
-+
-+ void appendPolyRange(const ImplB2DPolyRange& rPolyRange)
-+ {
-+ maRanges.insert(maRanges.end(),
-+ rPolyRange.maRanges.begin(),
-+ rPolyRange.maRanges.end());
-+ maOrient.insert(maOrient.end(),
-+ rPolyRange.maOrient.begin(),
-+ rPolyRange.maOrient.end());
-+ updateBounds();
-+ }
-+
-+ void remove(sal_uInt32 nIndex, sal_uInt32 nCount)
-+ {
-+ maRanges.erase(maRanges.begin()+nIndex,maRanges.begin()+nIndex+nCount);
-+ maOrient.erase(maOrient.begin()+nIndex,maOrient.begin()+nIndex+nCount);
-+ updateBounds();
-+ }
-+
-+ void clear()
-+ {
-+ std::vector<B2DRange> aTmpRanges;
-+ std::vector<B2VectorOrientation> aTmpOrient;
-+
-+ maRanges.swap(aTmpRanges);
-+ maOrient.swap(aTmpOrient);
-+
-+ maBounds.reset();
-+ }
-+
-+ void flip()
-+ {
-+ std::for_each(maOrient.begin(),
-+ maOrient.end(),
-+ boost::bind(
-+ &flipOrientation,
-+ _1));
-+ }
-+
-+ B2DRange getBounds() const
-+ {
-+ return maBounds;
-+ }
-+
-+ template< typename ValueType > bool isInside( const ValueType& rValue ) const
-+ {
-+ if( !maBounds.isInside( rValue ) )
-+ return false;
-+
-+ // cannot use boost::bind here, since isInside is overloaded.
-+ // It is currently not possible to resolve the overload
-+ // by considering one of the other template arguments.
-+ std::vector<B2DRange>::const_iterator aCurr( maRanges.begin() );
-+ const std::vector<B2DRange>::const_iterator aEnd ( maRanges.end() );
-+ while( aCurr != aEnd )
-+ if( aCurr->isInside( rValue ) )
-+ return true;
-+
-+ return false;
-+ }
-+
-+ bool overlaps( const B2DRange& rRange ) const
-+ {
-+ if( !maBounds.overlaps( rRange ) )
-+ return false;
-+
-+ const std::vector<B2DRange>::const_iterator aEnd( maRanges.end() );
-+ return std::find_if( maRanges.begin(),
-+ aEnd,
-+ boost::bind<bool>( boost::mem_fn( &B2DRange::overlaps ),
-+ _1,
-+ boost::cref(rRange) ) ) != aEnd;
-+ }
-+
-+ B2DPolyPolygon solveCrossovers() const
-+ {
-+ return tools::solveCrossovers(maRanges,maOrient);
-+ }
-+
-+ private:
-+ B2DRange maBounds;
-+ std::vector<B2DRange> maRanges;
-+ std::vector<B2VectorOrientation> maOrient;
-+ };
-+
-+ B2DPolyRange::B2DPolyRange() :
-+ mpImpl()
-+ {}
-+
-+ B2DPolyRange::~B2DPolyRange()
-+ {}
-+
-+ B2DPolyRange::B2DPolyRange( const ElementType& rElem ) :
-+ mpImpl( ImplB2DPolyRange( rElem ) )
-+ {}
-+
-+ B2DPolyRange::B2DPolyRange( const B2DRange& rRange, B2VectorOrientation eOrient ) :
-+ mpImpl( ImplB2DPolyRange( rRange, eOrient ) )
-+ {}
-+
-+ B2DPolyRange::B2DPolyRange( const B2DPolyRange& rRange ) :
-+ mpImpl( rRange.mpImpl )
-+ {}
-+
-+ B2DPolyRange& B2DPolyRange::operator=( const B2DPolyRange& rRange )
-+ {
-+ mpImpl = rRange.mpImpl;
-+ return *this;
-+ }
-+
-+ void B2DPolyRange::makeUnique()
-+ {
-+ mpImpl.make_unique();
-+ }
-+
-+ bool B2DPolyRange::operator==(const B2DPolyRange& rRange) const
-+ {
-+ if(mpImpl.same_object(rRange.mpImpl))
-+ return true;
-+
-+ return ((*mpImpl) == (*rRange.mpImpl));
-+ }
-+
-+ bool B2DPolyRange::operator!=(const B2DPolyRange& rRange) const
-+ {
-+ return !(*this == rRange);
-+ }
-+
-+ sal_uInt32 B2DPolyRange::count() const
-+ {
-+ return mpImpl->count();
-+ }
-+
-+ B2DPolyRange::ElementType B2DPolyRange::getElement(sal_uInt32 nIndex) const
-+ {
-+ return mpImpl->getElement(nIndex);
-+ }
-+
-+ void B2DPolyRange::setElement(sal_uInt32 nIndex, const ElementType& rElement )
-+ {
-+ mpImpl->setElement(nIndex, rElement);
-+ }
-+
-+ void B2DPolyRange::setElement(sal_uInt32 nIndex, const B2DRange& rRange, B2VectorOrientation eOrient )
-+ {
-+ mpImpl->setElement(nIndex, rRange, eOrient );
-+ }
-+
-+ void B2DPolyRange::insertElement(sal_uInt32 nIndex, const ElementType& rElement, sal_uInt32 nCount)
-+ {
-+ mpImpl->insertElement(nIndex, rElement, nCount );
-+ }
-+
-+ void B2DPolyRange::insertElement(sal_uInt32 nIndex, const B2DRange& rRange, B2VectorOrientation eOrient, sal_uInt32 nCount)
-+ {
-+ mpImpl->insertElement(nIndex, rRange, eOrient, nCount );
-+ }
-+
-+ void B2DPolyRange::appendElement(const ElementType& rElement, sal_uInt32 nCount)
-+ {
-+ mpImpl->appendElement(rElement, nCount);
-+ }
-+
-+ void B2DPolyRange::appendElement(const B2DRange& rRange, B2VectorOrientation eOrient, sal_uInt32 nCount)
-+ {
-+ mpImpl->appendElement(rRange, eOrient, nCount );
-+ }
-+
-+ void B2DPolyRange::insertPolyRange(sal_uInt32 nIndex, const B2DPolyRange& rRange)
-+ {
-+ mpImpl->insertPolyRange(nIndex, *rRange.mpImpl);
-+ }
-+
-+ void B2DPolyRange::appendPolyRange(const B2DPolyRange& rRange)
-+ {
-+ mpImpl->appendPolyRange(*rRange.mpImpl);
-+ }
-+
-+ void B2DPolyRange::remove(sal_uInt32 nIndex, sal_uInt32 nCount)
-+ {
-+ mpImpl->remove(nIndex, nCount);
-+ }
-+
-+ void B2DPolyRange::clear()
-+ {
-+ mpImpl->clear();
-+ }
-+
-+ void B2DPolyRange::flip()
-+ {
-+ mpImpl->flip();
-+ }
-+
-+ B2DRange B2DPolyRange::getBounds() const
-+ {
-+ return mpImpl->getBounds();
-+ }
-+
-+ bool B2DPolyRange::isInside( const B2DTuple& rTuple ) const
-+ {
-+ return mpImpl->isInside(rTuple);
-+ }
-+
-+ bool B2DPolyRange::isInside( const B2DRange& rRange ) const
-+ {
-+ return mpImpl->isInside(rRange);
-+ }
-+
-+ bool B2DPolyRange::overlaps( const B2DRange& rRange ) const
-+ {
-+ return mpImpl->overlaps(rRange);
-+ }
-+
-+ B2DPolyPolygon B2DPolyRange::solveCrossovers() const
-+ {
-+ return mpImpl->solveCrossovers();
-+ }
-+
-+} // end of namespace basegfx
-+
-+// eof
-diff --git basegfx/source/range/b2drangeclipper.cxx basegfx/source/range/b2drangeclipper.cxx
-new file mode 100644
-index 0000000..de5c040
---- /dev/null
-+++ basegfx/source/range/b2drangeclipper.cxx
-@@ -0,0 +1,950 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: b2dmultirange.cxx,v $
-+ * $Revision: 1.8 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org 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 version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org. If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+// MARKER(update_precomp.py): autogen include statement, do not remove
-+#include "precompiled_basegfx.hxx"
-+
-+#include <rtl/math.hxx>
-+
-+#include <basegfx/tuple/b2dtuple.hxx>
-+#include <basegfx/range/b2drange.hxx>
-+#include <basegfx/range/b2dpolyrange.hxx>
-+#include <basegfx/polygon/b2dpolypolygon.hxx>
-+#include <basegfx/polygon/b2dpolygontools.hxx>
-+#include <basegfx/polygon/b2dpolypolygontools.hxx>
-+
-+#include <o3tl/vector_pool.hxx>
-+#include <boost/bind.hpp>
-+#include <boost/utility.hpp>
-+
-+#include <algorithm>
-+#include <deque>
-+#include <list>
-+
-+
-+namespace basegfx
-+{
-+ namespace
-+ {
-+ // Generating a poly-polygon from a bunch of rectangles
-+ //
-+ // Helper functionality for sweep-line algorithm
-+ // ====================================================
-+
-+ typedef std::vector<B2DRange> VectorOfRanges;
-+
-+ class ImplPolygon;
-+ typedef o3tl::vector_pool<ImplPolygon> VectorOfPolygons;
-+
-+
-+ /** This class represents an active edge
-+
-+ As the sweep line traverses across the overall area,
-+ rectangle edges parallel to it generate events, and
-+ rectangle edges orthogonal to it generate active
-+ edges. This class represents the latter.
-+ */
-+ class ActiveEdge
-+ {
-+ public:
-+ /** The two possible active rectangle edges differ by one
-+ coordinate value - the upper edge has the lower, the
-+ lower edge the higher value.
-+ */
-+ enum EdgeType {
-+ /// edge with lower coordinate value
-+ UPPER=0,
-+ /// edge with higher coordinate value
-+ LOWER=1
-+ };
-+
-+ enum EdgeDirection {
-+ /// edge proceeds to the left
-+ PROCEED_LEFT=0,
-+ /// edge proceeds to the right
-+ PROCEED_RIGHT=1
-+ };
-+
-+ /** Create active edge
-+
-+ @param rRect
-+ Rectangle this edge is part of
-+
-+ @param fInvariantCoord
-+ The invariant ccordinate value of this edge
-+
-+ @param eEdgeType
-+ Is fInvariantCoord the lower or the higher value, for
-+ this rect?
-+ */
... etc. - the rest is truncated
More information about the ooo-build-commit
mailing list