diff options
-rw-r--r-- | sd/sdi/_drvwsh.sdi | 2 | ||||
-rw-r--r-- | sd/source/ui/sidebar/SlideBackground.cxx | 13 | ||||
-rw-r--r-- | sd/source/ui/view/drviews7.cxx | 10 |
3 files changed, 24 insertions, 1 deletions
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<const XFillStyleItem&>(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<const XFillColorItem&>(pArgs->Get( XATTR_FILLCOLOR )) ); |