kicad/common/gal/opengl
John Beard 567bdd9b9d Add configuration of Hi-DPI canvas scaling in OpenGL
First, add automatic detection of toolkit DPI scaling options. For now, this
is, in order,

* Check the GDK_SCALE option under GTK+ (users can set this to force the scaling)
* Check the value from WX's GetContentScalingFactor(). This will start to work
  correctly from WX 3.1 and GTK+ 3.10.

Then, add a user-settable override in the main prefs panel, next to the icon
scaling. This is independent of the icon scaling options.

DPI handling is performed in a standalone class, so they can be shared between
the prefs UI and the OpenGL backend easily. Also means Cairo could use the same
interface in future.

Also adjust the OpenGL grid drawing code to use the computed scale factor,
which avoids over-thick grids in scaled environments (the user can manually
thicken the grid if wanted).

Fixes: lp:1797308
* https://bugs.launchpad.net/kicad/+bug/1797308
2019-03-25 15:00:55 +00:00
..
SmaaAreaTex.h Add smaa (subsample morphological antialiasing) 2017-01-11 16:20:37 +01:00
SmaaSearchTex.h Add smaa (subsample morphological antialiasing) 2017-01-11 16:20:37 +01:00
antialiasing.cpp Multiple improvements concerning colors, configuration handling and legacy features in pcbnew: 2017-08-04 16:06:57 +02:00
antialiasing.h Coverity fixes (mostly initializing variables) 2017-02-01 17:31:55 +01:00
bitmap_font_desc.c Move builtin font resources out of opengl_gal translation unit 2017-01-11 16:20:33 +01:00
bitmap_font_img.c Move builtin font resources out of opengl_gal translation unit 2017-01-11 16:20:33 +01:00
cached_container.cpp Upload correct amount of vertex data in CACHED_CONTAINER_RAM 2017-09-09 21:07:32 +02:00
cached_container_gpu.cpp OPENGL_GAL: don't use glCopyBuffer() on faulty Intel GL drivers 2018-08-16 14:34:36 +02:00
cached_container_ram.cpp Upload correct amount of vertex data in CACHED_CONTAINER_RAM 2017-09-09 21:07:32 +02:00
font-specification.svg update font code along with the changes done in the msdf atlas tool (use codepoint spans and refined char placement) 2016-10-20 14:31:09 +02:00
gl_builtin_shaders.cpp gal: opengl: use correct radius for graphical circles 2019-02-19 01:55:50 +01:00
gl_builtin_shaders.h OpenGL antialising code clean up & formatting 2017-01-11 16:20:37 +01:00
gl_resources.cpp OpenGL antialising code clean up & formatting 2017-01-11 16:20:37 +01:00
gl_resources.h OpenGL antialising code clean up & formatting 2017-01-11 16:20:37 +01:00
gpu_manager.cpp eeschema-gal: implemented EnableDepthTest() in GAL, fixed drawing order in eeschema 2018-10-15 00:09:59 +02:00
noncached_container.cpp Vertices are stored in GPU memory (OpenGL GAL). 2016-05-02 16:12:16 +02:00
opengl_compositor.cpp gal: minor cleanup & formatting 2019-02-16 20:25:10 +01:00
opengl_gal.cpp Add configuration of Hi-DPI canvas scaling in OpenGL 2019-03-25 15:00:55 +00:00
shader.cpp gal: pixel alignment hacks, works for Retina display too now. 2019-02-16 20:03:13 +01:00
ubuntu-font-licence-1.0.txt Added licence for the GAL bitmap font 2016-08-03 17:02:43 +02:00
utils.cpp Better exception handling and context locking for GAL. 2018-10-12 23:44:49 +01:00
vertex_container.cpp Fixed recognition of GPUs not handling glMapBuffer() efficiently 2017-08-18 15:02:46 +02:00
vertex_item.cpp Namespace KiGfx->KIGFX. 2013-10-14 16:13:35 +02:00
vertex_manager.cpp eeschema-gal: implemented EnableDepthTest() in GAL, fixed drawing order in eeschema 2018-10-15 00:09:59 +02:00