LibreOffice Module sd (master) 1
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
sd::framework::Pane Class Reference

A pane is a wrapper for a window and possibly for a tab bar (for view switching). More...

#include <Pane.hxx>

Inheritance diagram for sd::framework::Pane:
[legend]
Collaboration diagram for sd::framework::Pane:
[legend]

Public Member Functions

 Pane (const css::uno::Reference< css::drawing::framework::XResourceId > &rxPaneId, vcl::Window *pWindow) noexcept
 Create a new Pane object that wraps the given window. More...
 
virtual ~Pane () override
 
virtual void SAL_CALL disposing () override
 
virtual vcl::WindowGetWindow ()
 This method is typically used to obtain a Window pointer from an XPane object. More...
 
virtual css::uno::Reference< css::awt::XWindow > SAL_CALL getWindow () override
 For a UNO API based implementation of a view this may the most important method of this class because the view is only interested in the window of the pane. More...
 
virtual css::uno::Reference< css::rendering::XCanvas > SAL_CALL getCanvas () override
 
virtual sal_Bool SAL_CALL isVisible () override
 
virtual void SAL_CALL setVisible (sal_Bool bIsVisible) override
 
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessible () override
 
virtual void SAL_CALL setAccessible (const css::uno::Reference< css::accessibility::XAccessible > &rxAccessible) override
 
virtual css::uno::Reference< css::drawing::framework::XResourceId > SAL_CALL getResourceId () override
 
virtual sal_Bool SAL_CALL isAnchorOnly () override
 For the typical pane it makes no sense to be displayed without a view. More...
 

Protected Member Functions

virtual css::uno::Reference< css::rendering::XCanvas > CreateCanvas ()
 Override this method, not getCanvas(), when you want to provide a different canvas. More...
 
void ThrowIfDisposed () const
 Throw DisposedException when the object has already been disposed or is currently being disposed. More...
 

Protected Attributes

css::uno::Reference< css::drawing::framework::XResourceId > mxPaneId
 
VclPtr< vcl::WindowmpWindow
 
css::uno::Reference< css::awt::XWindow > mxWindow
 
css::uno::Reference< css::rendering::XCanvas > mxCanvas
 
- Protected Attributes inherited from cppu::BaseMutex
mutable::osl::Mutex m_aMutex
 

Detailed Description

A pane is a wrapper for a window and possibly for a tab bar (for view switching).

Panes are unique resources.

This class has two responsibilities:

  1. It implements the XPane interface. This is the most important interface of this class for API based views (of which there not that many yet) because it gives access to the XWindow.
  2. It gives access to the underlying VCL Window. This is necessary at the moment and in the foreseeable future because many parts of the Draw and Impress views rely on direct access on the Window class.

Definition at line 48 of file Pane.hxx.

Constructor & Destructor Documentation

◆ Pane()

sd::framework::Pane::Pane ( const css::uno::Reference< css::drawing::framework::XResourceId > &  rxPaneId,
vcl::Window pWindow 
)
noexcept

Create a new Pane object that wraps the given window.

Parameters
rsPaneURLThe URL that is used by the configuration to identify the pane. The given URL has to be valid.
pWindowThe VCL Window (usually this really is an sd::Window) that is wrapped by the new Pane object. The given pointer must not be NULL.

Definition at line 35 of file Pane.cxx.

References mpWindow.

◆ ~Pane()

sd::framework::Pane::~Pane ( )
overridevirtual

Definition at line 46 of file Pane.cxx.

Member Function Documentation

◆ CreateCanvas()

Reference< rendering::XCanvas > sd::framework::Pane::CreateCanvas ( )
protectedvirtual

Override this method, not getCanvas(), when you want to provide a different canvas.

Exceptions
css::uno::RuntimeException

Reimplemented in sd::framework::FullScreenPane.

Definition at line 139 of file Pane.cxx.

References cppcanvas::VCLFactory::createSpriteCanvas(), and mpWindow.

Referenced by getCanvas().

◆ disposing()

void sd::framework::Pane::disposing ( )
overridevirtual

◆ getAccessible()

Reference< css::accessibility::XAccessible > SAL_CALL sd::framework::Pane::getAccessible ( )
overridevirtual

Reimplemented in sd::framework::FullScreenPane.

Definition at line 106 of file Pane.cxx.

References vcl::Window::GetAccessible(), GetWindow(), and ThrowIfDisposed().

◆ getCanvas()

Reference< rendering::XCanvas > SAL_CALL sd::framework::Pane::getCanvas ( )
overridevirtual

Definition at line 73 of file Pane.cxx.

References CreateCanvas(), cppu::BaseMutex::m_aMutex, mxCanvas, and ThrowIfDisposed().

◆ getResourceId()

Reference< XResourceId > SAL_CALL sd::framework::Pane::getResourceId ( )
overridevirtual

Definition at line 127 of file Pane.cxx.

References mxPaneId, and ThrowIfDisposed().

◆ GetWindow()

vcl::Window * sd::framework::Pane::GetWindow ( )
virtual

This method is typically used to obtain a Window pointer from an XPane object.

Definition at line 56 of file Pane.cxx.

References mpWindow, and mxWindow.

Referenced by getAccessible(), isVisible(), sd::framework::FullScreenPane::setAccessible(), setAccessible(), and setVisible().

◆ getWindow()

Reference< awt::XWindow > SAL_CALL sd::framework::Pane::getWindow ( )
overridevirtual

For a UNO API based implementation of a view this may the most important method of this class because the view is only interested in the window of the pane.

Definition at line 66 of file Pane.cxx.

References mxWindow, and ThrowIfDisposed().

Referenced by sd::framework::ChildWindowPane::getWindow().

◆ isAnchorOnly()

sal_Bool SAL_CALL sd::framework::Pane::isAnchorOnly ( )
overridevirtual

For the typical pane it makes no sense to be displayed without a view.

Therefore this default implementation returns always <TRUE>.

Reimplemented in sd::framework::FrameWindowPane.

Definition at line 134 of file Pane.cxx.

◆ isVisible()

sal_Bool SAL_CALL sd::framework::Pane::isVisible ( )
overridevirtual

Reimplemented in sd::framework::FullScreenPane.

Definition at line 86 of file Pane.cxx.

References GetWindow(), vcl::Window::IsVisible(), and ThrowIfDisposed().

◆ setAccessible()

void SAL_CALL sd::framework::Pane::setAccessible ( const css::uno::Reference< css::accessibility::XAccessible > &  rxAccessible)
overridevirtual

Reimplemented in sd::framework::FullScreenPane.

Definition at line 116 of file Pane.cxx.

References GetWindow(), vcl::Window::SetAccessible(), and ThrowIfDisposed().

◆ setVisible()

void SAL_CALL sd::framework::Pane::setVisible ( sal_Bool  bIsVisible)
overridevirtual

Reimplemented in sd::framework::FullScreenPane.

Definition at line 97 of file Pane.cxx.

References GetWindow(), vcl::Window::Show(), and ThrowIfDisposed().

◆ ThrowIfDisposed()

void sd::framework::Pane::ThrowIfDisposed ( ) const
protected

Throw DisposedException when the object has already been disposed or is currently being disposed.

Otherwise this method returns normally.

Exceptions
css::lang::DisposedException

Definition at line 154 of file Pane.cxx.

Referenced by sd::framework::FullScreenPane::getAccessible(), getAccessible(), getCanvas(), getResourceId(), getWindow(), sd::framework::FullScreenPane::isVisible(), isVisible(), sd::framework::FullScreenPane::setAccessible(), setAccessible(), sd::framework::FullScreenPane::setVisible(), and setVisible().

Member Data Documentation

◆ mpWindow

VclPtr<vcl::Window> sd::framework::Pane::mpWindow
protected

◆ mxCanvas

css::uno::Reference<css::rendering::XCanvas> sd::framework::Pane::mxCanvas
protected

Definition at line 112 of file Pane.hxx.

Referenced by sd::framework::FullScreenPane::FullScreenPane(), and getCanvas().

◆ mxPaneId

css::uno::Reference<css::drawing::framework::XResourceId> sd::framework::Pane::mxPaneId
protected

Definition at line 109 of file Pane.hxx.

Referenced by getResourceId().

◆ mxWindow

css::uno::Reference<css::awt::XWindow> sd::framework::Pane::mxWindow
protected

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