diff options
author | dec05eba <dec05eba@protonmail.com> | 2021-10-18 01:54:59 +0200 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2021-10-18 01:54:59 +0200 |
commit | 3e081d1669622bbc276b038ddc38ecf0600683c3 (patch) | |
tree | 0a92c34f257c75a2b26e63b0ea9da3d594e89cc8 /tests |
Initial commit with an example
Diffstat (limited to 'tests')
-rw-r--r-- | tests/main.cpp | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/tests/main.cpp b/tests/main.cpp new file mode 100644 index 0000000..bddfc3f --- /dev/null +++ b/tests/main.cpp @@ -0,0 +1,57 @@ +#include <stdio.h> +#include <mglpp/mglpp.hpp> +#include <mglpp/window/Window.hpp> +#include <mglpp/graphics/Texture.hpp> +#include <mglpp/graphics/Sprite.hpp> +#include <mglpp/graphics/Font.hpp> +#include <mglpp/graphics/Text.hpp> +#include <mglpp/graphics/Rectangle.hpp> + +struct Delegate : public mgl::Window::Delegate { + Delegate() {} + + void draw() override { + mgl::Rectangle rect(window->get_cursor_position().to_vec2f(), { 100.0f, 500.0f }); + rect.set_color({1.0f, 0.0f, 0.0f, 1.0f}); + window->draw(rect); + + mgl::Sprite sprite(*texture, { 100.0f - 10.0f, 0.0f }); + sprite.set_color({1.0f, 1.0f, 1.0f, 0.5f}); + window->draw(sprite); + + mgl::Text text("hello world!\nGood bye world!", { 0.0f, 0.0f }, *font); + window->draw(text); + } + + mgl::Window *window; + mgl::Texture *texture; + mgl::Font *font; +}; + +int main(int argc, char **argv) { + mgl::Init init; + + Delegate delegate; + mgl::Window window(&delegate); + if(!window.create("mglpp", 1920, 1080)) + return 1; + + mgl::Texture texture; + if(!texture.load_from_file("depends/mgl/tests/X11.png")) + return 1; + + mgl::Font font; + if(!font.load_from_file("/usr/share/fonts/noto/NotoSans-Regular.ttf", 32)) + return 1; + + delegate.window = &window; + delegate.texture = &texture; + delegate.font = &font; + + while(true) { + window.poll_events(); + window.draw(); + } + + return 0; +} |