summaryrefslogtreecommitdiff
path: root/src/window.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/window.c')
-rw-r--r--src/window.c51
1 files changed, 51 insertions, 0 deletions
diff --git a/src/window.c b/src/window.c
new file mode 100644
index 0000000..fdcd31f
--- /dev/null
+++ b/src/window.c
@@ -0,0 +1,51 @@
+/*
+ * Tuxánci 2 - A first person shooter
+ * Copyright (C) 2007-2011 Tuxánci Development Team
+ * Copyright (C) 2025-2026 Connor Thomson
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <https://www.gnu.org/licenses/>.
+ */
+
+#include <stdbool.h>
+#include "ta_sdl.h"
+#include "version.h"
+#include "logging.h"
+
+#define TA_DEFAULT_WINDOW_TITLE "Tuxánci " TA_VERSION
+#define TA_DEFAULT_WINDOW_WIDTH 1920
+#define TA_DEFAULT_WINDOW_HEIGHT 1080
+
+int ta_window_width = TA_DEFAULT_WINDOW_WIDTH;
+int ta_window_height = TA_DEFAULT_WINDOW_HEIGHT;
+bool ta_window_fullscreen = true;
+
+SDL_Window *ta_window;
+
+void ta_window_init(void) {
+ ta_sdl_init(SDL_INIT_VIDEO);
+
+ ta_window = ta_sdl_create_window(TA_DEFAULT_WINDOW_TITLE, TA_DEFAULT_WINDOW_WIDTH, TA_DEFAULT_WINDOW_HEIGHT);
+}
+
+void ta_window_update(void) {
+ ta_sdl_get_window_size(ta_window, &ta_window_width, &ta_window_height);
+ ta_sdl_set_window_fullscreen(ta_window, ta_window_fullscreen);
+}
+
+void ta_window_shutdown(void) {
+ if (ta_window) {
+ ta_log("Destroying SDL window");
+ SDL_DestroyWindow(ta_window);
+ }
+} \ No newline at end of file