summaryrefslogtreecommitdiff
path: root/sd
diff options
context:
space:
mode:
authorRishabh Kumar <kris.kr296@gmail.com>2016-06-07 16:58:20 +0530
committerKatarina Behrens <Katarina.Behrens@cib.de>2016-06-28 19:37:44 +0000
commit76585ae33f3ca75c05c0ccbf6a621b6e2d42bc00 (patch)
treec33a276de22708658312fb3adefa50907518da17 /sd
parent6af8c9ef2de39b933274c96fd661d219b2bed8a3 (diff)
Convert Bitmap tab to Pattern tab
Change-Id: I5cf02f1889090539f7adb826483c91a1ef3c3925 Reviewed-on: https://gerrit.libreoffice.org/26015 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
Diffstat (limited to 'sd')
-rw-r--r--sd/sdi/_drvwsh.sdi4
-rw-r--r--sd/source/ui/dlg/dlgpage.cxx4
-rw-r--r--sd/source/ui/dlg/prltempl.cxx2
-rw-r--r--sd/source/ui/dlg/tabtempl.cxx2
-rw-r--r--sd/source/ui/docshell/docshell.cxx1
-rw-r--r--sd/source/ui/inc/dlgpage.hxx1
-rw-r--r--sd/source/ui/inc/prltempl.hxx1
-rw-r--r--sd/source/ui/inc/tabtempl.hxx1
-rw-r--r--sd/source/ui/sidebar/SlideBackground.cxx156
-rw-r--r--sd/source/ui/sidebar/SlideBackground.hxx1
10 files changed, 126 insertions, 47 deletions
diff --git a/sd/sdi/_drvwsh.sdi b/sd/sdi/_drvwsh.sdi
index 94f1a1a7ab1f..7214f3f486ef 100644
--- a/sd/sdi/_drvwsh.sdi
+++ b/sd/sdi/_drvwsh.sdi
@@ -1406,6 +1406,10 @@ interface DrawView
[
StateMethod = GetAttrState ;
]
+ SID_PATTERN_LIST
+ [
+ StateMethod = GetAttrState ;
+ ]
SID_ATTR_LINE_WIDTH // ole : no, status : ?
[
ExecMethod = FuTemporary ;
diff --git a/sd/source/ui/dlg/dlgpage.cxx b/sd/source/ui/dlg/dlgpage.cxx
index d2cbe3987142..bba44fd63aed 100644
--- a/sd/source/ui/dlg/dlgpage.cxx
+++ b/sd/source/ui/dlg/dlgpage.cxx
@@ -46,6 +46,8 @@ SdPageDlg::SdPageDlg( SfxObjectShell* pDocSh, vcl::Window* pParent, const SfxIte
( mpDocShell->GetItem( SID_GRADIENT_LIST ) ) ) );
SvxBitmapListItem aBitmapListItem(*static_cast<const SvxBitmapListItem*>(
( mpDocShell->GetItem( SID_BITMAP_LIST ) ) ) );
+ SvxPatternListItem aPatternListItem(*static_cast<const SvxPatternListItem*>(
+ ( mpDocShell->GetItem( SID_PATTERN_LIST ) ) ) );
SvxHatchListItem aHatchListItem(*static_cast<const SvxHatchListItem*>(
( mpDocShell->GetItem( SID_HATCH_LIST ) ) ) );
@@ -53,6 +55,7 @@ SdPageDlg::SdPageDlg( SfxObjectShell* pDocSh, vcl::Window* pParent, const SfxIte
mpGradientList = aGradientListItem.GetGradientList();
mpHatchingList = aHatchListItem.GetHatchList();
mpBitmapList = aBitmapListItem.GetBitmapList();
+ mpPatternList = aPatternListItem.GetPatternList();
SfxAbstractDialogFactory* pFact = SfxAbstractDialogFactory::Create();
OSL_ENSURE(pFact, "Dialog creation failed!");
@@ -80,6 +83,7 @@ void SdPageDlg::PageCreated(sal_uInt16 nId, SfxTabPage& rPage)
aSet.Put (SvxGradientListItem(mpGradientList,SID_GRADIENT_LIST));
aSet.Put (SvxHatchListItem(mpHatchingList,SID_HATCH_LIST));
aSet.Put (SvxBitmapListItem(mpBitmapList,SID_BITMAP_LIST));
+ aSet.Put (SvxPatternListItem(mpPatternList,SID_PATTERN_LIST));
aSet.Put (SfxUInt16Item(SID_PAGE_TYPE,0));
aSet.Put (SfxUInt16Item(SID_DLG_TYPE,1));
aSet.Put (SfxUInt16Item(SID_TABPAGE_POS,0));
diff --git a/sd/source/ui/dlg/prltempl.cxx b/sd/source/ui/dlg/prltempl.cxx
index 1363cbdd05d8..7c254907be91 100644
--- a/sd/source/ui/dlg/prltempl.cxx
+++ b/sd/source/ui/dlg/prltempl.cxx
@@ -118,6 +118,7 @@ SdPresLayoutTemplateDlg::SdPresLayoutTemplateDlg( SfxObjectShell* pDocSh,
SvxColorListItem aColorListItem(*static_cast<const SvxColorListItem*>( mpDocShell->GetItem( SID_COLOR_TABLE ) ) );
SvxGradientListItem aGradientListItem(*static_cast<const SvxGradientListItem*>( mpDocShell->GetItem( SID_GRADIENT_LIST ) ) );
SvxBitmapListItem aBitmapListItem(*static_cast<const SvxBitmapListItem*>( mpDocShell->GetItem( SID_BITMAP_LIST ) ) );
+ SvxPatternListItem aPatternListItem(*static_cast<const SvxPatternListItem*>( mpDocShell->GetItem( SID_PATTERN_LIST ) ) );
SvxHatchListItem aHatchListItem(*static_cast<const SvxHatchListItem*>( mpDocShell->GetItem( SID_HATCH_LIST ) ) );
SvxDashListItem aDashListItem(*static_cast<const SvxDashListItem*>( mpDocShell->GetItem( SID_DASH_LIST ) ) );
SvxLineEndListItem aLineEndListItem(*static_cast<const SvxLineEndListItem*>( mpDocShell->GetItem( SID_LINEEND_LIST ) ) );
@@ -128,6 +129,7 @@ SdPresLayoutTemplateDlg::SdPresLayoutTemplateDlg( SfxObjectShell* pDocSh,
pGradientList = aGradientListItem.GetGradientList();
pHatchingList = aHatchListItem.GetHatchList();
pBitmapList = aBitmapListItem.GetBitmapList();
+ pPatternList = aPatternListItem.GetPatternList();
SfxAbstractDialogFactory* pFact = SfxAbstractDialogFactory::Create();
OSL_ENSURE(pFact, "Dialog creation failed!");
diff --git a/sd/source/ui/dlg/tabtempl.cxx b/sd/source/ui/dlg/tabtempl.cxx
index b7e119b1a0bf..17e962bc8b36 100644
--- a/sd/source/ui/dlg/tabtempl.cxx
+++ b/sd/source/ui/dlg/tabtempl.cxx
@@ -61,6 +61,7 @@ SdTabTemplateDlg::SdTabTemplateDlg( vcl::Window* pParent,
, pGradientList(pModel->GetGradientList())
, pHatchingList(pModel->GetHatchList())
, pBitmapList(pModel->GetBitmapList())
+ , pPatternList(pModel->GetPatternList())
, pDashList(pModel->GetDashList())
, pLineEndList(pModel->GetLineEndList())
, m_nLineId(0)
@@ -120,6 +121,7 @@ void SdTabTemplateDlg::PageCreated( sal_uInt16 nId, SfxTabPage &rPage )
aSet.Put (SfxUInt16Item(SID_PAGE_TYPE,0));
aSet.Put (SfxUInt16Item(SID_DLG_TYPE,1));
aSet.Put (SfxUInt16Item(SID_TABPAGE_POS,0));
+ aSet.Put (SvxPatternListItem(pPatternList,SID_PATTERN_LIST));
rPage.PageCreated(aSet);
}
else if (nId == m_nShadowId)
diff --git a/sd/source/ui/docshell/docshell.cxx b/sd/source/ui/docshell/docshell.cxx
index ccf257c54679..9a0698234420 100644
--- a/sd/source/ui/docshell/docshell.cxx
+++ b/sd/source/ui/docshell/docshell.cxx
@@ -369,6 +369,7 @@ void DrawDocShell::UpdateTablePointers()
PutItem( SvxGradientListItem( mpDoc->GetGradientList(), SID_GRADIENT_LIST ) );
PutItem( SvxHatchListItem( mpDoc->GetHatchList(), SID_HATCH_LIST ) );
PutItem( SvxBitmapListItem( mpDoc->GetBitmapList(), SID_BITMAP_LIST ) );
+ PutItem( SvxPatternListItem( mpDoc->GetPatternList(), SID_PATTERN_LIST ) );
PutItem( SvxDashListItem( mpDoc->GetDashList(), SID_DASH_LIST ) );
PutItem( SvxLineEndListItem( mpDoc->GetLineEndList(), SID_LINEEND_LIST ) );
diff --git a/sd/source/ui/inc/dlgpage.hxx b/sd/source/ui/inc/dlgpage.hxx
index 3b56dc6805ec..c624ecb5ea87 100644
--- a/sd/source/ui/inc/dlgpage.hxx
+++ b/sd/source/ui/inc/dlgpage.hxx
@@ -37,6 +37,7 @@ private:
XGradientListRef mpGradientList;
XHatchListRef mpHatchingList;
XBitmapListRef mpBitmapList;
+ XPatternListRef mpPatternList;
sal_uInt16 mnArea;
sal_uInt16 mnPage;
diff --git a/sd/source/ui/inc/prltempl.hxx b/sd/source/ui/inc/prltempl.hxx
index 105b465eae01..75d4d28776b4 100644
--- a/sd/source/ui/inc/prltempl.hxx
+++ b/sd/source/ui/inc/prltempl.hxx
@@ -42,6 +42,7 @@ private:
XGradientListRef pGradientList;
XHatchListRef pHatchingList;
XBitmapListRef pBitmapList;
+ XPatternListRef pPatternList;
XDashListRef pDashList;
XLineEndListRef pLineEndList;
diff --git a/sd/source/ui/inc/tabtempl.hxx b/sd/source/ui/inc/tabtempl.hxx
index 88b84cbed86a..d5c2f5e824eb 100644
--- a/sd/source/ui/inc/tabtempl.hxx
+++ b/sd/source/ui/inc/tabtempl.hxx
@@ -39,6 +39,7 @@ private:
XGradientListRef pGradientList;
XHatchListRef pHatchingList;
XBitmapListRef pBitmapList;
+ XPatternListRef pPatternList;
XDashListRef pDashList;
XLineEndListRef pLineEndList;
diff --git a/sd/source/ui/sidebar/SlideBackground.cxx b/sd/source/ui/sidebar/SlideBackground.cxx
index 26f1dfd44071..a3c6ec94490a 100644
--- a/sd/source/ui/sidebar/SlideBackground.cxx
+++ b/sd/source/ui/sidebar/SlideBackground.cxx
@@ -64,6 +64,7 @@
#include <algorithm>
#include "EventMultiplexer.hxx"
#include "glob.hrc"
+#include <vcl/salbtype.hxx>
using namespace ::com::sun::star;
@@ -71,6 +72,16 @@ using ::com::sun::star::uno::Reference;
namespace sd { namespace sidebar {
+enum eFillStyle
+{
+ NONE,
+ SOLID,
+ GRADIENT,
+ HATCH,
+ BITMAP,
+ PATTERN
+};
+
SlideBackground::SlideBackground(
Window * pParent,
ViewShellBase& rBase,
@@ -151,7 +162,7 @@ void SlideBackground::Initialize()
}
}
- mpFillStyle->SelectEntryPos(0);
+ mpFillStyle->SelectEntryPos(static_cast< sal_Int32 >(NONE));
mpDspMasterBackground->SetClickHdl(LINK(this, SlideBackground, DspBackground));
mpDspMasterObjects->SetClickHdl(LINK(this,SlideBackground, DspObjects));
@@ -169,21 +180,22 @@ void SlideBackground::HandleContextChange(
void SlideBackground::Update()
{
- const drawing::FillStyle eXFS = (drawing::FillStyle)mpFillStyle->GetSelectEntryPos();
+ const eFillStyle nPos = (eFillStyle)mpFillStyle->GetSelectEntryPos();
+
SfxObjectShell* pSh = SfxObjectShell::Current();
if (!pSh)
return;
- switch(eXFS)
+ switch(nPos)
{
- case drawing::FillStyle_NONE:
+ case NONE:
{
mpFillLB->Hide();
mpFillAttr->Hide();
mpFillGrad->Hide();
}
break;
- case drawing::FillStyle_SOLID:
+ case SOLID:
{
mpFillAttr->Hide();
mpFillGrad->Hide();
@@ -202,7 +214,7 @@ void SlideBackground::Update()
}
}
break;
- case drawing::FillStyle_GRADIENT:
+ case GRADIENT:
{
mpFillLB->Show();
const SvxColorListItem aItem(*static_cast<const SvxColorListItem*>(pSh->GetItem(SID_COLOR_TABLE)));
@@ -233,7 +245,7 @@ void SlideBackground::Update()
}
break;
- case drawing::FillStyle_HATCH:
+ case HATCH:
{
mpFillLB->Hide();
const SvxHatchListItem aItem(*static_cast<const SvxHatchListItem*>(pSh->GetItem(SID_HATCH_LIST)));
@@ -247,20 +259,29 @@ void SlideBackground::Update()
}
break;
- case drawing::FillStyle_BITMAP:
+ case BITMAP:
+ case PATTERN:
{
mpFillLB->Hide();
- const SvxBitmapListItem aItem(*static_cast<const SvxBitmapListItem*>(pSh->GetItem(SID_BITMAP_LIST)));
mpFillAttr->Show();
mpFillAttr->Clear();
- mpFillAttr->Fill(aItem.GetBitmapList());
mpFillGrad->Hide();
-
- const OUString aBitmapName = GetBitmapSetOrDefault();
- mpFillAttr->SelectEntry( aBitmapName );
+ OUString aName;
+ if(nPos == BITMAP)
+ {
+ const SvxBitmapListItem aItem(*static_cast<const SvxBitmapListItem*>(pSh->GetItem(SID_BITMAP_LIST)));
+ mpFillAttr->Fill(aItem.GetBitmapList());
+ aName = GetBitmapSetOrDefault();
+ }
+ else if(nPos == PATTERN)
+ {
+ const SvxPatternListItem aItem(*static_cast<const SvxPatternListItem*>(pSh->GetItem(SID_PATTERN_LIST)));
+ mpFillAttr->Fill(aItem.GetPatternList());
+ aName = GetPatternSetOrDefault();
+ }
+ mpFillAttr->SelectEntry( aName );
}
break;
-
default:
break;
}
@@ -494,7 +515,7 @@ const OUString SlideBackground::GetHatchingSetOrDefault()
const OUString SlideBackground::GetBitmapSetOrDefault()
{
- if( !mpBitmapItem )
+ if( !mpBitmapItem || mpBitmapItem->isPattern())
{
SfxObjectShell* pSh = SfxObjectShell::Current();
const SvxBitmapListItem aBmpListItem(*static_cast<const SvxBitmapListItem*>(pSh->GetItem(SID_BITMAP_LIST)));
@@ -507,6 +528,21 @@ const OUString SlideBackground::GetBitmapSetOrDefault()
return mpBitmapItem->GetName();
}
+const OUString SlideBackground::GetPatternSetOrDefault()
+{
+ if( !mpBitmapItem || !(mpBitmapItem->isPattern()))
+ {
+ SfxObjectShell* pSh = SfxObjectShell::Current();
+ const SvxPatternListItem aPtrnListItem(*static_cast<const SvxPatternListItem*>(pSh->GetItem(SID_PATTERN_LIST)));
+ const GraphicObject aGraphObj = aPtrnListItem.GetPatternList()->GetBitmap(0)->GetGraphicObject();
+ const OUString aPtrnName = aPtrnListItem.GetPatternList()->GetBitmap(0)->GetName();
+
+ mpBitmapItem.reset( new XFillBitmapItem( aPtrnName, aGraphObj ) );
+ }
+
+ return mpBitmapItem->GetName();
+}
+
void SlideBackground::DataChanged (const DataChangedEvent& /*rEvent*/)
{
@@ -527,7 +563,7 @@ void SlideBackground::NotifyItemUpdate(
{
if(eState >= SfxItemState::DEFAULT)
{
- mpFillStyle->SelectEntryPos(1);
+ mpFillStyle->SelectEntryPos(static_cast< sal_Int32 >(SOLID));
mpColorItem.reset(pState ? static_cast< XFillColorItem* >(pState->Clone()) : nullptr);
Update();
}
@@ -538,7 +574,7 @@ void SlideBackground::NotifyItemUpdate(
{
if(eState >= SfxItemState::DEFAULT)
{
- mpFillStyle->SelectEntryPos(3);
+ mpFillStyle->SelectEntryPos(static_cast< sal_Int32 >(HATCH));
mpHatchItem.reset(pState ? static_cast < XFillHatchItem* >(pState->Clone()) : nullptr);
Update();
}
@@ -549,7 +585,7 @@ void SlideBackground::NotifyItemUpdate(
{
if(eState >= SfxItemState::DEFAULT)
{
- mpFillStyle->SelectEntryPos(2);
+ mpFillStyle->SelectEntryPos(static_cast< sal_Int32>(GRADIENT));
mpGradientItem.reset(pState ? static_cast< XFillGradientItem* >(pState->Clone()) : nullptr);
Update();
}
@@ -559,8 +595,16 @@ void SlideBackground::NotifyItemUpdate(
{
if(eState >= SfxItemState::DEFAULT)
{
- mpFillStyle->SelectEntryPos(4);
mpBitmapItem.reset(pState ? static_cast< XFillBitmapItem* >(pState->Clone()) : nullptr);
+ if(mpBitmapItem)
+ {
+ if(mpBitmapItem->isPattern())
+ mpFillStyle->SelectEntryPos(static_cast< sal_Int32 >(PATTERN));
+ else
+ mpFillStyle->SelectEntryPos(static_cast< sal_Int32 >(BITMAP));
+ }
+ else
+ mpFillStyle->SelectEntryPos(static_cast< sal_Int32 >(BITMAP));
Update();
}
}
@@ -577,20 +621,25 @@ void SlideBackground::NotifyItemUpdate(
switch(eXFS)
{
case drawing::FillStyle_NONE:
- mpFillStyle->SelectEntryPos(0);
+ mpFillStyle->SelectEntryPos(static_cast< sal_Int32 >(NONE));
break;
case drawing::FillStyle_SOLID:
- mpFillStyle->SelectEntryPos(1);
+ mpFillStyle->SelectEntryPos(static_cast< sal_Int32 >(SOLID));
break;
case drawing::FillStyle_GRADIENT:
- mpFillStyle->SelectEntryPos(2);
+ mpFillStyle->SelectEntryPos(static_cast< sal_Int32 >(GRADIENT));
break;
case drawing::FillStyle_HATCH:
- mpFillStyle->SelectEntryPos(3);
+ mpFillStyle->SelectEntryPos(static_cast< sal_Int32 >(HATCH));
break;
case drawing::FillStyle_BITMAP:
- mpFillStyle->SelectEntryPos(4);
- break;
+ {
+ if(mpBitmapItem->isPattern())
+ mpFillStyle->SelectEntryPos(static_cast< sal_Int32 >(PATTERN));
+ else
+ mpFillStyle->SelectEntryPos(static_cast< sal_Int32 >(BITMAP));
+ }
+ break;
default:
break;
}
@@ -653,7 +702,7 @@ void SlideBackground::NotifyItemUpdate(
{
if(eState >= SfxItemState::DEFAULT)
{
- mpFillStyle->SelectEntryPos(4);
+ mpFillStyle->SelectEntryPos(static_cast< sal_Int32 >(BITMAP));
Update();
}
}
@@ -665,42 +714,43 @@ void SlideBackground::NotifyItemUpdate(
IMPL_LINK_NOARG_TYPED(SlideBackground, FillStyleModifyHdl, ListBox&, void)
{
- const drawing::FillStyle eXFS = (drawing::FillStyle)mpFillStyle->GetSelectEntryPos();
- const XFillStyleItem aXFillStyleItem(eXFS);
+ const eFillStyle nPos = (eFillStyle)mpFillStyle->GetSelectEntryPos();
Update();
- switch (eXFS)
+ switch (nPos)
{
- case drawing::FillStyle_NONE:
+ case NONE:
{
+ const XFillStyleItem aXFillStyleItem(drawing::FillStyle_NONE);
GetBindings()->GetDispatcher()->ExecuteList(SID_ATTR_PAGE_FILLSTYLE, SfxCallMode::RECORD, { &aXFillStyleItem });
}
break;
- case drawing::FillStyle_SOLID:
+ case SOLID:
{
- XFillColorItem aItem( OUString(), mpColorItem->GetColorValue() );
+ const XFillColorItem aItem( OUString(), mpColorItem->GetColorValue() );
GetBindings()->GetDispatcher()->ExecuteList(SID_ATTR_PAGE_COLOR, SfxCallMode::RECORD, { &aItem });
}
break;
- case drawing::FillStyle_GRADIENT:
+ case GRADIENT:
{
- XFillGradientItem aItem( mpGradientItem->GetName(), mpGradientItem->GetGradientValue() );
+ const XFillGradientItem aItem( mpGradientItem->GetName(), mpGradientItem->GetGradientValue() );
GetBindings()->GetDispatcher()->ExecuteList(SID_ATTR_PAGE_GRADIENT, SfxCallMode::RECORD, { &aItem });
}
break;
- case drawing::FillStyle_HATCH:
+ case HATCH:
{
- XFillHatchItem aItem( mpHatchItem->GetName(), mpHatchItem->GetHatchValue() );
+ const XFillHatchItem aItem( mpHatchItem->GetName(), mpHatchItem->GetHatchValue() );
GetBindings()->GetDispatcher()->ExecuteList(SID_ATTR_PAGE_HATCH, SfxCallMode::RECORD, { &aItem });
}
break;
- case drawing::FillStyle_BITMAP:
+ case BITMAP:
+ case PATTERN:
{
- XFillBitmapItem aItem( mpBitmapItem->GetName(), mpBitmapItem->GetGraphicObject() );
+ const XFillBitmapItem aItem( mpBitmapItem->GetName(), mpBitmapItem->GetGraphicObject() );
GetBindings()->GetDispatcher()->ExecuteList(SID_ATTR_PAGE_BITMAP, SfxCallMode::RECORD, { &aItem });
}
break;
@@ -751,12 +801,12 @@ IMPL_LINK_NOARG_TYPED(SlideBackground, FillColorHdl, ListBox&, void)
IMPL_LINK_NOARG_TYPED(SlideBackground, FillBackgroundHdl, ListBox&, void)
{
- const drawing::FillStyle eXFS = (drawing::FillStyle)mpFillStyle->GetSelectEntryPos();
+ const eFillStyle nFillPos = (eFillStyle)mpFillStyle->GetSelectEntryPos();
SfxObjectShell* pSh = SfxObjectShell::Current();
- switch(eXFS)
+ switch(nFillPos)
{
- case drawing::FillStyle_HATCH:
+ case HATCH:
{
const SvxHatchListItem aHatchListItem(*static_cast<const SvxHatchListItem*>(pSh->GetItem(SID_HATCH_LIST)));
sal_uInt16 nPos = mpFillAttr->GetSelectEntryPos();
@@ -768,17 +818,29 @@ IMPL_LINK_NOARG_TYPED(SlideBackground, FillBackgroundHdl, ListBox&, void)
}
break;
- case drawing::FillStyle_BITMAP:
+ case BITMAP:
+ case PATTERN:
{
- SvxBitmapListItem aBitmapListItem(*static_cast<const SvxBitmapListItem*>(pSh->GetItem(SID_BITMAP_LIST)));
sal_Int16 nPos = mpFillAttr->GetSelectEntryPos();
- GraphicObject aBitmap = aBitmapListItem.GetBitmapList()->GetBitmap(nPos)->GetGraphicObject();
- OUString aBitmapName = aBitmapListItem.GetBitmapList()->GetBitmap(nPos)->GetName();
-
- XFillBitmapItem aItem(aBitmapName, aBitmap);
+ GraphicObject aBitmap;
+ OUString aName;
+ if(nPos == static_cast< sal_Int32 >(BITMAP))
+ {
+ SvxBitmapListItem aBitmapListItem(*static_cast<const SvxBitmapListItem*>(pSh->GetItem(SID_BITMAP_LIST)));
+ aBitmap = aBitmapListItem.GetBitmapList()->GetBitmap(nPos)->GetGraphicObject();
+ aName = aBitmapListItem.GetBitmapList()->GetBitmap(nPos)->GetName();
+ }
+ else if(nPos == static_cast< sal_Int32 >(PATTERN))
+ {
+ SvxPatternListItem aPatternListItem(*static_cast<const SvxPatternListItem*>(pSh->GetItem(SID_PATTERN_LIST)));
+ aBitmap = aPatternListItem.GetPatternList()->GetBitmap(nPos)->GetGraphicObject();
+ aName = aPatternListItem.GetPatternList()->GetBitmap(nPos)->GetName();
+ }
+ XFillBitmapItem aItem(aName, aBitmap);
GetBindings()->GetDispatcher()->ExecuteList(SID_ATTR_PAGE_BITMAP, SfxCallMode::RECORD, { &aItem });
}
break;
+
default:
break;
}
diff --git a/sd/source/ui/sidebar/SlideBackground.hxx b/sd/source/ui/sidebar/SlideBackground.hxx
index 0848e56828c8..80802056da8e 100644
--- a/sd/source/ui/sidebar/SlideBackground.hxx
+++ b/sd/source/ui/sidebar/SlideBackground.hxx
@@ -128,6 +128,7 @@ private:
XGradient GetGradientSetOrDefault();
const OUString GetHatchingSetOrDefault();
const OUString GetBitmapSetOrDefault();
+ const OUString GetPatternSetOrDefault();
void addListener();
void removeListener();
void populateMasterSlideDropdown();