summaryrefslogtreecommitdiff
path: root/framework
diff options
context:
space:
mode:
authorYousuf Philips <philipz85@hotmail.com>2015-10-04 21:14:00 +0400
committerAndras Timar <andras.timar@collabora.com>2015-10-17 23:23:29 +0200
commit8d119cc12e61954d528fa4f415e4581ccee44c8d (patch)
tree31ac9bf5d41169a64e93cc2ffec864ba0177701f /framework
parent6ee218583c216420e16449752eba550a442183b9 (diff)
tdf#91097 Substitute rectangle and ellipse uno commands
(cherry picked from commit 3080e4c09b7c4894d4f0f52c9beed4298f3fd23f) (cherry picked from commit fedf965c51a9f57e5cde203a3d15a6c244558002) (cherry picked from commit 4c2339d8177d610cc23619e787c1517ce8e8afd7) (cherry picked from commit 1bc911eca173131fdc6e7e3889d128fa03adbf72) Conflicts: framework/source/uielement/menubarmanager.cxx sc/uiconfig/scalc/menubar/menubar.xml sd/uiconfig/simpress/menubar/menubar.xml sw/uiconfig/swriter/menubar/menubar.xml Change-Id: Ib6578ddd7897d9c5d63b5dc8d8465f6107cc24a6 Reviewed-on: https://gerrit.libreoffice.org/19345 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit be6440f4624be4da84ac8b71e66297d3e43ca249)
Diffstat (limited to 'framework')
-rw-r--r--framework/source/uielement/menubarmanager.cxx55
1 files changed, 36 insertions, 19 deletions
diff --git a/framework/source/uielement/menubarmanager.cxx b/framework/source/uielement/menubarmanager.cxx
index 62400e469910..9e360738bcc8 100644
--- a/framework/source/uielement/menubarmanager.cxx
+++ b/framework/source/uielement/menubarmanager.cxx
@@ -76,6 +76,7 @@
#include <svtools/acceleratorexecute.hxx>
#include <svtools/miscopt.hxx>
#include <uielement/menubarmerger.hxx>
+#include <tools/urlobj.hxx>
// Be careful removing this "bad" construct. There are serious problems
// with #define STRICT and including windows.h. Changing this needs some
@@ -436,29 +437,45 @@ throw ( RuntimeException, std::exception )
}
else if ( Event.State >>= aItemText )
{
- // Replacement for place holders
- if ( aItemText.startsWith("($1)") )
+ INetURLObject aURL( aFeatureURL );
+ OUString aEnumPart = aURL.GetURLPath().getToken( 1, '.' );
+ if ( !aEnumPart.isEmpty() && aURL.GetProtocol() == INetProtocol::Uno )
{
- OUString aTmp(FWK_RESSTR(STR_UPDATEDOC));
- aTmp += " ";
- aTmp += aItemText.copy( 4 );
- aItemText = aTmp;
+ // Checkmark or RadioButton
+ m_pVCLMenu->ShowItem( pMenuItemHandler->nItemId, true );
+ m_pVCLMenu->CheckItem( pMenuItemHandler->nItemId, aItemText == aEnumPart );
+
+ MenuItemBits nBits = m_pVCLMenu->GetItemBits( pMenuItemHandler->nItemId );
+ //If not already designated RadioButton set as CheckMark
+ if (!(nBits & MenuItemBits::RADIOCHECK))
+ m_pVCLMenu->SetItemBits( pMenuItemHandler->nItemId, nBits | MenuItemBits::CHECKABLE );
}
- else if ( aItemText.startsWith("($2)") )
- {
- OUString aTmp(FWK_RESSTR(STR_CLOSEDOC_ANDRETURN));
- aTmp += aItemText.copy( 4 );
- aItemText = aTmp;
- }
- else if ( aItemText.startsWith("($3)") )
+ else
{
- OUString aTmp(FWK_RESSTR(STR_SAVECOPYDOC));
- aTmp += aItemText.copy( 4 );
- aItemText = aTmp;
- }
+ // Replacement for place holders
+ if ( aItemText.startsWith("($1)") )
+ {
+ OUString aTmp(FWK_RESSTR(STR_UPDATEDOC));
+ aTmp += " ";
+ aTmp += aItemText.copy( 4 );
+ aItemText = aTmp;
+ }
+ else if ( aItemText.startsWith("($2)") )
+ {
+ OUString aTmp(FWK_RESSTR(STR_CLOSEDOC_ANDRETURN));
+ aTmp += aItemText.copy( 4 );
+ aItemText = aTmp;
+ }
+ else if ( aItemText.startsWith("($3)") )
+ {
+ OUString aTmp(FWK_RESSTR(STR_SAVECOPYDOC));
+ aTmp += aItemText.copy( 4 );
+ aItemText = aTmp;
+ }
- m_pVCLMenu->ShowItem( pMenuItemHandler->nItemId, true );
- m_pVCLMenu->SetItemText( pMenuItemHandler->nItemId, aItemText );
+ m_pVCLMenu->ShowItem( pMenuItemHandler->nItemId, true );
+ m_pVCLMenu->SetItemText( pMenuItemHandler->nItemId, aItemText );
+ }
}
else if ( Event.State >>= aVisibilityStatus )
{