diff --git a/VBA-macro-modification-warning.diff b/VBA-macro-modification-warning.diff new file mode 100644 index 0000000..9bb92a3 --- /dev/null +++ b/VBA-macro-modification-warning.diff @@ -0,0 +1,97 @@ +From cfc71b418d27bbfaec195238764078fd5881bab3 Mon Sep 17 00:00:00 2001 +From: Jan Holesovsky +Date: Thu, 22 May 2014 17:29:56 +0200 +Subject: [PATCH] bnc#467278: Introduce a warning that changes to VBA macros + cannot be saved. + +As an InfoBar, so hopefully not annoying... + +Conflicts: + basctl/source/basicide/basidesh.cxx + +Change-Id: I5d4e79273edc03829fdab2d6d5a291576c954e4b +--- + basctl/inc/basidesh.hrc | 1 + + basctl/source/basicide/basidesh.cxx | 9 +++++++++ + basctl/source/basicide/basidesh.src | 4 ++++ + include/sfx2/viewfrm.hxx | 2 +- + 4 files changed, 15 insertions(+), 1 deletion(-) + +diff --git a/basctl/inc/basidesh.hrc b/basctl/inc/basidesh.hrc +index 623cb0e..a40f788 100644 +--- a/basctl/inc/basidesh.hrc ++++ b/basctl/inc/basidesh.hrc +@@ -68,6 +68,7 @@ + #define RID_STR_OPEN ( RID_BASICIDE_START + 20 ) + #define RID_STR_SAVE ( RID_BASICIDE_START + 21 ) + #define RID_STR_RUNTIMEERROR ( RID_BASICIDE_START + 22 ) ++#define RID_STR_CANNOTSAVEVBA ( RID_BASICIDE_START + 23 ) + #define RID_STR_STDDIALOGNAME ( RID_BASICIDE_START + 24 ) + + #define RID_STR_STDMODULENAME ( RID_BASICIDE_START + 27 ) +diff --git a/basctl/source/basicide/basidesh.cxx b/basctl/source/basicide/basidesh.cxx +index 674775b..f95e6f4 100644 +--- a/basctl/source/basicide/basidesh.cxx ++++ b/basctl/source/basicide/basidesh.cxx +@@ -35,6 +35,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -137,6 +138,7 @@ SFX_IMPL_INTERFACE( basctl_Shell, SfxViewShell, IDEResId( RID_STR_IDENAME ) ) + { + SFX_CHILDWINDOW_REGISTRATION( SID_SEARCH_DLG ); + SFX_FEATURED_CHILDWINDOW_REGISTRATION(SID_SHOW_PROPERTYBROWSER, BASICIDE_UI_FEATURE_SHOW_BROWSER); ++ SFX_CHILDWINDOW_REGISTRATION(SfxInfoBarContainerChild::GetChildWindowId()); + SFX_POPUPMENU_REGISTRATION( IDEResId( RID_POPUP_DLGED ) ); + } + +@@ -250,7 +252,14 @@ Shell::~Shell() + void Shell::onDocumentCreated( const ScriptDocument& /*_rDocument*/ ) + { + if (pCurWin) ++ { + pCurWin->OnNewDocument(); ++ ++ // for VBA documents, show a warning that we can save them only in ODF ++ if (pCurWin->GetDocument().isInVBAMode()) ++ GetViewFrame()->AppendInfoBar("vba_save", IDE_RESSTR(RID_STR_CANNOTSAVEVBA)); ++ } ++ + UpdateWindows(); + } + +diff --git a/basctl/source/basicide/basidesh.src b/basctl/source/basicide/basidesh.src +index 6876130..5e019fd 100644 +--- a/basctl/source/basicide/basidesh.src ++++ b/basctl/source/basicide/basidesh.src +@@ -216,6 +216,10 @@ String RID_STR_CANNOTCLOSE + { + Text [ en-US ] = "The window cannot be closed while BASIC is running." ; + }; ++String RID_STR_CANNOTSAVEVBA ++{ ++ Text [ en-US ] = "You are editing a VBA macro. Changes can be saved only in OpenDocument Format." ; ++}; + String RID_STR_REPLACESTDLIB + { + Text [ en-US ] = "The default library cannot be replaced." ; +diff --git a/include/sfx2/viewfrm.hxx b/include/sfx2/viewfrm.hxx +index cf316b7..8541397 100644 +--- a/include/sfx2/viewfrm.hxx ++++ b/include/sfx2/viewfrm.hxx +@@ -190,7 +190,7 @@ public: + The buttons will be added from Right to Left at the right of the info bar. The parent, size + and position of each button will be changed: only the width will remain unchanged. + */ +- void AppendInfoBar( const OUString& sId, const OUString& sMessage, std::vector< PushButton* > aButtons ); ++ void AppendInfoBar( const OUString& sId, const OUString& sMessage, std::vector< PushButton* > aButtons = std::vector< PushButton* >() ); + void RemoveInfoBar( const OUString& sId ); + + SAL_DLLPRIVATE void SetDowning_Impl(); +-- +1.8.4.5 + diff --git a/libreoffice.changes b/libreoffice.changes index 7d0dfbd..f298831 100644 --- a/libreoffice.changes +++ b/libreoffice.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Thu May 22 15:53:29 UTC 2014 - andras.timar@collabora.com + +- bnc#467278: Introduce a warning that changes to VBA macros cannot be saved. + * VBA-macro-modification-warning.diff + ------------------------------------------------------------------- Tue May 20 08:17:29 UTC 2014 - andras.timar@collabora.com diff --git a/libreoffice.spec b/libreoffice.spec index 0df5fa9..76cd01c 100644 --- a/libreoffice.spec +++ b/libreoffice.spec @@ -106,6 +106,8 @@ Patch25: doc-brightness-contrast.diff # bnc#875713 - LO-L3: DOCX import: picture brigtness/contrast not imported Patch26: docx-brightness-contrast-1.diff Patch27: docx-brightness-contrast-2.diff +# bnc#467278: Introduce a warning that changes to VBA macros cannot be saved. +Patch28: VBA-macro-modification-warning.diff # try to save space by using hardlinks Patch990: install-with-hardlinks.diff BuildRequires: ImageMagick @@ -876,6 +878,7 @@ Provides additional %{langname} translations and resources for %{project}. \ %patch25 -p1 %patch26 -p1 %patch27 -p1 +%patch28 -p1 %patch990 -p1 # 256x256 icons tar -xjf %{SOURCE20}