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

Factory of the presenter screen specific views. More...

#include <PresenterViewFactory.hxx>

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

Public Member Functions

virtual ~PresenterViewFactory () override
 
virtual void SAL_CALL disposing () override
 
virtual css::uno::Reference< css::drawing::framework::XResource > SAL_CALL createResource (const css::uno::Reference< css::drawing::framework::XResourceId > &rxViewId) override
 
virtual void SAL_CALL releaseResource (const css::uno::Reference< css::drawing::framework::XResource > &rxPane) override
 

Static Public Member Functions

static css::uno::Reference< css::drawing::framework::XResourceFactory > Create (const css::uno::Reference< css::uno::XComponentContext > &rxContext, const css::uno::Reference< css::frame::XController > &rxController, const ::rtl::Reference< PresenterController > &rpPresenterController)
 Create a new instance of this class and register it as resource factory in the drawing framework of the given controller. More...
 

Static Public Attributes

static const OUString msCurrentSlidePreviewViewURL
 
static const OUString msNextSlidePreviewViewURL
 
static const OUString msNotesViewURL
 
static const OUString msToolBarViewURL
 
static const OUString msSlideSorterURL
 
static const OUString msHelpViewURL
 

Private Types

typedef ::std::pair< css::uno::Reference< css::drawing::framework::XView >, css::uno::Reference< css::drawing::framework::XPane > > ViewResourceDescriptor
 
typedef ::std::map< OUString, ViewResourceDescriptorResourceContainer
 

Private Member Functions

 PresenterViewFactory (const css::uno::Reference< css::uno::XComponentContext > &rxContext, const css::uno::Reference< css::frame::XController > &rxController, const ::rtl::Reference< PresenterController > &rpPresenterController)
 
void Register (const css::uno::Reference< css::frame::XController > &rxController)
 
css::uno::Reference< css::drawing::framework::XView > CreateSlideShowView (const css::uno::Reference< css::drawing::framework::XResourceId > &rxViewId) const
 
css::uno::Reference< css::drawing::framework::XView > CreateSlidePreviewView (const css::uno::Reference< css::drawing::framework::XResourceId > &rxViewId, const css::uno::Reference< css::drawing::framework::XPane > &rxPane) const
 
css::uno::Reference< css::drawing::framework::XView > CreateToolBarView (const css::uno::Reference< css::drawing::framework::XResourceId > &rxViewId) const
 
css::uno::Reference< css::drawing::framework::XView > CreateNotesView (const css::uno::Reference< css::drawing::framework::XResourceId > &rxViewId) const
 
css::uno::Reference< css::drawing::framework::XView > CreateSlideSorterView (const css::uno::Reference< css::drawing::framework::XResourceId > &rxViewId) const
 
css::uno::Reference< css::drawing::framework::XView > CreateHelpView (const css::uno::Reference< css::drawing::framework::XResourceId > &rxViewId) const
 
css::uno::Reference< css::drawing::framework::XResource > GetViewFromCache (const css::uno::Reference< css::drawing::framework::XResourceId > &rxViewId, const css::uno::Reference< css::drawing::framework::XPane > &rxAnchorPane) const
 
css::uno::Reference< css::drawing::framework::XResource > CreateView (const css::uno::Reference< css::drawing::framework::XResourceId > &rxViewId, const css::uno::Reference< css::drawing::framework::XPane > &rxAnchorPane)
 
void ThrowIfDisposed () const
 

Private Attributes

css::uno::Reference< css::uno::XComponentContext > mxComponentContext
 
css::uno::Reference< css::drawing::framework::XConfigurationController > mxConfigurationController
 
css::uno::WeakReference< css::frame::XController > mxControllerWeak
 
::rtl::Reference< PresenterControllermpPresenterController
 
std::unique_ptr< ResourceContainermpResourceCache
 

Additional Inherited Members

- Protected Attributes inherited from cppu::BaseMutex
mutable::osl::Mutex m_aMutex
 

Detailed Description

Factory of the presenter screen specific views.

The supported set of views includes: a life view of the current slide, a static preview of the next slide, the notes of the current slide, a tool bar

Definition at line 73 of file PresenterViewFactory.hxx.

Member Typedef Documentation

Definition at line 117 of file PresenterViewFactory.hxx.

typedef ::std::pair<css::uno::Reference<css::drawing::framework::XView>, css::uno::Reference<css::drawing::framework::XPane> > sdext::presenter::PresenterViewFactory::ViewResourceDescriptor
private

Definition at line 116 of file PresenterViewFactory.hxx.

Constructor & Destructor Documentation

sdext::presenter::PresenterViewFactory::~PresenterViewFactory ( )
overridevirtual

Definition at line 161 of file PresenterViewFactory.cxx.

sdext::presenter::PresenterViewFactory::PresenterViewFactory ( const css::uno::Reference< css::uno::XComponentContext > &  rxContext,
const css::uno::Reference< css::frame::XController > &  rxController,
const ::rtl::Reference< PresenterController > &  rpPresenterController 
)
private

Definition at line 107 of file PresenterViewFactory.cxx.

References m_aMutex.

Referenced by Create().

Member Function Documentation

Reference< drawing::framework::XResourceFactory > sdext::presenter::PresenterViewFactory::Create ( const css::uno::Reference< css::uno::XComponentContext > &  rxContext,
const css::uno::Reference< css::frame::XController > &  rxController,
const ::rtl::Reference< PresenterController > &  rpPresenterController 
)
static

Create a new instance of this class and register it as resource factory in the drawing framework of the given controller.

This registration keeps it alive. When the drawing framework is shut down and releases its reference to the factory then the factory is destroyed.

Definition at line 120 of file PresenterViewFactory.cxx.

References PresenterViewFactory().

Referenced by sdext::presenter::PresenterScreen::SetupViewFactory().

Reference< XView > sdext::presenter::PresenterViewFactory::CreateHelpView ( const css::uno::Reference< css::drawing::framework::XResourceId > &  rxViewId) const
private

Definition at line 476 of file PresenterViewFactory.cxx.

References mpPresenterController, mxComponentContext, and mxControllerWeak.

Referenced by CreateView().

Reference< XView > sdext::presenter::PresenterViewFactory::CreateNotesView ( const css::uno::Reference< css::drawing::framework::XResourceId > &  rxViewId) const
private
Reference< XResource > SAL_CALL sdext::presenter::PresenterViewFactory::createResource ( const css::uno::Reference< css::drawing::framework::XResourceId > &  rxViewId)
overridevirtual
Reference< XView > sdext::presenter::PresenterViewFactory::CreateSlidePreviewView ( const css::uno::Reference< css::drawing::framework::XResourceId > &  rxViewId,
const css::uno::Reference< css::drawing::framework::XPane > &  rxPane 
) const
private
Reference< XView > sdext::presenter::PresenterViewFactory::CreateSlideShowView ( const css::uno::Reference< css::drawing::framework::XResourceId > &  rxViewId) const
private
Reference< XView > sdext::presenter::PresenterViewFactory::CreateSlideSorterView ( const css::uno::Reference< css::drawing::framework::XResourceId > &  rxViewId) const
private
Reference< XView > sdext::presenter::PresenterViewFactory::CreateToolBarView ( const css::uno::Reference< css::drawing::framework::XResourceId > &  rxViewId) const
private

Definition at line 410 of file PresenterViewFactory.cxx.

References mpPresenterController, mxComponentContext, and mxControllerWeak.

Referenced by CreateView().

Reference< XResource > sdext::presenter::PresenterViewFactory::CreateView ( const css::uno::Reference< css::drawing::framework::XResourceId > &  rxViewId,
const css::uno::Reference< css::drawing::framework::XPane > &  rxAnchorPane 
)
private
void SAL_CALL sdext::presenter::PresenterViewFactory::disposing ( )
overridevirtual

Definition at line 165 of file PresenterViewFactory.cxx.

References mpResourceCache, mxConfigurationController, and xComponent.

Reference< XResource > sdext::presenter::PresenterViewFactory::GetViewFromCache ( const css::uno::Reference< css::drawing::framework::XResourceId > &  rxViewId,
const css::uno::Reference< css::drawing::framework::XPane > &  rxAnchorPane 
) const
private
void sdext::presenter::PresenterViewFactory::Register ( const css::uno::Reference< css::frame::XController > &  rxController)
private
void SAL_CALL sdext::presenter::PresenterViewFactory::releaseResource ( const css::uno::Reference< css::drawing::framework::XResource > &  rxPane)
overridevirtual
void sdext::presenter::PresenterViewFactory::ThrowIfDisposed ( ) const
private
Exceptions
css::lang::DisposedException

Definition at line 486 of file PresenterViewFactory.cxx.

Referenced by createResource(), and releaseResource().

Member Data Documentation

::rtl::Reference<PresenterController> sdext::presenter::PresenterViewFactory::mpPresenterController
private
std::unique_ptr<ResourceContainer> sdext::presenter::PresenterViewFactory::mpResourceCache
private

Definition at line 118 of file PresenterViewFactory.hxx.

Referenced by disposing(), GetViewFromCache(), and releaseResource().

const OUString sdext::presenter::PresenterViewFactory::msCurrentSlidePreviewViewURL
static
const OUString sdext::presenter::PresenterViewFactory::msHelpViewURL
static
const OUString sdext::presenter::PresenterViewFactory::msNextSlidePreviewViewURL
static
const OUString sdext::presenter::PresenterViewFactory::msNotesViewURL
static
const OUString sdext::presenter::PresenterViewFactory::msSlideSorterURL
static
const OUString sdext::presenter::PresenterViewFactory::msToolBarViewURL
static
css::uno::Reference<css::uno::XComponentContext> sdext::presenter::PresenterViewFactory::mxComponentContext
private
css::uno::Reference<css::drawing::framework::XConfigurationController> sdext::presenter::PresenterViewFactory::mxConfigurationController
private
css::uno::WeakReference<css::frame::XController> sdext::presenter::PresenterViewFactory::mxControllerWeak
private

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