#include <msp/gltk/dialog.h>
-class Engineer;
+class UserInterface;
class DynamicDialog: public Msp::GLtk::Dialog
{
+public:
+ class StateLoader: public Msp::DataFile::ObjectLoader<DynamicDialog>
+ {
+ public:
+ StateLoader(DynamicDialog &);
+
+ private:
+ void position(float, float);
+ };
+
protected:
- Engineer &engineer;
+ UserInterface &ui;
- DynamicDialog(Engineer &);
+ DynamicDialog(UserInterface &);
public:
virtual ~DynamicDialog();
- virtual void update() = 0;
+ virtual void update() { };
+ virtual bool save_state(Msp::DataFile::Statement &) const { return false; }
+protected:
+ void save_position(std::list<Msp::DataFile::Statement> &) const;
};
#endif