summaryrefslogtreecommitdiff
path: root/gtk2_ardour/main.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2013-01-29 15:25:30 +0000
committerRobin Gareus <robin@gareus.org>2013-01-29 15:25:30 +0000
commiteb369215ae4564da89b63831f474e094181ec7f0 (patch)
treefa278202100e8127904f63b31b1e01f7fbbba6b8 /gtk2_ardour/main.cc
parentabc9e6405a10028d3d757f33d4054f9f03216f03 (diff)
Custom Monospace font for clocks and such (no dot in zero).
ArdourMono is a renamed version of https://www.google.com/webfonts/specimen/Droid+Sans+Mono distributed under Apache License, version 2.0. Since the name Droid(R) is registered by Google Inc it was renamed to ArdourMono - otherwise the .tff is unchanged (build 112) git-svn-id: svn://localhost/ardour2/branches/3.0@14026 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/main.cc')
-rw-r--r--gtk2_ardour/main.cc15
1 files changed, 15 insertions, 0 deletions
diff --git a/gtk2_ardour/main.cc b/gtk2_ardour/main.cc
index fd03db115b..8a0cf1e857 100644
--- a/gtk2_ardour/main.cc
+++ b/gtk2_ardour/main.cc
@@ -50,6 +50,8 @@
#include <gtkmm2ext/popup.h>
#include <gtkmm2ext/utils.h>
+#include <fontconfig/fontconfig.h>
+
#include "version.h"
#include "utils.h"
#include "ardour_ui.h"
@@ -323,6 +325,17 @@ fixup_bundle_environment (int /*argc*/, char* argv[])
#endif
+static void load_custom_fonts() {
+ std::string ardour_mono_file;
+ if (!find_file_in_search_path (ardour_data_search_path(), "ArdourMono.ttf", ardour_mono_file)) {
+ cerr << _("Cannot find ArdourMono TrueType font") << endl;
+ }
+
+ FcConfig *config = FcInitLoadConfigAndFonts();
+ FcBool ret = FcConfigAppFontAddFile(config, reinterpret_cast<const FcChar8*>(ardour_mono_file.c_str()));
+ ret = FcConfigSetCurrent(config);
+}
+
static gboolean
tell_about_jack_death (void* /* ignored */)
{
@@ -387,6 +400,8 @@ int main (int argc, char *argv[])
{
fixup_bundle_environment (argc, argv);
+ load_custom_fonts(); /* needs to happend before any gtk and pango init calls */
+
if (!Glib::thread_supported()) {
Glib::thread_init();
}