YAPOG  0.0.1
Yet Another Pokemon Online Game
ComposedSprite.hpp
Go to the documentation of this file.
1 #ifndef YAPOG_COMPOSEDSPRITE_HPP
2 # define YAPOG_COMPOSEDSPRITE_HPP
3 
4 # include "YAPOG/Macros.hpp"
7 
8 namespace yap
9 {
11  {
13 
14  public:
15 
16  ComposedSprite ();
17  virtual ~ComposedSprite ();
18 
21  void Init ();
22 
23  protected:
24 
25  void AddSprite (ISprite* sprite);
26  ISprite& GetSprite (
27  const collection::Array<ISprite*>::SizeType& index) const;
28 
29  virtual void HandleMove (const Vector2& offset);
30  virtual void HandleScale (const Vector2& factor);
31 
32  virtual void HandleDraw (IDrawingContext& context);
33 
34  virtual void HandleShow (bool isVisible);
35  virtual void HandleChangeColor (const sf::Color& color);
36 
37  virtual void HandleUpdate (const Time& dt);
38 
39  virtual void UpdatePosition () = 0;
40 
41  private:
42 
44  };
45 } // namespace yap
46 
47 #endif // YAPOG_COMPOSEDSPRITE_HPP