Engauge Digitizer  2
 All Classes Files Functions Variables Enumerations Enumerator Friends Pages
TransformationStateAbstractBase.h
1 #ifndef TRANSFORMATION_STATE_ABSTRACT_BASE_H
2 #define TRANSFORMATION_STATE_ABSTRACT_BASE_H
3 
4 class CmdMediator;
6 class QColor;
7 class QString;
8 class Transformation;
10 
12 enum TransformationState {
13  TRANSFORMATION_STATE_DEFINED,
14  TRANSFORMATION_STATE_UNDEFINED,
15  NUM_TRANSFORMATION_STATES
16 };
17 
20 {
21 public:
25 
27  virtual void begin(CmdMediator &cmdMediator,
28  const Transformation &transformation,
29  const QString &selectedGraphCurve) = 0;
30 
32  virtual void end(CmdMediator &cmdMediator,
33  const Transformation &transformation) = 0;
34 
36  virtual void updateAxesChecker (CmdMediator &cmdMediator,
37  const Transformation &transformation) = 0;
38 
39 protected:
42 
43 private:
45 
46  TransformationStateContext &m_context;
47 };
48 
49 #endif // TRANSFORMATION_STATE_ABSTRACT_BASE_H
Base class for all transformation states. This serves as an interface to TransformationStateContext.
Context class for transformation state machine.
TransformationStateContext & context()
Reference to the TransformationStateContext that contains all the TransformationStateAbstractBase sub...
Affine transformation between screen and graph coordinates, based on digitized axis points...
virtual void updateAxesChecker(CmdMediator &cmdMediator, const Transformation &transformation)=0
Apply the new DocumentModelAxesChecker.
virtual void end(CmdMediator &cmdMediator, const Transformation &transformation)=0
Method that is called at the exact moment a state is exited. Typically called just before begin for t...
Model for DlgSettingsAxesChecker and CmdSettingsAxesChecker.
Command queue stack.
Definition: CmdMediator.h:16
virtual void begin(CmdMediator &cmdMediator, const Transformation &transformation, const QString &selectedGraphCurve)=0
Method that is called at the exact moment a state is entered. Typically called just after end for the...