From e3b8a9b102e3bc2daea899112fec2f8ae52bf77c Mon Sep 17 00:00:00 2001 From: Cyberarm Date: Wed, 11 Jan 2023 15:05:58 -0600 Subject: [PATCH] Fixed overdrawing on BorderCanvas for left side, fixed BackgroundImage fill mode not filling correctly, fixed Progress in marquee mode not request repaint each frame. --- lib/cyberarm_engine/background_image.rb | 2 +- lib/cyberarm_engine/ui/border_canvas.rb | 4 ++-- lib/cyberarm_engine/ui/elements/progress.rb | 1 + 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/cyberarm_engine/background_image.rb b/lib/cyberarm_engine/background_image.rb index 513b973..9542266 100644 --- a/lib/cyberarm_engine/background_image.rb +++ b/lib/cyberarm_engine/background_image.rb @@ -75,7 +75,7 @@ module CyberarmEngine end def draw_fill - if @width * width_scale > height * height_scale + if (@image.width * width_scale) >= @width && (@image.height * width_scale) >= @height draw_fill_width else draw_fill_height diff --git a/lib/cyberarm_engine/ui/border_canvas.rb b/lib/cyberarm_engine/ui/border_canvas.rb index 96a495c..8141a94 100644 --- a/lib/cyberarm_engine/ui/border_canvas.rb +++ b/lib/cyberarm_engine/ui/border_canvas.rb @@ -62,11 +62,11 @@ module CyberarmEngine def update # TOP - @top.x = @element.x # + @element.border_thickness_left + @top.x = @element.x + @element.style.border_thickness_left @top.y = @element.y @top.z = @element.z - @top.width = @element.width + @top.width = @element.width - @element.style.border_thickness_left @top.height = @element.style.border_thickness_top # RIGHT diff --git a/lib/cyberarm_engine/ui/elements/progress.rb b/lib/cyberarm_engine/ui/elements/progress.rb index 2629343..f478224 100644 --- a/lib/cyberarm_engine/ui/elements/progress.rb +++ b/lib/cyberarm_engine/ui/elements/progress.rb @@ -52,6 +52,7 @@ module CyberarmEngine @marquee_animation_time = Gosu.milliseconds if @marquee_offset > range update_background + root.gui_state.request_repaint end def type=(type)