Simple SFML GUI  0.2a
PanelModel.hpp
1 /*
2  * PanelModel.hpp
3  *
4  * Created on: 02.06.2017
5  * Author: jakub
6  */
7 
8 #ifndef SSG_PANELMODEL_HPP_
9 #define SSG_PANELMODEL_HPP_
10 
11 #include "Element.hpp"
12 
13 class Panel;
14 
15 class PanelModel {
16 public:
17  PanelModel();
18  virtual ~PanelModel() {}
19  virtual void init(const Panel& panel);
20  virtual void handleElement(const Panel& panel, Element& element, size_t order)=0;
21  virtual void notifyNewElement(Element& element);
22  virtual sf::FloatRect customizeArea(const sf::FloatRect& area) const;
23  virtual bool scrollLimits(sf::Vector2f& topLeft, sf::Vector2f& bottomRight) const;
24  bool isElementChanged() const;
25 
26 protected:
27  bool elementChanged;
28 
29 };
30 
31 #endif /* SSG_PANELMODEL_HPP_ */
Definition: Panel.hpp:29
Definition: Element.hpp:22
Definition: PanelModel.hpp:15