diff options
author | Jan Holesovsky <kendy@collabora.com> | 2018-01-17 11:11:34 +0100 |
---|---|---|
committer | Jan Holesovsky <kendy@collabora.com> | 2018-01-18 09:21:23 +0100 |
commit | 67ea8e1432f4ea86f2bc16d8479ef8cf10c74b80 (patch) | |
tree | 8c48659713e739d9c7bd1c0ba21a63d0114f9a4e /sw | |
parent | abe4eaf57be93300be4710aee0bc283055403f4b (diff) |
sw: Actually only .uno:StyleApply and .uno:StyleWatercanMode can return...
...a value, at least according to sfx2/sdi/sfx.sdi.
Change-Id: I1a12c025386cfc6eae529782cdb69207ffa388c5
Reviewed-on: https://gerrit.libreoffice.org/48041
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Jenkins <ci@libreoffice.org>
Diffstat (limited to 'sw')
-rw-r--r-- | sw/source/uibase/app/docst.cxx | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/sw/source/uibase/app/docst.cxx b/sw/source/uibase/app/docst.cxx index 1ae3a3ebf066..c2954792fb69 100644 --- a/sw/source/uibase/app/docst.cxx +++ b/sw/source/uibase/app/docst.cxx @@ -295,7 +295,6 @@ void SwDocShell::StateStyleSheet(SfxItemSet& rSet, SwWrtShell* pSh) void SwDocShell::ExecStyleSheet( SfxRequest& rReq ) { sal_uInt16 nSlot = rReq.GetSlot(); - sal_uInt16 nRet = SFXSTYLEBIT_ALL; const SfxItemSet* pArgs = rReq.GetArgs(); const SfxPoolItem* pItem; @@ -323,7 +322,7 @@ void SwDocShell::ExecStyleSheet( SfxRequest& rReq ) if (sName.isEmpty() && m_xBasePool.get()) sName = SfxStyleDialog::GenerateUnusedName(*m_xBasePool); - nRet = Edit( sName, sParent, nFamily, nMask, true, OString(), nullptr, rReq.IsAPI() ); + Edit(sName, sParent, nFamily, nMask, true, OString(), nullptr, rReq.IsAPI()); // Update Watermark if new page style was created if( nFamily == SfxStyleFamily::Page ) @@ -498,47 +497,55 @@ void SwDocShell::ExecStyleSheet( SfxRequest& rReq ) } if (!aParam.isEmpty() || nSlot == SID_STYLE_WATERCAN ) { + sal_uInt16 nRet = SFXSTYLEBIT_ALL; + bool bReturns = false; + switch(nSlot) { case SID_STYLE_EDIT: - nRet = Edit(aParam, aEmptyOUStr, nFamily, nMask, false, OString(), pActShell ); + Edit(aParam, aEmptyOUStr, nFamily, nMask, false, OString(), pActShell); break; case SID_STYLE_DELETE: - nRet = sal_uInt16(Delete(aParam, nFamily)); + Delete(aParam, nFamily); break; case SID_STYLE_HIDE: case SID_STYLE_SHOW: - nRet = sal_uInt16(Hide(aParam, nFamily, nSlot == SID_STYLE_HIDE)); + Hide(aParam, nFamily, nSlot == SID_STYLE_HIDE); break; case SID_STYLE_APPLY: // Shell-switch in ApplyStyles nRet = static_cast<sal_uInt16>(ApplyStyles(aParam, nFamily, pActShell, rReq.GetModifier() )); + bReturns = true; break; case SID_STYLE_WATERCAN: nRet = static_cast<sal_uInt16>(DoWaterCan(aParam, nFamily)); + bReturns = true; break; case SID_STYLE_UPDATE_BY_EXAMPLE: - nRet = static_cast<sal_uInt16>(UpdateStyle(aParam, nFamily, pActShell)); + UpdateStyle(aParam, nFamily, pActShell); break; case SID_STYLE_NEW_BY_EXAMPLE: - nRet = static_cast<sal_uInt16>(MakeByExample(aParam, nFamily, nMask, pActShell )); + MakeByExample(aParam, nFamily, nMask, pActShell); break; default: OSL_FAIL("Invalid SlotId"); } + if (bReturns) + { + if(rReq.IsAPI()) // Basic only gets TRUE or FALSE + rReq.SetReturnValue(SfxUInt16Item(nSlot, sal_uInt16(nRet !=0))); + else + rReq.SetReturnValue(SfxUInt16Item(nSlot, nRet)); + } + rReq.Done(); } break; } } - - if(rReq.IsAPI()) // Basic only gets TRUE or FALSE - rReq.SetReturnValue(SfxUInt16Item(nSlot, sal_uInt16(nRet !=0))); - else - rReq.SetReturnValue(SfxUInt16Item(nSlot, nRet)); } class ApplyStyle |