summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sd/sdi/_drvwsh.sdi2
-rw-r--r--sd/source/ui/sidebar/SlideBackground.cxx13
-rw-r--r--sd/source/ui/view/drviews7.cxx10
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 )) );