input_initial_state.hpp 999 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. #ifndef QT_INITIAL_STATE_HPP
  2. #define QT_INITIAL_STATE_HPP
  3. #include <iostream>
  4. #include <fstream>
  5. #include <QWidget>
  6. #include <QVBoxLayout>
  7. #include <QHBoxLayout>
  8. #include <QScrollArea>
  9. #include <QPushButton>
  10. #include <QPalette>
  11. #include <QMessageBox>
  12. #include "qt/input_tank.hpp"
  13. #include "initial_state.hpp"
  14. class QtInputInitialState:public QWidget{
  15. Q_OBJECT
  16. private:
  17. InitialState* initial_state;
  18. QPushButton* add_button;
  19. QPushButton* refresh_button;
  20. QScrollArea* scroll_area;
  21. QVBoxLayout* tanks_layout;
  22. QWidget* tanks_widget;
  23. QVBoxLayout* main_layout;
  24. QHBoxLayout* button_layout;
  25. QWidget* button_widget;
  26. public:
  27. QtInputInitialState(InitialState* initial_state);
  28. ~QtInputInitialState();
  29. QWidget* validate();
  30. void save(fstream& file);
  31. void load(fstream& file);
  32. public slots:
  33. void addTank();
  34. void removeTank(QtInputTank*);
  35. void updateInitialState();
  36. signals:
  37. void initialStateChanged();
  38. };
  39. inline
  40. QtInputInitialState::~QtInputInitialState(){
  41. }
  42. #endif