doggo/src/main.zig

41 lines
1.1 KiB
Zig
Raw Normal View History

2022-01-21 15:12:40 +01:00
const std = @import("std");
2022-04-07 14:12:23 +02:00
const r = @import("raylib.zig");
2022-01-21 15:12:40 +01:00
pub fn main() anyerror!void {
2022-04-14 14:05:54 +02:00
r.InitWindow(800, 450, "doggo");
2022-04-07 14:12:23 +02:00
defer r.CloseWindow();
2022-01-22 14:42:40 +01:00
2022-04-14 14:05:54 +02:00
// var selected_filename: [512]u8 = undefined;
var file_dialog_state = r.InitGuiFileDialog(420, 310, r.GetWorkingDirectory(), false);
2022-04-07 14:12:23 +02:00
while (!r.WindowShouldClose()) {
2022-04-14 14:05:54 +02:00
// Update
if (file_dialog_state.SelectFilePressed) {
std.log.info("{s} / {s}", .{ file_dialog_state.dirPathText, file_dialog_state.fileNameText });
}
// Draw
2022-04-07 14:12:23 +02:00
r.BeginDrawing();
defer r.EndDrawing();
2022-01-22 14:42:40 +01:00
2022-04-07 14:12:23 +02:00
r.ClearBackground(r.RAYWHITE);
r.DrawText("Congrats! You created your first window!", 190, 200, 20, r.LIGHTGRAY);
2022-01-22 14:42:40 +01:00
2022-04-14 14:05:54 +02:00
if (file_dialog_state.fileDialogActive) {
r.GuiLock();
}
2022-04-07 14:12:23 +02:00
if (r.GuiButton(r.Rectangle{ .x = 190, .y = 250, .width = 150, .height = 30 }, "Button")) {
2022-03-24 13:25:40 +01:00
std.log.info("Button pressed", .{});
2022-04-14 14:05:54 +02:00
file_dialog_state.fileDialogActive = true;
2022-03-24 13:25:40 +01:00
}
2022-04-14 14:05:54 +02:00
r.GuiUnlock();
r.GuiFileDialog(&file_dialog_state);
2022-03-24 13:25:40 +01:00
}
2022-01-21 15:12:40 +01:00
}
test "basic test" {
try std.testing.expectEqual(10, 3 + 7);
}