Krita Source Code Documentation
Loading...
Searching...
No Matches
KoCanvasObserverBase Class Referenceabstract

#include <KoCanvasObserverBase.h>

+ Inheritance diagram for KoCanvasObserverBase:

Public Member Functions

 KoCanvasObserverBase ()
 
KoCanvasBaseobservedCanvas () const
 
virtual QString observerName ()
 
void setObservedCanvas (KoCanvasBase *canvas)
 
void unsetObservedCanvas ()
 
virtual ~KoCanvasObserverBase ()
 

Protected Member Functions

virtual void setCanvas (KoCanvasBase *canvas)=0
 
virtual void unsetCanvas ()=0
 

Private Attributes

KoCanvasObserverBasePrivate *const d
 

Detailed Description

An abstract canvas observer interface class. Dockers that want to be notified of active canvas changes should implement that interface so that the tool controller can give them the active canvas.

Definition at line 23 of file KoCanvasObserverBase.h.

Constructor & Destructor Documentation

◆ KoCanvasObserverBase()

KoCanvasObserverBase::KoCanvasObserverBase ( )

Definition at line 24 of file KoCanvasObserverBase.cpp.

◆ ~KoCanvasObserverBase()

KoCanvasObserverBase::~KoCanvasObserverBase ( )
virtual

Definition at line 29 of file KoCanvasObserverBase.cpp.

30{
31 delete d;
32}

References d.

Member Function Documentation

◆ observedCanvas()

KoCanvasBase * KoCanvasObserverBase::observedCanvas ( ) const

the currently observed canvas

Returns
observed canvas, can be 0

Definition at line 46 of file KoCanvasObserverBase.cpp.

47{
48 return d->canvas;
49}
QPointer< KoCanvasBase > canvas

References KoCanvasObserverBasePrivate::canvas, and d.

◆ observerName()

◆ setCanvas()

◆ setObservedCanvas()

void KoCanvasObserverBase::setObservedCanvas ( KoCanvasBase * canvas)

set observed canvas

Parameters
canvascanvas to observe. Can be 0.

Definition at line 34 of file KoCanvasObserverBase.cpp.

35{
36 d->canvas = canvas;
37 setCanvas(canvas);
38}
virtual void setCanvas(KoCanvasBase *canvas)=0

References KoCanvasObserverBasePrivate::canvas, d, and setCanvas().

◆ unsetCanvas()

virtual void KoCanvasObserverBase::unsetCanvas ( )
protectedpure virtual

Re-implement to notify the observer that its canvas is no longer among the living. The daisies, it is pushing up. This means you don't have to disconnect, it's dead.

The old canvas should be deleted already, so if you stored a pointer to it, don't touch!

Note that currently there is a bug where in certain specific circumstances unsetCanvas can be called when it shouldn't, see for example KWStatisticsDocker for a workaround for this problem.

Implemented in KisPlaybackEngineQT, KoToolBoxDocker, KoToolDocker, KisColorSelectorNgDock, KisAnimCurvesDocker, KisAnimTimelineDocker, KisOnionSkinsDocker, ArrangeDockerDock, ArtisticColorSelectorDock, BrushHudDock, ChannelDockerDock, CompositionDockerDock, DigitalMixerDock, GamutMaskDock, GridDockerDock, HistogramDockerDock, HistoryDock, LayerBox, LogDockerDock, LutDockerDock, OverviewDockerDock, PaletteDockerDock, PatternDockerDock, PresetDockerDock, PresetHistoryDock, RecorderDockerDock, SmallColorSelectorDock, SnapshotDocker, SpecificColorSelectorDock, StoryboardDockerDock, SvgSymbolCollectionDocker, TasksetDockerDock, TextPropertiesCanvasObserver, TextPropertiesDock, TouchDockerDock, and WGColorSelectorDock.

◆ unsetObservedCanvas()

void KoCanvasObserverBase::unsetObservedCanvas ( )

notify the observer that canvas is gone

Definition at line 40 of file KoCanvasObserverBase.cpp.

41{
42 d->canvas = 0;
44}
virtual void unsetCanvas()=0

References KoCanvasObserverBasePrivate::canvas, d, and unsetCanvas().

Member Data Documentation

◆ d

KoCanvasObserverBasePrivate* const KoCanvasObserverBase::d
private

Definition at line 72 of file KoCanvasObserverBase.h.


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