[Libreoffice-commits] core.git: Branch 'feature/pivot-table-result-tree' - 2886 commits - accessibility/inc accessibility/Library_acc.mk accessibility/prj accessibility/source afms/prj android/abs-lib android/CustomTarget_android_desktop.mk android/CustomTarget_docloader.mk android/CustomTarget_lo4android.mk android/CustomTarget_sdremote.mk android/experimental android/prj android/qa android/sdremote animations/prj animations/source apache-commons/ExternalProject_apache_commons_httpclient.mk apache-commons/Package_apache_commons_codec.mk apache-commons/Package_apache_commons_lang.mk apache-commons/patches apache-commons/prj apache-commons/UnpackedTarball_apache_commons_httpclient.mk apple_remote/inc apple_remote/prj apple_remote/source autodoc/inc autodoc/prj autogen.sh avmedia/inc avmedia/Library_avmedia.mk avmedia/prj avmedia/source basctl/Library_basctl.mk basctl/Module_basctl.mk basctl/Package_uiconfig.mk basctl/prj basctl/source basctl/UI_basicide.mk basctl/uiconfig basctl/UIConfig_b asicide.mk basebmp/CppunitTest_basebmp.mk basebmp/inc basebmp/prj basebmp/source basebmp/test basegfx/inc basegfx/prj basegfx/source basegfx/test basic/CppunitTest_basic_coverage.mk basic/CppunitTest_basic_scanner.mk basic/CppunitTest_basic_vba.mk basic/inc basic/Library_sb.mk basic/prj basic/qa basic/source bean/com bean/Library_officebean.mk bean/native bean/prj bean/qa beanshell/prj binaryurp/Library_binaryurp.mk binaryurp/prj binaryurp/source bin/distro-install-sdk bin/get-bugzilla-attachments-by-mimetype bin/lint-ui.py bin/module-deps.pl bin/update_pch.sh bluez_bluetooth/prj boost/boost.4874.patch boost/boost.6139.clang.patch boost/boost.6142.warnings.patch.1 boost/boost.wundef.patch.1 boost/prj boost/UnpackedTarball_boost.mk bridges/inc bridges/Library_cc50_solaris_intel.mk bridges/Library_cc50_solaris_sparc.mk bridges/Library_cc5_solaris_sparc64.mk bridges/Library_cpp_uno.mk bridges/Library_gcc3_aix_powerpc.mk bridges/Library_gcc3_ios_arm.mk bridges/Library_gcc3_linux _alpha.mk bridges/Library_gcc3_linux_arm.mk bridges/Library_gcc3_linux_hppa.mk bridges/Library_gcc3_linux_ia64.mk bridges/Library_gcc3_linux_intel.mk bridges/Library_gcc3_linux_m68k.mk bridges/Library_gcc3_linux_mips.mk bridges/Library_gcc3_linux_powerpc64.mk bridges/Library_gcc3_linux_powerpc.mk bridges/Library_gcc3_linux_s390.mk bridges/Library_gcc3_linux_s390x.mk bridges/Library_gcc3_linux_sparc.mk bridges/Library_gcc3_linux_x86-64.mk bridges/Library_gcc3_macosx_intel.mk bridges/Library_gcc3_macosx_powerpc.mk bridges/Library_gcc3_macosx_x86-64.mk bridges/Library_gcc3_solaris_intel.mk bridges/Library_gcc3_solaris_sparc.mk bridges/Library_mingw_intel.mk bridges/Library_msvc_win32_intel.mk bridges/Library_msvc_win32_x86-64.mk bridges/Module_bridges.mk bridges/prj bridges/source bridges/test cairo/prj canvas/inc canvas/Library_cairocanvas.mk canvas/Library_directx9canvas.mk canvas/Library_gdipluscanvas.mk canvas/Library_vclcanvas.mk canvas/prj canvas/source chart2/CppunitTest _chart2_importtest.mk chart2/Library_chartcontroller.mk chart2/Library_chartcore.mk chart2/Module_chart2.mk chart2/Package_uiconfig.mk chart2/prj chart2/qa chart2/source chart2/uiconfig chart2/UIConfig_chart2.mk chart2/workbench cli_ure/prj cli_ure/source clucene/Library_clucene.mk clucene/patches clucene/prj clucene/UnpackedTarball_clucene.mk codemaker/Executable_cppumaker.mk codemaker/Executable_javamaker.mk codemaker/inc codemaker/Module_codemaker.mk codemaker/Package_inc.mk codemaker/prj codemaker/README codemaker/source codemaker/StaticLibrary_codemaker_cpp.mk codemaker/StaticLibrary_codemaker_java.mk codemaker/StaticLibrary_codemaker.mk comphelper/inc comphelper/Library_comphelper.mk comphelper/Module_comphelper.mk comphelper/Package_inc.mk comphelper/prj comphelper/qa comphelper/README comphelper/source compilerplugins/clang compilerplugins/Makefile-clang.mk config_host/config_features.h.in config_host/config_global.h.in config_host/config_graphite.h.in config_host/co nfig_kde4.h.in config_host/config_mingw.h.in config_host/config_oox.h.in config_host/config_telepathy.h.in config_host/config_vclplug.h.in config_host/config_version.h.in config_host.mk.in config_host/README configmgr/Library_configmgr.mk configmgr/prj configmgr/qa configmgr/source configure.ac connectivity/CppunitTest_connectivity_ado.mk connectivity/CppunitTest_connectivity_commontools.mk connectivity/CppunitTest_connectivity_mork.mk connectivity/inc connectivity/Library_dbtools.mk connectivity/Library_flat.mk connectivity/Library_hsqldb.mk connectivity/Library_postgresql-sdbc-impl.mk connectivity/Library_tdeab1.mk connectivity/Library_tdeabdrv1.mk connectivity/Module_connectivity.mk connectivity/prj connectivity/source connectivity/workben cosv/inc cosv/prj cppcanvas/inc cppcanvas/Library_cppcanvas.mk cppcanvas/prj cppcanvas/source cppu/CppunitTest_cppu_checkapi.mk cppu/CustomTarget_cppu_allheaders.mk cppuhelper/CppunitTest_cppuhelper_checkapi.mk cppuhelper/CustomTarget_c ppuhelper_allheaders.mk cppuhelper/inc cppuhelper/InternalUnoApi_cppuhelper.mk cppuhelper/Module_cppuhelper.mk cppuhelper/Package_cppuhelper_odk_headers.mk cppuhelper/prj cppuhelper/qa cppuhelper/source cppuhelper/test cppuhelper/ZipPackage_cppuhelper_odk_headers.mk cppu/inc cppu/InternalUnoApi_cppu.mk cppu/Module_cppu.mk cppunit/ExternalPackage_cppunit.mk cppunit/ExternalProject_cppunit.mk cppunit/Module_cppunit.mk cppunit/prj cppunit/UnpackedTarball_cppunit.mk cppunit/wundef.patch cppu/Package_cppu_odk_headers.mk cppu/prj cppu/qa cppu/source cpputools/prj cpputools/source cppu/ZipPackage_cppu_odk_headers.mk crashrep/CustomTarget_crashrep_res.mk crashrep/prj crashrep/source ct2n/ExternalPackage_ct2n.mk ct2n/Module_ct2n.mk ct2n/prj ct2n/Zip_ct2n.mk cui/AllLangResTarget_cui.mk cui/Library_cui.mk cui/Module_cui.mk cui/prj cui/source cui/uiconfig cui/UIConfig_cui.mk cui/UI_cui.mk curl/curl-7.26.0_win.patch curl/ExternalProject_curl.mk curl/prj dbaccess/CppunitTest_dbaccess_macr os_test.mk dbaccess/inc dbaccess/Library_dba.mk dbaccess/Library_dbu.mk dbaccess/Module_dbaccess.mk dbaccess/Package_uiconfig.mk dbaccess/prj dbaccess/qa dbaccess/source dbaccess/uiconfig dbaccess/UIConfig_dbaccess.mk dbaccess/UIConfig_dbapp.mk dbaccess/UIConfig_dbbrowser.mk dbaccess/UIConfig_dbquery.mk dbaccess/UIConfig_dbrelation.mk dbaccess/UIConfig_dbtable.mk dbaccess/UIConfig_dbtdata.mk dbaccess/UI_dbaccess.mk desktop/Executable_unopkg.com.mk desktop/Executable_unopkg.mk desktop/inc desktop/Library_deploymentgui.mk desktop/Library_deploymentmisc.mk desktop/Library_deployment.mk desktop/Library_libreoffice.mk desktop/Library_migrationoo2.mk desktop/Library_sofficeapp.mk desktop/Library_unopkgapp.mk desktop/Module_desktop.mk desktop/Pagein_common.mk desktop/prj desktop/Pyuno_passive_python.mk desktop/qa desktop/source desktop/StaticLibrary_winextendloaderenv.mk desktop/test desktop/uiconfig desktop/UIConfig_deployment.mk desktop/UI_deployment.mk desktop/unx desktop/win32 dictionaries distro-configs/LibreOfficeAndroid.conf distro-configs/LibreOfficeAndroidX86.conf distro-configs/LibreOfficeiOS.conf distro-configs/LibreOfficeLinux.conf distro-configs/LibreOfficeMacOSX.conf distro-configs/LibreOfficeOpenBSD.conf distro-configs/LibreOfficeWin32.conf distro-configs/LibreOfficeWin64.conf distro-configs/OxygenOfficeLinux.conf distro-configs/OxygenOfficeWin32.conf download.lst drawinglayer/drawinglayer.component drawinglayer/inc drawinglayer/Library_drawinglayer.mk drawinglayer/Package_inc.mk drawinglayer/prj drawinglayer/source dtrans/prj dtrans/source dtrans/StaticLibrary_dtobj.mk dtrans/test editeng/CppunitTest_editeng_borderline.mk editeng/CppunitTest_editeng_core.mk editeng/CppunitTest_editeng_lookuptree.mk editeng/inc editeng/Library_editeng.mk editeng/prj editeng/qa editeng/source embeddedobj/prj embeddedobj/source embeddedobj/test embedserv/Library_emser.mk embedserv/Library_inprocserv.mk embedserv/prj embedserv/source epm/ExternalProject_ep m.mk epm/prj eventattacher/prj eventattacher/source expat/prj expat/StaticLibrary_expat.mk extensions/Library_abp.mk extensions/Library_bib.mk extensions/Library_dbp.mk extensions/Library_oleautobridge.mk extensions/Library_pcr.mk extensions/Library_res.mk extensions/Library_scn.mk extensions/Library_so_activex.mk extensions/Library_so_activex_x64.mk extensions/Library_updatecheckui.mk extensions/Module_extensions.mk extensions/Package_uiconfig.mk extensions/prj extensions/qa extensions/source extensions/StaticLibrary_plugcon.mk extensions/test extensions/UIConfig_sbibliography.mk extensions/workben external/Module_external.mk external/Package_mingw_dlls.mk external/Package_mingw_gccdlls.mk external/Package_msvc_dlls_debug.mk external/prj extras/AllLangPackage_accessoriessamplesadvertisement.mk extras/AllLangPackage_accessoriessamplesdocumentation.mk extras/AllLangPackage_accessoriessamples.mk extras/AllLangPackage_accessoriessamplesnonfreeadvertisement.mk extras/AllLangPack age_accessoriessamplesnonfreedocumentation.mk extras/AllLangPackage_accessoriessamplesnonfree.mk extras/AllLangPackage_accessoriestemplateseducate.mk extras/AllLangPackage_accessoriestemplatesfinance.mk extras/AllLangPackage_accessoriestemplatesforms.mk extras/AllLangPackage_accessoriestemplateslabels.mk extras/AllLangPackage_accessoriestemplateslayout.mk extras/AllLangPackage_accessoriestemplatesmisc.mk extras/AllLangPackage_accessoriestemplates.mk extras/AllLangPackage_accessoriestemplatesnonfreeeducate.mk extras/AllLangPackage_accessoriestemplatesnonfreefinance.mk extras/AllLangPackage_accessoriestemplatesnonfreeforms.mk extras/AllLangPackage_accessoriestemplatesnonfreelabels.mk extras/AllLangPackage_accessoriestemplatesnonfreelayout.mk extras/AllLangPackage_accessoriestemplatesnonfreemisc.mk extras/AllLangPackage_accessoriestemplatesnonfree.mk extras/AllLangPackage_accessoriestemplatesnonfreeofficorr.mk extras/AllLangPackage_accessoriestemplatesnonfreeoffimisc.mk extras/ AllLangPackage_accessoriestemplatesnonfreepersonal.mk extras/AllLangPackage_accessoriestemplatesnonfreepresent.mk extras/AllLangPackage_accessoriestemplatesofficorr.mk extras/AllLangPackage_accessoriestemplatesoffimisc.mk extras/AllLangPackage_accessoriestemplatespersonal.mk extras/AllLangPackage_accessoriestemplatespresent.mk extras/AllLangPackage_autotextshare.mk extras/AllLangZip_accessoriessamplesadvertisement.mk extras/AllLangZip_accessoriessamplesdocumentation.mk extras/AllLangZip_accessoriessamples.mk extras/AllLangZip_accessoriessamplesnonfreeadvertisement.mk extras/AllLangZip_accessoriessamplesnonfreedocumentation.mk extras/AllLangZip_accessoriessamplesnonfree.mk extras/AllLangZip_accessoriestemplateseducate.mk extras/AllLangZip_accessoriestemplatesfinance.mk extras/AllLangZip_accessoriestemplatesforms.mk extras/AllLangZip_accessoriestemplateslabels.mk extras/AllLangZip_accessoriestemplateslayout.mk extras/AllLangZip_accessoriestemplatesmisc.mk extras/AllLangZip_acc essoriestemplates.mk extras/AllLangZip_accessoriestemplatesnonfreeeducate.mk extras/AllLangZip_accessoriestemplatesnonfreefinance.mk extras/AllLangZip_accessoriestemplatesnonfreeforms.mk extras/AllLangZip_accessoriestemplatesnonfreelabels.mk extras/AllLangZip_accessoriestemplatesnonfreelayout.mk extras/AllLangZip_accessoriestemplatesnonfreemisc.mk extras/AllLangZip_accessoriestemplatesnonfree.mk extras/AllLangZip_accessoriestemplatesnonfreeofficorr.mk extras/AllLangZip_accessoriestemplatesnonfreeoffimisc.mk extras/AllLangZip_accessoriestemplatesnonfreepersonal.mk extras/AllLangZip_accessoriestemplatesnonfreepresent.mk extras/AllLangZip_accessoriestemplatesofficorr.mk extras/AllLangZip_accessoriestemplatesoffimisc.mk extras/AllLangZip_accessoriestemplatespersonal.mk extras/AllLangZip_accessoriestemplatespresent.mk extras/AllLangZip_autotextshare.mk extras/CustomTarget_autocorr.mk extras/CustomTarget_glade.mk extras/ExternalPackage_accessoriesgallery.mk extras/ExternalPackage_ extra_fonts.mk extras/Module_extras.mk extras/Package_autocorr.mk extras/Package_autotextuser.mk extras/Package_cfgsrvbitmapunx.mk extras/Package_cfgsrvnolang.mk extras/Package_cfgusr.mk extras/Package_databasebiblio.mk extras/Package_database.mk extras/Package_fonts.mk extras/Package_gallbullets.mk extras/Package_gallhtmlexpo.mk extras/Package_gallroot.mk extras/Package_gallsound.mk extras/Package_gallsounds.mk extras/Package_gallsystem.mk extras/Package_gallwwwback.mk extras/Package_gallwwwgraf.mk extras/Package_glade.mk extras/Package_palettes.mk extras/Package_tpllayoutimpr.mk extras/Package_tplwizagenda.mk extras/Package_tplwizbitmap.mk extras/Package_tplwizdesktop.mk extras/Package_tplwizfax.mk extras/Package_tplwizletter.mk extras/Package_tplwizreport.mk extras/Package_tplwizstyles.mk extras/prj extras/source extras/unx extras/Zip_accessoriesgallery.mk extras/Zip_autocorr.mk extras/Zip_autotextuser.mk extras/Zip_cfgsrvbitmapunx.mk extras/Zip_cfgsrvnolang.mk extras/Zip _cfgusr.mk extras/Zip_databasebiblio.mk extras/Zip_database.mk extras/Zip_gallbullets.mk extras/Zip_gallhtmlexpo.mk extras/Zip_gallroot.mk extras/Zip_gallsound.mk extras/Zip_gallsounds.mk extras/Zip_gallsystem.mk extras/Zip_gallwwwback.mk extras/Zip_gallwwwgraf.mk extras/Zip_palettes.mk extras/Zip_tpllayoutimpr.mk extras/Zip_tplwizagenda.mk extras/Zip_tplwizbitmap.mk extras/Zip_tplwizdesktop.mk extras/Zip_tplwizfax.mk extras/Zip_tplwizletter.mk extras/Zip_tplwizreport.mk extras/Zip_tplwizstyles.mk fileaccess/prj fileaccess/source filter/Configuration_filter.mk filter/CustomTarget_svg.mk filter/inc filter/Library_eps.mk filter/Library_filterconfig.mk filter/Library_flash.mk filter/Library_graphicfilter.mk filter/Library_pdffilter.mk filter/Library_placeware.mk filter/Library_svgfilter.mk filter/Library_t602filter.mk filter/Library_xsltdlg.mk filter/Module_filter.mk filter/prj filter/qa filter/README filter/source filter/uiconfig filter/UIConfig_xsltdlg.mk filter/UI_xsltdlg.mk firefoxos/sdremote fontconfig/prj forms/Library_frm.mk forms/Module_forms.mk forms/prj forms/source formula/inc formula/Library_for.mk formula/Library_forui.mk formula/prj formula/source fpicker/Library_fps_aqua.mk fpicker/Library_fps.mk fpicker/Library_fps_office.mk fpicker/prj fpicker/source fpicker/test framework/inc framework/Library_fwe.mk framework/Library_fwi.mk framework/Library_fwk.mk framework/Library_fwl.mk framework/Module_framework.mk framework/Package_uiconfig.mk framework/prj framework/source framework/uiconfig framework/UIConfig_startmodule.mk freetype/prj .gitignore graphite/graphite2.patch graphite/prj graphite/StaticLibrary_graphite.mk helpcompiler/Executable_helpindexer.mk helpcompiler/Executable_helplinker.mk helpcompiler/inc helpcompiler/Library_helplinker.mk helpcompiler/prj helpcompiler/source helpcontent2 hsqldb/prj hunspell/hunspell.rhbz918938.patch hunspell/hunspell-wundef.patch.1 hunspell/prj hunspell/UnpackedTarball_hunspell.mk hwpfilter/prj hwp filter/qa hwpfilter/source hyphen/prj i18nlangtag/CppunitTest_i18nlangtag_test_languagetag.mk i18nlangtag/inc i18nlangtag/Library_i18nlangtag.mk i18nlangtag/Makefile i18nlangtag/Module_i18nlangtag.mk i18nlangtag/Package_inc.mk i18nlangtag/qa i18nlangtag/README i18nlangtag/source i18npool/CppunitTest_i18npool_test_languagetag.mk i18npool/CustomTarget_localedata.mk i18npool/inc i18npool/Library_i18nisolang1.mk i18npool/Library_i18npool.mk i18npool/Library_i18nsearch.mk i18npool/Module_i18npool.mk i18npool/Package_inc.mk i18npool/prj i18npool/qa i18npool/source i18nutil/inc i18nutil/prj i18nutil/source icon-themes/crystal icon-themes/galaxy icon-themes/hicontrast icon-themes/human icon-themes/industrial icon-themes/oxygen icon-themes/tango icu/ExternalPackage_icu.mk icu/ExternalProject_icu.mk icu/icu4c.9313.cygwin.patch icu/icu4c.9737.CVE-2013-0900_changesets_32865_32908.patch icu/icu4c-aix.patch icu/icu4c-android.patch icu/icu4c-bsd.patch icu/icu4c-build.patch icu/icu4c-CVE-20 13-0900_umutex.patch icu/icu4c-solarisgcc.patch icu/icu4c-warnings.patch icu/prj icu/UnpackedTarball_icu.mk idlc/CustomTarget_parser_test.mk idlc/Executable_idlc.mk idlc/inc idlc/Module_idlc.mk idlc/prj idlc/source idlc/test idl/inc idl/Module_idl.mk idl/prj idl/README idl/source include/postmac.h include/postwin.h include/postx.h include/premac.h include/prewin.h include/prex.h include/shlinfo.rc include/version.hrc include/wntgcci instsetoo_native/CustomTarget_install.mk instsetoo_native/util io/prj ios/CustomTarget_LibreOffice_app.mk ios/CustomTarget_Viewer_app.mk ios/Executable_LibreOffice.mk ios/Executable_Viewer.mk ios/experimental ios/Module_ios.mk io/source ios/prj ios/qa io/test javaunohelper/com javaunohelper/prj javaunohelper/source javaunohelper/test jfreereport/Module_jfreereport.mk jfreereport/Package_jfreereport_version.mk jfreereport/prj jpeg/patches jpeg/prj jpeg/UnpackedTarball_jpeg.mk jurt/com jurt/CustomTarget_test_urp.mk jurt/InternalUnoApi_test_urp.mk j urt/prj jvmaccess/inc jvmaccess/Library_jvmaccess.mk jvmaccess/Module_jvmaccess.mk jvmaccess/prj jvmaccess/source jvmaccess/util jvmaccess/workbench jvmfwk/distributions jvmfwk/inc jvmfwk/Library_jvmfwk.mk jvmfwk/Module_jvmfwk.mk jvmfwk/plugins jvmfwk/prj jvmfwk/source l10ntools/Executable_cfgex.mk l10ntools/Executable_helpex.mk l10ntools/Executable_localize.mk l10ntools/Executable_propex.mk l10ntools/Executable_stringex.mk l10ntools/Executable_transex3.mk l10ntools/Executable_treex.mk l10ntools/Executable_uiex.mk l10ntools/Executable_ulfex.mk l10ntools/inc l10ntools/Module_l10ntools.mk l10ntools/prj l10ntools/source l10ntools/StaticLibrary_transex.mk languagetool/prj lcms2/ExternalPackage_lcms2.mk lcms2/ExternalProject_lcms2.mk lcms2/prj libcdr/ExternalPackage_libcdr.mk libcdr/ExternalProject_libcdr.mk libcdr/libcdr-0.0.11-encoding.patch libcdr/prj libcdr/UnpackedTarball_cdr.mk libcmis/prj libexttextcat/prj libexttextcat/unkown.patch.1 libexttextcat/UnpackedTarball_exttextc at.mk liblangtag/ar-lib liblangtag/ExternalPackage_langtag.mk liblangtag/ExternalProject_langtag.mk liblangtag/liblangtag-0.4.0-ar-lib.patch liblangtag/liblangtag-0.4.0-cross.patch liblangtag/liblangtag-0.4.0-msc-configure.patch liblangtag/Module_liblangtag.mk liblangtag/prj liblangtag/StaticLibrary_langtag.mk liblangtag/UnpackedTarball_langtag.mk libmariadb/configs libmariadb/ExternalPackage_libmariadb.mk libmariadb/mariadb-msvc.patch.1 libmariadb/mariadb-static-inline.patch libmariadb/mariadb-trunk-40.patch libmariadb/my_config.h libmariadb/mysql_version.h libmariadb/prj libmariadb/StaticLibrary_mariadb.mk libmariadb/UnpackedTarball_mariadb.mk libmspub/ExternalPackage_libmspub.mk libmspub/ExternalProject_libmspub.mk libmspub/prj libmwaw/ExternalPackage_libmwaw.mk libmwaw/ExternalProject_libmwaw.mk libmwaw/libmwaw-0.1.7-autotools.patch libmwaw/libmwaw-0.1.7-misc.patch libmwaw/Makefile libmwaw/Module_libmwaw.mk libmwaw/README libmwaw/UnpackedTarball_mwaw.mk liborcus/External Package_liborcus.mk liborcus/ExternalProject_liborcus.mk liborcus/liborcus_0.1.0-boost_disable_auto_lib.patch liborcus/liborcus_0.1.0-boost-include.patch.1 liborcus/liborcus_0.1.0-dllimport.patch liborcus/Module_liborcus.mk liborcus/Package_liborcus.mk liborcus/prj liborcus/UnpackedTarball_orcus.mk liborcus/vsprojects libpng/prj libpng/StaticLibrary_png.mk Library_merged.mk Library_urelibs.mk librelogo/CustomTarget_librelogo.mk librelogo/Module_librelogo.mk librelogo/Package_librelogo.mk librelogo/Package_librelogo_properties.mk librelogo/prj librelogo/source librelogo/Zip_librelogo.mk libvisio/ExternalPackage_libvisio.mk libvisio/ExternalProject_libvisio.mk libvisio/libvisio-0.0.25.patch libvisio/prj libvisio/UnpackedTarball_visio.mk libwpd/ExternalPackage_libwpd.mk libwpd/ExternalProject_libwpd.mk libwpd/prj libwpg/prj libwpg/StaticLibrary_wpg.mk libwps/prj libxml2/ExternalProject_xml2.mk libxml2/libxml2-android.patch libxml2/libxml2-configure.patch libxml2/prj libxmlsec/E xternalPackage_xmlsec.mk libxmlsec/ExternalProject_xmlsec.mk libxmlsec/prj libxmlsec/src libxmlsec/UnpackedTarball_xmlsec.mk libxmlsec/xmlsec1-1.2.14_old_automake.patch libxmlsec/xmlsec1-vc.patch libxslt/ExternalProject_xslt.mk libxslt/libxslt-configure.patch libxslt/prj lingucomponent/Library_hyphen.mk lingucomponent/Library_lnth.mk lingucomponent/Library_MacOSXSpell.mk lingucomponent/Library_spell.mk lingucomponent/prj lingucomponent/source lingucomponent/StaticLibrary_ulingu.mk linguistic/inc linguistic/Library_lng.mk linguistic/prj linguistic/source linguistic/workben logerrit lotuswordpro/Library_lwpft.mk lotuswordpro/prj lotuswordpro/qa lotuswordpro/source lpsolve/ExternalProject_lpsolve.mk lpsolve/lp_solve_5.5-windows.patch lpsolve/prj m4/libgcrypt.m4 m4/mingw.m4 Makefile.fetch Makefile.in MathMLDTD/prj mdds/mdds_0.7.0_unreachable_warning.patch.1 mdds/prj mdds/UnpackedTarball_mdds.mk mdds/wundef.patch Mesa/prj more_fonts/ExternalPackage_dejavu.mk more_fonts/ExternalPa ckage_gentium.mk more_fonts/ExternalPackage_liberation.mk more_fonts/ExternalPackage_liberation_narrow.mk more_fonts/ExternalPackage_libertineg.mk more_fonts/ExternalPackage_opensans.mk more_fonts/ExternalPackage_ptserif.mk more_fonts/ExternalPackage_sourcecode.mk more_fonts/ExternalPackage_sourcesans.mk more_fonts/Package_conf.mk more_fonts/prj moz/prj mysqlc/Library_mysqlc.mk mysqlcppconn/binding_config.h mysqlcppconn/binding_dynamic.h mysqlcppconn/binding_static.h mysqlcppconn/Library_mysqlcppconn.mk mysqlcppconn/patches mysqlcppconn/prj mysqlcppconn/UnpackedTarball_mysqlcppconn.mk mysqlc/prj mysqlc/source mythes/prj neon/configs neon/Library_neon.mk neon/neon.patch neon/neon_with_gnutls.patch neon/prj neon/UnpackedTarball_neon.mk nlpsolver/help nlpsolver/prj np_sdk/inc np_sdk/mozsrc np_sdk/prj nss/ExternalProject_nss.mk nss/nsinstall.py nss/nss.patch nss/prj o3tl/prj o3tl/qa odk/config odk/CustomTarget_autodoc.mk odk/CustomTarget_check.mk odk/CustomTarget_classes.mk odk/ CustomTarget_doxygen.mk odk/CustomTarget_idl.mk odk/CustomTarget_javadoc.mk odk/CustomTarget_lib.mk odk/CustomTarget_odkcommon.mk odk/CustomTarget_settings.mk odk/docs odk/examples odk/Module_odk.mk odk/pack odk/Package_examples.mk odk/prj odk/settings odk/util odk/Zip_odkcommon.mk odk/Zip_odkexamples.mk odk/Zip_uno_loader_classes.mk offapi/com offapi/prj offapi/type_reference offapi/UnoApi_offapi.mk officecfg/Configuration_officecfg.mk officecfg/CustomTarget_registry.mk officecfg/files.mk officecfg/Module_officecfg.mk officecfg/prj officecfg/registry oovbaapi/ooo oovbaapi/prj oovbaapi/UnoApi_oovbaapi.mk oox/CustomTarget_generated.mk oox/inc oox/Library_oox.mk oox/Package_inc.mk oox/prj oox/source openldap/prj openssl/ExternalProject_openssl.mk openssl/opensslwnt.patch openssl/prj package/inc package/prj package/source padmin/Library_spa.mk padmin/Module_padmin.mk padmin/prj padmin/source padmin/uiconfig padmin/UIConfig_spa.mk padmin/UI_spa.mk postgresql/ExternalPackage_post gresql.mk postgresql/ExternalProject_postgresql.mk postgresql/prj postprocess/CustomTarget_config.mk postprocess/CustomTarget_images.mk postprocess/CustomTarget_registry.mk postprocess/Module_postprocess.mk postprocess/Package_config.mk postprocess/packconfig postprocess/packimages postprocess/prj postprocess/Rdb_services.mk psprint_config/prj python3/ExternalPackage_python3.mk python3/ExternalProject_python3.mk python3/prj python3/python-3.3.0-aix.patch.1 python3/python-3.3.0-msvc-x64.patch.1 pyuno/prj pyuno/source qadevOOo/prj qadevOOo/runner qadevOOo/tests readlicense_oo/CustomTarget_readme.mk readlicense_oo/prj README.Android README.Code README.cross redland/ExternalPackage_raptor.mk redland/ExternalPackage_rasqal.mk redland/ExternalPackage_redland.mk redland/ExternalProject_raptor.mk redland/ExternalProject_rasqal.mk redland/ExternalProject_redland.mk redland/Library_raptor.mk redland/Library_rasqal.mk redland/Library_rdf.mk redland/LICENSE.txt redland/Module_redland.mk redland/prj redland/raptor redland/rasqal redland/README redland/redland redland/UnpackedTarball_raptor.mk redland/UnpackedTarball_rasqal.mk redland/UnpackedTarball_redland.mk registry/inc registry/Library_reg.mk registry/Module_registry.mk registry/Package_inc.mk registry/prj registry/source registry/test registry/tools registry/util registry/workben registry/ZipPackage_registry_odk_headers.mk remotebridges/prj remotebridges/source reportbuilder/Configuration_reportbuilder.mk reportbuilder/Extension_reportbuilder.mk reportbuilder/Jar_reportbuilder.mk reportbuilder/java reportbuilder/license reportbuilder/Module_reportbuilder.mk reportbuilder/Package_readme.mk reportbuilder/prj reportbuilder/registry reportbuilder/util reportdesign/inc reportdesign/Library_rpt.mk reportdesign/Library_rptui.mk reportdesign/Module_reportdesign.mk reportdesign/Package_uiconfig.mk reportdesign/prj reportdesign/source reportdesign/uiconfig reportdesign/UIConfig_dbreport.mk RepositoryExternal.mk RepositoryFixes.mk Repository.mk RepositoryModule_build.mk RepositoryModule_host.mk rhino/prj ridljar/com ridljar/CustomTarget_javamaker.mk ridljar/prj rsc/Executable_rsc.mk rsc/inc rsc/Module_rsc.mk rsc/prj rsc/source sal/android sal/cpprt sal/CppunitTest_sal_checkapi.mk sal/CppunitTest_sal_rtl_strings.mk sal/CppunitTest_sal_rtl_textenc.mk sal/CppunitTest_sal_rtl_uri.mk sal/CustomTarget_sal_allheaders.mk salhelper/CppunitTest_salhelper_checkapi.mk salhelper/CustomTarget_salhelper_allheaders.mk salhelper/Module_salhelper.mk salhelper/Package_salhelper_odk_headers.mk salhelper/prj salhelper/ZipPackage_salhelper_odk_headers.mk sal/inc sal/Library_uwinapi.mk sal/Module_sal.mk sal/osl sal/Package_sal_generated.mk sal/Package_sal_odk_headers.mk sal/prj sal/qa sal/rtl sal/systools sal/test sal/util sal/workben sal/ZipPackage_sal_generated.mk sal/ZipPackage_sal_odk_headers.mk sane/prj sax/inc sax/Library_expwrap.mk sax/Library_fastsax.mk sax/prj sax/qa sax/source sax/StaticLibrary_ sax_shared.mk sax/test scaddins/InternalUnoApi_scaddins.mk scaddins/Library_analysis.mk scaddins/Library_date.mk scaddins/Library_pricing.mk scaddins/prj scaddins/source sc/AllLangResTarget_sc.mk sccomp/Library_solver.mk sccomp/prj sccomp/source sc/CppunitTest_sc_annotationobj.mk sc/CppunitTest_sc_annotationshapeobj.mk sc/CppunitTest_sc_annotationsobj.mk sc/CppunitTest_sc_cellrangeobj.mk sc/CppunitTest_sc_chart_regression_test.mk sc/CppunitTest_sc_databaserangeobj.mk sc/CppunitTest_sc_datapilotfieldobj.mk sc/CppunitTest_sc_datapilottableobj.mk sc/CppunitTest_sc_editfieldobj_cell.mk sc/CppunitTest_sc_editfieldobj_header.mk sc/CppunitTest_sc_filters_test.mk sc/CppunitTest_sc_macros_test.mk sc/CppunitTest_sc_modelobj.mk sc/CppunitTest_sc_namedrangeobj.mk sc/CppunitTest_sc_namedrangesobj.mk sc/CppunitTest_sc_outlineobj.mk sc/CppunitTest_sc_rangelst_test.mk sc/CppunitTest_sc_subsequent_export_test.mk sc/CppunitTest_sc_subsequent_filters_test.mk sc/CppunitTest_sc_tableautoformatfi eld.mk sc/CppunitTest_sc_tablesheetobj.mk sc/CppunitTest_sc_tablesheetsobj.mk sc/CppunitTest_sc_ucalc.mk sc/CustomTarget_uiconfig.mk sc/inc sc/Library_scfilt.mk sc/Library_sc.mk sc/Library_scui.mk sc/Module_sc.mk scp2/AutoInstallLibs_ooo.mk scp2/AutoInstallLibs_ure.mk scp2/AutoInstallLibs_writer.mk scp2/inc scp2/InstallModule_base.mk scp2/InstallModule_ooo.mk scp2/InstallModule_python.mk scp2/InstallModule_ure.mk scp2/InstallModule_writer.mk scp2/macros scp2/Module_scp2.mk scp2/prj scp2/source sc/Package_uiconfig.mk sc/prj sc/qa scripting/Library_dlgprov.mk scripting/prj scripting/Pyuno_mailmerge.mk scripting/source scripting/workben sc/sdi sc/source sc/uiconfig sc/UIConfig_scalc.mk sc/UI_scalc.mk sc/util sc/workben sd/AllLangResTarget_sd.mk sd/CppunitTest_sd_filters_test.mk sd/CppunitTest_sd_regression_test.mk sd/CppunitTest_sd_uimpress.mk sdext/CppunitTest_pdfimport.mk sdext/Executable_pdf2xml.mk sdext/Executable_pdfunzip.mk sdext/Library_pdfimport.mk sdext/Library_present er.mk sdext/Library_PresenterScreen.mk sdext/Module_sdext.mk sdext/prj sdext/source sdext/StaticLibrary_pdfimport_s.mk sd/inc sd/Library_sdfilt.mk sd/Library_sd.mk sd/Library_sdui.mk sd/Module_sd.mk sd/Package_uiconfig.mk sd/prj sd/qa sd/README_REMOTE sd/sdi sd/source sd/uiconfig sd/UIConfig_sdraw.mk sd/UIConfig_simpress.mk sd/UI_sdraw.mk sd/UI_simpress.mk sd/workben setup_native/CustomTarget_mac.mk setup_native/Library_instooofiltmsi.mk setup_native/Library_qslnkmsi.mk setup_native/Library_reg4allmsdoc.mk setup_native/Library_regactivex.mk setup_native/Library_regpatchactivex.mk setup_native/Library_sdqsmsi.mk setup_native/Library_sellangmsi.mk setup_native/Library_shlxtmsi.mk setup_native/Library_sn_tools.mk setup_native/prj setup_native/scripts setup_native/source setup_native/StaticLibrary_quickstarter.mk setup_native/StaticLibrary_seterror.mk sfx2/AllLangResTarget_sfx2.mk sfx2/inc sfx2/Library_qstart_gtk.mk sfx2/Library_qstart.mk sfx2/Library_sfx.mk sfx2/Module_sfx2.mk sfx2/Package_inc.mk sfx2/prj sfx2/qa sfx2/sdi sfx2/source sfx2/uiconfig sfx2/UIConfig_sfx.mk sfx2/UI_sfx.mk sfx2/workben shell/CustomTarget_shlxthdl_res.mk shell/Executable_lngconvex.mk shell/inc shell/Library_ooofilt.mk shell/Library_ooofilt_x64.mk shell/Library_propertyhdl.mk shell/Library_propertyhdl_x64.mk shell/Library_recentfile.mk shell/Library_shlxthdl.mk shell/Library_shlxthdl_x64.mk shell/Module_shell.mk shell/prj shell/qa shell/source shell/StaticLibrary_shlxthandler_common.mk shell/StaticLibrary_shlxthandler_common_x64.mk shell/StaticLibrary_xmlparser.mk shell/StaticLibrary_xmlparser_x64.mk slideshow/prj slideshow/source slideshow/test smoketest/prj smoketest/smoketest.cxx solenv/bin solenv/CustomTarget_versionlist.mk solenv/Executable_gcc-wrapper.mk solenv/Executable_g++-wrapper.mk solenv/gbuild solenv/gcc-wrappers solenv/gdb solenv/inc solenv/Module_solenv.mk solenv/Package_gdb.mk solenv/Package_inc.mk solenv/prj solenv/src solenv/StaticLibrary_wrapper.mk solto ols/cpp soltools/Executable_cpp.mk soltools/Executable_makedepend.mk soltools/mkdepend soltools/Module_soltools.mk soltools/prj sot/inc sot/Library_sot.mk sot/prj sot/qa sot/source starmath/CppunitTest_starmath_qa_cppunit.mk starmath/inc starmath/Library_sm.mk starmath/Module_starmath.mk starmath/Package_uiconfig.mk starmath/prj starmath/qa starmath/source starmath/uiconfig starmath/UIConfig_smath.mk starmath/UI_smath.mk stoc/inc stoc/prj stoc/source stoc/test stoc/util store/inc store/Library_store.mk store/Module_store.mk store/Package_inc.mk store/prj store/source store/util store/workben store/ZipPackage_store_odk_headers.mk svgio/inc svgio/Library_svgio.mk svgio/prj svgio/source svl/CppunitTest_svl_qa_cppunit.mk svl/CppunitTest_svl_urihelper.mk svl/inc svl/Library_svl.mk svl/Module_svl.mk svl/prj svl/qa svl/source svl/unx svtools/AllLangResTarget_svt.mk svtools/bmpmaker svtools/Executable_bmp.mk svtools/Executable_bmpsum.mk svtools/Executable_g2g.mk svtools/Executable_l angsupport.mk svtools/inc svtools/langsupport svtools/Library_svt.mk svtools/Module_svtools.mk svtools/Package_inc.mk svtools/prj svtools/qa svtools/source svtools/uiconfig svtools/UIConfig_svt.mk svtools/UI_svt.mk svx/inc svx/Library_svxcore.mk svx/Library_svx.mk svx/Library_textconversiondlgs.mk svx/Module_svx.mk svx/Package_inc.mk svx/prj svx/sdi svx/source svx/uiconfig svx/UIConfig_svx.mk svx/UI_svx.mk svx/workben sw/AllLangResTarget_sw.mk sw/CppunitTest_sw_filters_test.mk sw/CppunitTest_sw_layout_test.mk sw/CppunitTest_sw_macros_test.mk sw/CppunitTest_sw_odfexport.mk sw/CppunitTest_sw_odfimport.mk sw/CppunitTest_sw_ooxmlexport.mk sw/CppunitTest_sw_ooxmlimport.mk sw/CppunitTest_sw_rtfexport.mk sw/CppunitTest_sw_rtfimport.mk sw/CppunitTest_sw_subsequent_odfexport.mk sw/CppunitTest_sw_subsequent_odfimport.mk sw/CppunitTest_sw_subsequent_ooxmlexport.mk sw/CppunitTest_sw_subsequent_ooxmlimport.mk sw/CppunitTest_sw_subsequent_rtfexport.mk sw/CppunitTest_sw_subsequent_rtfimpor t.mk sw/CppunitTest_sw_subsequent_ww8export.mk sw/CppunitTest_sw_subsequent_ww8import.mk sw/CppunitTest_sw_uwriter.mk sw/CppunitTest_sw_ww8export.mk sw/CppunitTest_sw_ww8import.mk swext/Extension_wiki-publisher.mk swext/mediawiki swext/prj sw/inc sw/JunitTest_sw_complex.mk sw/Library_msword.mk sw/Library_sw.mk sw/Library_swui.mk sw/Library_vbaswobj.mk sw/Module_sw.mk sw/Package_uiconfig.mk sw/prj sw/PythonTest_sw_unoapi.mk sw/qa sw/README sw/source sw/uiconfig sw/UIConfig_sglobal.mk sw/UIConfig_sweb.mk sw/UIConfig_swform.mk sw/UIConfig_swreport.mk sw/UIConfig_swriter.mk sw/UIConfig_swxform.mk sw/UI_swriter.mk sysui/CustomTarget_share.mk sysui/desktop sysui/prj sysui/Zip_osxicons.mk test/inc test/Library_subsequenttest.mk test/Library_test.mk test/Module_test.mk test/prj test/source testtools/CustomTarget_bridgetest_javamaker.mk testtools/CustomTarget_uno_test.mk testtools/InternalUnoApi_bridgetest.mk testtools/Module_testtools.mk testtools/prj testtools/source tomcat/prj too lkit/inc toolkit/Library_tk.mk toolkit/prj toolkit/README toolkit/source toolkit/test tools/Executable_bestreversemap.mk tools/inc tools/Library_tl.mk tools/Module_tools.mk tools/Package_inc.mk tools/prj tools/qa tools/README tools/source tools/StaticLibrary_ooopathutils.mk tools/unx tools/win touch/CustomTarget_touch_javamaker.mk touch/inc touch/InternalUnoApi_touch.mk touch/Library_libotouch.mk touch/Module_touch.mk touch/Package_inc.mk touch/prj touch/README touch/source translations tubes/inc tubes/Module_tubes.mk tubes/prj tubes/qa tubes/source tubes/UIConfig_tubes.mk tubes/UI_tubes.mk twain/inc twain/prj ucbhelper/inc ucbhelper/prj ucbhelper/source ucb/prj ucb/source ucb/workben ucpp/Executable_ucpp.mk ucpp/prj udkapi/com udkapi/prj udkapi/UnoApi_udkapi.mk udm/prj unixODBC/prj UnoControls/prj UnoControls/source unodevtools/Executable_skeletonmaker.mk unodevtools/inc unodevtools/Module_unodevtools.mk unodevtools/prj unodevtools/source unoidl/inc unoidl/Module_unoidl.mk unoidl/prj unoidl/source unoil/CustomTarget_javamaker.mk unoil/prj unotest/inc unotest/Module_unotest.mk unotest/prj unotest/source unotools/inc unotools/Library_utl.mk unotools/Package_inc.mk unotools/prj unotools/source unoxml/prj unoxml/qa unoxml/source unoxml/test unusedcode.easy ure/prj ure/source uui/Library_uui.mk uui/Module_uui.mk uui/prj uui/source uui/UIConfig_uui.mk uui/UI_uui.mk vbahelper/inc vbahelper/Library_msforms.mk vbahelper/prj vbahelper/source vcl/AllLangResTarget_vcl.mk vcl/android vcl/aqua vcl/coretext vcl/generic vcl/headless vcl/inc vcl/ios vcl/Library_desktop_detector.mk vcl/Library_vcl.mk vcl/Library_vclplug_gen.mk vcl/Library_vclplug_gtk3.mk vcl/Library_vclplug_gtk.mk vcl/Library_vclplug_kde4.mk vcl/Library_vclplug_kde.mk vcl/Library_vclplug_svp.mk vcl/Library_vclplug_tde.mk vcl/Module_vcl.mk vcl/null vcl/Package_inc.mk vcl/prj vcl/qa vcl/quartz vcl/README vcl/source vcl/StaticLibrary_headless.mk vcl/StaticLibrary_vclmain.mk vcl/test vcl/UIConfig_v cl.mk vcl/UI_vcl.mk vcl/unx vcl/win vcl/workben vigra/prj vigra/UnpackedTarball_vigra.mk wizards/com wizards/Module_wizards.mk wizards/Package_depot.mk wizards/Package_euro.mk wizards/Package_form.mk wizards/Package_gimmicks.mk wizards/Package_import.mk wizards/Package_share.mk wizards/Package_standard.mk wizards/Package_template.mk wizards/Package_tools.mk wizards/Package_tutorials.mk wizards/Package_usr.mk wizards/prj wizards/Pyuno_agenda.mk wizards/Pyuno_commonwizards.mk wizards/Pyuno_fax.mk wizards/Pyuno_letter.mk wizards/Pyuno_web.mk wizards/source wizards/Zip_depot.mk wizards/Zip_euro.mk wizards/Zip_form.mk wizards/Zip_gimmicks.mk wizards/Zip_import.mk wizards/Zip_launcher.mk wizards/Zip_share.mk wizards/Zip_standard.mk wizards/Zip_template.mk wizards/Zip_tools.mk wizards/Zip_tutorials.mk wizards/Zip_usr.mk wizards/Zip_web.mk writerfilter/CustomTarget_source.mk writerfilter/inc writerfilter/Library_writerfilter.mk writerfilter/prj writerfilter/qa writerfilter/source wr iterperfect/Library_wpftwriter.mk writerperfect/prj writerperfect/source writerperfect/StaticLibrary_writerperfect.mk writerperfect/util x11_extensions/prj xmerge/prj xmlhelp/Library_tvhlp1.mk xmlhelp/Library_ucpchelp1.mk xmlhelp/prj xmlhelp/source xmlhelp/util xmloff/CppunitTest_xmloff_uxmloff.mk xmloff/inc xmloff/Library_xo.mk xmloff/Module_xmloff.mk xmloff/Package_inc.mk xmloff/prj xmloff/qa xmloff/source xmlreader/inc xmlreader/prj xmlreader/source xmlscript/Module_xmlscript.mk xmlscript/Package_dtd.mk xmlscript/Package_inc.mk xmlscript/prj xmlscript/source xmlsecurity/inc xmlsecurity/Library_xmlsecurity.mk xmlsecurity/Module_xmlsecurity.mk xmlsecurity/prj xmlsecurity/qa xmlsecurity/source xmlsecurity/uiconfig xmlsecurity/UIConfig_xmlsec.mk xmlsecurity/UI_xmlsec.mk xmlsecurity/workben xpdf/ExternalProject_xpdf.mk xpdf/prj xsltml/prj zlib/prj

Kohei Yoshida kohei.yoshida at gmail.com
Wed Apr 17 15:49:14 PDT 2013


Rebased ref, commits from common ancestor:
commit df4daf473b1012946eb618174d33b6ee899d1480
Author: Kohei Yoshida <kohei.yoshida at gmail.com>
Date:   Mon Mar 11 17:16:54 2013 -0400

    fdo#60300: Work-in-progress change to rework pivot table core.
    
    The idea is to avoid parsing the pivot table sheet output in order
    to calculate GETPIVOTDATA.  The table outout is configurable, and it
    will only be more configurable in the future.  The gist of my rework
    is to calcualte the result of GETPIVOTDATA with the internl result
    tree alone.
    
    Also, the same result tree can be used for drill down too, which also
    currently parses the table output, therefore subject to the same
    limitation & fragility.
    
    Change-Id: Ib0147e2aa2b710dfd627df7f535a685301214a52

diff --git a/offapi/com/sun/star/sheet/XDataPilotResults.idl b/offapi/com/sun/star/sheet/XDataPilotResults.idl
index e5b2c3c..0e4486b 100644
--- a/offapi/com/sun/star/sheet/XDataPilotResults.idl
+++ b/offapi/com/sun/star/sheet/XDataPilotResults.idl
@@ -22,6 +22,7 @@
 
 #include <com/sun/star/uno/XInterface.idl>
 #include <com/sun/star/sheet/DataResult.idl>
+#include <com/sun/star/sheet/DataPilotFieldFilter.idl>
 
 
 module com {  module sun {  module star {  module sheet {
@@ -44,6 +45,8 @@ interface XDataPilotResults: com::sun::star::uno::XInterface
      */
     sequence< sequence< DataResult > > getResults();
 
+    sequence<any> getFilteredResults(
+        [in] sequence<com::sun::star::sheet::DataPilotFieldFilter> aFilters );
 };
 
 
diff --git a/sc/Library_sc.mk b/sc/Library_sc.mk
index 5631f55..77e3e35 100644
--- a/sc/Library_sc.mk
+++ b/sc/Library_sc.mk
@@ -135,6 +135,7 @@ $(eval $(call gb_Library_add_exception_objects,sc,\
 	sc/source/core/data/dpobject \
 	sc/source/core/data/dpoutput \
 	sc/source/core/data/dpoutputgeometry \
+	sc/source/core/data/dpresfilter \
 	sc/source/core/data/dpsave \
 	sc/source/core/data/dpsdbtab \
 	sc/source/core/data/dpshttab \
diff --git a/sc/inc/dpitemdata.hxx b/sc/inc/dpitemdata.hxx
index eeb79b7..84a5f92 100644
--- a/sc/inc/dpitemdata.hxx
+++ b/sc/inc/dpitemdata.hxx
@@ -62,6 +62,11 @@ public:
         sal_Int32 mnValue;
     };
 
+    struct Hash
+    {
+        size_t operator() (const ScDPItemData& rVal) const;
+    };
+
 private:
 
     union {
diff --git a/sc/inc/dpmacros.hxx b/sc/inc/dpmacros.hxx
index 79aafaf..ce91b06 100644
--- a/sc/inc/dpmacros.hxx
+++ b/sc/inc/dpmacros.hxx
@@ -29,7 +29,7 @@
 #ifndef __SC_DPMACROS_HXX__
 #define __SC_DPMACROS_HXX__
 
-#define DEBUG_PIVOT_TABLE 0
+#define DEBUG_PIVOT_TABLE 1
 
 #if DEBUG_PIVOT_TABLE
 #include <iostream>
diff --git a/sc/inc/dpobject.hxx b/sc/inc/dpobject.hxx
index c2c07f5..fd7c598 100644
--- a/sc/inc/dpobject.hxx
+++ b/sc/inc/dpobject.hxx
@@ -179,6 +179,11 @@ public:
                                        Rectangle& rPosRect, sal_uInt16& rOrient, long& rDimPos );
     bool                IsFilterButton( const ScAddress& rPos );
 
+    double GetPivotData(
+        const OUString& rDataFieldName,
+        const com::sun::star::uno::Sequence<
+            com::sun::star::sheet::DataPilotFieldFilter>& rFilters);
+
     bool                GetPivotData( ScDPGetPivotDataField& rTarget, /* returns result */
                                       const std::vector< ScDPGetPivotDataField >& rFilters );
     bool                ParseFilters( ScDPGetPivotDataField& rTarget,
diff --git a/sc/inc/dpresfilter.hxx b/sc/inc/dpresfilter.hxx
new file mode 100644
index 0000000..db32f6e
--- /dev/null
+++ b/sc/inc/dpresfilter.hxx
@@ -0,0 +1,115 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#ifndef __SC_DPRESFILTER_HXX__
+#define __SC_DPRESFILTER_HXX__
+
+#include "dpitemdata.hxx"
+
+#include <vector>
+#include <boost/noncopyable.hpp>
+
+#if DEBUG_PIVOT_TABLE
+#include <map>
+#else
+#include <boost/unordered_map.hpp>
+#endif
+
+struct ScDPResultFilter
+{
+    OUString maDimName;
+    ScDPItemData maValue;
+
+    bool mbHasValue:1;
+    bool mbDataLayout:1;
+
+    ScDPResultFilter(const OUString& rDimName, bool bDataLayout);
+};
+
+class ScDPResultFilterSet : boost::noncopyable
+{
+    struct MemberNode;
+    struct DimensionNode;
+#if DEBUG_PIVOT_TABLE
+    // To keep the entries sorted in the tree dump.
+    typedef std::map<ScDPItemData, MemberNode*> MembersType;
+    typedef std::map<OUString, DimensionNode*> DimensionsType;
+#else
+    typedef boost::unordered_map<ScDPItemData, MemberNode*, ScDPItemData::Hash> MembersType;
+    typedef boost::unordered_map<OUString, DimensionNode*, OUStringHash> DimensionsType;
+#endif
+    typedef std::vector<double> ValuesType;
+
+    struct DimensionNode : boost::noncopyable
+    {
+        const MemberNode* mpParent;
+        MembersType maChildMembers;
+
+        DimensionNode(const MemberNode* pParent);
+        ~DimensionNode();
+
+#if DEBUG_PIVOT_TABLE
+        void dump(int nLevel) const;
+#endif
+    };
+
+    struct MemberNode : boost::noncopyable
+    {
+        const DimensionNode* mpParent;
+        double mfValue;
+        ValuesType maValues;
+        DimensionsType maChildDimensions;
+
+        MemberNode(const DimensionNode* pParent);
+        ~MemberNode();
+
+#if DEBUG_PIVOT_TABLE
+        void dump(int nLevel) const;
+#endif
+    };
+
+    MemberNode* mpRoot;
+
+public:
+    ScDPResultFilterSet();
+    ~ScDPResultFilterSet();
+
+    /**
+     * Add a single value filter path.  The filters are expected to be sorted
+     * by row dimension order then by column dimension order.
+     *
+     * @param rFilter set of filters.
+     * @param nCol column position relative to the top-left cell within the
+     *             data field range.
+     * @param nRow row position relative to the top-left cell within the data
+     *             field range.
+     * @param fVal result value, as displayed in the table output.
+     */
+    void add(const std::vector<ScDPResultFilter>& rFilter, long nCol, long nRow, double fVal);
+
+    void swap(ScDPResultFilterSet& rOther);
+
+#if DEBUG_PIVOT_TABLE
+    void dump() const;
+#endif
+};
+
+struct ScDPResultFilterContext
+{
+    ScDPResultFilterSet maFilterSet;
+    std::vector<ScDPResultFilter> maFilters;
+    long mnCol;
+    long mnRow;
+
+    ScDPResultFilterContext();
+};
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/inc/dptabres.hxx b/sc/inc/dptabres.hxx
index 96ebe53..e6289be 100644
--- a/sc/inc/dptabres.hxx
+++ b/sc/inc/dptabres.hxx
@@ -52,6 +52,7 @@ class ScDPResultVisibilityData;
 
 struct ScDPValue;
 class ScDPItemData;
+struct ScDPResultFilterContext;
 
 /**
  * Member names that are being processed for InitFrom/LateInitFrom (needed
@@ -403,11 +404,12 @@ public:
             com::sun::star::sheet::MemberResult>* pSequences,
         long& rPos, long nMeasure, bool bRoot, const OUString* pMemberName, const OUString* pMemberCaption );
 
-    void                FillDataResults( const ScDPResultMember* pRefMember,
-                                    com::sun::star::uno::Sequence<
-                                        com::sun::star::uno::Sequence<
-                                            com::sun::star::sheet::DataResult> >& rSequence,
-                                    long& rRow, long nMeasure ) const;
+    void FillDataResults(
+        const ScDPResultMember* pRefMember, ScDPResultFilterContext& rFilterCxt,
+        com::sun::star::uno::Sequence<
+            com::sun::star::uno::Sequence<
+                com::sun::star::sheet::DataResult> >& rSequence,
+        long nMeasure) const;
 
     void                UpdateDataResults( const ScDPResultMember* pRefMember, long nMeasure ) const;
     void                UpdateRunningTotals( const ScDPResultMember* pRefMember, long nMeasure,
@@ -471,10 +473,12 @@ public:
     const ScDPAggData*  GetConstAggData( long nMeasure, const ScDPSubTotalState& rSubState ) const;
     ScDPAggData*        GetAggData( long nMeasure, const ScDPSubTotalState& rSubState );
 
-    void                FillDataRow( const ScDPResultMember* pRefMember,
-                                    com::sun::star::uno::Sequence<com::sun::star::sheet::DataResult>& rSequence,
-                                    long& rCol, long nMeasure, bool bIsSubTotalRow,
-                                    const ScDPSubTotalState& rSubState ) const;
+    void FillDataRow(
+        const ScDPResultMember* pRefMember,
+        ScDPResultFilterContext& rFilterCxt,
+        com::sun::star::uno::Sequence<com::sun::star::sheet::DataResult>& rSequence,
+        long nMeasure, bool bIsSubTotalRow,
+        const ScDPSubTotalState& rSubState) const;
 
     void UpdateDataRow( const ScDPResultMember* pRefMember, long nMeasure, bool bIsSubTotalRow,
                         const ScDPSubTotalState& rSubState );
@@ -557,11 +561,13 @@ public:
                                                 com::sun::star::sheet::MemberResult>* pSequences,
                                             long nStart, long nMeasure );
 
-    void                FillDataResults( const ScDPResultMember* pRefMember,
-                                    com::sun::star::uno::Sequence<
-                                        com::sun::star::uno::Sequence<
-                                            com::sun::star::sheet::DataResult> >& rSequence,
-                                    long nRow, long nMeasure ) const;
+    void FillDataResults(
+        const ScDPResultMember* pRefMember,
+        ScDPResultFilterContext& rFilterCxt,
+        com::sun::star::uno::Sequence<
+            com::sun::star::uno::Sequence<
+                com::sun::star::sheet::DataResult> >& rSequence,
+        long nMeasure) const;
 
     void                UpdateDataResults( const ScDPResultMember* pRefMember, long nMeasure ) const;
     void                UpdateRunningTotals( const ScDPResultMember* pRefMember, long nMeasure,
@@ -629,10 +635,11 @@ public:
     void                InitFrom( const ScDPResultDimension* pDim );        // recursive
     void                ProcessData( const ::std::vector< SCROW >& aDataMembers, const ::std::vector<ScDPValue>& aValues,
                                        const ScDPSubTotalState& rSubState );
-    void                FillDataRow( const ScDPResultDimension* pRefDim,
-                                    com::sun::star::uno::Sequence<com::sun::star::sheet::DataResult>& rSequence,
-                                    long nCol, long nMeasure, bool bIsSubTotalRow,
-                                    const ScDPSubTotalState& rSubState ) const;
+    void FillDataRow(
+        const ScDPResultDimension* pRefDim,
+        ScDPResultFilterContext& rFilterCxt,
+        com::sun::star::uno::Sequence<com::sun::star::sheet::DataResult>& rSequence,
+        long nMeasure, bool bIsSubTotalRow, const ScDPSubTotalState& rSubState) const;
 
     void                UpdateDataRow( const ScDPResultDimension* pRefDim, long nMeasure, bool bIsSubTotalRow,
                                     const ScDPSubTotalState& rSubState ) const;
diff --git a/sc/inc/dptabsrc.hxx b/sc/inc/dptabsrc.hxx
index e98b651..a51dd47 100644
--- a/sc/inc/dptabsrc.hxx
+++ b/sc/inc/dptabsrc.hxx
@@ -49,6 +49,7 @@
 
 #include "dptabdat.hxx"
 #include "dpglobal.hxx"
+#include "dpresfilter.hxx"
 
 #include <boost/unordered_map.hpp>
 #include <boost/unordered_set.hpp>
@@ -103,6 +104,7 @@ private:
     std::vector<long> maRowDims;
     std::vector<long> maDataDims;
     std::vector<long> maPageDims;
+    ScDPResultFilterSet maResFilterSet;
 
     bool                    bColumnGrand;
     bool                    bRowGrand;
@@ -199,6 +201,11 @@ public:
                             ::com::sun::star::sheet::DataResult > > SAL_CALL getResults(  )
                                 throw(::com::sun::star::uno::RuntimeException);
 
+    virtual com::sun::star::uno::Sequence<com::sun::star::uno::Any> SAL_CALL
+        getFilteredResults(
+            const com::sun::star::uno::Sequence<com::sun::star::sheet::DataPilotFieldFilter>& aFilters )
+                throw (com::sun::star::uno::RuntimeException);
+
                             // XRefreshable
     virtual void SAL_CALL   refresh() throw(::com::sun::star::uno::RuntimeException);
     virtual void SAL_CALL   addRefreshListener( const ::com::sun::star::uno::Reference<
diff --git a/sc/source/core/data/dpitemdata.cxx b/sc/source/core/data/dpitemdata.cxx
index a9147652..c417317f 100644
--- a/sc/source/core/data/dpitemdata.cxx
+++ b/sc/source/core/data/dpitemdata.cxx
@@ -29,6 +29,33 @@
 const sal_Int32 ScDPItemData::DateFirst = -1;
 const sal_Int32 ScDPItemData::DateLast  = 10000;
 
+size_t ScDPItemData::Hash::operator() (const ScDPItemData& rVal) const
+{
+    switch (rVal.GetType())
+    {
+        case GroupValue:
+        case Value:
+        case RangeStart:
+            return (size_t)(rVal.mfValue);
+        case String:
+        case Error:
+        {
+            if (!rVal.mpString)
+                return 0;
+
+            if (rVal.mbStringInterned)
+                return reinterpret_cast<size_t>(rVal.mpString);
+
+            OUStringHash aStrHasher;
+            return aStrHasher(*rVal.mpString);
+        }
+        default:
+            ;
+    }
+
+    return 0;
+}
+
 sal_Int32 ScDPItemData::Compare(const ScDPItemData& rA, const ScDPItemData& rB)
 {
     if (rA.meType != rB.meType)
@@ -337,10 +364,10 @@ OUString ScDPItemData::GetString() const
         case Error:
             return *mpString;
         case Value:
+        case RangeStart:
             return OUString::valueOf(mfValue);
         case GroupValue:
-        case RangeStart:
-            return OUString::createFromAscii("fail");
+            return OUString::valueOf(maGroupValue.mnValue);
         case Empty:
         default:
             ;
diff --git a/sc/source/core/data/dpobject.cxx b/sc/source/core/data/dpobject.cxx
index c8f3fff..ae01b53 100644
--- a/sc/source/core/data/dpobject.cxx
+++ b/sc/source/core/data/dpobject.cxx
@@ -1276,6 +1276,57 @@ void ScDPObject::GetHeaderPositionData(const ScAddress& rPos, DataPilotTableHead
         aPosData.PositionData >>= rData;
 }
 
+namespace {
+
+class FindByName : std::unary_function<const ScDPSaveDimension*, bool>
+{
+    OUString maName;
+public:
+    FindByName(const OUString& rName) : maName(rName) {}
+    bool operator() (const ScDPSaveDimension* pDim) const
+    {
+        const OUString* pLayoutName = pDim->GetLayoutName();
+        if (pLayoutName)
+            return *pLayoutName == maName;
+
+        return maName == pDim->GetName();
+    }
+};
+
+}
+
+double ScDPObject::GetPivotData(const OUString& rDataFieldName, const uno::Sequence<sheet::DataPilotFieldFilter>& rFilters)
+{
+    double fRet;
+    rtl::math::setNan(&fRet);
+    if (!mbEnableGetPivotData)
+        return fRet;
+
+    CreateObjects();
+
+    std::vector<const ScDPSaveDimension*> aDims;
+    pSaveData->GetAllDimensionsByOrientation(sheet::DataPilotFieldOrientation_DATA, aDims);
+    if (aDims.empty())
+        return fRet;
+
+    std::vector<const ScDPSaveDimension*>::iterator it = std::find_if(
+        aDims.begin(), aDims.end(), FindByName(rDataFieldName));
+    if (it == aDims.end())
+        return fRet;
+
+    sal_Int32 nDataIndex = std::distance(aDims.begin(), it);
+
+    uno::Reference<sheet::XDataPilotResults> xDPResults(xSource, uno::UNO_QUERY);
+    if (!xDPResults.is())
+        return fRet;
+
+    uno::Sequence<uno::Any> aRes = xDPResults->getFilteredResults(rFilters);
+
+    fRet = 54.0;
+
+    return fRet;
+}
+
 // Returns sal_True on success and stores the result in rTarget
 bool ScDPObject::GetPivotData( ScDPGetPivotDataField& rTarget,
                                const std::vector< ScDPGetPivotDataField >& rFilters )
diff --git a/sc/source/core/data/dpresfilter.cxx b/sc/source/core/data/dpresfilter.cxx
new file mode 100644
index 0000000..b08cc4a
--- /dev/null
+++ b/sc/source/core/data/dpresfilter.cxx
@@ -0,0 +1,157 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#include "dpresfilter.hxx"
+
+using namespace std;
+
+ScDPResultFilter::ScDPResultFilter(const OUString& rDimName, bool bDataLayout) :
+    maDimName(rDimName), mbHasValue(false), mbDataLayout(bDataLayout) {}
+
+ScDPResultFilterContext::ScDPResultFilterContext() :
+    mnCol(0), mnRow(0) {}
+
+ScDPResultFilterSet::DimensionNode::DimensionNode(const MemberNode* pParent) :
+    mpParent(pParent) {}
+
+ScDPResultFilterSet::DimensionNode::~DimensionNode()
+{
+    MembersType::iterator it = maChildMembers.begin(), itEnd = maChildMembers.end();
+    for (; it != itEnd; ++it)
+        delete it->second;
+}
+
+#if DEBUG_PIVOT_TABLE
+void ScDPResultFilterSet::DimensionNode::dump(int nLevel) const
+{
+    string aIndent(nLevel*2, ' ');
+    MembersType::const_iterator it = maChildMembers.begin(), itEnd = maChildMembers.end();
+    for (; it != itEnd; ++it)
+    {
+        cout << aIndent << "member: ";
+        const ScDPItemData& rVal = it->first;
+        if (rVal.IsValue())
+            cout << rVal.GetValue();
+        else
+            cout << rVal.GetString();
+        cout << endl;
+
+        it->second->dump(nLevel+1);
+    }
+}
+#endif
+
+ScDPResultFilterSet::MemberNode::MemberNode(const DimensionNode* pParent) :
+    mpParent(pParent) {}
+
+ScDPResultFilterSet::MemberNode::~MemberNode()
+{
+    DimensionsType::iterator it = maChildDimensions.begin(), itEnd = maChildDimensions.end();
+    for (; it != itEnd; ++it)
+        delete it->second;
+}
+
+#if DEBUG_PIVOT_TABLE
+void ScDPResultFilterSet::MemberNode::dump(int nLevel) const
+{
+    string aIndent(nLevel*2, ' ');
+    ValuesType::const_iterator itVal = maValues.begin(), itValEnd = maValues.end();
+    for (; itVal != itValEnd; ++itVal)
+        cout << aIndent << "value: " << *itVal << endl;
+
+    DimensionsType::const_iterator it = maChildDimensions.begin(), itEnd = maChildDimensions.end();
+    for (; it != itEnd; ++it)
+    {
+        cout << aIndent << "dimension: " << it->first << endl;
+        it->second->dump(nLevel+1);
+    }
+}
+#endif
+
+ScDPResultFilterSet::ScDPResultFilterSet() : mpRoot(new MemberNode(NULL)) {}
+ScDPResultFilterSet::~ScDPResultFilterSet()
+{
+    delete mpRoot;
+}
+
+void ScDPResultFilterSet::add(
+    const std::vector<ScDPResultFilter>& rFilters, long nCol, long nRow, double fVal)
+{
+    // TODO: I'll work on the col / row to value node mapping later.
+
+    MemberNode* pMemNode = mpRoot;
+
+    fprintf(stdout, "(row=%ld; col=%ld; value=%g) : ", nRow, nCol, fVal);
+    std::vector<ScDPResultFilter>::const_iterator itFilter = rFilters.begin(), itFilterEnd = rFilters.end();
+    for (; itFilter != itFilterEnd; ++itFilter)
+    {
+        const ScDPResultFilter& filter = *itFilter;
+        if (filter.mbDataLayout)
+            continue;
+
+        printf("%s: ", rtl::OUStringToOString(filter.maDimName, RTL_TEXTENCODING_UTF8).getStr());
+        if (filter.maValue.IsValue())
+            printf("%g ", filter.maValue.GetValue());
+        else
+            printf("'%s' ", rtl::OUStringToOString(filter.maValue.GetString(), RTL_TEXTENCODING_UTF8).getStr());
+
+        // See if this dimension exists.
+        DimensionsType& rDims = pMemNode->maChildDimensions;
+        DimensionsType::iterator itDim = rDims.find(filter.maDimName);
+        if (itDim == rDims.end())
+        {
+            // New dimenison.  Insert it.
+            std::pair<DimensionsType::iterator, bool> r =
+                rDims.insert(DimensionsType::value_type(filter.maDimName, new DimensionNode(pMemNode)));
+
+            if (!r.second)
+                // Insertion failed!
+                return;
+
+            itDim = r.first;
+        }
+
+        // Now, see if this dimension member exists.
+        DimensionNode* pDim = itDim->second;
+        MembersType& rMembers = pDim->maChildMembers;
+        MembersType::iterator itMem = rMembers.find(filter.maValue);
+        if (itMem == rMembers.end())
+        {
+            // New member.  Insert it.
+            std::pair<MembersType::iterator, bool> r =
+                rMembers.insert(
+                    MembersType::value_type(filter.maValue, new MemberNode(pDim)));
+
+            if (!r.second)
+                // Insertion failed!
+                return;
+
+            itMem = r.first;
+        }
+
+        pMemNode = itMem->second;
+    }
+
+    pMemNode->maValues.push_back(fVal);
+    printf("\n");
+}
+
+void ScDPResultFilterSet::swap(ScDPResultFilterSet& rOther)
+{
+    std::swap<MemberNode*>(mpRoot, rOther.mpRoot);
+}
+
+#if DEBUG_PIVOT_TABLE
+void ScDPResultFilterSet::dump() const
+{
+    mpRoot->dump(0);
+}
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/core/data/dptabres.cxx b/sc/source/core/data/dptabres.cxx
index 322dc5f..379f5c1 100644
--- a/sc/source/core/data/dptabres.cxx
+++ b/sc/source/core/data/dptabres.cxx
@@ -29,6 +29,7 @@
 
 #include "document.hxx"     // for DumpState only!
 #include "stlalgorithm.hxx"
+#include "dpresfilter.hxx"
 
 #include <osl/diagnose.h>
 #include <rtl/math.hxx>
@@ -38,6 +39,7 @@
 #include <float.h>          //! Test !!!
 #include <algorithm>
 #include <boost/unordered_map.hpp>
+#include <boost/scoped_ptr.hpp>
 
 #include <com/sun/star/sheet/DataResultFlags.hpp>
 #include <com/sun/star/sheet/MemberResultFlags.hpp>
@@ -53,9 +55,51 @@ using ::std::vector;
 using ::std::pair;
 using ::com::sun::star::uno::Sequence;
 
-// -----------------------------------------------------------------------
+#include <stdio.h>
+#include <string>
+#include <sys/time.h>
+
+namespace {
 
-static sal_uInt16 nFuncStrIds[12] =     // passend zum enum ScSubTotalFunc
+class stack_printer
+{
+public:
+    explicit stack_printer(const char* msg) :
+        msMsg(msg)
+    {
+        fprintf(stdout, "%s: --begin\n", msMsg.c_str());
+        mfStartTime = getTime();
+    }
+
+    ~stack_printer()
+    {
+        double fEndTime = getTime();
+        fprintf(stdout, "%s: --end (duration: %g sec)\n", msMsg.c_str(), (fEndTime - mfStartTime));
+    }
+
+    void printTime(int line) const
+    {
+        double fEndTime = getTime();
+        fprintf(stdout, "%s: --(%d) (duration: %g sec)\n", msMsg.c_str(), line, (fEndTime - mfStartTime));
+    }
+
+private:
+    double getTime() const
+    {
+        timeval tv;
+        gettimeofday(&tv, NULL);
+        return tv.tv_sec + tv.tv_usec / 1000000.0;
+    }
+
+    ::std::string msMsg;
+    double mfStartTime;
+};
+
+}
+
+namespace {
+
+sal_uInt16 nFuncStrIds[12] =     // passend zum enum ScSubTotalFunc
 {
     0,                              // SUBTOTAL_FUNC_NONE
     STR_FUN_TEXT_AVG,               // SUBTOTAL_FUNC_AVE
@@ -70,35 +114,62 @@ static sal_uInt16 nFuncStrIds[12] =     // passend zum enum ScSubTotalFunc
     STR_FUN_TEXT_VAR,               // SUBTOTAL_FUNC_VAR
     STR_FUN_TEXT_VAR                // SUBTOTAL_FUNC_VARP
 };
-namespace {
 
-    bool lcl_SearchMember( const std::vector <ScDPResultMember *>& list, SCROW nOrder, SCROW& rIndex)
+bool lcl_SearchMember( const std::vector <ScDPResultMember *>& list, SCROW nOrder, SCROW& rIndex)
+{
+    rIndex = list.size();
+    bool bFound = false;
+    SCROW  nLo = 0;
+    SCROW nHi = list.size() - 1;
+    SCROW nIndex;
+    while (nLo <= nHi)
     {
-        rIndex = list.size();
-        bool bFound = false;
-        SCROW  nLo = 0;
-        SCROW nHi = list.size() - 1;
-        SCROW nIndex;
-        while (nLo <= nHi)
+        nIndex = (nLo + nHi) / 2;
+        if ( list[nIndex]->GetOrder() < nOrder )
+            nLo = nIndex + 1;
+        else
         {
-            nIndex = (nLo + nHi) / 2;
-            if ( list[nIndex]->GetOrder() < nOrder )
-                nLo = nIndex + 1;
-            else
+            nHi = nIndex - 1;
+            if ( list[nIndex]->GetOrder() == nOrder )
             {
-                nHi = nIndex - 1;
-                if ( list[nIndex]->GetOrder() == nOrder )
-                {
-                    bFound = true;
-                    nLo = nIndex;
-                }
+                bFound = true;
+                nLo = nIndex;
             }
         }
-        rIndex = nLo;
-        return bFound;
     }
+    rIndex = nLo;
+    return bFound;
+}
+
+class FilterStack
+{
+    std::vector<ScDPResultFilter>& mrFilters;
+public:
+    FilterStack(std::vector<ScDPResultFilter>& rFilters) : mrFilters(rFilters) {}
+
+    void pushDimName(const OUString& rName, bool bDataLayout)
+    {
+        mrFilters.push_back(ScDPResultFilter(rName, bDataLayout));
+    }
+
+    void pushDimValue(const ScDPItemData& rValue)
+    {
+        ScDPResultFilter& rFilter = mrFilters.back();
+        rFilter.maValue = rValue;
+        rFilter.mbHasValue = true;
+    }
+
+    ~FilterStack()
+    {
+        ScDPResultFilter& rFilter = mrFilters.back();
+        if (rFilter.mbHasValue)
+            rFilter.mbHasValue = false;
+        else
+            mrFilters.pop_back();
+    }
+};
+
 }
-// -----------------------------------------------------------------------
 
 //
 // function objects for sorting of the column and row members:
@@ -1497,14 +1568,26 @@ void ScDPResultMember::FillMemberResults(
     }
 }
 
-void ScDPResultMember::FillDataResults( const ScDPResultMember* pRefMember,
-                            uno::Sequence< uno::Sequence<sheet::DataResult> >& rSequence,
-                            long& rRow, long nMeasure ) const
+void ScDPResultMember::FillDataResults(
+    const ScDPResultMember* pRefMember,
+    ScDPResultFilterContext& rFilterCxt, uno::Sequence<uno::Sequence<sheet::DataResult> >& rSequence,
+    long nMeasure) const
 {
+    boost::scoped_ptr<FilterStack> pFilterStack;
+    const ScDPMember* pDPMember = GetDPMember();
+    if (pDPMember)
+    {
+        // Root result has no corresponding DP member. Only take the non-root results.
+        ScDPItemData aItem;
+        pDPMember->FillItemData(aItem);
+        pFilterStack.reset(new FilterStack(rFilterCxt.maFilters));
+        pFilterStack->pushDimValue(aItem);
+    }
+
     //  IsVisible() test is in ScDPResultDimension::FillDataResults
     //  (not on data layout dimension)
     const ScDPLevel*     pParentLevel = GetParentLevel();
-    long nStartRow = rRow;
+    long nStartRow = rFilterCxt.mnRow;
 
     long nExtraSpace = 0;
     if ( pParentLevel && pParentLevel->IsAddEmpty() )
@@ -1520,13 +1603,16 @@ void ScDPResultMember::FillDataResults( const ScDPResultMember* pRefMember,
     if (bHasChild)
     {
         if ( bTitleLine )           // in tabular layout the title is on a separate row
-            ++rRow;                 // -> fill child dimension one row below
+            ++rFilterCxt.mnRow;                 // -> fill child dimension one row below
 
-        pChildDimension->FillDataResults( pRefMember, rSequence, rRow, nMeasure );  // doesn't modify rRow
-        rRow += GetSize( nMeasure );
+        long nOldRow = rFilterCxt.mnRow;
+        pChildDimension->FillDataResults(pRefMember, rFilterCxt, rSequence, nMeasure);
+        rFilterCxt.mnRow = nOldRow; // Revert to the original row before the call.
+
+        rFilterCxt.mnRow += GetSize( nMeasure );
 
         if ( bTitleLine )           // title row is included in GetSize, so the following
-            --rRow;                 // positions are calculated with the normal values
+            --rFilterCxt.mnRow;                 // positions are calculated with the normal values
     }
 
     long nUserSubStart;
@@ -1545,15 +1631,15 @@ void ScDPResultMember::FillDataResults( const ScDPResultMember* pRefMember,
         long nSubSize = pResultData->GetCountForMeasure(nMeasure);
         if (bHasChild)
         {
-            rRow -= nSubSize * ( nUserSubCount - nUserSubStart );   // GetSize includes space for SubTotal
-            rRow -= nExtraSpace;                                    // GetSize includes the empty line
+            rFilterCxt.mnRow -= nSubSize * ( nUserSubCount - nUserSubStart );   // GetSize includes space for SubTotal
+            rFilterCxt.mnRow -= nExtraSpace;                                    // GetSize includes the empty line
         }
 
         long nMoveSubTotal = 0;
         if ( bSubTotalInTitle )
         {
-            nMoveSubTotal = rRow - nStartRow;   // force to first (title) row
-            rRow = nStartRow;
+            nMoveSubTotal = rFilterCxt.mnRow - nStartRow;   // force to first (title) row
+            rFilterCxt.mnRow = nStartRow;
         }
 
         if ( pDataRoot )
@@ -1575,24 +1661,23 @@ void ScDPResultMember::FillDataResults( const ScDPResultMember* pRefMember,
                     else if ( pResultData->GetColStartMeasure() == SC_DPMEASURE_ALL )
                         nMemberMeasure = SC_DPMEASURE_ALL;
 
-                    OSL_ENSURE( rRow < rSequence.getLength(), "bumm" );
-                    uno::Sequence<sheet::DataResult>& rSubSeq = rSequence.getArray()[rRow];
-                    long nSeqCol = 0;
+                    OSL_ENSURE( rFilterCxt.mnRow < rSequence.getLength(), "bumm" );
+                    uno::Sequence<sheet::DataResult>& rSubSeq = rSequence.getArray()[rFilterCxt.mnRow];
+                    rFilterCxt.mnCol = 0;
                     if (pRefMember->IsVisible())
-                        pDataRoot->FillDataRow(pRefMember, rSubSeq, nSeqCol, nMemberMeasure, bHasChild, aSubState);
+                        pDataRoot->FillDataRow(pRefMember, rFilterCxt, rSubSeq, nMemberMeasure, bHasChild, aSubState);
 
-                    rRow += 1;
+                    rFilterCxt.mnRow += 1;
                 }
             }
         }
         else
-            rRow += nSubSize * ( nUserSubCount - nUserSubStart );   // empty rows occur when ShowEmpty is true
+            rFilterCxt.mnRow += nSubSize * ( nUserSubCount - nUserSubStart );   // empty rows occur when ShowEmpty is true
 
         // add extra space again if subtracted from GetSize above,
         // add to own size if no children
-        rRow += nExtraSpace;
-
-        rRow += nMoveSubTotal;
+        rFilterCxt.mnRow += nExtraSpace;
+        rFilterCxt.mnRow += nMoveSubTotal;
     }
 }
 
@@ -1990,14 +2075,28 @@ const ScDPAggData* ScDPDataMember::GetConstAggData( long nMeasure, const ScDPSub
     return pAgg;
 }
 
-void ScDPDataMember::FillDataRow( const ScDPResultMember* pRefMember,
-                                    uno::Sequence<sheet::DataResult>& rSequence,
-                                    long& rCol, long nMeasure, bool bIsSubTotalRow,
-                                    const ScDPSubTotalState& rSubState ) const
+void ScDPDataMember::FillDataRow(
+    const ScDPResultMember* pRefMember, ScDPResultFilterContext& rFilterCxt,
+    uno::Sequence<sheet::DataResult>& rSequence, long nMeasure, bool bIsSubTotalRow,
+    const ScDPSubTotalState& rSubState) const
 {
+    boost::scoped_ptr<FilterStack> pFilterStack;
+    if (pResultMember)
+    {
+        // Topmost data member (pResultMember=NULL) doesn't need to be handled
+        // since its immediate parent result member is linked to the same
+        // dimension member.
+        ScDPItemData aItem;
+        const ScDPMember* pDPMember = pResultMember->GetDPMember();
+        if (pDPMember)
+            pDPMember->FillItemData(aItem);
+        pFilterStack.reset(new FilterStack(rFilterCxt.maFilters));
+        pFilterStack->pushDimValue(aItem);
+    }
+
     OSL_ENSURE( pRefMember == pResultMember || !pResultMember, "bla" );
 
-    long nStartCol = rCol;
+    long nStartCol = rFilterCxt.mnCol;
 
     const ScDPDataDimension* pDataChild = GetChildDimension();
     const ScDPResultDimension* pRefChild = pRefMember->GetChildDimension();
@@ -2021,14 +2120,18 @@ void ScDPDataMember::FillDataRow( const ScDPResultMember* pRefMember,
     if ( bHasChild )
     {
         if ( bTitleLine )           // in tabular layout the title is on a separate column
-            ++rCol;                 // -> fill child dimension one column below
+            ++rFilterCxt.mnCol;                 // -> fill child dimension one column below
 
         if ( pDataChild )
-            pDataChild->FillDataRow( pRefChild, rSequence, rCol, nMeasure, bIsSubTotalRow, rSubState );
-        rCol += (sal_uInt16)pRefMember->GetSize( nMeasure );
+        {
+            long nOldCol = rFilterCxt.mnCol;
+            pDataChild->FillDataRow(pRefChild, rFilterCxt, rSequence, nMeasure, bIsSubTotalRow, rSubState);
+            rFilterCxt.mnCol = nOldCol; // Revert to the old column value before the call.
+        }
+        rFilterCxt.mnCol += (sal_uInt16)pRefMember->GetSize( nMeasure );
 
         if ( bTitleLine )           // title column is included in GetSize, so the following
-            --rCol;                 // positions are calculated with the normal values
+            --rFilterCxt.mnCol;                 // positions are calculated with the normal values
     }
 
     long nUserSubStart;
@@ -2049,15 +2152,15 @@ void ScDPDataMember::FillDataRow( const ScDPResultMember* pRefMember,
         long nSubSize = pResultData->GetCountForMeasure(nMeasure);
         if (bHasChild)
         {
-            rCol -= nSubSize * ( nUserSubCount - nUserSubStart );   // GetSize includes space for SubTotal
-            rCol -= nExtraSpace;                                    // GetSize includes the empty line
+            rFilterCxt.mnCol -= nSubSize * ( nUserSubCount - nUserSubStart );   // GetSize includes space for SubTotal
+            rFilterCxt.mnCol -= nExtraSpace;                                    // GetSize includes the empty line
         }
 
         long nMoveSubTotal = 0;
         if ( bSubTotalInTitle )
         {
-            nMoveSubTotal = rCol - nStartCol;   // force to first (title) column
-            rCol = nStartCol;
+            nMoveSubTotal = rFilterCxt.mnCol - nStartCol;   // force to first (title) column
+            rFilterCxt.mnCol = nStartCol;
         }
 
         for (long nUserPos=nUserSubStart; nUserPos<nUserSubCount; nUserPos++)
@@ -2074,8 +2177,8 @@ void ScDPDataMember::FillDataRow( const ScDPResultMember* pRefMember,
                 if ( nMeasure == SC_DPMEASURE_ALL )
                     nMemberMeasure = nSubCount;
 
-                OSL_ENSURE( rCol < rSequence.getLength(), "bumm" );
-                sheet::DataResult& rRes = rSequence.getArray()[rCol];
+                OSL_ENSURE( rFilterCxt.mnCol < rSequence.getLength(), "bumm" );
+                sheet::DataResult& rRes = rSequence.getArray()[rFilterCxt.mnCol];
 
                 if ( HasData( nMemberMeasure, aLocalSubState ) )
                 {
@@ -2094,15 +2197,15 @@ void ScDPDataMember::FillDataRow( const ScDPResultMember* pRefMember,
                 if ( bHasChild || bIsSubTotalRow )
                     rRes.Flags |= sheet::DataResultFlags::SUBTOTAL;
 
-                rCol += 1;
+                rFilterCxt.maFilterSet.add(rFilterCxt.maFilters, rFilterCxt.mnCol, rFilterCxt.mnRow, rRes.Value);
+                rFilterCxt.mnCol += 1;
             }
         }
 
         // add extra space again if subtracted from GetSize above,
         // add to own size if no children
-        rCol += nExtraSpace;
-
-        rCol += nMoveSubTotal;
+        rFilterCxt.mnCol += nExtraSpace;
+        rFilterCxt.mnCol += nMoveSubTotal;
     }
 }
 
@@ -3022,11 +3125,13 @@ void ScDPResultDimension::FillMemberResults( uno::Sequence<sheet::MemberResult>*
     }
 }
 
-void ScDPResultDimension::FillDataResults( const ScDPResultMember* pRefMember,
-                            uno::Sequence< uno::Sequence<sheet::DataResult> >& rSequence,
-                            long nRow, long nMeasure ) const
+void ScDPResultDimension::FillDataResults(
+    const ScDPResultMember* pRefMember, ScDPResultFilterContext& rFilterCxt,
+    uno::Sequence< uno::Sequence<sheet::DataResult> >& rSequence, long nMeasure) const
 {
-    long nMemberRow = nRow;
+    FilterStack aFilterStack(rFilterCxt.maFilters);
+    aFilterStack.pushDimName(GetName(), bIsDataLayout);
+
     long nMemberMeasure = nMeasure;
     long nCount = maMemberArray.size();
     for (long i=0; i<nCount; i++)
@@ -3045,8 +3150,7 @@ void ScDPResultDimension::FillDataResults( const ScDPResultMember* pRefMember,
             pMember = maMemberArray[nSorted];
 
         if ( pMember->IsVisible() )
-            pMember->FillDataResults( pRefMember, rSequence, nMemberRow, nMemberMeasure );
-            // nMemberRow is modified
+            pMember->FillDataResults(pRefMember, rFilterCxt, rSequence, nMemberMeasure);
     }
 }
 
@@ -3564,18 +3668,28 @@ void ScDPDataDimension::ProcessData( const vector< SCROW >& aDataMembers, const
     OSL_FAIL("ProcessData: Member not found");
 }
 
-void ScDPDataDimension::FillDataRow( const ScDPResultDimension* pRefDim,
-                                    uno::Sequence<sheet::DataResult>& rSequence,
-                                    long nCol, long nMeasure, bool bIsSubTotalRow,
-                                    const ScDPSubTotalState& rSubState ) const
+void ScDPDataDimension::FillDataRow(
+    const ScDPResultDimension* pRefDim, ScDPResultFilterContext& rFilterCxt,
+    uno::Sequence<sheet::DataResult>& rSequence, long nMeasure, bool bIsSubTotalRow,
+    const ScDPSubTotalState& rSubState) const
 {
+    OUString aDimName;
+    bool bDataLayout = false;
+    if (pResultDimension)
+    {
+        aDimName = pResultDimension->GetName();
+        bDataLayout = pResultDimension->IsDataLayout();
+    }
+
+    FilterStack aFilterStack(rFilterCxt.maFilters);
+    aFilterStack.pushDimName(aDimName, bDataLayout);
+
     OSL_ENSURE( pRefDim && static_cast<size_t>(pRefDim->GetMemberCount()) == maMembers.size(), "dimensions don't match" );
     OSL_ENSURE( pRefDim == pResultDimension, "wrong dim" );
 
     const ScMemberSortOrder& rMemberOrder = pRefDim->GetMemberOrder();
 
     long nMemberMeasure = nMeasure;
-    long nMemberCol = nCol;
     long nCount = maMembers.size();
     for (long i=0; i<nCount; i++)
     {
@@ -3594,8 +3708,7 @@ void ScDPDataDimension::FillDataRow( const ScDPResultDimension* pRefDim,
         if ( pRefMember->IsVisible() )  //! here or in ScDPDataMember::FillDataRow ???
         {
             const ScDPDataMember* pDataMember = maMembers[(sal_uInt16)nMemberPos];
-            pDataMember->FillDataRow( pRefMember, rSequence, nMemberCol, nMemberMeasure, bIsSubTotalRow, rSubState );
-            // nMemberCol is modified
+            pDataMember->FillDataRow(pRefMember, rFilterCxt, rSequence, nMemberMeasure, bIsSubTotalRow, rSubState);
         }
     }
 }
diff --git a/sc/source/core/data/dptabsrc.cxx b/sc/source/core/data/dptabsrc.cxx
index dddbeab..058a029 100644
--- a/sc/source/core/data/dptabsrc.cxx
+++ b/sc/source/core/data/dptabsrc.cxx
@@ -44,6 +44,7 @@
 #include "unonames.hxx"
 #include "dpitemdata.hxx"
 #include "dputil.hxx"
+#include "dpresfilter.hxx"
 
 #include <com/sun/star/beans/PropertyAttribute.hpp>
 #include <com/sun/star/sheet/DataPilotFieldFilter.hpp>
@@ -67,6 +68,48 @@ using ::com::sun::star::uno::Sequence;
 using ::com::sun::star::uno::Any;
 using ::com::sun::star::sheet::DataPilotFieldAutoShowInfo;
 
+#include <stdio.h>
+#include <string>
+#include <sys/time.h>
+
+namespace {
+
+class stack_printer
+{
+public:
+    explicit stack_printer(const char* msg) :
+        msMsg(msg)
+    {
+        fprintf(stdout, "%s: --begin\n", msMsg.c_str());
+        mfStartTime = getTime();
+    }
+
+    ~stack_printer()
+    {
+        double fEndTime = getTime();
+        fprintf(stdout, "%s: --end (duration: %g sec)\n", msMsg.c_str(), (fEndTime - mfStartTime));
+    }
+
+    void printTime(int line) const
+    {
+        double fEndTime = getTime();
+        fprintf(stdout, "%s: --(%d) (duration: %g sec)\n", msMsg.c_str(), line, (fEndTime - mfStartTime));
+    }
+
+private:
+    double getTime() const
+    {
+        timeval tv;
+        gettimeofday(&tv, NULL);
+        return tv.tv_sec + tv.tv_usec / 1000000.0;
+    }
+
+    ::std::string msMsg;
+    double mfStartTime;
+};
+
+}
+
 // -----------------------------------------------------------------------
 
 #define SC_MINCOUNT_LIMIT   1000000
@@ -380,6 +423,7 @@ long ScDPSource::GetSourceDim(long nDim)
 uno::Sequence< uno::Sequence<sheet::DataResult> > SAL_CALL ScDPSource::getResults()
                                                             throw(uno::RuntimeException)
 {
+    stack_printer __stack_printer__("ScDPSource::getResults");
     CreateRes_Impl();       // create pColResRoot and pRowResRoot
 
     if ( bResultOverflow )      // set in CreateRes_Impl
@@ -403,12 +447,32 @@ uno::Sequence< uno::Sequence<sheet::DataResult> > SAL_CALL ScDPSource::getResult
         pRowAry[nRow] = aColSeq;
     }
 
-    long nSeqRow = 0;
-    pRowResRoot->FillDataResults( pColResRoot, aSeq, nSeqRow, pResData->GetRowStartMeasure() );
+    ScDPResultFilterContext aFilterCxt;
+    pRowResRoot->FillDataResults(
+        pColResRoot, aFilterCxt, aSeq, pResData->GetRowStartMeasure());
+
+    maResFilterSet.swap(aFilterCxt.maFilterSet); // Keep this data for GETPIVOTDATA.
+    maResFilterSet.dump();
 
     return aSeq;
 }
 
+uno::Sequence<uno::Any> ScDPSource::getFilteredResults(
+            const uno::Sequence<sheet::DataPilotFieldFilter>& aFilters )
+                throw (uno::RuntimeException)
+{
+    sal_Int32 n = aFilters.getLength();
+    std::vector<sheet::DataPilotFieldFilter> aSorted;
+    aSorted.reserve(n);
+    for (sal_Int32 i = 0; i < n; ++i)
+        aSorted.push_back(aFilters[i]);
+
+    // Sort filters by order of appearance. Row fields come before column fields.
+
+
+    return uno::Sequence<uno::Any>();
+}
+
 void SAL_CALL ScDPSource::refresh() throw(uno::RuntimeException)
 {
     disposeData();
diff --git a/sc/source/core/tool/interpr2.cxx b/sc/source/core/tool/interpr2.cxx
index ad4daa7..3aff11e 100644
--- a/sc/source/core/tool/interpr2.cxx
+++ b/sc/source/core/tool/interpr2.cxx
@@ -45,9 +45,13 @@
 #include "tokenarray.hxx"
 #include "globalnames.hxx"
 
+
+#include <com/sun/star/sheet/DataPilotFieldFilter.hpp>
+
 #include <string.h>
 #include <math.h>
 
+using namespace com::sun::star;
 using namespace formula;
 
 #define SCdEpsilon                1.0E-7
@@ -3078,6 +3082,81 @@ void ScInterpreter::ScGetPivotData()
     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "sc", "er", "ScInterpreter::ScGetPivotData" );
     sal_uInt8 nParamCount = GetByte();
 
+#if 1
+    if (!MustHaveParamCount(nParamCount, 2, 30) || (nParamCount % 2) == 1)
+    {
+        PushError(errNoRef);
+        return;
+    }
+
+    bool bOldSyntax = false;
+    if (nParamCount == 2)
+    {
+        // if the first parameter is a ref, assume old syntax
+        StackVar eFirstType = GetStackType(2);
+        if (eFirstType == svSingleRef || eFirstType == svDoubleRef)
+            bOldSyntax = true;
+    }
+
+    if (bOldSyntax)
+    {
+        // TODO: I'll handle this later.
+        PushError(errNoRef);
+        return;
+    }
+
+    // Standard syntax: separate name/value pairs
+
+    sal_uInt16 nFilterCount = nParamCount / 2 - 1;
+    uno::Sequence<sheet::DataPilotFieldFilter> aFilters(nFilterCount);
+
+    sal_uInt16 i = nFilterCount;
+    while (i-- > 0)
+    {
+        //! should allow numeric constraint values
+        aFilters[i].MatchValue = GetString();
+        aFilters[i].FieldName = GetString();
+    }
+
+    ScRange aBlock;
+    switch (GetStackType())
+    {
+        case svDoubleRef :
+            PopDoubleRef(aBlock);
+        break;
+        case svSingleRef :
+        {
+            ScAddress aAddr;
+            PopSingleRef(aAddr);
+            aBlock = aAddr;
+        }
+        break;
+        default:
+            PushError(errNoRef);
+            return;
+    }
+
+    // NOTE : MS Excel docs claim to use the 'most recent' which is not
+    // exactly the same as what we do in ScDocument::GetDPAtBlock
+    // However we do need to use GetDPABlock
+    ScDPObject* pDPObj = pDok->GetDPAtBlock(aBlock);
+    if (!pDPObj)
+    {
+        PushError(errNoRef);
+        return;
+    }
+
+    OUString aDataFieldName = GetString(); // First parameter is data field name.
+
+    double fVal = pDPObj->GetPivotData(aDataFieldName, aFilters);
+    if (rtl::math::isNan(fVal))
+    {
+        PushError(errNoRef);
+        return;
+    }
+    PushDouble(fVal);
+
+#else
     if ( MustHaveParamCount( nParamCount, 2, 30 ) )
     {
         // there must be an even number of args
@@ -3164,6 +3243,7 @@ void ScInterpreter::ScGetPivotData()
 
 failed :
     PushError( errNoRef );
+#endif
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit 0191eb95fb39138500426a87569d365ecaaf8e42
Author: Julien Nabet <serval2412 at yahoo.fr>
Date:   Wed Apr 17 21:06:09 2013 +0200

    fdo#63197: convert wizards
    
    Change-Id: Ic7fa577fbdb527a75643c4e2919e0527432d5536
    Reviewed-on: https://gerrit.libreoffice.org/3439
    Reviewed-by: David Tardon <dtardon at redhat.com>
    Tested-by: David Tardon <dtardon at redhat.com>

diff --git a/scp2/source/ooo/file_ooo.scp b/scp2/source/ooo/file_ooo.scp
index a15e58c..bd5b571 100644
--- a/scp2/source/ooo/file_ooo.scp
+++ b/scp2/source/ooo/file_ooo.scp
@@ -28,33 +28,38 @@
 #include "macros.inc"
 
 File gid_File_Basic_Depot
-    Dir = gid_Dir_Basic_Depot;
-    ARCHIVE_TXT_FILE_BODY;
-    Name = "basicsrvdepot.zip";
+    Dir = FILELIST_DIR;
+    TXT_FILE_BODY;
+    Styles = (FILELIST);
+    Name = "wizards_basicsrvdepot.filelist";
 End
 
 File gid_File_Basic_Euro
-    Dir = gid_Dir_Basic_Euro;
-    ARCHIVE_TXT_FILE_BODY;
-    Name = "basicsrveuro.zip";
+    Dir = FILELIST_DIR;
+    TXT_FILE_BODY;
+    Styles = (FILELIST);
+    Name = "wizards_basicsrveuro.filelist";
 End
 
 File gid_File_Basic_Gimmicks
-    Dir = gid_Dir_Basic_Gimmicks;
-    ARCHIVE_TXT_FILE_BODY;
-    Name = "basicsrvgimmicks.zip";
+    Dir = FILELIST_DIR;
+    TXT_FILE_BODY;
+    Styles = (FILELIST);
+    Name = "wizards_basicsrvgimmicks.filelist";
 End
 
 File gid_File_Basic_Importwiz
-    Dir = gid_Dir_Basic_Importwiz;
-    ARCHIVE_TXT_FILE_BODY;
-    Name = "basicsrvimport.zip";
+    Dir = FILELIST_DIR;
+    TXT_FILE_BODY;
+    Styles = (FILELIST);
+    Name = "wizards_basicsrvimport.filelist";
 End
 
 File gid_File_Basic_Formwiz
-    Dir = gid_Dir_Basic_Formwiz;
-    ARCHIVE_TXT_FILE_BODY;
-    Name = "basicsrvform.zip";
+    Dir = FILELIST_DIR;
+    TXT_FILE_BODY;
+    Styles = (FILELIST);
+    Name = "wizards_basicsrvform.filelist";
 End
 
 #ifndef DISABLE_SCRIPTING
@@ -68,42 +73,45 @@ End
 #endif
 
 File gid_File_Basic_Template
-    Dir = gid_Dir_Basic_Template;
-    ARCHIVE_TXT_FILE_BODY;
-    Name = "basicsrvtemplate.zip";
+    Dir = FILELIST_DIR;
+    TXT_FILE_BODY;
+    Styles = (FILELIST);
+    Name = "wizards_basicsrvtemplate.filelist";
 End
 
 File gid_File_Basic_Tools
-    Dir = gid_Dir_Basic_Tools;
-    ARCHIVE_TXT_FILE_BODY;
-    Name = "basicsrvtools.zip";
+    Dir = FILELIST_DIR;
+    TXT_FILE_BODY;
+    Styles = (FILELIST);
+    Name = "wizards_basicsrvtools.filelist";
 End
 
 File gid_File_Basic_User
+    Dir = FILELIST_DIR;
     USER_FILE_BODY;
-    Styles = (ARCHIVE, WORKSTATION, DONT_OVERWRITE);
-    Dir = gid_Dir_User_Basic;
-    Name = "basicusr.zip";
+    Styles = (FILELIST, WORKSTATION, DONT_OVERWRITE);
+    Name = "wizards_basicusr.filelist";
 End
 
 File gid_File_Basic_Share
+    Dir = FILELIST_DIR;
     USER_FILE_BODY;
-    Styles = (ARCHIVE, WORKSTATION, DONT_OVERWRITE);
-    Dir = gid_Dir_Basic;
-    Name = "basicshare.zip";
+    Styles = (FILELIST, WORKSTATION, DONT_OVERWRITE);
+    Name = "wizards_basicshare.filelist";
 End
 
 File gid_File_Basic_User_Standard
+    Dir = FILELIST_DIR;
     USER_FILE_BODY;
-    Styles = (ARCHIVE, WORKSTATION, DONT_OVERWRITE);
-    Dir = gid_Dir_Basic_Standard;
-    Name = "basicsrvstandard.zip";
+    Styles = (FILELIST, WORKSTATION, DONT_OVERWRITE);
+    Name = "wizards_basicsrvstandard.filelist";
 End
 
 File gid_File_Basic_Tutorials
-    Dir = gid_Dir_Basic_Tutorials;
-    ARCHIVE_TXT_FILE_BODY;
-    Name = "basicsrvtutorials.zip";
+    Dir = FILELIST_DIR;
+    TXT_FILE_BODY;
+    Styles = (FILELIST);
+    Name = "wizards_basicsrvtutorials.filelist";
 End
 
 #if defined ENABLE_NPAPI_INTO_BROWSER
diff --git a/wizards/Module_wizards.mk b/wizards/Module_wizards.mk
index 098433d..2d6e36f 100644
--- a/wizards/Module_wizards.mk
+++ b/wizards/Module_wizards.mk
@@ -34,21 +34,21 @@ $(eval $(call gb_Module_add_targets,wizards,\
 	AllLangResTarget_imp \
 	AllLangResTarget_tpl \
 	AllLangResTarget_wzi \
+	Package_depot \
+	Package_euro \
+	Package_form \
+	Package_gimmicks \
+	Package_import \
+	Package_share \
+	Package_standard \
+	Package_template \
+	Package_tools \
+	Package_tutorials \
+	Package_usr \
 	Pyuno_fax \
 	Pyuno_letter \
 	Pyuno_agenda \
 	Pyuno_commonwizards \
-	Zip_depot \
-	Zip_euro \
-	Zip_form \
-	Zip_gimmicks \
-	Zip_import \
-	Zip_share \
-	Zip_standard \
-	Zip_template \
-	Zip_tools \
-	Zip_tutorials \
-	Zip_usr \
 ))
 
 ifeq ($(SOLAR_JAVA),TRUE)
diff --git a/wizards/Package_depot.mk b/wizards/Package_depot.mk
new file mode 100644
index 0000000..229b17e
--- /dev/null
+++ b/wizards/Package_depot.mk
@@ -0,0 +1,56 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# 
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# 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.
+#
+#*************************************************************************
+
+$(eval $(call gb_Package_Package,wizards_basicsrvdepot,$(SRCDIR)/wizards/source/depot))
+
+$(eval $(call gb_Package_set_outdir,wizards_basicsrvdepot,$(INSTDIR)))
+
+$(eval $(call gb_Package_add_files,wizards_basicsrvdepot,share/basic/Depot,\
+	CommonLang.xba \
+	Currency.xba \
+	Depot.xba \
+	dialog.xlb \
+	Dialog2.xdl \
+	Dialog3.xdl \
+	Dialog4.xdl \
+	Internet.xba \
+	Lang_de.xba \
+	Lang_en.xba \
+	Lang_es.xba \
+	Lang_fr.xba \
+	Lang_it.xba \
+	Lang_ja.xba \
+	Lang_ko.xba \
+	Lang_sv.xba \
+	Lang_tw.xba \
+	Lang_zh.xba \
+	script.xlb \
+	tools.xba \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/wizards/Package_euro.mk b/wizards/Package_euro.mk
new file mode 100644
index 0000000..db5cd94
--- /dev/null
+++ b/wizards/Package_euro.mk
@@ -0,0 +1,48 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# 
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# 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.
+#
+#*************************************************************************
+
+$(eval $(call gb_Package_Package,wizards_basicsrveuro,$(SRCDIR)/wizards/source/euro))
+
+$(eval $(call gb_Package_set_outdir,wizards_basicsrveuro,$(INSTDIR)))
+
+$(eval $(call gb_Package_add_files,wizards_basicsrveuro,share/basic/Euro,\
+	AutoPilotRun.xba \
+	Common.xba \
+	ConvertRun.xba \
+	dialog.xlb \
+	DlgConvert.xdl \
+	DlgPassword.xdl \
+	Hard.xba \
+	Init.xba \
+	Protect.xba \
+	script.xlb \
+	Soft.xba \
+	Writer.xba \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/wizards/Package_form.mk b/wizards/Package_form.mk
new file mode 100644
index 0000000..228d0bf
--- /dev/null
+++ b/wizards/Package_form.mk
@@ -0,0 +1,45 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# 
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# 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.
+#
+#*************************************************************************
+
+$(eval $(call gb_Package_Package,wizards_basicsrvform,$(SRCDIR)/wizards/source/formwizard))
+
+$(eval $(call gb_Package_set_outdir,wizards_basicsrvform,$(INSTDIR)))
+
+$(eval $(call gb_Package_add_files,wizards_basicsrvform,share/basic/FormWizard,\
+	DBMeta.xba \
+	develop.xba \
+	dialog.xlb \
+	DlgFormDB.xdl \
+	FormWizard.xba \
+	Language.xba \
+	Layouter.xba \
+	script.xlb \
+	tools.xba \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/wizards/Package_gimmicks.mk b/wizards/Package_gimmicks.mk
new file mode 100644
index 0000000..1e1ad29
--- /dev/null
+++ b/wizards/Package_gimmicks.mk
@@ -0,0 +1,45 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# 
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# 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.
+#
+#*************************************************************************
+
+$(eval $(call gb_Package_Package,wizards_basicsrvgimmicks,$(SRCDIR)/wizards/source/gimmicks))
+
+$(eval $(call gb_Package_set_outdir,wizards_basicsrvgimmicks,$(INSTDIR)))
+
+$(eval $(call gb_Package_add_files,wizards_basicsrvgimmicks,share/basic/Gimmicks,\
+	AutoText.xba \
+	ChangeAllChars.xba \
+	dialog.xlb \
+	GetTexts.xba \
+	ReadDir.xba \
+	ReadFolderDlg.xdl \
+	script.xlb \
+	UserfieldDlg.xdl \
+	Userfields.xba \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/wizards/Package_import.mk b/wizards/Package_import.mk
new file mode 100644
index 0000000..16d569b
--- /dev/null
+++ b/wizards/Package_import.mk
@@ -0,0 +1,44 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# 
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# 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.
+#
+#*************************************************************************
+
+$(eval $(call gb_Package_Package,wizards_basicsrvimport,$(SRCDIR)/wizards/source/importwizard))
+
+$(eval $(call gb_Package_set_outdir,wizards_basicsrvimport,$(INSTDIR)))
+
+$(eval $(call gb_Package_add_files,wizards_basicsrvimport,share/basic/ImportWizard,\
+	API.xba \
+	dialog.xlb \
+	DialogModul.xba \
+	FilesModul.xba \
+	ImportDialog.xdl \
+	Language.xba\
+	Main.xba \
+	script.xlb \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/wizards/Package_share.mk b/wizards/Package_share.mk
new file mode 100644
index 0000000..d7f0752
--- /dev/null
+++ b/wizards/Package_share.mk
@@ -0,0 +1,38 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# 
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# 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.
+#
+#*************************************************************************
+
+$(eval $(call gb_Package_Package,wizards_basicshare,$(SRCDIR)/wizards/source/configshare))
+
+$(eval $(call gb_Package_set_outdir,wizards_basicshare,$(INSTDIR)))
+
+$(eval $(call gb_Package_add_files,wizards_basicshare,share/basic,\
+	dialog.xlc \
+	script.xlc \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/wizards/Package_standard.mk b/wizards/Package_standard.mk
new file mode 100644
index 0000000..cd76305
--- /dev/null
+++ b/wizards/Package_standard.mk
@@ -0,0 +1,39 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# 
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# 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.
+#
+#*************************************************************************
+
+$(eval $(call gb_Package_Package,wizards_basicsrvstandard,$(SRCDIR)/wizards/source/standard))
+
+$(eval $(call gb_Package_set_outdir,wizards_basicsrvstandard,$(INSTDIR)))
+
+$(eval $(call gb_Package_add_files,wizards_basicsrvstandard,presets/basic/Standard,\
+	dialog.xlb \
+	Module1.xba \
+	script.xlb \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/wizards/Package_template.mk b/wizards/Package_template.mk
new file mode 100644
index 0000000..a69ebc8
--- /dev/null
+++ b/wizards/Package_template.mk
@@ -0,0 +1,44 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# 
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# 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.
+#
+#*************************************************************************
+
+$(eval $(call gb_Package_Package,wizards_basicsrvtemplate,$(SRCDIR)/wizards/source/template))
+
+$(eval $(call gb_Package_set_outdir,wizards_basicsrvtemplate,$(INSTDIR)))
+
+$(eval $(call gb_Package_add_files,wizards_basicsrvtemplate,share/basic/Template,\
+	Autotext.xba \
+	Correspondence.xba \
+	dialog.xlb \
+	DialogStyles.xdl \
+	ModuleAgenda.xba \
+	Samples.xba \
+	script.xlb \
+	TemplateDialog.xdl \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/wizards/Package_tools.mk b/wizards/Package_tools.mk
new file mode 100644
index 0000000..743b6f3
--- /dev/null
+++ b/wizards/Package_tools.mk
@@ -0,0 +1,45 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# 
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# 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.
+#
+#*************************************************************************
+
+$(eval $(call gb_Package_Package,wizards_basicsrvtools,$(SRCDIR)/wizards/source/tools))
+
+$(eval $(call gb_Package_set_outdir,wizards_basicsrvtools,$(INSTDIR)))
+
+$(eval $(call gb_Package_add_files,wizards_basicsrvtools,share/basic/Tools,\
+	Debug.xba \
+	dialog.xlb \
+	DlgOverwriteAll.xdl \
+	Listbox.xba \
+	Misc.xba \
+	ModuleControls.xba\
+	script.xlb \
+	Strings.xba \
+	UCB.xba \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/wizards/Package_tutorials.mk b/wizards/Package_tutorials.mk
new file mode 100644
index 0000000..410e221
--- /dev/null
+++ b/wizards/Package_tutorials.mk
@@ -0,0 +1,47 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# 
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# 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.
+#
+#*************************************************************************
+
+$(eval $(call gb_Package_Package,wizards_basicsrvtutorials,$(SRCDIR)/wizards/source/tutorials))
+
+$(eval $(call gb_Package_set_outdir,wizards_basicsrvtutorials,$(INSTDIR)))
+
+$(eval $(call gb_Package_add_files,wizards_basicsrvtutorials,share/basic/Tutorials,\
+	dialog.xlb \
+	Functions.xba \
+	RoadMap.xba \
+	script.xlb \
+	ShowInfoDialog.xba \
+	TutorialClose.xba \
+	TutorialCloseDialog.xdl \
+	TutorialCreator.xba \
+	TutorialOpen.xba\
+	TutorialOpenDialog.xdl \
+	TutorialsDialog.xdl \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/wizards/Package_usr.mk b/wizards/Package_usr.mk
new file mode 100644
index 0000000..d0f2364
--- /dev/null
+++ b/wizards/Package_usr.mk
@@ -0,0 +1,38 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# 
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# 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.
+#
+#*************************************************************************
+
+$(eval $(call gb_Package_Package,wizards_basicusr,$(SRCDIR)/wizards/source/config))
+
+$(eval $(call gb_Package_set_outdir,wizards_basicusr,$(INSTDIR)))
+
+$(eval $(call gb_Package_add_files,wizards_basicusr,presets/basic,\
+	dialog.xlc \
+	script.xlc \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/wizards/Zip_depot.mk b/wizards/Zip_depot.mk
deleted file mode 100644
index 8dd5fef..0000000
--- a/wizards/Zip_depot.mk
+++ /dev/null
@@ -1,54 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2011 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# 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.
-#
-#*************************************************************************
-
-$(eval $(call gb_Zip_Zip,basicsrvdepot,$(SRCDIR)/wizards/source/depot))
-
-$(eval $(call gb_Zip_add_files,basicsrvdepot,\
-	CommonLang.xba \
-	Currency.xba \
-	Depot.xba \
-	dialog.xlb \
-	Dialog2.xdl \
-	Dialog3.xdl \
-	Dialog4.xdl \
-	Internet.xba \
-	Lang_de.xba \
-	Lang_en.xba \
-	Lang_es.xba \
-	Lang_fr.xba \
-	Lang_it.xba \
-	Lang_ja.xba \
-	Lang_ko.xba \
-	Lang_sv.xba \
-	Lang_tw.xba \
-	Lang_zh.xba \
-	script.xlb \
-	tools.xba \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/wizards/Zip_euro.mk b/wizards/Zip_euro.mk
deleted file mode 100644
index ac71ce9..0000000
--- a/wizards/Zip_euro.mk
+++ /dev/null
@@ -1,46 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2011 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# 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.
-#
-#*************************************************************************
-
-$(eval $(call gb_Zip_Zip,basicsrveuro,$(SRCDIR)/wizards/source/euro))
-
-$(eval $(call gb_Zip_add_files,basicsrveuro,\
-	AutoPilotRun.xba \
-	Common.xba \
-	ConvertRun.xba \
-	dialog.xlb \
-	DlgConvert.xdl \
-	DlgPassword.xdl \
-	Hard.xba \
-	Init.xba \
-	Protect.xba \
-	script.xlb \
-	Soft.xba \
-	Writer.xba \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/wizards/Zip_form.mk b/wizards/Zip_form.mk
deleted file mode 100644
index 8a2d577..0000000
--- a/wizards/Zip_form.mk
+++ /dev/null
@@ -1,43 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2011 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# 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.
-#
-#*************************************************************************
-
-$(eval $(call gb_Zip_Zip,basicsrvform,$(SRCDIR)/wizards/source/formwizard))
-
-$(eval $(call gb_Zip_add_files,basicsrvform,\
-	DBMeta.xba \
-	develop.xba \
-	dialog.xlb \
-	DlgFormDB.xdl \
-	FormWizard.xba \
-	Language.xba \
-	Layouter.xba \
-	script.xlb \
-	tools.xba \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/wizards/Zip_gimmicks.mk b/wizards/Zip_gimmicks.mk
deleted file mode 100644
index 1099756..0000000
--- a/wizards/Zip_gimmicks.mk
+++ /dev/null
@@ -1,43 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2011 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# 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.
-#
-#*************************************************************************
-
-$(eval $(call gb_Zip_Zip,basicsrvgimmicks,$(SRCDIR)/wizards/source/gimmicks))
-
-$(eval $(call gb_Zip_add_files,basicsrvgimmicks,\
-	AutoText.xba \
-	ChangeAllChars.xba \
-	dialog.xlb \
-	GetTexts.xba \
-	ReadDir.xba \
-	ReadFolderDlg.xdl \
-	script.xlb \
-	UserfieldDlg.xdl \
-	Userfields.xba \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/wizards/Zip_import.mk b/wizards/Zip_import.mk
deleted file mode 100644
index 1cabc80..0000000
--- a/wizards/Zip_import.mk
+++ /dev/null
@@ -1,42 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2011 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# 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.
-#
-#*************************************************************************
-
-$(eval $(call gb_Zip_Zip,basicsrvimport,$(SRCDIR)/wizards/source/importwizard))
-
-$(eval $(call gb_Zip_add_files,basicsrvimport,\
-	API.xba \
-	dialog.xlb \
-	DialogModul.xba \
-	FilesModul.xba \
-	ImportDialog.xdl \
-	Language.xba\
-	Main.xba \
-	script.xlb \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/wizards/Zip_share.mk b/wizards/Zip_share.mk
deleted file mode 100644
index 5f90a1a3..0000000
--- a/wizards/Zip_share.mk
+++ /dev/null
@@ -1,36 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2011 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# 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.
-#
-#*************************************************************************
-
-$(eval $(call gb_Zip_Zip,basicshare,$(SRCDIR)/wizards/source/configshare))
-
-$(eval $(call gb_Zip_add_files,basicshare,\
-	dialog.xlc \
-	script.xlc \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/wizards/Zip_standard.mk b/wizards/Zip_standard.mk
deleted file mode 100644
index 87bbb4a..0000000
--- a/wizards/Zip_standard.mk
+++ /dev/null
@@ -1,37 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2011 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# 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.
-#
-#*************************************************************************
-
-$(eval $(call gb_Zip_Zip,basicsrvstandard,$(SRCDIR)/wizards/source/standard))
-
-$(eval $(call gb_Zip_add_files,basicsrvstandard,\
-	dialog.xlb \
-	Module1.xba \
-	script.xlb \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/wizards/Zip_template.mk b/wizards/Zip_template.mk
deleted file mode 100644
index 238a375..0000000
--- a/wizards/Zip_template.mk
+++ /dev/null
@@ -1,42 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2011 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# 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.
-#
-#*************************************************************************
-
-$(eval $(call gb_Zip_Zip,basicsrvtemplate,$(SRCDIR)/wizards/source/template))
-
-$(eval $(call gb_Zip_add_files,basicsrvtemplate,\
-	Autotext.xba \
-	Correspondence.xba \
-	dialog.xlb \
-	DialogStyles.xdl \
-	ModuleAgenda.xba \
-	Samples.xba \
-	script.xlb \
-	TemplateDialog.xdl \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/wizards/Zip_tools.mk b/wizards/Zip_tools.mk
deleted file mode 100644
index f723113..0000000
--- a/wizards/Zip_tools.mk
+++ /dev/null
@@ -1,43 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2011 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# 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.
-#
-#*************************************************************************
-
-$(eval $(call gb_Zip_Zip,basicsrvtools,$(SRCDIR)/wizards/source/tools))
-
-$(eval $(call gb_Zip_add_files,basicsrvtools,\
-	Debug.xba \
-	dialog.xlb \
-	DlgOverwriteAll.xdl \
-	Listbox.xba \
-	Misc.xba \
-	ModuleControls.xba\
-	script.xlb \
-	Strings.xba \
-	UCB.xba \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/wizards/Zip_tutorials.mk b/wizards/Zip_tutorials.mk
deleted file mode 100644
index 6c0608a..0000000
--- a/wizards/Zip_tutorials.mk
+++ /dev/null
@@ -1,45 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2011 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# 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.
-#
-#*************************************************************************
-
-$(eval $(call gb_Zip_Zip,basicsrvtutorials,$(SRCDIR)/wizards/source/tutorials))
-
-$(eval $(call gb_Zip_add_files,basicsrvtutorials,\
-	dialog.xlb \
-	Functions.xba \
-	RoadMap.xba \
-	script.xlb \
-	ShowInfoDialog.xba \
-	TutorialClose.xba \
-	TutorialCloseDialog.xdl \
-	TutorialCreator.xba \
-	TutorialOpen.xba\
-	TutorialOpenDialog.xdl \
-	TutorialsDialog.xdl \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/wizards/Zip_usr.mk b/wizards/Zip_usr.mk
deleted file mode 100644
index efb2968..0000000
--- a/wizards/Zip_usr.mk
+++ /dev/null
@@ -1,36 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2011 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# 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.
-#
-#*************************************************************************
-
-$(eval $(call gb_Zip_Zip,basicusr,$(SRCDIR)/wizards/source/config))
-
-$(eval $(call gb_Zip_add_files,basicusr,\
-	dialog.xlc \
-	script.xlc \
-))
-
-# vim: set noet sw=4 ts=4:
commit 718cd9e46e47cc384758f0517d4e5b3b70d2a73d
Author: Julien Nabet <serval2412 at yahoo.fr>
Date:   Wed Apr 17 20:29:45 2013 +0200

    Remove unused web wizard
    
    Change-Id: I76ed89c4a46e5a7b6a639e2c2717bc53d9b68bc9
    Reviewed-on: https://gerrit.libreoffice.org/3438
    Reviewed-by: David Tardon <dtardon at redhat.com>
    Tested-by: David Tardon <dtardon at redhat.com>

diff --git a/wizards/Module_wizards.mk b/wizards/Module_wizards.mk
index d979ed0..098433d 100644
--- a/wizards/Module_wizards.mk
+++ b/wizards/Module_wizards.mk
@@ -49,7 +49,6 @@ $(eval $(call gb_Module_add_targets,wizards,\
 	Zip_tools \
 	Zip_tutorials \
 	Zip_usr \
-	Zip_web \
 ))
 
 ifeq ($(SOLAR_JAVA),TRUE)
diff --git a/wizards/Zip_web.mk b/wizards/Zip_web.mk
deleted file mode 100644
index c552440..0000000
--- a/wizards/Zip_web.mk
+++ /dev/null
@@ -1,41 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2011 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# 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.
-#
-#*************************************************************************
-
-$(eval $(call gb_Zip_Zip,basicsrvweb,$(SRCDIR)/wizards/source/webwizard))
-
-$(eval $(call gb_Zip_add_files,basicsrvweb,\
-	Bullets.xba \
-	Common.xba \
-	dialog.xlb \
-	HtmlAutoPilotBasic.xba \
-	Language.xba \
-	script.xlb \
-	WebWzrd.xdl \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/wizards/source/webwizard/Bullets.xba b/wizards/source/webwizard/Bullets.xba
deleted file mode 100644
index 76d825a..0000000
--- a/wizards/source/webwizard/Bullets.xba
+++ /dev/null
@@ -1,134 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
-<!--
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
--->
-<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Bullets" script:language="StarBasic">REM  *****  BASIC  *****
-Option Explicit
-
-
-Sub	SetBulletGraphics(sBulletUrl as String)
-Dim i as Integer
-Dim oBookMarkCursor as Object
-	oBookmarks = oBaseDocument.BookMarks
-	For i = 0 To oBookmarks.Count - 1
-		oBookMark = oBookmarks.GetbyIndex(i)
-		oBookMarkCursor = oBookMark.Anchor.Text.CreateTextCursorByRange(oBookMark.Anchor)
-		If oBookMarkCursor.PropertySetInfo.HasPropertybyName("NumberingRules") Then
-			ChangeBulletURL(sBulletUrl, oBookMarkCursor)
-		End If
-	Next i
-End Sub
-
-
-Sub	ChangeBulletURL(sBulletUrl as String, oBookMarkCursor as Object)
-Dim n, m as Integer
-Dim oLevel()
-Dim oRules
-Dim bDoReplace as Boolean
-Dim oSize as New com.sun.star.awt.Size
-Dim oNumberingBuffer(0) as New com.sun.star.beans.PropertyValue
-Dim oNewBuffer(0) as New com.sun.star.beans.PropertyValue
-	oRules = oBookMarkCursor.NumberingRules
-	If Vartype(oRules()) = 9 Then
-		oNumberingBuffer(0).Name = "NumberingType"
-		oNumberingBuffer(0).Value = com.sun.star.style.NumberingType.BITMAP
-		For n = 0 To oRules.Count - 1
-			oLevel() = oRules.GetByIndex(n)
-			bDoReplace = ModifyPropertyValue(oLevel(), oNumberingBuffer())
-			If bDoReplace Then
-				oRules.ReplaceByIndex(n, oNumberingBuffer())
-			End If
-		Next n
-		oBookmarkCursor.NumberingRules = oRules
-		oNewBuffer(0).Name = "GraphicURL"
-		oNewBuffer(0).Value = sBulletUrl
-		For n = 0 To oRules.Count - 1
-			oLevel() = oRules.GetByIndex(0)
-			bDoReplace = ModifyPropertyValue(oLevel(), oNewBuffer())
-			If bDoReplace Then
-				oRules.ReplaceByIndex(n, oNewBuffer())
-			End If
-		Next n
-		oBookmarkCursor.NumberingRules = oRules
-	End If
-End Sub
-
-
-Sub	BulletUrlsToSavePath(SavePath as String)
-Dim n as Integer
-Dim m as Integer
-Dim i as Integer
-Dim sNewBulletUrl as String
-Dim oLevel()
-Dim oRules
-Dim bIsFirstRun as Boolean
-Dim oNewBuffer()' as New com.sun.star.beans.PropertyValue
-Dim bDoReplace as Boolean
-Dim oBookmarkCursor as Object
-	bIsFirstRun = True
-	oBookmarks = oBaseDocument.BookMarks
-	For i = 0 To oBookmarks.Count - 1
-		oBookMark = oBookmarks.GetbyIndex(i)
-		oBookMarkCursor = oBookMark.Anchor.Text.CreateTextCursorByRange(oBookMark.Anchor)
-		If oBookMarkCursor.PropertySetInfo.HasPropertybyName("NumberingRules") Then
-			oRules = oBookMarkCursor.NumberingRules
-			If Vartype(oRules()) = 9 Then
-				For n = 0 To oRules.Count - 1
-					oLevel() = oRules.GetByIndex(n)
-					oNewBuffer() = ChangeBulletUrlToSavePath(SavePath, oLevel(), bIsFirstRun, bDoReplace)
-					If bDoReplace Then
-						bIsFirstRun = False
-						oRules.ReplaceByIndex(n, oNewBuffer())
-					End If
-				Next n
-				oBookmarkCursor.NumberingRules = oRules
-			End If
-		End If
-	Next i
-End Sub
-
-
-Function ChangeBulletUrlToSavePath(SavePath as String, oLevel(), bIsFirstRun as Boolean, bDoReplace as Boolean)			
-Dim MaxIndex as Integer
-Dim i as Integer
-Dim BulletName as String
-Dim oSize as New com.sun.star.awt.Size
-	MaxIndex = Ubound(oLevel())
-	Dim oNewBuffer(MaxIndex) as New com.sun.star.beans.PropertyValue
-	For i = 0 To MaxIndex
-		oNewBuffer(i).Name = oLevel(i).Name
-		If oLevel(i).Name = "GraphicURL" Then
-			bDoReplace = True
-			BulletName = FileNameoutofPath(oLevel(i).Value)
-			If bIsFirstRun Then
-				If oUcb.exists(SavePath & Bulletname) Then
-					FileCopy(oLevel(i).Value, SavePath & BulletName)
-				End If
-			End If
-			oNewBuffer(i).Value = BulletName
-'		ElseIf oLevel(i).Name = "GraphicSize" Then
-'' Todo: Get the original Size of the Bullet (see Bug #86196)
-'			oSize.Height = 300
-'			oSize.Width = 300
-'			oNewBuffer(i).Value = oSize
-		Else
-			oNewBuffer(i).Value = oLevel(i).Value					
-		End If
-	Next i
-	ChangeBulletUrlToSavePath() = oNewBuffer()
-End Function</script:module>
\ No newline at end of file
diff --git a/wizards/source/webwizard/Common.xba b/wizards/source/webwizard/Common.xba
deleted file mode 100644
index ea3fe55..0000000
--- a/wizards/source/webwizard/Common.xba
+++ /dev/null
@@ -1,162 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
-<!--
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
--->
-<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Common" script:language="StarBasic">REM  *****  BASIC  *****
-Option Explicit
-
-
-Function LoadNewStyles(oDocument as Object, oDialogModel as Object, CurIndex as Integer, SourceFile as String, Styles() as String, TextureDir as String) as Boolean
-Dim BackGroundURL as String
-Dim oBackGraph as Object
-Dim i, BackColor as Long
-Dim bLocWithBackGraphic as Boolean
-Dim oFamilies as Object, oFamily as Object', oStyle as Object
-Dim StylesOptions(0) as New com.sun.star.beans.PropertyValue
-
-	If SourceFile <> "" Then
-		StylesOptions(0).Name = "OverwriteStyles"
-		StylesOptions(0).Value = True
-		oDocument.StyleFamilies.LoadStylesFromURL(SourceFile, StylesOptions())
-	End If
-
-	' Read array fields for background, bullet & graphics
-	BackgroundURL = Styles(CurIndex, 7)
-	If Left(BackgroundURL, 1) <> "#" Then
-		BackgroundURL = TextureDir + BackgroundURL
-		bLocWithBackGraphic = True
-	Else
-		BackColor = clng("&H" & Right(BackgroundURL, Len(BackgroundURL)-1))
-		bLocWithBackGraphic = False
-	End If
-	oFamilies = oDocument.StyleFamilies
-	oFamily = oFamilies.GetbyName("PageStyles")
-	For i = 0 To oFamily.Count - 1
-		If oFamily.GetByIndex(i).IsInUse Then
-			oStyle = oFamily.GetbyIndex(i)
-			If oStyle.PropertySetInfo.HasPropertybyName("BackGraphicURL") Then
-				If Left(BackgroundURL, 1) = "#" Then
-					oStyle.BackGraphicURL = ""
-					oStyle.BackColor = BackColor
-					oStyle.BackTransparent = False
-				Else
-					oStyle.BackGraphicUrl = BackGroundURL
-					SetTileBackgroundorNot(oDialogModel, oStyle)
-				End If
-				Exit For
-			End If
-		End If
-	Next i
-	LoadNewStyles() = bLocWithBackGraphic
-ErrorOcurred:
-	If Err <> 0 Then
-		MsgBox (WebWiz_gErrWhileLoadStyles$, 16, WebWiz_gWizardName$)
-		RESUME EXITSUB
-EXITSUB:		
-	End If
-End Function
-
-
-
-Sub ChangeBackGraphicUrl(SavePath as String)
-Dim oPageFamily as Object
-Dim i as Integer
-	oPageFamily = oBaseDocument.StyleFamilies.GetbyName("PageStyles")
-	For i = 0 To oPageFamily.Count - 1
-		If oPageFamily.GetByIndex(i).IsInUse Then
-			oStyle = oPageFamily.GetbyIndex(i)
-			If oStyle.PropertySetInfo.HasPropertybyName("BackGraphicURL") Then
-				If oStyle.BackGraphicUrl <> "" Then
-					oStyle.BackGraphicUrl = CopyFile(oStyle.BackGraphicUrl, SavePath)
-					Exit Sub
-				End If
-			End If
-		End If
-	Next i
-End Sub
-
-
-Sub SetBackGraphicStyle(oEvent as Object)
-Dim oFamilies as Object
-Dim oFamily as Object
-Dim i as Integer
-Dim oOptModel as Object
-Dim iBackgroundValue as Integer
-Dim oLocDocument as Object
-	ooptModel = oEvent.Source.Model
-	iBackgroundValue = Val(ooptModel.Tag)
-	oLocDocument = StarDesktop.ActiveFrame.Controller.Model
-	oLocDocument.LockControllers
-	oFamilies = oLocDocument.StyleFamilies
-	oFamily = oFamilies.GetbyName("PageStyles")
-	For i = 0 To oFamily.Count - 1
-		If oFamily.GetByIndex(i).IsInUse Then
-			oStyle = oFamily.GetbyIndex(i)
-			If oStyle.PropertySetInfo.HasPropertybyName("BackGraphicURL") Then
-				oStyle.BackGraphicLocation = iBackgroundValue
-			End If
-		End If
-	Next i
-	oLocDocument.UnlockControllers
-End Sub
-
-

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list