From c550c3eba08ef74f47bebe792a16791161006bcb Mon Sep 17 00:00:00 2001 From: Katarina Behrens Date: Mon, 9 May 2016 15:02:11 +0200 Subject: tdf#89466: Handle no background and bitmap case also in sidebar Change-Id: I9e36a7963cb3065b81c1ba25f983d722d5f30ed8 Reviewed-on: https://gerrit.libreoffice.org/24802 Tested-by: Jenkins Reviewed-by: Katarina Behrens --- sd/sdi/_drvwsh.sdi | 2 +- sd/source/ui/sidebar/SlideBackground.cxx | 13 +++++++++++++ sd/source/ui/view/drviews7.cxx | 10 ++++++++++ 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/sd/sdi/_drvwsh.sdi b/sd/sdi/_drvwsh.sdi index 7ed164cb8139..94f1a1a7ab1f 100644 --- a/sd/sdi/_drvwsh.sdi +++ b/sd/sdi/_drvwsh.sdi @@ -2644,7 +2644,7 @@ interface DrawView ] SID_ATTR_PAGE_FILLSTYLE [ - ExecMethod = FuTemporary; + ExecMethod = SetPageProperties; StateMethod = GetPageProperties; ] SID_DISPLAY_MASTER_BACKGROUND diff --git a/sd/source/ui/sidebar/SlideBackground.cxx b/sd/source/ui/sidebar/SlideBackground.cxx index 01b3f815e4fb..96d1304b519c 100644 --- a/sd/source/ui/sidebar/SlideBackground.cxx +++ b/sd/source/ui/sidebar/SlideBackground.cxx @@ -550,6 +550,12 @@ IMPL_LINK_NOARG_TYPED(SlideBackground, FillStyleModifyHdl, ListBox&, void) switch (eXFS) { + case drawing::FillStyle_NONE: + { + GetBindings()->GetDispatcher()->ExecuteList(SID_ATTR_PAGE_FILLSTYLE, SfxCallMode::RECORD, { &aXFillStyleItem }); + } + break; + case drawing::FillStyle_SOLID: { XFillColorItem aItem( OUString(), mpColorItem->GetColorValue() ); @@ -571,6 +577,13 @@ IMPL_LINK_NOARG_TYPED(SlideBackground, FillStyleModifyHdl, ListBox&, void) } break; + case drawing::FillStyle_BITMAP: + { + XFillBitmapItem aItem( mpBitmapItem->GetName(), mpBitmapItem->GetGraphicObject() ); + GetBindings()->GetDispatcher()->ExecuteList(SID_ATTR_PAGE_BITMAP, SfxCallMode::RECORD, { &aItem }); + } + break; + default: break; } diff --git a/sd/source/ui/view/drviews7.cxx b/sd/source/ui/view/drviews7.cxx index 9737d9787273..048c426adc1e 100644 --- a/sd/source/ui/view/drviews7.cxx +++ b/sd/source/ui/view/drviews7.cxx @@ -1716,6 +1716,16 @@ void DrawViewShell::SetPageProperties (SfxRequest& rReq) switch (nSlotId) { + case(SID_ATTR_PAGE_FILLSTYLE): + { + XFillStyleItem aFSItem( static_cast(pArgs->Get( XATTR_FILLSTYLE )) ); + drawing::FillStyle eXFS = aFSItem.GetValue(); + + if ( eXFS == drawing::FillStyle_NONE ) + rPageProperties.PutItem( XFillStyleItem( eXFS ) ); + } + break; + case(SID_ATTR_PAGE_COLOR): { XFillColorItem aColorItem( static_cast(pArgs->Get( XATTR_FILLCOLOR )) ); -- cgit v1.2.3