diff libinterp/corefcn/base-text-renderer.h @ 27623:698c8b08fe8c

New function uisetfont (bug #57130). * base-text-renderer.h (base_text_renderer::get_system_fonts): Add new pure virtual method. * text-renderer.h (text_renderer::get_system_fonts): Ditto. * text-renderer.cc (text_renderer::get_system_fonts): New function to call rep->get_system_fonts. * ft-text-renderer.[h,cc] (ft_manager::get_system_fonts): New static method. (ft_manager::do_get_system_fonts): Use fontconfig to build a map of installed fonts. (ft_text_renderer::get_system_fonts): Call ft_manager::get_system_fonts. * graphics.cc (F__get_system_fonts__): New function. * scripts/gui/uisetfont.m: New function. * scripts/gui/private/__ok_cancel_dlg.m: Base implementation of a 2-button dialog. * scripts/gui/module.mk: Add uisetfont.m, __ok_cancel_dlg__.m to build system. * gui.txi: Add uisetfont docstring to the manual.
author Pantxo Diribarne <pantxo.diribarne@gmail.com>
date Wed, 30 Oct 2019 00:24:23 +0100
parents 0adb232f93b9
children b442ec6dda5c
line wrap: on
line diff
--- a/libinterp/corefcn/base-text-renderer.h	Mon Sep 02 21:21:58 2019 +0200
+++ b/libinterp/corefcn/base-text-renderer.h	Wed Oct 30 00:24:23 2019 +0100
@@ -30,6 +30,7 @@
 #include <string>
 
 #include "dMatrix.h"
+#include "oct-map.h"
 #include "uint8NDArray.h"
 
 #include "text-engine.h"
@@ -66,6 +67,9 @@
     set_font (const std::string& name, const std::string& weight,
               const std::string& angle, double size) = 0;
 
+    virtual octave_map
+    get_system_fonts (void) = 0;
+
     virtual void set_color (const Matrix& c) = 0;
 
     virtual void