summaryrefslogtreecommitdiff
path: root/sc/source/ui/view/cellsh3.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sc/source/ui/view/cellsh3.cxx')
-rw-r--r--sc/source/ui/view/cellsh3.cxx13
1 files changed, 11 insertions, 2 deletions
diff --git a/sc/source/ui/view/cellsh3.cxx b/sc/source/ui/view/cellsh3.cxx
index b7bd2daa4450..e5ef913e3ff9 100644
--- a/sc/source/ui/view/cellsh3.cxx
+++ b/sc/source/ui/view/cellsh3.cxx
@@ -456,11 +456,20 @@ void ScCellShell::Execute( SfxRequest& rReq )
const SfxPoolItem* pFormat;
if (pReqArgs->HasItem( FN_PARAM_1, &pFormat))
{
- sal_Int16 nFormat = static_cast<const SfxInt16Item*>(pFormat)->GetValue();
+ ScConditionMode nFormat = static_cast<ScConditionMode>(
+ static_cast<const SfxInt16Item*>(pFormat)->GetValue());
sal_uInt16 nId = sc::ConditionalFormatEasyDialogWrapper::GetChildWindowId();
SfxViewFrame& rViewFrame = pTabViewShell->GetViewFrame();
SfxChildWindow* pWindow = rViewFrame.GetChildWindow( nId );
- GetViewData().GetDocument().SetEasyConditionalFormatDialogData(std::make_unique<ScConditionMode>(static_cast<ScConditionMode>(nFormat)));
+ const SfxPoolItem* pManaged;
+ bool bManaged = false;
+ if (pReqArgs->HasItem(FN_PARAM_2, &pManaged))
+ {
+ bManaged = static_cast<const SfxBoolItem*>(pManaged)->GetValue();
+ }
+
+ GetViewData().GetDocument().SetEasyConditionalFormatDialogData(
+ ScConditionEasyDialogData(&nFormat, bManaged));
pScMod->SetRefDialog( nId, pWindow == nullptr );
}