diff options
author | nobody <nobody@gnome.org> | 2006-11-13 12:21:50 +0000 |
---|---|---|
committer | nobody <nobody@gnome.org> | 2006-11-13 12:21:50 +0000 |
commit | 4345ebd6790c57095aec36a3e7bbfc676ea06c9e (patch) | |
tree | 757743ceec633e4a9ffe7d38952e0a75634e29fc | |
parent | 1abb7b0080fb8f9615462154f1c2ddb213772bd1 (diff) |
This commit was manufactured by cvs2svn to create tagOOO_BUILD_2_0_4_5
'OOO_BUILD_2_0_4_5'.
-rw-r--r-- | distro-configs/Debian.conf.in | 1 | ||||
-rw-r--r-- | etc/test.list | 283 | ||||
-rw-r--r-- | patches/scsolver/scsolver-source-ui-basedlg-cxx.diff | 66 | ||||
-rw-r--r-- | patches/scsolver/scsolver-source-ui-dialog-cxx.diff | 83 | ||||
-rw-r--r-- | patches/src680/buildfix-hsqldb-1-8-0-7.diff | 36 | ||||
-rw-r--r-- | patches/src680/sd.sal_uInt32_aslong.diff | 16 | ||||
-rw-r--r-- | patches/vba/sc-source-ui-vba-vbarange-cxx.diff | 196 | ||||
-rw-r--r-- | patches/vba/vba-accent-in-module.diff | 14 | ||||
-rw-r--r-- | patches/vba/vba-support-export-palette.diff | 5 | ||||
-rw-r--r-- | scratch/scsolver/source/inc/xcalc.hxx | 6 | ||||
-rw-r--r-- | scratch/scsolver/source/ui/optiondlg.cxx | 54 |
11 files changed, 566 insertions, 194 deletions
diff --git a/distro-configs/Debian.conf.in b/distro-configs/Debian.conf.in index db7f24ea8..fedfc3248 100644 --- a/distro-configs/Debian.conf.in +++ b/distro-configs/Debian.conf.in @@ -2,6 +2,7 @@ --enable-libsn --disable-fontooo --with-system-expat +--with-system-odbc-headers --with-system-nas --with-system-curl --with-system-sane-header diff --git a/etc/test.list b/etc/test.list index 7992a51fe..25301b8c8 100644 --- a/etc/test.list +++ b/etc/test.list @@ -1,185 +1,226 @@ -# Tests started by Sun QA for OOo-2.0.3 on 17 May, 2006 -# See http://qa.openoffice.org/qatesttool/all_tests_ooo203.html +# Tests started by Sun QA for OOo-2.0.4 on 30 August, 2006 +# See http://qa.openoffice.org/qatesttool/all_tests_ooo204.html framework/first/first.bas framework/first/topten.bas +framework/basic/f_basic_basicdocuments.bas +framework/basic/f_basic_extensions.bas +framework/basic/f_basic_first.bas +framework/basic/f_basic_formcontrols.bas +framework/basic/f_basic_library_export_import.bas +framework/basic/f_basic_meta-inf.bas +framework/basic/f_basic_modules.bas +framework/basic/f_basic_package_export_import.bas +framework/basic/f_basic_protected_libraries.bas +framework/basic/f_basic_spectemplate.bas +framework/basic/f_basic_usertemplate.bas +framework/basic/f_java_load_applets.bas +framework/basic/f_scripting_addpkg.bas +framework/basic/f_scripting_basics.bas +framework/basic/f_scripting_organizers.bas +framework/extras/extras_autotext.bas +framework/extras/extras_drawobjects.bas +framework/extras/extras_fonts.bas +framework/extras/extras_labels.bas +framework/extras/extras_sampleopen.bas +framework/extras/extras_samplepreview.bas +framework/extras/extras_tableautoformat.bas +framework/extras/extras_templateopen.bas +framework/extras/extras_templatepreview.bas +framework/filedlg/filedlg_accented_foldernames.bas +framework/filedlg/filedlg_attributes.bas +framework/filedlg/filedlg_autocompletion.bas +framework/filedlg/filedlg_cjkchars.bas +framework/filedlg/filedlg_dialogtest.bas +framework/filedlg/filedlg_filenames1.bas +framework/filedlg/filedlg_filenames2.bas +framework/filedlg/filedlg_filenames3.bas +framework/filedlg/filedlg_folders.bas +framework/filedlg/filedlg_passwords.bas +framework/help/help_bookmarks.bas +framework/help/help_compare_apps.bas +framework/level1/f_function_toolbar_behavior.bas framework/level1/f_lvl1_loadsave.bas +framework/level1/f_lvl1_ole.bas +framework/level1/f_lvl1_tools.bas framework/level2/CJK/CJK_FeatureSwitch.bas framework/level2/CJK/CJK_GridLayout.bas framework/level2/CJK/CJK_RubyDialogueProposal.bas framework/level2/CJK/NewSortingAlgorithmForJapanese.bas -framework/update/f_updt_help.bas -framework/update/f_updt_templates.bas -framework/update/f_updt_toolbars.bas -framework/update/f_updt_spadmin.bas -framework/basic/f_scripting_basics.bas -framework/update/f_updt_firsttimewizard.bas +framework/options/f_opt_loadsave.bas +framework/options/f_opt_ooo.bas +framework/security/f_sec_broken_signature.bas +framework/security/f_sec_certification_dialogs.bas +framework/security/f_sec_certified_docs.bas +framework/security/f_sec_evilmacro.bas +framework/security/f_sec_incorrect_password.bas +framework/security/f_sec_macrosecurity.bas +framework/security/f_sec_recommend_password.bas framework/update/f_updt_agendawizard.bas -framework/basic/f_basic_first.bas +framework/update/f_updt_autotext.bas framework/update/f_updt_basic.bas framework/update/f_updt_basicorganizer.bas -framework/update/f_updt_presentationwizard.bas +framework/update/f_updt_customize.bas framework/update/f_updt_documentconverter.bas framework/update/f_updt_euroconverter.bas -framework/update/f_updt_wizard_webpage.bas +framework/update/f_updt_faxwizard.bas +framework/update/f_updt_firsttimewizard.bas +framework/update/f_updt_help.bas +framework/update/f_updt_letterwizard.bas +framework/update/f_updt_optionitems.bas +framework/update/f_updt_pkgmgr.bas +framework/update/f_updt_presentationwizard.bas framework/update/f_updt_scriptnames.bas -framework/update/f_updt_autotext.bas -framework/update/f_updt_customize.bas -framework/filedlg/filedlg_attributes.bas -framework/filedlg/filedlg_autocompletion.bas -framework/filedlg/filedlg_dialogtest.bas -framework/extras/extras_drawobjects.bas -framework/basic/f_basic_modules.bas +framework/update/f_updt_spadmin.bas +framework/update/f_updt_templates.bas +framework/update/f_updt_toolbars.bas framework/update/f_updt_windowfuncs.bas -framework/basic/f_scripting_addpkg.bas -framework/security/f_sec_recommend_password.bas -framework/basic/f_scripting_organizers.bas -framework/help/help_search.bas -framework/basic/f_basic_usertemplate.bas -framework/basic/f_basic_package_export_import.bas -framework/filedlg/filedlg_filenames1.bas -framework/filedlg/filedlg_filenames2.bas -framework/filedlg/filedlg_filenames3.bas -framework/extras/extras_fonts.bas -framework/extras/extras_labels.bas -framework/extras/extras_samplepreview.bas -framework/extras/extras_tableautoformat.bas -framework/extras/extras_templatepreview.bas -framework/update/f_updt_pkgmgr.bas -framework/basic/f_basic_formcontrols.bas -framework/level1/f_lvl1_tools.bas -framework/security/f_sec_incorrect_password.bas -framework/security/f_sec_certified_docs.bas -framework/basic/f_basic_basicdocuments.bas -framework/help/help_compare_apps.bas -framework/basic/f_java_load_applets.bas -framework/basic/f_basic_library_export_import.bas -framework/security/f_sec_certification_dialogs.bas -framework/help/help_compare_content.bas -framework/help/help_bookmarks.bas -framework/filedlg/filedlg_folders.bas -framework/filedlg/filedlg_cjkchars.bas -framework/extras/extras_autotext.bas -framework/options/f_opt_ooo.bas -framework/options/f_opt_loadsave.bas -framework/filedlg/filedlg_passwords.bas -writer/update/ma_updt.bas -writer/update/w_updt.bas -writer/update/ww_updt.bas -writer/level1/w_redlining.bas -writer/level1/w_insertgraphic.bas -writer/level1/w_stylist.bas +framework/update/f_updt_wizard_webpage.bas writer/level1/w_autotext.bas -writer/level1/w_formatparagraph.bas -writer/level1/w_formatpage.bas -writer/level1/w_clipbrd.bas -writer/level1/w_opt.bas -writer/level1/w_search.bas -writer/level1/w_navigator.bas -writer/level1/w_spellcheck.bas writer/level1/w_calculate.bas -writer/level1/w_numbering.bas +writer/level1/w_clipbrd.bas +writer/level1/w_dropdownLB.bas +writer/level1/w_fontwork.bas writer/level1/w_formatcharacter.bas +writer/level1/w_formatpage.bas +writer/level1/w_formatparagraph.bas writer/level1/w_hyphenation.bas -writer/loadsave/w_filter.bas -writer/level1/w_dropdownLB.bas -writer/loadsave/w_exp_xml2.bas -writer/loadsave/w_imp_xml2.bas -writer/loadsave/w_layout_regression.bas +writer/level1/w_insertgraphic.bas +writer/level1/w_issuezilla_regression.bas +writer/level1/w_navigator.bas +writer/level1/w_numbering.bas +writer/level1/w_opt.bas +writer/level1/w_redlining.bas +writer/level1/w_search.bas +writer/level1/w_section.bas +writer/level1/w_shortcuts.bas writer/level1/w_sorting.bas +writer/level1/w_spellcheck.bas +writer/level1/w_stylist.bas +writer/level1/w_table.bas +writer/level1/ww_opt.bas writer/loadsave/w_exp_bin.bas writer/loadsave/w_exp_xml1.bas +writer/loadsave/w_exp_xml2.bas +writer/loadsave/w_filter.bas writer/loadsave/w_imp_bin.bas writer/loadsave/w_imp_xml1.bas -writer/level1/w_shortcuts.bas -calc/update/c_updt.bas +writer/loadsave/w_imp_xml2.bas +writer/loadsave/w_layout_regression.bas +writer/update/ma_updt.bas +writer/update/w_updt.bas +writer/update/ww_updt.bas +calc/level1/c_lvl1.bas +calc/level1/c_lvl1_filter_names.bas +calc/loadsave/calc_import_general.bas calc/options/c_opt.bas -calc/special/keyboardaccessibility.bas -calc/special/validity.bas -calc/special/menu_2.bas -calc/special/c_so7_pp1.bas -calc/special/c_printrange.bas -calc/special/c_namedrange.bas calc/special/c_chinesetranslate.bas -calc/level1/c_lvl1_filter_names.bas +calc/special/c_clipboardtest.bas +calc/special/c_namedrange.bas +calc/special/c_printrange.bas +calc/special/c_so7_pp1.bas calc/special/fkt_test.bas -chart/update/ch_updt.bas +calc/special/keyboardaccessibility.bas +calc/special/menu_2.bas +calc/special/page_styles.bas +calc/special/validity.bas +calc/update/c_updt.bas chart/level1/ch_lvl1.bas chart/special/chart_types.bas -graphics/update/gallery.bas -graphics/update/i_updt_1.bas -graphics/update/i_updt_2.bas -graphics/level1/g_clipboard.bas -graphics/level1/g_edit.bas -graphics/level1/g_spellcheck.bas -graphics/level1/g_toolbars.bas -graphics/level1/i_shape.bas +chart/update/ch_updt.bas +spreadsheet/level1/c_lvl1_filter_names.bas +spreadsheet/level2/c_namedrange.bas +spreadsheet/level2/c_printrange.bas +spreadsheet/level2/c_so7_pp1.bas graphics/level1/d_export_graphic.bas -graphics/level1/i_export_graphic.bas -graphics/options/i_opt.bas graphics/level1/g_accessability.bas graphics/level1/g_area.bas graphics/level1/g_arrangealign.bas graphics/level1/g_autocorrection.bas -graphics/level1/i_view.bas +graphics/level1/g_character.bas +graphics/level1/g_clipboard.bas +graphics/level1/g_clipexport.bas graphics/level1/g_convertto.bas graphics/level1/g_crossfading.bas -graphics/level1/i_slideshow.bas graphics/level1/g_dimensions.bas +graphics/level1/g_edit.bas +graphics/level1/g_export_html.bas graphics/level1/g_findreplace.bas +graphics/level1/g_format.bas graphics/level1/g_group.bas graphics/level1/g_imagemap.bas +graphics/level1/g_insert.bas +graphics/level1/g_line.bas graphics/level1/g_load_save.bas +graphics/level1/g_mediaplayer.bas graphics/level1/g_navigator.bas +graphics/level1/g_ole.bas +graphics/level1/g_paneview.bas +graphics/level1/g_paragraph.bas +graphics/level1/g_print.bas +graphics/level1/g_shaddow.bas graphics/level1/g_slidelayer.bas +graphics/level1/g_spellcheck.bas graphics/level1/g_stylist.bas +graphics/level1/g_toolbars.bas +graphics/level1/g_tools.bas +graphics/level1/g_zoom.bas graphics/level1/i_animation.bas +graphics/level1/i_export_graphic.bas graphics/level1/i_headerfooter.bas -graphics/level1/g_ole.bas -graphics/level1/g_paneview.bas -graphics/level1/g_mediaplayer.bas graphics/level1/i_pengine.bas +graphics/level1/i_shape.bas graphics/level1/i_slidecopy.bas +graphics/level1/i_slideshow.bas +graphics/level1/i_view.bas +graphics/options/d_opt.bas +graphics/options/i_opt.bas +graphics/update/d_updt.bas graphics/update/gallery2.bas -graphics/level1/g_character.bas -graphics/level1/g_clipexport.bas -graphics/level1/g_export_html.bas -graphics/level1/g_format.bas -graphics/level1/g_insert.bas -graphics/level1/g_line.bas -graphics/level1/g_paragraph.bas -graphics/level1/g_print.bas -graphics/level1/g_tools.bas -graphics/level1/g_zoom.bas -graphics/level1/g_shaddow.bas +graphics/update/gallery.bas +graphics/update/i_updt_1.bas +graphics/update/i_updt_2.bas math/level1/m_lvl1.bas -base/update/xforms_updt.bas +math/update/m_updt.bas +base/level1/controls/b_lvl1_Control_Autopilot.bas +base/level1/controls/b_lvl1_Control_Calc.bas +base/level1/controls/b_lvl1_Control_Clipboard.bas +base/level1/controls/b_lvl1_Control_General.bas +base/level1/controls/b_lvl1_Control_Several.bas +base/level1/controls/b_lvl1_Grid_Control.bas +base/level1/controls/b_lvl1_Property_Browser.bas +base/level1/controls/b_lvl1_Text_Control.bas +base/level1/datasources/b_lvl1_AdabasD.bas base/level1/datasources/b_lvl1_Addressbook.bas -base/level1/datasources/b_lvl1_RegisterDatabase.bas base/level1/datasources/b_lvl1_ADO-Access.bas -base/level1/datasources/b_lvl1_AdabasD.bas +base/level1/datasources/b_lvl1_dBase.bas +base/level1/datasources/b_lvl1_dBase_functions.bas +base/level1/datasources/b_lvl1_hsqldb.bas base/level1/datasources/b_lvl1_JDBC_MySQL.bas +base/level1/datasources/b_lvl1_ODBC_MySQL.bas +base/level1/datasources/b_lvl1_RegisterDatabase.bas base/level1/datasources/b_lvl1_Spreadsheet.bas base/level1/datasources/b_lvl1_Text.bas -base/level1/datasources/b_lvl1_dBase.bas -base/level1/datasources/b_lvl1_dBase_functions.bas -base/level1/wizards/b_lvl1_Database_Wizard.bas +base/level1/forms/b_lvl1_FormFilter.bas +base/level1/forms/b_lvl1_Forms.bas +base/level1/performance/b_lvl1_Performance_General.bas base/level1/wizards/b_lvl1_Copy_Table_Autopilot.bas +base/level1/wizards/b_lvl1_Database_Wizard.bas base/level1/wizards/b_lvl1_FormAutopilot.bas base/level1/wizards/b_lvl1_QueryAutopilot.bas base/level1/wizards/b_lvl1_ReportAutopilot.bas -base/level1/performance/b_lvl1_Performance_General.bas -base/level1/controls/b_lvl1_Control_Autopilot.bas -base/level1/controls/b_lvl1_Control_Clipboard.bas +base/level1/wizards/b_lvl1_Table_Wizard.bas base/level1/xforms/xf_lvl1_submission.bas -xml/update/oasis_graphics_update.bas +base/update/b_updt.bas +base/update/xforms_updt.bas xml/level1/calc_xml_7_export.bas -xml/level1/draw_xml_7_export.bas -xml/level1/impress_xml_7_export.bas -xml/level1/math_xml_7_export.bas xml/level1/c_datapilot_pagefields.bas -xml/level1/docbook_losa.bas +xml/level1/ch_xml_japanese_candlestick.bas xml/level1/c_xml_print_scale.bas -xml/level1/f_xml_save_ms_ole.bas xml/level1/c_xml_scenario.bas +xml/level1/docbook_losa.bas +xml/level1/draw_xml_7_export.bas +xml/level1/f_xml_save_ms_ole.bas +xml/level1/impress_xml_7_export.bas +xml/level1/math_xml_7_export.bas xml/level1/writer_xml_7_export.bas -xml/level1/ch_xml_japanese_candlestick.bas +xml/update/oasis_graphics_update.bas diff --git a/patches/scsolver/scsolver-source-ui-basedlg-cxx.diff b/patches/scsolver/scsolver-source-ui-basedlg-cxx.diff index 694f8a3ea..0093727c7 100644 --- a/patches/scsolver/scsolver-source-ui-basedlg-cxx.diff +++ b/patches/scsolver/scsolver-source-ui-basedlg-cxx.diff @@ -1,6 +1,6 @@ --- /dev/null +++ scsolver/source/ui/basedlg.cxx -@@ -0,0 +1,897 @@ +@@ -0,0 +1,931 @@ +/************************************************************************* + * + * The Contents of this file are made available subject to @@ -61,6 +61,23 @@ + +namespace scsolver { + ++/** ++ * Dump all service names supported by this widget and ++ * terminate. This function is for debug purposes only, and ++ * should never be reached under normal circumstances. ++ */ ++void lcl_dumpServiceNames( const Reference< uno::XInterface >& oWgt ) ++{ ++#ifdef DEBUG ++ Reference< lang::XServiceInfo > xSN( oWgt, UNO_QUERY ); ++ Sequence< rtl::OUString > sSN = xSN->getSupportedServiceNames(); ++ for ( int nIdx = 0; nIdx < sSN.getLength(); ++nIdx ) ++ printOUStr( sSN[nIdx] ); ++ ++ OSL_ASSERT( !"No appropriate widget type got picked up!" ); ++#endif ++} ++ +//-------------------------------------------------------------------------- +// BaseDialogImpl + @@ -122,9 +139,16 @@ + + template<typename ListenerT> + void registerListener( ListenerT* ); ++ + template<typename ListenerT> + void registerListener( const rtl::OUString &, ListenerT* ); + ++ void registerListener( TopWindowListener* p ) ++ { ++ Reference<awt::XTopWindow> xTW(getDialog(), UNO_QUERY); ++ xTW->addTopWindowListener(p); ++ } ++ + void registerListener( const Reference< uno::XInterface >&, ActionListener* ); + void registerListener( const Reference< uno::XInterface >&, ItemListener* ); + void registerListener( const Reference< uno::XInterface >&, FocusListener* ); @@ -132,6 +156,7 @@ + + template<typename ListenerT> + void unregisterListener( ListenerT* ); ++ + template<typename ListenerT> + void unregisterListener( const rtl::OUString &, ListenerT* ); + @@ -140,6 +165,17 @@ + void unregisterListener( const Reference< uno::XInterface >&, FocusListener* ); + void unregisterListener( const Reference< uno::XInterface >&, MouseListener* ); + ++ void unregisterListener( const Reference<uno::XInterface>& oWgt, TopWindowListener* p ) ++ { ++ Reference<awt::XTopWindow> xWnd(oWgt, UNO_QUERY); ++ if ( xWnd.is() ) ++ { ++ xWnd->removeTopWindowListener( p ); ++ return; ++ } ++ lcl_dumpServiceNames( oWgt ); ++ } ++ +private: + + SolverImpl* m_pSolverImpl; @@ -180,13 +216,15 @@ + xCtrl->setModel( xCtrlModel ); + + Reference< beans::XPropertySet > xPS( m_oDlgModel, UNO_QUERY ); -+ uno::Any aWidth, aHeight, aTitle; ++ uno::Any aWidth, aHeight, aTitle, aCloseable; + aWidth <<= nW; + aHeight <<= nH; + aTitle <<= sTitle; ++ aCloseable <<= static_cast<sal_Bool>(true); + xPS->setPropertyValue( ascii( "Width" ), aWidth ); + xPS->setPropertyValue( ascii( "Height" ), aHeight ); + xPS->setPropertyValue( ascii( "Title" ), aTitle ); ++ xPS->setPropertyValue( ascii("Closeable"), aCloseable ); +} + +void BaseDialogImpl::setVisibleDefault( bool bVisible ) @@ -356,20 +394,6 @@ + registerListener( getWidgetByName( sName ), p ); +} + -+/** Dump all service names supported by this widget and terminate. This -+ function is for debug purposes only, and should never be reached under -+ normal circumstances. */ -+void lcl_dumpServiceNames( const Reference< uno::XInterface >& oWgt ) -+{ -+#ifdef DEBUG -+ Reference< lang::XServiceInfo > xSN( oWgt, UNO_QUERY ); -+ Sequence< rtl::OUString > sSN = xSN->getSupportedServiceNames(); -+ for ( int nIdx = 0; nIdx < sSN.getLength(); ++nIdx ) -+ printOUStr( sSN[nIdx] ); -+ -+ OSL_ASSERT( !"No appropriate widget type got picked up!" ); -+#endif -+} + +void BaseDialogImpl::registerListener( const Reference< uno::XInterface >& oWgt, ActionListener* p ) +{ @@ -621,6 +645,11 @@ + return m_pImpl->addRangeEdit( nX, nY, nW, nH, sEditName, sBtnName ); +} + ++void BaseDialog::registerListener( TopWindowListener* p ) const ++{ ++ m_pImpl->registerListener(p); ++} ++ +void BaseDialog::registerListener( FocusListener* p ) const +{ + m_pImpl->registerListener( p ); @@ -641,6 +670,11 @@ + m_pImpl->registerListener( sName, p ); +} + ++void BaseDialog::unregisterListener( TopWindowListener* p ) const ++{ ++ m_pImpl->unregisterListener(p); ++} ++ +void BaseDialog::unregisterListener( FocusListener* p ) const +{ + m_pImpl->unregisterListener( p ); diff --git a/patches/scsolver/scsolver-source-ui-dialog-cxx.diff b/patches/scsolver/scsolver-source-ui-dialog-cxx.diff index 33fec98db..8fd5929e6 100644 --- a/patches/scsolver/scsolver-source-ui-dialog-cxx.diff +++ b/patches/scsolver/scsolver-source-ui-dialog-cxx.diff @@ -1,6 +1,6 @@ --- /dev/null +++ scsolver/source/ui/dialog.cxx -@@ -0,0 +1,964 @@ +@@ -0,0 +1,987 @@ +/************************************************************************* + * + * The Contents of this file are made available subject to @@ -52,22 +52,17 @@ +#include <com/sun/star/awt/XRadioButton.hpp> +#include <com/sun/star/awt/XTextComponent.hpp> +#include <com/sun/star/awt/XWindow.hpp> -+ +#include <com/sun/star/beans/XPropertySet.hpp> +#include <com/sun/star/container/XNameContainer.hpp> +#include <com/sun/star/container/XNamed.hpp> -+ +#include <com/sun/star/frame/XDispatchProvider.hpp> +#include <com/sun/star/frame/XModel.hpp> +#include <com/sun/star/frame/XNotifyingDispatch.hpp> -+ +#include <com/sun/star/lang/XInitialization.hpp> +#include <com/sun/star/lang/XMultiComponentFactory.hpp> +#include <com/sun/star/lang/XServiceInfo.hpp> +#include <com/sun/star/lang/XServiceName.hpp> -+ +#include <com/sun/star/sheet/XRangeSelection.hpp> -+ +#include <com/sun/star/uno/XComponentContext.hpp> + +#include <iostream> @@ -79,17 +74,31 @@ + +namespace scsolver { + -+//--------------------------------------------------------------------------- -+// class ConstDialog Definitions -+ -+ConstEditDialog::ConstEditDialog( SolverImpl* p ) -+ : BaseDialog( p ), -+ m_bIsChangeMode( false ), -+ m_nConstraintId( 0 ), -+ m_pOKListener( NULL ), -+ m_pCancelListener( NULL ), -+ m_pLeftRngListener( NULL ), -+ m_pRightRngListener( NULL ) ++/** ++ * Function object that defines action when a window close event ++ * is received (typically when the user clicks the "x" button on ++ * the title bar). ++ */ ++class ConstDlgCloseAction : public SimpleActionObject ++{ ++public: ++ virtual void execute(BaseDialog *dlg) ++ { ++ dlg->setVisible(false); ++ static_cast<ConstEditDialog*>(dlg)->reset(); ++ } ++}; ++ ++ConstEditDialog::ConstEditDialog( SolverImpl* p ) : ++ BaseDialog(p), ++ m_bIsChangeMode(false), ++ m_nConstraintId(0), ++ m_pOKListener(NULL), ++ m_pCancelListener(NULL), ++ m_pLeftRngListener(NULL), ++ m_pRightRngListener(NULL), ++ m_pTopWindowListener(NULL), ++ m_pCloseAction( new ConstDlgCloseAction ) +{ + initialize(); +} @@ -119,6 +128,10 @@ + m_pRightRngListener = new RngBtnListener( this, xRngSel, ascii( "editRight" ) ); + m_pRightRngListener->setSingleCell( true ); + registerListener( ascii( "btnRight" ), m_pRightRngListener ); ++ ++ m_pTopWindowListener = new TopWindowListener(this); ++ m_pTopWindowListener->setActionClosing(m_pCloseAction); ++ registerListener(m_pTopWindowListener); +} + +void ConstEditDialog::unregisterListeners() @@ -127,6 +140,7 @@ + unregisterListener( ascii( "btnCancel" ), m_pCancelListener ); + unregisterListener( ascii( "btnLeft" ), m_pLeftRngListener ); + unregisterListener( ascii( "btnRight" ), m_pRightRngListener ); ++ unregisterListener(m_pTopWindowListener); +} + +void ConstEditDialog::initialize() @@ -341,9 +355,22 @@ + return true; +} + ++//----------------------------------------------------------------- + -+//--------------------------------------------------------------------------- -+// class SolverDialog Definitions ++/** ++ * Defines action when a window close event is received. ++ */ ++class SolverDlgCloseAction : public SimpleActionObject ++{ ++public: ++ virtual void execute(BaseDialog *dlg) ++ { ++ SolverDialog* p = static_cast<SolverDialog*>(dlg); ++ p->setVisible(false); ++ p->getConstEditDialog()->setVisible(false); ++ p->getConstEditDialog()->reset(); ++ } ++}; + +SolverDialog::SolverDialog( SolverImpl* p ) + : BaseDialog( p ), @@ -353,9 +380,9 @@ + m_pSolveErrorDlg( NULL ), + m_pSolInfeasibleDlg( NULL ), + m_pSolFoundDlg( NULL ), ++ m_pTopWindowListener(NULL), + m_pTargetRngListener( NULL ), + m_pVarCellsRngListener( NULL ), -+ m_pWindowMouseListener( NULL ), + m_pSolveListener( NULL ), + m_pOKListener( NULL ), + m_pSaveListener( NULL ), @@ -366,8 +393,8 @@ + m_pConstAddListener( NULL ), + m_pConstChangeListener( NULL ), + m_pConstDeleteListener( NULL ), -+ m_pWindowFocusListener( NULL ), -+ m_pConstListBoxListener( NULL ) ++ m_pConstListBoxListener( NULL ), ++ m_pCloseAction( new SolverDlgCloseAction ) +{ + initialize(); +} @@ -428,7 +455,6 @@ + addButton( 205, 30, 50, 15, ascii( "btnReset" ), getResStr(SCSOLVER_STR_BTN_RESET) ); + + p = addButton( 205, 50, 50, 15, ascii( "btnOptions" ), getResStr(SCSOLVER_STR_BTN_OPTIONS) ); -+ //p->setPropertyValue( "Enabled", aBool ); // disable Options button for now + + addButton( 205, 90, 50, 15, ascii( "btnSave" ), getResStr(SCSOLVER_STR_BTN_SAVE_MODEL) ); + addButton( 205, 110, 50, 15, ascii( "btnLoad" ), getResStr(SCSOLVER_STR_BTN_LOAD_MODEL) ); @@ -485,11 +511,9 @@ + m_pConstListBoxListener = new ConstListBoxListener( this ); + registerListener( ascii( "lbConstraint" ), m_pConstListBoxListener ); + -+ m_pWindowFocusListener = new WindowFocusListener( this ); -+ registerListener( m_pWindowFocusListener ); -+ -+ m_pWindowMouseListener = new WindowMouseListener( this ); -+ registerListener( m_pWindowMouseListener ); ++ m_pTopWindowListener = new TopWindowListener(this); ++ m_pTopWindowListener->setActionClosing(m_pCloseAction); ++ registerListener(m_pTopWindowListener); +} + +void SolverDialog::unregisterListeners() @@ -510,8 +534,7 @@ + unregisterListener( ascii( "btnConstChange" ), m_pConstChangeListener ); + unregisterListener( ascii( "btnConstDelete" ), m_pConstDeleteListener ); + unregisterListener( ascii( "lbConstraint" ), m_pConstListBoxListener ); -+ unregisterListener( m_pWindowFocusListener ); -+ unregisterListener( m_pWindowMouseListener ); ++ unregisterListener(m_pTopWindowListener); +} + +void SolverDialog::setVisible( bool bVisible ) diff --git a/patches/src680/buildfix-hsqldb-1-8-0-7.diff b/patches/src680/buildfix-hsqldb-1-8-0-7.diff new file mode 100644 index 000000000..ffe36271b --- /dev/null +++ b/patches/src680/buildfix-hsqldb-1-8-0-7.diff @@ -0,0 +1,36 @@ +Index: com/sun/star/sdbcx/comp/hsqldb/StorageFileAccess.java +=================================================================== +RCS file: /cvs/dba/connectivity/com/sun/star/sdbcx/comp/hsqldb/StorageFileAccess.java,v +retrieving revision 1.7 +diff -u -u -r1.7 StorageFileAccess.java +--- connectivity/com/sun/star/sdbcx/comp/hsqldb/StorageFileAccess.java 8 Sep 2005 04:55:55 -0000 1.7 ++++ connectivity/com/sun/star/sdbcx/comp/hsqldb/StorageFileAccess.java 28 Oct 2006 16:05:36 -0000 +@@ -80,16 +80,20 @@ + return new NativeOutputStreamHelper(key,streamName); + } + +- public void removeElement(java.lang.String filename) throws java.util.NoSuchElementException, java.io.IOException { +- if ( isStreamElement(key,filename) ) +- removeElement(key,filename); ++ public void removeElement(java.lang.String filename) throws java.util.NoSuchElementException { ++ try { ++ if ( isStreamElement(key,filename) ) ++ removeElement(key,filename); ++ } catch (java.io.IOException e) {} + } + +- public void renameElement(java.lang.String oldName, java.lang.String newName) throws java.util.NoSuchElementException, java.io.IOException { +- if ( isStreamElement(key,oldName) ){ +- removeElement(key,newName); +- renameElement(key,oldName, newName); +- } ++ public void renameElement(java.lang.String oldName, java.lang.String newName) throws java.util.NoSuchElementException { ++ try { ++ if ( isStreamElement(key,oldName) ){ ++ removeElement(key,newName); ++ renameElement(key,oldName, newName); ++ } ++ } catch (java.io.IOException e) {} + } + + public class FileSync implements FileAccess.FileSync diff --git a/patches/src680/sd.sal_uInt32_aslong.diff b/patches/src680/sd.sal_uInt32_aslong.diff new file mode 100644 index 000000000..75a9141c6 --- /dev/null +++ b/patches/src680/sd.sal_uInt32_aslong.diff @@ -0,0 +1,16 @@ +Index: source/ui/view/sdview.cxx +=================================================================== +RCS file: /cvs/graphics/sd/source/ui/view/sdview.cxx,v +retrieving revision 1.50 +diff -u -r1.50 sdview.cxx +--- sd/source/ui/view/sdview.cxx 25 Jul 2006 11:53:13 -0000 1.50 ++++ sd/source/ui/view/sdview.cxx 23 Oct 2006 09:22:38 -0000 +@@ -567,7 +567,7 @@ + BOOL bSelected = FALSE; + BOOL bMasterPage = FALSE; + long nMark; +- long nMarkMax = pMarkList->GetMarkCount() - 1; ++ long nMarkMax = long(pMarkList->GetMarkCount()) - 1; + + for (nMark = nMarkMax; (nMark >= 0) && !bSelected; nMark--) + { diff --git a/patches/vba/sc-source-ui-vba-vbarange-cxx.diff b/patches/vba/sc-source-ui-vba-vbarange-cxx.diff index 7eed24954..3b58e257f 100644 --- a/patches/vba/sc-source-ui-vba-vbarange-cxx.diff +++ b/patches/vba/sc-source-ui-vba-vbarange-cxx.diff @@ -1,6 +1,6 @@ --- /dev/null +++ sc/source/ui/vba/vbarange.cxx -@@ -0,0 +1,2953 @@ +@@ -0,0 +1,3117 @@ +#include <comphelper/processfactory.hxx> +#include <sfx2/objsh.hxx> + @@ -14,6 +14,8 @@ +#include <com/sun/star/text/XTextRange.hpp> +#include <com/sun/star/sheet/XCellRangeAddressable.hpp> +#include <com/sun/star/table/CellRangeAddress.hpp> ++#include <com/sun/star/sheet/XSpreadsheetView.hpp> ++#include <com/sun/star/sheet/XCellRangeReferrer.hpp> +#include <com/sun/star/sheet/XSheetCellRange.hpp> +#include <com/sun/star/sheet/XSpreadsheet.hpp> +#include <com/sun/star/sheet/XSheetCellCursor.hpp> @@ -61,6 +63,7 @@ +#include <org/openoffice/vba/Excel/XlSortDataOption.hpp> +#include <org/openoffice/vba/Excel/XlDeleteShiftDirection.hpp> +#include <org/openoffice/vba/Excel/XlReferenceStyle.hpp> ++#include <org/openoffice/vba/Excel/XlBordersIndex.hpp> + + +#include <scitems.hxx> @@ -102,6 +105,7 @@ +// end test includes + +using namespace ::org::openoffice; ++using namespace ::org::openoffice::vba::Excel; +using namespace ::com::sun::star; + +// * 1 point = 1/72 inch = 20 twips @@ -109,6 +113,9 @@ +// * 1 cm = 567 twips +double lcl_hmmToPoints( double nVal ) { return ( (double)((nVal /1000 ) * 567 ) / 20 ); } +double lcl_pointsToHmm( double nVal ) { return (double)( ( nVal * 20 ) / 567 ) * 1000; } ++ ++static const sal_Int16 supportedIndexTable[] = { XlBordersIndex::xlEdgeLeft, XlBordersIndex::xlEdgeTop, XlBordersIndex::xlEdgeBottom, XlBordersIndex::xlEdgeRight, XlBordersIndex::xlDiagonalDown, XlBordersIndex::xlDiagonalUp, XlBordersIndex::xlInsideVertical, XlBordersIndex::xlInsideHorizontal }; ++ +USHORT lcl_pointsToTwips( double nVal ) +{ + nVal = nVal * static_cast<double>(20); @@ -240,7 +247,8 @@ +ScDocShell* getDocShellFromRange( const uno::Reference< table::XCellRange >& xRange ) +{ + // need the ScCellRangeObj to get docshell -+ ScCellRangeObj* pUno = dynamic_cast< ScCellRangeObj* >( xRange.get() ); ++ ScCellRangeObj* pUno = static_cast< ScCellRangeObj* >( xRange.get() ); ++ + if ( !pUno ) + throw uno::RuntimeException( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Failed to access underlying uno range object" ) ), uno::Reference< uno::XInterface >() ); + return pUno->GetDocShell(); @@ -811,16 +819,18 @@ + USHORT nFlags = 0; + if ( !getCellRangesForAddress( nFlags, sAddress, pDocSh, aCellRanges, eConv ) ) + throw uno::RuntimeException(); ++ ++ bool bTabFromReferrer = !( nFlags & SCA_TAB_3D ); ++ + for ( ScRange* pRange = aCellRanges.First() ; pRange; pRange = aCellRanges.Next() ) + { -+ bool bTabFromReferrer = !( nFlags & SCA_TAB_3D ); -+ pRange->aStart.SetCol( refRange.aStart.Col() + pRange->aStart.Col() ); -+ pRange->aStart.SetRow( refRange.aStart.Row() + pRange->aStart.Row() ); ++ pRange->aStart.SetCol( refRange.aStart.Col() + pRange->aStart.Col() ); ++ pRange->aStart.SetRow( refRange.aStart.Row() + pRange->aStart.Row() ); + pRange->aStart.SetTab( bTabFromReferrer ? refRange.aStart.Tab() : pRange->aStart.Tab() ); -+ pRange->aEnd.SetCol( refRange.aStart.Col() + pRange->aEnd.Col() ); -+ pRange->aEnd.SetRow( refRange.aStart.Row() + pRange->aEnd.Row() ); ++ pRange->aEnd.SetCol( refRange.aStart.Col() + pRange->aEnd.Col() ); ++ pRange->aEnd.SetRow( refRange.aStart.Row() + pRange->aEnd.Row() ); + pRange->aEnd.SetTab( bTabFromReferrer ? refRange.aEnd.Tab() : pRange->aEnd.Tab() ); -+ } ++ } + + // Single range + if ( aCellRanges.First() == aCellRanges.Last() ) @@ -1911,6 +1921,12 @@ +uno::Reference< vba::XRange > +ScVbaRange::Range( const uno::Any &Cell1, const uno::Any &Cell2 ) throw (uno::RuntimeException) +{ ++ return Range( Cell1, Cell2, false ); ++} ++uno::Reference< vba::XRange > ++ScVbaRange::Range( const uno::Any &Cell1, const uno::Any &Cell2, bool bForceUseInpuRangeTab ) throw (uno::RuntimeException) ++ ++{ + RangeHelper thisRange( mxRange ); + uno::Reference< table::XCellRange > xRanges = thisRange.getCellRangeFromSheet(); + uno::Reference< sheet::XCellRangeAddressable > xAddressable( xRanges, uno::UNO_QUERY_THROW ); @@ -1919,6 +1935,8 @@ + xRanges->getCellRangeByPosition( getColumn()-1, getRow()-1, + xAddressable->getRangeAddress().EndColumn, + xAddressable->getRangeAddress().EndRow ); ++ // xAddressable now for this range ++ xAddressable.set( xReferrer, uno::UNO_QUERY_THROW ); + + + if( !Cell1.hasValue() ) @@ -1927,7 +1945,9 @@ + uno::Reference< XInterface >() ); + + table::CellRangeAddress resultAddress; ++ table::CellRangeAddress parentRangeAddress = xAddressable->getRangeAddress(); + ++ ScRange aRange; + // Cell1 defined only + if ( !Cell2.hasValue() ) + { @@ -1952,13 +1972,49 @@ + resultAddress.StartRow = ( cell1.StartRow < cell2.StartRow ) ? cell1.StartRow : cell2.StartRow; + resultAddress.EndColumn = ( cell1.EndColumn > cell2.EndColumn ) ? cell1.EndColumn : cell2.EndColumn; + resultAddress.EndRow = ( cell1.EndRow > cell2.EndRow ) ? cell1.EndRow : cell2.EndRow; ++ if ( bForceUseInpuRangeTab ) ++ { ++ // this is a call from Application.Range( x,y ) ++ // its possiblefor x or y to specify a different sheet from ++ // the current or active on ( but they must be the same ) ++ if ( cell1.Sheet != cell2.Sheet ) ++ throw uno::RuntimeException(); ++ parentRangeAddress.Sheet = cell1.Sheet; ++ } ++ else ++ { ++ // this is not a call from Application.Range( x,y ) ++ // if a different sheet from this range is specified it's ++ // an error ++ if ( parentRangeAddress.Sheet != cell1.Sheet ++ || parentRangeAddress.Sheet != cell2.Sheet ++ ) ++ throw uno::RuntimeException(); ++ ++ } ++ ScUnoConversion::FillScRange( aRange, resultAddress ); + } -+ return uno::Reference< vba::XRange > ( new ScVbaRange( m_xContext, -+ xReferrer->getCellRangeByPosition( -+ resultAddress.StartColumn, -+ resultAddress.StartRow, -+ resultAddress.EndColumn, -+ resultAddress.EndRow ) ) ); ++ ScRange parentAddress; ++ ScUnoConversion::FillScRange( parentAddress, parentRangeAddress); ++ uno::Reference< table::XCellRange > xCellRange; ++ if ( aRange.aStart.Col() >= 0 && aRange.aStart.Row() >= 0 && aRange.aEnd.Col() >= 0 && aRange.aEnd.Row() >= 0 ) ++ { ++ sal_Int32 nStartX = parentAddress.aStart.Col() + aRange.aStart.Col(); ++ sal_Int32 nStartY = parentAddress.aStart.Row() + aRange.aStart.Row(); ++ sal_Int32 nEndX = parentAddress.aStart.Col() + aRange.aEnd.Col(); ++ sal_Int32 nEndY = parentAddress.aStart.Row() + aRange.aEnd.Row(); ++ ++ if ( nStartX <= nEndX && nEndX <= parentAddress.aEnd.Col() && ++ nStartY <= nEndY && nEndY <= parentAddress.aEnd.Row() ) ++ { ++ ScRange aNew( (SCCOL)nStartX, (SCROW)nStartY, parentAddress.aStart.Tab(), ++ (SCCOL)nEndX, (SCROW)nEndY, parentAddress.aEnd.Tab() ); ++ xCellRange = new ScCellRangeObj( getDocShellFromRange( mxRange ), aNew ); ++ } ++ } ++ ++ return uno::Reference< vba::XRange > ( new ScVbaRange( m_xContext, xCellRange ) ); ++ +} + +// Allow access to underlying openoffice uno api ( useful for debugging @@ -2268,7 +2324,13 @@ +{ + uno::Reference< table::XCellRange > xRanges( xDoc, uno::UNO_QUERY_THROW ); + ScCellRangeObj* pRanges = dynamic_cast< ScCellRangeObj* >( xRanges.get() ); -+ ScAddress::Details dDetails( ScAddress::CONV_XL_A1, 0, 0 ); ++ ScAddress::Convention eConv = ScAddress::CONV_XL_A1; // see if there is a match with a named range ++ ++ uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW ); ++ ScDocShell* pDocSh = getDocShell( xModel ); ++ eConv = pDocSh->GetDocument()->GetAddressConvention(); ++ ++ ScAddress::Details dDetails( eConv, 0, 0 ); + + uno::Reference< table::XCellRange > xRange; + if ( pRanges ) @@ -2732,7 +2794,7 @@ +uno::Reference< beans::XPropertySetInfo > +ScVbaRange::getPropertySetInfo( ) throw (uno::RuntimeException) +{ -+ uno::Reference< beans::XPropertySetInfo > xInfo( createPropertySetInfo( getInfoHelper() ) ); ++ static uno::Reference< beans::XPropertySetInfo > xInfo( createPropertySetInfo( getInfoHelper() ) ); + return xInfo; +} + @@ -2890,6 +2952,53 @@ + return m_Borders->Item( item ); +} + ++uno::Any SAL_CALL ++ScVbaRange::BorderAround( const css::uno::Any& LineStyle, const css::uno::Any& Weight, ++ const css::uno::Any& ColorIndex, const css::uno::Any& Color ) throw (css::uno::RuntimeException) ++{ ++ sal_Int32 nCount = m_Borders->getCount(); ++ uno::Reference< vba::XBorders > xBorders( m_Borders, uno::UNO_QUERY_THROW); ++ for( sal_Int32 i = 0; i < nCount; i++ ) ++ { ++ const sal_Int32 nLineType = supportedIndexTable[i]; ++ switch( nLineType ) ++ { ++ case XlBordersIndex::xlEdgeLeft: ++ case XlBordersIndex::xlEdgeTop: ++ case XlBordersIndex::xlEdgeBottom: ++ case XlBordersIndex::xlEdgeRight: ++ { ++ uno::Reference< vba::XBorder > xBorder( m_Borders->Item( uno::makeAny( nLineType ) ), uno::UNO_QUERY_THROW ); ++ if( LineStyle.hasValue() ) ++ { ++ xBorder->setLineStyle( LineStyle ); ++ } ++ if( Weight.hasValue() ) ++ { ++ xBorder->setWeight( Weight ); ++ } ++ if( ColorIndex.hasValue() ) ++ { ++ xBorder->setColorIndex( ColorIndex ); ++ } ++ if( Color.hasValue() ) ++ { ++ xBorder->setColor( Color ); ++ } ++ break; ++ } ++ case XlBordersIndex::xlInsideVertical: ++ case XlBordersIndex::xlInsideHorizontal: ++ case XlBordersIndex::xlDiagonalDown: ++ case XlBordersIndex::xlDiagonalUp: ++ break; ++ default: ++ return uno::makeAny( sal_False ); ++ } ++ } ++ return uno::makeAny( sal_True ); ++} ++ +uno::Any SAL_CALL +ScVbaRange::getRowHeight() throw (uno::RuntimeException) +{ @@ -2954,3 +3063,58 @@ + throw uno::RuntimeException( rtl::OUString::createFromAscii("General Error creating range - Unknown" ), uno::Reference< uno::XInterface >() ); + return pUnoRangesBase; +} ++ ++// #TODO remove this ugly application processing ++// Process an application Range request e.g. 'Range("a1,b2,a4:b6") ++uno::Reference< vba::XRange > ++ScVbaRange::ApplicationRange( const uno::Reference< uno::XComponentContext >& xContext, const css::uno::Any &Cell1, const css::uno::Any &Cell2 ) throw (css::uno::RuntimeException) ++{ ++ // Althought the documentation seems clear that Range without a ++ // qualifier then its a shortcut for ActiveSheet.Range ++ // however, similarly Application.Range is apparently also a ++ // shortcut for ActiveSheet.Range ++ // The is however a subtle behavioural difference I've come across ++ // wrt to named ranges. ++ // If a named range "test" exists { Sheet1!$A1 } and the active sheet ++ // is Sheet2 then the following will fail ++ // msgbox ActiveSheet.Range("test").Address ' failes ++ // msgbox WorkSheets("Sheet2").Range("test").Address ++ // but !!! ++ // msgbox Range("test").Address ' works ++ // msgbox Application.Range("test").Address ' works ++ ++ // Single param Range ++ rtl::OUString sRangeName; ++ Cell1 >>= sRangeName; ++ if ( Cell1.hasValue() && !Cell2.hasValue() && sRangeName.getLength() ) ++ { ++ const static rtl::OUString sNamedRanges( RTL_CONSTASCII_USTRINGPARAM("NamedRanges")); ++ uno::Reference< beans::XPropertySet > xPropSet( getCurrentDocument(), uno::UNO_QUERY_THROW ); ++ ++ uno::Reference< container::XNameAccess > xNamed( xPropSet->getPropertyValue( sNamedRanges ), uno::UNO_QUERY_THROW ); ++ uno::Reference< sheet::XCellRangeReferrer > xReferrer; ++ try ++ { ++ xReferrer.set ( xNamed->getByName( sRangeName ), uno::UNO_QUERY ); ++ } ++ catch( uno::Exception& e ) ++ { ++ // do nothing ++ } ++ if ( xReferrer.is() ) ++ { ++ uno::Reference< table::XCellRange > xRange = xReferrer->getReferredCells(); ++ if ( xRange.is() ) ++ { ++ uno::Reference< vba::XRange > xVbRange = new ScVbaRange( xContext, xRange ); ++ return xVbRange; ++ } ++ } ++ } ++ uno::Reference< sheet::XSpreadsheetView > xView( getCurrentDocument()->getCurrentController(), uno::UNO_QUERY ); ++ uno::Reference< table::XCellRange > xSheetRange( xView->getActiveSheet(), uno::UNO_QUERY_THROW ); ++ ScVbaRange* pRange = new ScVbaRange( xContext, xSheetRange ); ++ uno::Reference< vba::XRange > xVbSheetRange( pRange ); ++ return pRange->Range( Cell1, Cell2, true ); ++} ++ diff --git a/patches/vba/vba-accent-in-module.diff b/patches/vba/vba-accent-in-module.diff new file mode 100644 index 000000000..a268f2325 --- /dev/null +++ b/patches/vba/vba-accent-in-module.diff @@ -0,0 +1,14 @@ +--- /data4/sles/ooo-build-LATEST-copy/ooo-build/build/ood680-m5/basic/source/classes/sbxmod.cxx 2006-10-19 11:56:13.000000000 +0100 ++++ basic/source/classes/sbxmod.cxx 2006-10-23 11:20:09.000000000 +0100 +@@ -543,6 +543,11 @@ void SbModule::SetSource32( const ::rtl: + eCurTok = aTok.Next(); + if( eCurTok == COMPATIBLE ) + aTok.SetCompatible( true ); ++ else if ( eCurTok == VBASUPPORT ) ++ { ++ if( ( aTok.Next() == NUMBER ) && ( aTok.GetDbl()== 1 ) ) ++ aTok.SetCompatible( true ); ++ } + } + } + eLastTok = eCurTok; diff --git a/patches/vba/vba-support-export-palette.diff b/patches/vba/vba-support-export-palette.diff index 4feab0705..fafd2c264 100644 --- a/patches/vba/vba-support-export-palette.diff +++ b/patches/vba/vba-support-export-palette.diff @@ -23,7 +23,7 @@ retrieving revision 1.26 diff -u -p -r1.26 xistyle.cxx --- sc/source/filter/excel/xistyle.cxx 13 Jan 2006 16:58:37 -0000 1.26 +++ sc/source/filter/excel/xistyle.cxx 13 Mar 2006 12:58:17 -0000 -@@ -136,11 +136,72 @@ +@@ -136,11 +136,71 @@ #include "root.hxx" @@ -72,7 +72,7 @@ diff -u -p -r1.26 xistyle.cxx + if( SfxObjectShell* pDocShell = mrRoot.GetDocShell() ) + { + // copy values in color palette -+ sal_Int16 nColors = maColorTable.size() ? maColorTable.size() : GetColorCount(); ++ sal_Int16 nColors = maColorTable.size(); + ColorDataVec aColors; + aColors.resize( nColors ); + for( sal_uInt16 nIndex = 0; nIndex < nColors; ++nIndex ) @@ -93,7 +93,6 @@ diff -u -p -r1.26 xistyle.cxx - XclDefaultPalette( rRoot ) + XclDefaultPalette( rRoot ), mrRoot( rRoot ) { -+ ExportPalette(); } ColorData XclImpPalette::GetColorData( sal_uInt16 nXclIndex ) const diff --git a/scratch/scsolver/source/inc/xcalc.hxx b/scratch/scsolver/source/inc/xcalc.hxx index a26783d60..bd9ab71de 100644 --- a/scratch/scsolver/source/inc/xcalc.hxx +++ b/scratch/scsolver/source/inc/xcalc.hxx @@ -119,8 +119,10 @@ public: void setCellFormula( const table::CellAddress&, const rtl::OUString& ) const; void setCellValue( const table::CellAddress&, double ) const; - void disableCellUpdates(); - void enableCellUpdates(); + void disableCellUpdates() const; + void enableCellUpdates() const; + + void addMenuItem() const; private: Reference< uno::XComponentContext > m_xCC; diff --git a/scratch/scsolver/source/ui/optiondlg.cxx b/scratch/scsolver/source/ui/optiondlg.cxx index 278f841f9..2f576692b 100644 --- a/scratch/scsolver/source/ui/optiondlg.cxx +++ b/scratch/scsolver/source/ui/optiondlg.cxx @@ -37,6 +37,7 @@ using namespace ::com::sun::star; using namespace ::com::sun::star::uno; +using namespace std; namespace scsolver { @@ -63,9 +64,37 @@ public: } }; +/** + * Specifies the action to perform when the window closing event + * is received (typically when the user clicks the close button + * on the title bar). + */ +class OptionDlgWinCloseAction : public SimpleActionObject +{ +public: + virtual void execute( BaseDialog *dlg ) + { + dlg->close(); + } +}; + +//----------------------------------------------------------------- + +struct OptionDialogImpl +{ + auto_ptr<ActionObject> pActionOK; + auto_ptr<SimpleActionObject> pActionWinClose; + + TopWindowListener* pTopWinListener; + ActionListener* pOKListener; + CloseBtnListener* pCloseListener; +}; + +//----------------------------------------------------------------- + OptionDialog::OptionDialog( SolverImpl* p ) : BaseDialog( p ), - m_pActionOK( new OptionDlgOKAction ) + m_pImpl( new OptionDialogImpl ) { initialize(); } @@ -100,16 +129,24 @@ void OptionDialog::initialize() void OptionDialog::registerListeners() { - m_pOKListener = new ActionListener( this, m_pActionOK.get() ); - registerListener( ascii("btnOK"), m_pOKListener ); + m_pImpl->pActionOK.reset( new OptionDlgOKAction ); + m_pImpl->pOKListener = new ActionListener( this, m_pImpl->pActionOK.get() ); + registerListener( ascii("btnOK"), m_pImpl->pOKListener ); - m_pCloseListener = new CloseBtnListener(this); - registerListener( ascii("btnCancel"), m_pCloseListener ); + m_pImpl->pCloseListener = new CloseBtnListener(this); + registerListener( ascii("btnCancel"), m_pImpl->pCloseListener ); + + m_pImpl->pActionWinClose.reset( new OptionDlgWinCloseAction ); + m_pImpl->pTopWinListener = new TopWindowListener(this); + m_pImpl->pTopWinListener->setActionClosing(m_pImpl->pActionWinClose.get()); + registerListener( m_pImpl->pTopWinListener ); } void OptionDialog::unregisterListeners() throw() { - unregisterListener( ascii("btnCancel"), m_pCloseListener ); + unregisterListener( ascii("btnOK"), m_pImpl->pOKListener ); + unregisterListener( ascii("btnCancel"), m_pImpl->pCloseListener ); + unregisterListener( m_pImpl->pTopWinListener ); } bool OptionDialog::doneRangeSelection() const @@ -117,6 +154,11 @@ bool OptionDialog::doneRangeSelection() const return false; } +void OptionDialog::close() +{ + setVisible(false); +} + const rtl::OUString OptionDialog::getDialogName() const { return ascii("OptionDialog"); |