7#ifndef BACKGROUND_STATE_ABSTRACT_BASE_H
8#define BACKGROUND_STATE_ABSTRACT_BASE_H
10#include <QGraphicsPixmapItem>
15 BACKGROUND_STATE_CURVE,
16 BACKGROUND_STATE_NONE,
17 BACKGROUND_STATE_ORIGINAL,
18 BACKGROUND_STATE_UNLOADED,
48 virtual void end() = 0;
54 QImage
image ()
const;
69 const QString &curveSelected) = 0;
75 const QPixmap &pixmap) = 0;
78 virtual QString
state()
const = 0;
101 QGraphicsPixmapItem *m_imageItem;
Background image state machine state base class.
QGraphicsPixmapItem & imageItem() const
Graphics image item for the current state.
virtual void end()=0
Method that is called at the exact moment a state is exited. Typically called just before begin for t...
GraphicsScene & scene()
Reference to the GraphicsScene, without const.
BackgroundStateContext & context()
Reference to the BackgroundStateContext that contains all the BackgroundStateAbstractBase subclasses,...
virtual void updateColorFilter(const Transformation &transformation, const DocumentModelGridRemoval &modelGridRemoval, const DocumentModelColorFilter &modelColorFilter)=0
Apply color filter settings.
virtual QString state() const =0
State name for debugging.
void setImageVisible(bool visible)
Show/hide background image.
virtual void setCurveSelected(const Transformation &transformation, const DocumentModelGridRemoval &modelGridRemoval, const DocumentModelColorFilter &colorFilter, const QString &curveSelected)=0
Update the currently selected curve name.
QImage image() const
Image for the current state.
void setProcessedPixmap(const QPixmap &pixmap)
Save the image for this state after it has been processed by the leaf class.
virtual void fitInView(GraphicsView &view)=0
Zoom so background fills the window.
virtual void begin()=0
Method that is called at the exact moment a state is entered. Typically called just after end for the...
virtual void setPixmap(const Transformation &transformation, const DocumentModelGridRemoval &modelGridRemoval, const DocumentModelColorFilter &modelColorFilter, const QPixmap &pixmap)=0
Update the image for this state, after the leaf class processes it appropriately.
Context class that manages the background image state machine.
Model for DlgSettingsColorFilter and CmdSettingsColorFilter.
Model for DlgSettingsGridRemoval and CmdSettingsGridRemoval. The settings are unstable until the user...
Add point and line handling to generic QGraphicsScene.
QGraphicsView class with event handling added. Typically the events are sent to the active digitizing...