#pragma once #include "GuiComponent.h" class Button; class GuiParticles; class Minecraft; class Screen : public GuiComponent { protected: Minecraft* minecraft; public: int width; int height; protected: std::vector buttons; public: bool passEvents; protected: Font* font; public: GuiParticles* particles; Screen(); // 4J added virtual void render(int xm, int ym, float a); public: virtual void keyPressed(wchar_t eventCharacter, int eventKey); static std::wstring getClipboard(); static void setClipboard(const std::wstring& str); private: Button* clickedButton; protected: virtual void mouseClicked(int x, int y, int buttonNum); virtual void mouseReleased(int x, int y, int buttonNum); virtual void buttonClicked(Button* button); public: virtual void init(Minecraft* minecraft, int width, int height); virtual void setSize(int width, int height); virtual void init(); virtual void updateEvents(); virtual void mouseEvent(); virtual void keyboardEvent(); virtual void tick(); virtual void removed(); virtual void renderBackground(); virtual void renderBackground(int vo); virtual void renderDirtBackground(int vo); virtual bool isPauseScreen(); virtual void confirmResult(bool result, int id); virtual void tabPressed(); };