summaryrefslogtreecommitdiff
path: root/src/drivers/Cairo/Fl_Cairo_Graphics_Driver.H
AgeCommit message (Collapse)Author
3 dayswi[maxim nikonov
3 dayswip: forkmaxim nikonov
2025-05-09Remove declaration of Fl_Scalable_Graphics_Driver from FL/Fl_Graphics_Driver.HManoloFLTK
and declare it in non-public header src/Fl_Scalable_Graphics_Driver.H which also declares classes Fl_Font_Descriptor and Fl_Fontdesc.
2024-11-07Fix X11: test/curve "points" mode not drawn correctly (#1110)ManoloFLTK
2024-10-07Make Pango-handled text accept legacy CP1252-encoded textManoloFLTK
2024-08-31Fixing set_font and image overflow for Cairo.Matthias Melcher
2024-03-20Use type cairo_region_t* for Fl_Region under Wayland platformManoloFLTK
2023-12-04New member function Fl_Image_Surface::mask(Fl_RGB_Image*)ManoloFLTK
2023-11-27Cairo graphics driver: Improve drawing of Fl_Pixmap and Fl_BitmapManoloFLTK
2023-11-25Cairo graphics driver: Improve drawing of Fl_Pixmap and Fl_BitmapManoloFLTK
Previously, these objects were drawn slightly blurred on HighDPI. This commit has them resized to the pixel size of the area where they are being drawn and then drawn.
2023-04-05Wayland: limit copied pixels when window update is a regionManoloFLTK
2023-03-25Add Fl_Cairo_Graphics_Driver::focus_rect() overrideManoloFLTK
This allows to bypass what looks like a Cairo bug: FLTK_SCALING_FACTOR=1.7 bin/test/tabs click on tab2 ---> crash But no crash with other scaling factor values (e.g., 1.8).
2023-01-04Cairo/Pango: compute character widths fast and string widths accuratelyManoloFLTK
This commit has Fl_Cairo_Graphics_Driver compute string widths in 2 ways: 1) when the string contains several unicode characters, the width of the whole string is computed, accounting for kerning when it occurs; 2) when the string contains a single unicode character, its width is computed, memorised, and re-used next time it's necessary. The effect of this approach is - Fl_Text_Display is fast because it uses memorised single character widths repeatedly - Fl_Input is drawn accurately because the cursor position is determined by string widths, not by sums of character widths.
2022-12-30Use `FL_OVERRIDE` for all overridden virtual methods (#611)Matthias Melcher
FL_OVERRIDE is defined as `override` for C++11 and higher FL_OVERRIDE is defined as `override` for VisualC 2015 and newer Don't interfere with Fl_Widget::override()
2022-10-10Remove duplications between Fl_Graphics_Driver and derived classes.ManoloFLTK
2022-09-09New OPTION_WAYLAND_ONLY for CMake to build pure Wayland platform.ManoloFLTK
2022-09-08Add necessary virtual qualifier to ~Fl_Font_Descriptor() and derived.ManoloFLTK
2022-08-18Add a few missing virtual members to Fl_Cairo_Graphics_Driver.ManoloFLTK
2022-08-12Add virtual Fl_Cairo_Graphics_Driver::cache_size() member function.ManoloFLTK
2022-07-20Change prototype of virtual Fl_Graphics_Driver::pango_font_description().ManoloFLTK
2022-07-18Fl_Cairo_Graphics_Driver: simpler way to construct the PangoLayout object.ManoloFLTK
2022-07-06Fl_Cairo_Graphics_Driver: fix issues in string width computations when ↵ManoloFLTK
scaling applies. The implemented approach is to create and use the pango_layout_ object only relatively to an unscaled cairo context. With this, the pixel width of a drawn string equals the sum of the widths of its characters.
2022-06-12New member Fl_Cairo_Graphics_Driver::bitmap_to_pattern() to avoid code ↵ManoloFLTK
duplication.
2022-05-02Set line height as computed by Pango.ManoloFLTK
2022-05-02Keep the PangoLayout member private in class Fl_Cairo_Graphics_Driver.ManoloFLTK
2022-05-01Issue #438 : Wayland: Text drawing different from Xft version - cont'd.ManoloFLTK
2022-04-30 Fix for issue #438 : Wayland: Text drawing different from Xft version - cont'd.ManoloFLTK
2022-04-25Create member function Fl_Cairo_Graphics_Driver::set_cairo().ManoloFLTK
2022-04-23Create Fl_Cairo_Graphics_Driver::handle_dummy_cairo(cairo_t *cr).ManoloFLTK
2022-03-31Fix whitespace errors (no code changes)Albrecht Schlosser
2022-03-31Add support of Fl_Region to the Cairo graphics driverManoloFLTK
and remove it from the Wayland graphics driver.
2022-03-24Remove platform-dependent type Fl_Bitmask (not in documented public API).ManoloFLTK
2022-03-21Fix silly MSVC 2010 parser warningsAlbrecht Schlosser
Code like "void copy(const char */*stuff*/, ...)" would issue the warning "'*/' seen outside comment" which is formally true but ... These warnings don't appear with newer MS compilers, but I fixed them anyway.
2022-03-09Move all font stuff to Fl_Cairo_Graphics_Driver from Fl_Wayland_Graphics_Driver.ManoloFLTK
2022-03-06Complete class Fl_Cairo_Graphics_Driver using Fl_Wayland_Graphics_DriverManoloFLTK
2021-12-09Remove compiler warnings about unused parameters (issue #307) - cont'dManoloFLTK
2021-12-02PostScript output: initialise member variables in Fl_Cairo_Graphics_Driver ↵ManoloFLTK
constructor. Also, remove inadequate Fl_Surface_Device::push_current(this) call in Fl_Posix_Printer_Driver::begin_job().
2021-08-27Remove compiler warnings '-Wextra-semi' (see also PR #266)Albrecht Schlosser
I compiled with `-Wextra-semi -Werror=extra-semi` on Linux and Windows (cross-compiled on Linux) and removed all "extra semicolon" warnings I could find. I didn't check on macOS (yet). Note: Linux configured with and w/o Pango but not w/o Xft. Compilation with other options (e.g. Cairo) might still emit such warnings.
2021-03-27Add guard against multiple inclusion of header file.ManoloFLTK
2021-03-26Remove X11-specific code from platform-independent Fl_PostScript.cxxManoloFLTK
2021-03-15Create class Fl_Cairo_Graphics_Driver.ManoloFLTK
That class is extracted from inside Fl_PostScript_Graphics_Driver and might become handy in the future.