From b7e52bb03cfd2d47249019de9c39cadcad18f547 Mon Sep 17 00:00:00 2001 From: ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> Date: Fri, 19 Sep 2025 11:10:52 +0200 Subject: Underline does not appear in some fonts and scales (Windows,X11-noCairo) (#1308) --- src/drivers/GDI/Fl_GDI_Graphics_Driver.H | 1 - src/drivers/GDI/Fl_GDI_Graphics_Driver_font.cxx | 10 ---------- src/drivers/Xlib/Fl_Xlib_Graphics_Driver.H | 1 - src/drivers/Xlib/Fl_Xlib_Graphics_Driver_font_xft.cxx | 8 -------- 4 files changed, 20 deletions(-) (limited to 'src/drivers') diff --git a/src/drivers/GDI/Fl_GDI_Graphics_Driver.H b/src/drivers/GDI/Fl_GDI_Graphics_Driver.H index f505619b6..336fa1ebc 100644 --- a/src/drivers/GDI/Fl_GDI_Graphics_Driver.H +++ b/src/drivers/GDI/Fl_GDI_Graphics_Driver.H @@ -74,7 +74,6 @@ public: static HBITMAP calc_HBITMAP_mask(Fl_RGB_Image *mask); void delete_bitmask(fl_uintptr_t bm) FL_OVERRIDE; HBITMAP create_alphamask(int w, int h, int d, int ld, const uchar *array); - void draw(const char *str, int n, int x, int y) FL_OVERRIDE; void draw_unscaled(const char* str, int n, int x, int y) FL_OVERRIDE; void draw_unscaled(int angle, const char *str, int n, int x, int y) FL_OVERRIDE; void rtl_draw_unscaled(const char* str, int n, int x, int y) FL_OVERRIDE; diff --git a/src/drivers/GDI/Fl_GDI_Graphics_Driver_font.cxx b/src/drivers/GDI/Fl_GDI_Graphics_Driver_font.cxx index 354957bb9..e901db971 100644 --- a/src/drivers/GDI/Fl_GDI_Graphics_Driver_font.cxx +++ b/src/drivers/GDI/Fl_GDI_Graphics_Driver_font.cxx @@ -593,16 +593,6 @@ exit_error: return; } // fl_text_extents - -void Fl_GDI_Graphics_Driver::draw(const char *str, int n, int x, int y) { - if (!size_ || !font_descriptor()) font(FL_HELVETICA, FL_NORMAL_SIZE); - Fl_Region r2 = scale_clip(scale()); - int offset = (scale() == 1 ? 0 : -1); // for issue #1308 - draw_unscaled(str, n, floor(x), floor(y + offset)); - unscale_clip(r2); -} - - void Fl_GDI_Graphics_Driver::draw_unscaled(const char* str, int n, int x, int y) { COLORREF oldColor = SetTextColor(gc_, fl_RGB()); // avoid crash if no font has been set yet diff --git a/src/drivers/Xlib/Fl_Xlib_Graphics_Driver.H b/src/drivers/Xlib/Fl_Xlib_Graphics_Driver.H index fc05747be..83146aef0 100644 --- a/src/drivers/Xlib/Fl_Xlib_Graphics_Driver.H +++ b/src/drivers/Xlib/Fl_Xlib_Graphics_Driver.H @@ -122,7 +122,6 @@ public: // --- bitmap stuff static unsigned long create_bitmask(int w, int h, const uchar *array); // NOT virtual void delete_bitmask(fl_uintptr_t bm) FL_OVERRIDE; - void draw(const char *str, int n, int x, int y) FL_OVERRIDE; void draw_unscaled(const char* str, int n, int x, int y) FL_OVERRIDE; void draw_unscaled(int angle, const char *str, int n, int x, int y) FL_OVERRIDE; void rtl_draw_unscaled(const char* str, int n, int x, int y) FL_OVERRIDE; diff --git a/src/drivers/Xlib/Fl_Xlib_Graphics_Driver_font_xft.cxx b/src/drivers/Xlib/Fl_Xlib_Graphics_Driver_font_xft.cxx index a7f8ae4d9..a7537a184 100644 --- a/src/drivers/Xlib/Fl_Xlib_Graphics_Driver_font_xft.cxx +++ b/src/drivers/Xlib/Fl_Xlib_Graphics_Driver_font_xft.cxx @@ -118,14 +118,6 @@ static void correct_extents (float s, int &dx, int &dy, int &w, int &h) { } } -void Fl_Xlib_Graphics_Driver::draw(const char *str, int n, int x, int y) { - if (!size_ || !font_descriptor()) font(FL_HELVETICA, FL_NORMAL_SIZE); - Fl_Region r2 = scale_clip(scale()); - int offset = (scale() == 1 ? 0 : -1); // for issue #1308 - draw_unscaled(str, n, floor(x), floor(y + offset)); - unscale_clip(r2); -} - #if ! USE_PANGO -- cgit v1.2.3