Scroom  0.14
Viewable Class Referenceabstract

#include <presentationinterface.hh>

Inheritance diagram for Viewable:
Inheritance graph
Collaboration diagram for Viewable:
Collaboration graph

Public Types

using Ptr = boost::shared_ptr< Viewable >
 
using WeakPtr = boost::weak_ptr< Viewable >
 

Public Member Functions

virtual void open (ViewInterface::WeakPtr vi)=0
 
virtual void close (ViewInterface::WeakPtr vi)=0
 

Additional Inherited Members

- Private Member Functions inherited from Interface
 Interface ()=default
 
 Interface (const Interface &)=delete
 
Interfaceoperator= (const Interface &)=delete
 
 Interface (const Interface &&)=delete
 
Interfaceoperator= (const Interface &&)=delete
 
virtual ~Interface ()=default
 

Detailed Description

Implement Viewable if you want to be able to receive events when a View is created and/or deleted.

You'll want to receive these events if you either want to influence something on-screen (PresentationInterface, ColormapProvider), or want to store data related to a View (TiledBitmapInterface).

Member Typedef Documentation

◆ Ptr

using Viewable::Ptr = boost::shared_ptr<Viewable>

◆ WeakPtr

using Viewable::WeakPtr = boost::weak_ptr<Viewable>

Member Function Documentation

◆ close()

virtual void Viewable::close ( ViewInterface::WeakPtr  vi)
pure virtual

Gets called just before the View is destroyed

Precondition
Should be called from within a Gdk critical section (i.e. between gdk_threads_enter() and gdk_threads_leave() calls)

Implemented in anonymous_namespace{determine-size-test.cc}::PresentationInterfaceStub, DummyPresentation, Layer, CompressedTile, PresentationBase, TransformPresentation, TiledBitmap, Scroom::ColormapImpl::ColormapProvider, and ExamplePresentation.

◆ open()

virtual void Viewable::open ( ViewInterface::WeakPtr  vi)
pure virtual

Gets called just after the View is created

Precondition
Should be called from within a Gdk critical section (i.e. between gdk_threads_enter() and gdk_threads_leave() calls)

Implemented in anonymous_namespace{determine-size-test.cc}::PresentationInterfaceStub, DummyPresentation, TiledBitmap, ExamplePresentation, Layer, CompressedTile, PresentationBase, TransformPresentation, and Scroom::ColormapImpl::ColormapProvider.


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