X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fengineer%2Fdeparturesdialog.h;h=bbc8246bdfe46b79d612913af12336bd832f3c07;hb=abed4a255060d5a233ec0ac2dd60af9132e29201;hp=3b7b2ce11fb6da9144f376da68e06dfac3976b8e;hpb=9e96d36a21c24befc88c7bf9c1014c22169e3a6a;p=r2c2.git diff --git a/source/engineer/departuresdialog.h b/source/engineer/departuresdialog.h index 3b7b2ce..bbc8246 100644 --- a/source/engineer/departuresdialog.h +++ b/source/engineer/departuresdialog.h @@ -1,13 +1,25 @@ #ifndef DEPARTURESDIALOG_H_ #define DEPARTURESDIALOG_H_ -#include #include #include #include "libr2c2/departures.h" +#include "dynamicdialog.h" -class DeparturesDialog: public Msp::GLtk::Dialog +class Engineer; + +class DeparturesDialog: public DynamicDialog { +public: + class StateLoader: public Msp::DataFile::DerivedObjectLoader + { + public: + StateLoader(DeparturesDialog &); + + private: + void group(const std::string &); + }; + private: struct Row { @@ -29,13 +41,16 @@ private: std::vector rows; public: - DeparturesDialog(const R2C2::Layout &, const std::string & = std::string()); + DeparturesDialog(Engineer &, const std::string & = std::string()); void set_group(const std::string &); private: void group_selected(unsigned); void update_rows(); + +public: + virtual bool save_state(Msp::DataFile::Statement &) const; }; #endif