initial_state.hpp 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  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 "qt/input/data.hpp"
  14. class QtInputInitialState:public QWidget{
  15. Q_OBJECT
  16. private:
  17. QtInputData* data;
  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(QtInputData* data);
  28. ~QtInputInitialState();
  29. QWidget* validate();
  30. void save(fstream& file);
  31. void load(fstream& file);
  32. void getTanks();
  33. void addExistingTank(Tank* tank);
  34. public slots:
  35. void addTank();
  36. void removeTank(QtInputTank*);
  37. void updateInitialState();
  38. signals:
  39. void initialStateChanged();
  40. };
  41. inline
  42. QtInputInitialState::~QtInputInitialState(){
  43. }
  44. #endif