X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fmenu%2FCapsuleMenu.h;fp=src%2Fmenu%2FCapsuleMenu.h;h=ad20b251b1b2d1d3b31559b68f5a6dfc350ce27a;hb=10a8d3a83e7ad6815bc9f752922239ef32073a5e;hp=0000000000000000000000000000000000000000;hpb=d71217e2be1466726581146000a0f61620423e9b;p=l2e.git diff --git a/src/menu/CapsuleMenu.h b/src/menu/CapsuleMenu.h new file mode 100644 index 0000000..ad20b25 --- /dev/null +++ b/src/menu/CapsuleMenu.h @@ -0,0 +1,47 @@ +#ifndef MENU_CAPSULEMENU_H_ +#define MENU_CAPSULEMENU_H_ + +#include "fwd.h" +#include "../app/State.h" +#include "../common/fwd.h" +#include "../geometry/Vector.h" +#include "../graphics/Menu.h" + +namespace menu { + +class CapsuleMenu +: public app::State { + +public: + explicit CapsuleMenu(PartyMenu *parent); + +public: + virtual void HandleEvents(const app::Input &); + virtual void UpdateWorld(float deltaT); + virtual void Render(SDL_Surface *); + +public: + int Width() const; + int Height() const; + +private: + virtual void OnEnterState(SDL_Surface *screen); + virtual void OnExitState(SDL_Surface *screen); + virtual void OnResumeState(SDL_Surface *screen); + virtual void OnPauseState(SDL_Surface *screen); + + virtual void OnResize(int width, int height); + + const common::Capsule &GetCapsule() const; + + void RenderBackground(SDL_Surface *screen) const; + +private: + PartyMenu *parent; + graphics::Menu menu; + +}; + +} + +#endif /* MENU_CAPSULEMENU_H_ */