20 #ifndef INCLUDED_SDEXT_SOURCE_PRESENTER_PRESENTERBITMAPCONTAINER_HXX
21 #define INCLUDED_SDEXT_SOURCE_PRESENTER_PRESENTERBITMAPCONTAINER_HXX
23 #include <com/sun/star/beans/XPropertySet.hpp>
24 #include <com/sun/star/container/XHierarchicalNameAccess.hpp>
25 #include <com/sun/star/container/XNameAccess.hpp>
26 #include <com/sun/star/drawing/XPresenterHelper.hpp>
27 #include <com/sun/star/rendering/XBitmap.hpp>
28 #include <com/sun/star/rendering/XCanvas.hpp>
29 #include <com/sun/star/uno/XComponentContext.hpp>
30 #include <com/sun/star/util/Color.hpp>
51 explicit BitmapDescriptor (
const std::shared_ptr<BitmapDescriptor>& rpDefault);
54 const css::uno::Reference<css::rendering::XBitmap>&
GetNormalBitmap()
const;
55 css::uno::Reference<css::rendering::XBitmap>
const &
GetBitmap(
const Mode eMode)
const;
58 const css::uno::Reference<css::rendering::XBitmap>& rxBitmap);
89 const OUString& rsConfigurationBase,
90 const std::shared_ptr<PresenterBitmapContainer>& rpParentContainer,
91 const css::uno::Reference<css::uno::XComponentContext>& rxComponentContext,
92 const css::uno::Reference<css::rendering::XCanvas>& rxCanvas,
93 const css::uno::Reference<css::drawing::XPresenterHelper>& rxPresenterHelper =
nullptr);
95 const css::uno::Reference<css::container::XNameAccess>& rsRootNode,
96 const std::shared_ptr<PresenterBitmapContainer>& rpParentContainer,
97 const css::uno::Reference<css::uno::XComponentContext>& rxComponentContext,
98 const css::uno::Reference<css::rendering::XCanvas>& rxCanvas,
99 const css::uno::Reference<css::drawing::XPresenterHelper>& rxPresenterHelper =
nullptr);
105 const css::uno::Reference<css::uno::XComponentContext>& rxComponentContext);
109 std::shared_ptr<BitmapDescriptor>
GetBitmap (
const OUString& rsName)
const;
111 static std::shared_ptr<BitmapDescriptor>
LoadBitmap (
112 const css::uno::Reference<css::container::XHierarchicalNameAccess>& rxNode,
113 const OUString& rsPathToBitmapNode,
114 const css::uno::Reference<css::drawing::XPresenterHelper>& rxPresenterHelper,
115 const css::uno::Reference<css::rendering::XCanvas>& rxCanvas,
116 const std::shared_ptr<BitmapDescriptor>& rpDefaultBitmap);
122 css::uno::Reference<css::rendering::XCanvas>
mxCanvas;
126 const css::uno::Reference<css::container::XNameAccess>& rsRootNode);
128 const OUString& rsKey,
129 const css::uno::Reference<css::beans::XPropertySet>& rProperties);
130 static std::shared_ptr<BitmapDescriptor>
LoadBitmap (
131 const css::uno::Reference<css::beans::XPropertySet>& rxProperties,
132 const css::uno::Reference<css::drawing::XPresenterHelper>& rxPresenterHelper,
133 const css::uno::Reference<css::rendering::XCanvas>& rxCanvas,
134 const std::shared_ptr<PresenterBitmapContainer::BitmapDescriptor>& rpDefault);
There is one bitmap for the normal state, one for a mouse over effect and one to show that a button h...
void SetBitmap(const Mode eMode, const css::uno::Reference< css::rendering::XBitmap > &rxBitmap)
css::uno::Reference< css::rendering::XBitmap > mxNormalBitmap
void ProcessBitmap(const OUString &rsKey, const css::uno::Reference< css::beans::XPropertySet > &rProperties)
PresenterBitmapContainer::BitmapDescriptor PresenterBitmapDescriptor
std::shared_ptr< PresenterBitmapContainer::BitmapDescriptor > SharedBitmapDescriptor
PresenterBitmapContainer & operator=(const PresenterBitmapContainer &)=delete
css::uno::Reference< css::rendering::XBitmap > mxButtonDownBitmap
css::uno::Reference< css::rendering::XBitmap > mxMaskBitmap
void Initialize(const css::uno::Reference< css::uno::XComponentContext > &rxComponentContext)
css::uno::Reference< css::rendering::XCanvas > mxCanvas
css::uno::Reference< css::rendering::XBitmap > mxMouseOverBitmap
static BitmapDescriptor::TexturingMode StringToTexturingMode(std::u16string_view rsTexturingMode)
std::shared_ptr< BitmapDescriptor > GetBitmap(const OUString &rsName) const
Return the bitmap set that is associated with the given name.
css::uno::Reference< css::rendering::XBitmap > const & GetBitmap(const Mode eMode) const
::std::map< OUString, std::shared_ptr< BitmapDescriptor > > BitmapContainer
css::uno::Reference< css::drawing::XPresenterHelper > mxPresenterHelper
static std::shared_ptr< BitmapDescriptor > LoadBitmap(const css::uno::Reference< css::container::XHierarchicalNameAccess > &rxNode, const OUString &rsPathToBitmapNode, const css::uno::Reference< css::drawing::XPresenterHelper > &rxPresenterHelper, const css::uno::Reference< css::rendering::XCanvas > &rxCanvas, const std::shared_ptr< BitmapDescriptor > &rpDefaultBitmap)
PresenterBitmapContainer(const OUString &rsConfigurationBase, const std::shared_ptr< PresenterBitmapContainer > &rpParentContainer, const css::uno::Reference< css::uno::XComponentContext > &rxComponentContext, const css::uno::Reference< css::rendering::XCanvas > &rxCanvas, const css::uno::Reference< css::drawing::XPresenterHelper > &rxPresenterHelper=nullptr)
Create a new bitmap container from a section of the configuration.
css::uno::Reference< css::rendering::XBitmap > mxDisabledBitmap
css::util::Color maReplacementColor
const css::uno::Reference< css::rendering::XBitmap > & GetNormalBitmap() const
TexturingMode meVerticalTexturingMode
BitmapContainer maIconContainer
std::shared_ptr< PresenterBitmapContainer > mpParentContainer
void LoadBitmaps(const css::uno::Reference< css::container::XNameAccess > &rsRootNode)
TexturingMode meHorizontalTexturingMode
~PresenterBitmapContainer()
Manage a set of bitmap groups as they are used for buttons: three bitmaps, one for the normal state...