X-Git-Url: https://git.localhorst.tv/?a=blobdiff_plain;ds=inline;f=src%2Fmenu%2FScenarioMenu.h;fp=src%2Fmenu%2FScenarioMenu.h;h=bcc2bbc95eb9ff58fa76461ba9b4c6c2bb009a6c;hb=37f46a0eb5ddbf9e3de672cf6da97605e41bd1f4;hp=0000000000000000000000000000000000000000;hpb=ee953c3847abc32c3e369672b7c35424f061765c;p=l2e.git diff --git a/src/menu/ScenarioMenu.h b/src/menu/ScenarioMenu.h new file mode 100644 index 0000000..bcc2bbc --- /dev/null +++ b/src/menu/ScenarioMenu.h @@ -0,0 +1,54 @@ +/* + * ScenarioMenu.h + * + * Created on: Nov 30, 2012 + * Author: holy + */ + +#ifndef MENU_SCENARIOMENU_H_ +#define MENU_SCENARIOMENU_H_ + +#include "fwd.h" +#include "../app/State.h" +#include "../common/fwd.h" +#include "../geometry/Vector.h" +#include "../graphics/Menu.h" + +namespace menu { + +class ScenarioMenu +: public app::State { + +public: + explicit ScenarioMenu(PartyMenu *parent); + +public: + virtual void HandleEvents(const app::Input &); + virtual void UpdateWorld(float deltaT); + virtual void Render(SDL_Surface *); + + 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); + + void LoadItems(); + + void RenderHeadline(SDL_Surface *screen, const geometry::Vector &offset) const; + void RenderItems(SDL_Surface *screen, const geometry::Vector &offset) const; + +private: + PartyMenu *parent; + graphics::Menu itemMenu; + +}; + +} + +#endif /* MENU_SCENARIOMENU_H_ */