]> git.tdb.fi Git - r2c2.git/blobdiff - source/engineer/userinterface.h
Persist most dialogs across runs
[r2c2.git] / source / engineer / userinterface.h
index 1df53887622842230bd719e44038633f3d1e3399..6c9673809e81f4c1b9f77a7d8ad5efa630da56c7 100644 (file)
@@ -12,6 +12,22 @@ class DynamicDialog;
 
 class UserInterface
 {
+public:
+       class Loader: public Msp::DataFile::ObjectLoader<UserInterface>
+       {
+       public:
+               Loader(UserInterface &);
+
+       private:
+               template<typename T>
+               void dialog(T &);
+
+               template<typename T>
+               void basic_dialog();
+
+               void traindialog(unsigned);
+       };
+
 private:
        Engineer &engineer;
        Msp::GLtk::Resources resources;
@@ -43,6 +59,8 @@ private:
 public:
        void tick();
        void render() const;
+
+       void save_state(const std::string &) const;
 };
 
 #endif