Better organization.
This commit is contained in:
parent
c7b6b87005
commit
45c92db758
8 changed files with 26 additions and 20 deletions
|
@ -1,41 +0,0 @@
|
|||
#include "window.hpp"
|
||||
#include <stdexcept>
|
||||
#include <spdlog/spdlog.h>
|
||||
|
||||
static void glfwErrorCallback(int error, const char *message) {
|
||||
SPDLOG_CRITICAL("Error code{}: {}", error, message);
|
||||
}
|
||||
|
||||
static void framebufferCallback([[maybe_unused]] GLFWwindow *glfWwindow, int width, int height) {
|
||||
glViewport(0, 0, width, height);
|
||||
}
|
||||
|
||||
gui::Window::Window() {
|
||||
SPDLOG_DEBUG("Creating Window");
|
||||
glfwSetErrorCallback(glfwErrorCallback);
|
||||
if (glfwInit() == GLFW_FALSE) {
|
||||
SPDLOG_CRITICAL("GLFW init failed.");
|
||||
throw std::runtime_error("GLFW init failed.");
|
||||
}
|
||||
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
|
||||
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 0);
|
||||
wwindow = std::unique_ptr<GLFWwindow, decltype(&delete_glfw_window)>(glfwCreateWindow(600, 800, "Billy Sheet tracker", nullptr, nullptr),
|
||||
delete_glfw_window);
|
||||
if (!wwindow) {
|
||||
glfwTerminate();
|
||||
SPDLOG_CRITICAL("No GLFW window created, nullptr.");
|
||||
throw std::runtime_error("GLFW failed. See log.");
|
||||
}
|
||||
glfwMakeContextCurrent(wwindow.get());
|
||||
glfwSwapInterval(1); // VSync on
|
||||
|
||||
glfwSetFramebufferSizeCallback(wwindow.get(), framebufferCallback);
|
||||
}
|
||||
|
||||
bool gui::Window::should_close() const noexcept {
|
||||
return glfwWindowShouldClose(wwindow.get());
|
||||
}
|
||||
|
||||
void gui::Window::swap_buffers() const noexcept {
|
||||
glfwSwapBuffers(wwindow.get());
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue