28#include <com/sun/star/rendering/XCanvas.hpp>
29#include <com/sun/star/presentation/XSlideShowView.hpp>
66 mrScreenUpdater( rScreenUpdater ),
69 for(
const auto& pView : rViewContainer )
80 for(
const auto& rView :
maViews )
98 const awt::Rectangle aViewArea( rView->getUnoView()->getCanvasArea() );
101 aViewArea.X + std::max<sal_Int32>( 0,
113 const geometry::IntegerSize2D spriteSize(
mxBitmap->getSize() );
118 rendering::ViewState viewState;
120 rendering::RenderState renderState;
122 sprite->getContentCanvas()->getUNOCanvas()->drawBitmap(
125 sprite->setAlpha( 0.9 );
130 catch( uno::Exception& )
135 maViews.emplace_back( rView, sprite );
144 (
const ViewsVecT::value_type& cp )
145 { return rView == cp.first; } ),
152 ViewsVecT::iterator aModifiedEntry(
157 (
const ViewsVecT::value_type& cp )
158 { return rView == cp.first; } ) );
160 OSL_ASSERT( aModifiedEntry !=
maViews.end() );
161 if( aModifiedEntry ==
maViews.end() )
164 if( aModifiedEntry->second )
165 aModifiedEntry->second->movePixel(
172 for(
const auto& rView :
maViews )
175 rView.second->movePixel(
This class multiplexes user-activated and slide-show global events.
void addViewHandler(const ViewEventHandlerWeakPtr &rHandler)
Register an event handler that will be called when views are changed.
void requestImmediateUpdate()
A wart.
void setVisible(const bool bVisible)
ScreenUpdater & mrScreenUpdater
virtual void viewChanged(const UnoViewSharedPtr &rView) override
Notify changed view.
css::uno::Reference< css::rendering::XBitmap > mxBitmap
virtual void viewRemoved(const UnoViewSharedPtr &rView) override
Notify removed view.
static WaitSymbolSharedPtr create(const css::uno::Reference< css::rendering::XBitmap > &xBitmap, ScreenUpdater &rScreenUpdater, EventMultiplexer &rEventMultiplexer, const UnoViewContainer &rViewContainer)
WaitSymbol(const WaitSymbol &)=delete
virtual void viewAdded(const UnoViewSharedPtr &rView) override
Notify new view.
virtual void viewsChanged() override
Notify that all views changed.
::basegfx::B2DPoint calcSpritePos(UnoViewSharedPtr const &rView) const
VclPtr< VirtualDevice > mxBitmap
#define TOOLS_WARN_EXCEPTION(area, stream)
std::shared_ptr< ::cppcanvas::CustomSprite > CustomSpriteSharedPtr
std::shared_ptr< class WaitSymbol > WaitSymbolSharedPtr
const sal_Int32 LOWER_BORDER_SPACE
const sal_Int32 LEFT_BORDER_SPACE
std::shared_ptr< UnoView > UnoViewSharedPtr