quest-wizard/view/controls/qw_abstractscenecontrol.h

26 lines
694 B
C
Raw Permalink Normal View History

2023-02-09 08:41:24 -05:00
#ifndef ABSTRACTSCENECONTROL_H
#define ABSTRACTSCENECONTROL_H
#include <memory>
#include <QGraphicsWidget>
/* QWAbstractSceneControl
* Interface for scene graphics elements which have
* to manipulate non-logic game processes like sound, view, etc. */
struct GameFeatures;
class QWStateMachine;
class QWAbstractSceneControl : public QGraphicsWidget
{
public:
QWAbstractSceneControl();
~QWAbstractSceneControl() = 0;
virtual void onClick() = 0;
virtual void onConnect(std::unique_ptr<GameFeatures> &game_features) = 0;
virtual void onBuildingStateMachine(QWStateMachine *state_machine, std::unique_ptr<GameFeatures> &game_features);
};
#endif // ABSTRACTSCENECONTROL_H