From 4f1714b0f52e6a0d7e82310b4311269a6d540b00 Mon Sep 17 00:00:00 2001 From: Joseph Ferano Date: Thu, 5 Sep 2024 11:31:23 +0700 Subject: [PATCH] Render Builder with backspace sort of working --- .gitignore | 1 + resources/JetBrainsMono-Regular.otf | Bin 0 -> 144412 bytes tide.odin | 165 ++++++++++++++++++++++++++++ 3 files changed, 166 insertions(+) create mode 100644 .gitignore create mode 100644 resources/JetBrainsMono-Regular.otf create mode 100644 tide.odin diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ae55e15 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/tide diff --git a/resources/JetBrainsMono-Regular.otf b/resources/JetBrainsMono-Regular.otf new file mode 100644 index 0000000000000000000000000000000000000000..ad950a9824beaf0e95ede49f64071cccfc59b6be GIT binary patch literal 144412 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

(uweTN8Y1VRk<@=_WMlu* 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 literal 0 HcmV?d00001 diff --git a/tide.odin b/tide.odin new file mode 100644 index 0000000..daf0493 --- /dev/null +++ b/tide.odin @@ -0,0 +1,165 @@ +package tide + +import "core:os" +import "core:log" +import "core:math" +import "core:strings" +import fmt "core:fmt" +import sdl "vendor:sdl2" +import ttf "vendor:sdl2/ttf" +import txtedit "core:text/edit" + +AppState :: struct { + buffer_dirty: bool, +} + +SdlCtx :: struct { + window: ^sdl.Window, + surface: ^sdl.Surface, + renderer: ^sdl.Renderer, + font: ^ttf.Font, + ftex: ^sdl.Texture, + text_surface: ^sdl.Surface, + buffer_text: ^BufferText, + // font_data: ^FontData, + + should_close: bool, + app_start: f64, + + frame_start: f64, + frame_end: f64, + frame_elapsed: f64, +} + +BufferText :: struct { + builder: strings.Builder, +} + +FontData :: struct { + font: ^ttf.Font, + texture: ^sdl.Texture, + rect: sdl.Rect, + font_w: int, + font_h: int, +} + +WIN_TITLE :: "FIDE" +WIN_X := i32(0) +WIN_Y := i32(100) +WIN_W := i32(950) +WIN_H := i32(1000) +WIN_FLAGS :: sdl.WindowFlags{.SHOWN} + +state := AppState{} +ctx := SdlCtx{} + +sdl_init :: proc() -> (ok: bool) { + ctx.app_start = f64(sdl.GetPerformanceCounter()) / f64(sdl.GetPerformanceFrequency()) + + if sdl.Init(sdl.INIT_VIDEO) != 0 { + return false + } + + ctx.window = sdl.CreateWindow(WIN_TITLE, WIN_X, WIN_Y, WIN_W, WIN_H, WIN_FLAGS) + + ctx.renderer = sdl.CreateRenderer(ctx.window, -1, {.ACCELERATED, .PRESENTVSYNC}) + if ctx.renderer == nil { + log.errorf("sdl2.CreateRenderer failed.") + return false + } + + if ttf.Init() != 0 { + log.errorf("sdl.TTF_Init failed.") + return false + } + + font_path := cstring("./resources/JetBrainsMono-Regular.otf") + ctx.font = ttf.OpenFont(font_path, 32) + if ctx.font == nil { + log.errorf("sdl.TTF_OpenFont failed.") + return false + } + + + bt := new(BufferText) + bt.builder = strings.builder_make(0, 512) + ctx.buffer_text = bt + append(&bt.builder.buf, "// Code goes here...") + return true +} + +process_input :: proc() { + e: sdl.Event + + state.buffer_dirty = true + + for sdl.PollEvent(&e) { + #partial switch(e.type) { + case .QUIT: + ctx.should_close = true + case .KEYDOWN: + #partial switch(e.key.keysym.sym) { + case .ESCAPE: + ctx.should_close = true + case .BACKSPACE: + strings.pop_rune(&ctx.buffer_text.builder) + state.buffer_dirty = true + fmt.println("Key Pressed: BACKSPACE") + } + } + } +} + +update :: proc() { + if state.buffer_dirty { + + color := sdl.Color{ 0, 0, 0, 255} + + str := strings.to_cstring(&ctx.buffer_text.builder) + ctx.text_surface = ttf.RenderText_Blended(ctx.font, str, color); + if (ctx.text_surface == nil) { + log.errorf(sdl.GetErrorString()) + os.exit(1) + } + } +} + +draw :: proc() { + sdl.SetRenderDrawColor(ctx.renderer, 250, 250, 250, 0xff) + sdl.RenderClear(ctx.renderer) + + ctx.ftex = sdl.CreateTextureFromSurface(ctx.renderer, ctx.text_surface); + + src := sdl.Rect { 0, 0, ctx.text_surface.w, ctx.text_surface.h } + dest := sdl.Rect { 0, 0, ctx.text_surface.w, ctx.text_surface.h } + + sdl.RenderCopy(ctx.renderer, ctx.ftex, &src, &dest) + + sdl.RenderPresent(ctx.renderer) +} + +main :: proc() { + context.logger = log.create_console_logger() + + if ok := sdl_init(); !ok { + log.errorf(sdl.GetErrorString()) + os.exit(1) + } + + ctx.frame_start = ctx.app_start + ctx.frame_elapsed = 0.001 + + for !ctx.should_close { + process_input() + update() + draw() + + ctx.frame_end = f64(sdl.GetPerformanceCounter()) / f64(sdl.GetPerformanceFrequency()) + ctx.frame_elapsed = ctx.frame_end - ctx.frame_start + ctx.frame_start = ctx.frame_end + } + + ttf.CloseFont(ctx.font) + sdl.DestroyWindow(ctx.window) + sdl.Quit() +}