1 #include "ChatState.hpp"
3 #include "Environment.hpp"
4 #include "../io/event.hpp"
11 ChatState::ChatState(Environment &env, State &parent, Responder &responder)
14 , responder(responder)
15 , input(env.assets.small_ui_font) {
16 input.Position(glm::vec3(25.0f, -25.0f, -1.0f), Gravity::SOUTH_WEST, Gravity::SOUTH_WEST);
17 input.Width(env.viewport.Width() - 50.0f);
18 input.Foreground(glm::vec4(1.0f));
19 input.Background(glm::vec4(0.5f));
22 void ChatState::OnResume() {
23 OnResize(env.viewport);
25 input.Focus(env.viewport);
28 void ChatState::OnPause() {
32 void ChatState::OnResize(Viewport &viewport) {
33 input.Width(viewport.Width() - 50.0f);
37 void ChatState::Handle(const SDL_Event &e) {
40 switch (e.key.keysym.sym) {
46 responder.OnLineSubmit(input.GetInput());
85 std::cout << e << std::endl;
94 void ChatState::Quit() {
95 env.state.PopUntil(this);
98 void ChatState::Update(int dt) {
102 void ChatState::Render(Viewport &viewport) {
103 parent.Render(viewport);
104 input.Render(viewport);