LibreOffice Module sdext (master)  1
Classes | Public Types | Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
sdext::presenter::PresenterToolBar Class Reference

A simple tool bar that can display bitmapped buttons and labels. More...

#include <PresenterToolBar.hxx>

Inheritance diagram for sdext::presenter::PresenterToolBar:
[legend]
Collaboration diagram for sdext::presenter::PresenterToolBar:
[legend]

Classes

class  Context
 
class  ElementContainerPart
 

Public Types

enum  Anchor {
  Left,
  Center
}
 
typedef ::std::function< void()> Action
 

Public Member Functions

 PresenterToolBar (const css::uno::Reference< css::uno::XComponentContext > &rxContext, const css::uno::Reference< css::awt::XWindow > &rxWindow, const css::uno::Reference< css::rendering::XCanvas > &rxCanvas, const ::rtl::Reference< PresenterController > &rpPresenterController, const Anchor eAnchor)
 
virtual ~PresenterToolBar () override
 
 PresenterToolBar (const PresenterToolBar &)=delete
 
PresenterToolBaroperator= (const PresenterToolBar &)=delete
 
void Initialize (const OUString &rsConfigurationPath)
 
virtual void SAL_CALL disposing () override
 
void InvalidateArea (const css::awt::Rectangle &rRepaintBox, const bool bSynchronous)
 
void RequestLayout ()
 
css::geometry::RealSize2D const & GetMinimalSize ()
 
const ::rtl::Reference< PresenterController > & GetPresenterController () const
 
const css::uno::Reference< css::uno::XComponentContext > & GetComponentContext () const
 
virtual void SAL_CALL disposing (const css::lang::EventObject &rEventObject) override
 
virtual void SAL_CALL windowResized (const css::awt::WindowEvent &rEvent) override
 
virtual void SAL_CALL windowMoved (const css::awt::WindowEvent &rEvent) override
 
virtual void SAL_CALL windowShown (const css::lang::EventObject &rEvent) override
 
virtual void SAL_CALL windowHidden (const css::lang::EventObject &rEvent) override
 
virtual void SAL_CALL windowPaint (const css::awt::PaintEvent &rEvent) override
 
virtual void SAL_CALL mousePressed (const css::awt::MouseEvent &rEvent) override
 
virtual void SAL_CALL mouseReleased (const css::awt::MouseEvent &rEvent) override
 
virtual void SAL_CALL mouseEntered (const css::awt::MouseEvent &rEvent) override
 
virtual void SAL_CALL mouseExited (const css::awt::MouseEvent &rEvent) override
 
virtual void SAL_CALL mouseMoved (const css::awt::MouseEvent &rEvent) override
 
virtual void SAL_CALL mouseDragged (const css::awt::MouseEvent &rEvent) override
 
virtual void SAL_CALL setCurrentPage (const css::uno::Reference< css::drawing::XDrawPage > &rxSlide) override
 
virtual css::uno::Reference< css::drawing::XDrawPage > SAL_CALL getCurrentPage () override
 
- Public Member Functions inherited from sdext::presenter::CachablePresenterView
virtual void ActivatePresenterView ()
 
virtual void DeactivatePresenterView ()
 Called when the view is put into a cache. More...
 
virtual void ReleaseView ()
 Called before the view is disposed. More...
 

Private Types

typedef std::shared_ptr< ElementContainerPartSharedElementContainerPart
 
typedef ::std::vector< SharedElementContainerPartElementContainer
 

Private Member Functions

void CreateControls (const OUString &rsConfigurationPath)
 
void Layout (const css::uno::Reference< css::rendering::XCanvas > &rxCanvas)
 
css::geometry::RealSize2D CalculatePartSize (const css::uno::Reference< css::rendering::XCanvas > &rxCanvas, const SharedElementContainerPart &rpPart, const bool bIsHorizontal)
 
void Paint (const css::awt::Rectangle &rUpdateBox, const css::rendering::ViewState &rViewState)
 
void UpdateSlideNumber ()
 
void CheckMouseOver (const css::awt::MouseEvent &rEvent, const bool bOverWindow, const bool bMouseDown=false)
 
void ProcessEntry (const css::uno::Reference< css::beans::XPropertySet > &rProperties, Context const &rContext)
 
void ThrowIfDisposed () const
 

Static Private Member Functions

static void LayoutPart (const css::uno::Reference< css::rendering::XCanvas > &rxCanvas, const SharedElementContainerPart &rpPart, const css::geometry::RealRectangle2D &rBoundingBox, const css::geometry::RealSize2D &rPartSize, const bool bIsHorizontal)
 

Private Attributes

css::uno::Reference< css::uno::XComponentContext > mxComponentContext
 
ElementContainer maElementContainer
 
SharedElementContainerPart mpCurrentContainerPart
 
css::uno::Reference< css::awt::XWindow > mxWindow
 
css::uno::Reference< css::rendering::XCanvas > mxCanvas
 
css::uno::Reference< css::presentation::XSlideShowController > mxSlideShowController
 
css::uno::Reference< css::drawing::XDrawPage > mxCurrentSlide
 
::rtl::Reference< PresenterControllermpPresenterController
 
bool mbIsLayoutPending
 
const Anchor meAnchor
 
css::geometry::RealSize2D maMinimalSize
 The minimal size that is necessary to display all elements without overlap and with minimal gaps between them. More...
 
- Private Attributes inherited from cppu::BaseMutex
mutable::osl::Mutex m_aMutex
 

Additional Inherited Members

- Protected Member Functions inherited from sdext::presenter::CachablePresenterView
 CachablePresenterView ()
 
 ~CachablePresenterView ()
 
- Protected Attributes inherited from sdext::presenter::CachablePresenterView
bool mbIsPresenterViewActive
 

Detailed Description

A simple tool bar that can display bitmapped buttons and labels.

At the moment there are buttons for moving to the next and previous slide and to the next effect. A label displays the index of the current slide and the total number of slides.

Definition at line 61 of file PresenterToolBar.hxx.

Member Typedef Documentation

typedef ::std::function<void ()> sdext::presenter::PresenterToolBar::Action

Definition at line 67 of file PresenterToolBar.hxx.

Definition at line 144 of file PresenterToolBar.hxx.

Definition at line 142 of file PresenterToolBar.hxx.

Member Enumeration Documentation

Enumerator
Left 
Center 

Definition at line 69 of file PresenterToolBar.hxx.

Constructor & Destructor Documentation

sdext::presenter::PresenterToolBar::PresenterToolBar ( const css::uno::Reference< css::uno::XComponentContext > &  rxContext,
const css::uno::Reference< css::awt::XWindow > &  rxWindow,
const css::uno::Reference< css::rendering::XCanvas > &  rxCanvas,
const ::rtl::Reference< PresenterController > &  rpPresenterController,
const Anchor  eAnchor 
)
sdext::presenter::PresenterToolBar::~PresenterToolBar ( )
overridevirtual

Definition at line 394 of file PresenterToolBar.cxx.

sdext::presenter::PresenterToolBar::PresenterToolBar ( const PresenterToolBar )
delete

Member Function Documentation

geometry::RealSize2D sdext::presenter::PresenterToolBar::CalculatePartSize ( const css::uno::Reference< css::rendering::XCanvas > &  rxCanvas,
const SharedElementContainerPart rpPart,
const bool  bIsHorizontal 
)
private

Definition at line 782 of file PresenterToolBar.cxx.

void sdext::presenter::PresenterToolBar::CheckMouseOver ( const css::awt::MouseEvent &  rEvent,
const bool  bOverWindow,
const bool  bMouseDown = false 
)
private

Definition at line 956 of file PresenterToolBar.cxx.

References AllSettings::GetLayoutRTL().

void sdext::presenter::PresenterToolBar::CreateControls ( const OUString &  rsConfigurationPath)
private
void SAL_CALL sdext::presenter::PresenterToolBar::disposing ( )
overridevirtual

Definition at line 398 of file PresenterToolBar.cxx.

References xComponent.

virtual void SAL_CALL sdext::presenter::PresenterToolBar::disposing ( const css::lang::EventObject &  rEventObject)
overridevirtual
const Reference< XComponentContext > & sdext::presenter::PresenterToolBar::GetComponentContext ( ) const

Definition at line 465 of file PresenterToolBar.cxx.

References mxComponentContext.

Reference< drawing::XDrawPage > SAL_CALL sdext::presenter::PresenterToolBar::getCurrentPage ( )
overridevirtual

Definition at line 567 of file PresenterToolBar.cxx.

geometry::RealSize2D const & sdext::presenter::PresenterToolBar::GetMinimalSize ( )

Definition at line 453 of file PresenterToolBar.cxx.

References Layout, and mxCanvas.

const ::rtl::Reference< PresenterController > & sdext::presenter::PresenterToolBar::GetPresenterController ( ) const

Definition at line 460 of file PresenterToolBar.cxx.

References mpPresenterController.

void sdext::presenter::PresenterToolBar::Initialize ( const OUString &  rsConfigurationPath)

Definition at line 361 of file PresenterToolBar.cxx.

References mpPresenterController.

void sdext::presenter::PresenterToolBar::InvalidateArea ( const css::awt::Rectangle &  rRepaintBox,
const bool  bSynchronous 
)

Definition at line 429 of file PresenterToolBar.cxx.

References mpPresenterController.

void sdext::presenter::PresenterToolBar::Layout ( const css::uno::Reference< css::rendering::XCanvas > &  rxCanvas)
private

check whether RTL interface or not

Definition at line 665 of file PresenterToolBar.cxx.

References Center, AllSettings::GetLayoutRTL(), sdext::presenter::gnGapSize(), Left, mpPresenterController, nIndex, and Width.

void sdext::presenter::PresenterToolBar::LayoutPart ( const css::uno::Reference< css::rendering::XCanvas > &  rxCanvas,
const SharedElementContainerPart rpPart,
const css::geometry::RealRectangle2D &  rBoundingBox,
const css::geometry::RealSize2D &  rPartSize,
const bool  bIsHorizontal 
)
staticprivate

check whether RTL interface or not

Definition at line 815 of file PresenterToolBar.cxx.

References AllSettings::GetLayoutRTL().

void SAL_CALL sdext::presenter::PresenterToolBar::mouseDragged ( const css::awt::MouseEvent &  rEvent)
overridevirtual

Definition at line 551 of file PresenterToolBar.cxx.

void SAL_CALL sdext::presenter::PresenterToolBar::mouseEntered ( const css::awt::MouseEvent &  rEvent)
overridevirtual

Definition at line 531 of file PresenterToolBar.cxx.

void SAL_CALL sdext::presenter::PresenterToolBar::mouseExited ( const css::awt::MouseEvent &  rEvent)
overridevirtual

Definition at line 537 of file PresenterToolBar.cxx.

void SAL_CALL sdext::presenter::PresenterToolBar::mouseMoved ( const css::awt::MouseEvent &  rEvent)
overridevirtual

Definition at line 545 of file PresenterToolBar.cxx.

void SAL_CALL sdext::presenter::PresenterToolBar::mousePressed ( const css::awt::MouseEvent &  rEvent)
overridevirtual

Definition at line 519 of file PresenterToolBar.cxx.

void SAL_CALL sdext::presenter::PresenterToolBar::mouseReleased ( const css::awt::MouseEvent &  rEvent)
overridevirtual

Definition at line 525 of file PresenterToolBar.cxx.

PresenterToolBar& sdext::presenter::PresenterToolBar::operator= ( const PresenterToolBar )
delete
void sdext::presenter::PresenterToolBar::Paint ( const css::awt::Rectangle &  rUpdateBox,
const css::rendering::ViewState rViewState 
)
private

Definition at line 922 of file PresenterToolBar.cxx.

References mxCanvas.

void sdext::presenter::PresenterToolBar::ProcessEntry ( const css::uno::Reference< css::beans::XPropertySet > &  rProperties,
Context const &  rContext 
)
private

Definition at line 614 of file PresenterToolBar.cxx.

References Label, and sType.

void sdext::presenter::PresenterToolBar::RequestLayout ( )

Definition at line 442 of file PresenterToolBar.cxx.

References mpPresenterController.

void SAL_CALL sdext::presenter::PresenterToolBar::setCurrentPage ( const css::uno::Reference< css::drawing::XDrawPage > &  rxSlide)
overridevirtual

Definition at line 558 of file PresenterToolBar.cxx.

void sdext::presenter::PresenterToolBar::ThrowIfDisposed ( ) const
private
Exceptions
css::lang::DisposedExceptionwhen the object has already been disposed.

Definition at line 986 of file PresenterToolBar.cxx.

void sdext::presenter::PresenterToolBar::UpdateSlideNumber ( )
private

Definition at line 941 of file PresenterToolBar.cxx.

void SAL_CALL sdext::presenter::PresenterToolBar::windowHidden ( const css::lang::EventObject &  rEvent)
overridevirtual

Definition at line 492 of file PresenterToolBar.cxx.

void SAL_CALL sdext::presenter::PresenterToolBar::windowMoved ( const css::awt::WindowEvent &  rEvent)
overridevirtual

Definition at line 485 of file PresenterToolBar.cxx.

void SAL_CALL sdext::presenter::PresenterToolBar::windowPaint ( const css::awt::PaintEvent &  rEvent)
overridevirtual

Definition at line 495 of file PresenterToolBar.cxx.

References Layout, mxCanvas, and Paint.

void SAL_CALL sdext::presenter::PresenterToolBar::windowResized ( const css::awt::WindowEvent &  rEvent)
overridevirtual

Definition at line 480 of file PresenterToolBar.cxx.

void SAL_CALL sdext::presenter::PresenterToolBar::windowShown ( const css::lang::EventObject &  rEvent)
overridevirtual

Definition at line 487 of file PresenterToolBar.cxx.

Member Data Documentation

ElementContainer sdext::presenter::PresenterToolBar::maElementContainer
private

Definition at line 145 of file PresenterToolBar.hxx.

css::geometry::RealSize2D sdext::presenter::PresenterToolBar::maMinimalSize
private

The minimal size that is necessary to display all elements without overlap and with minimal gaps between them.

Definition at line 157 of file PresenterToolBar.hxx.

bool sdext::presenter::PresenterToolBar::mbIsLayoutPending
private

Definition at line 152 of file PresenterToolBar.hxx.

const Anchor sdext::presenter::PresenterToolBar::meAnchor
private

Definition at line 153 of file PresenterToolBar.hxx.

SharedElementContainerPart sdext::presenter::PresenterToolBar::mpCurrentContainerPart
private

Definition at line 146 of file PresenterToolBar.hxx.

::rtl::Reference<PresenterController> sdext::presenter::PresenterToolBar::mpPresenterController
private

Definition at line 151 of file PresenterToolBar.hxx.

css::uno::Reference<css::rendering::XCanvas> sdext::presenter::PresenterToolBar::mxCanvas
private

Definition at line 148 of file PresenterToolBar.hxx.

css::uno::Reference<css::uno::XComponentContext> sdext::presenter::PresenterToolBar::mxComponentContext
private

Definition at line 137 of file PresenterToolBar.hxx.

css::uno::Reference<css::drawing::XDrawPage> sdext::presenter::PresenterToolBar::mxCurrentSlide
private

Definition at line 150 of file PresenterToolBar.hxx.

css::uno::Reference<css::presentation::XSlideShowController> sdext::presenter::PresenterToolBar::mxSlideShowController
private

Definition at line 149 of file PresenterToolBar.hxx.

css::uno::Reference<css::awt::XWindow> sdext::presenter::PresenterToolBar::mxWindow
private

Definition at line 147 of file PresenterToolBar.hxx.


The documentation for this class was generated from the following files: