+/* -*- indent-tabs-mode: nil; tab-width: 4; c-basic-offset: 4; -*-
+
+ font.c for the Openbox window manager
+ Copyright (c) 2003 Ben Jansens
+ Copyright (c) 2003 Derek Foreman
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ See the COPYING file for a copy of the GNU General Public License.
+*/
+
#include "font.h"
#include "color.h"
#include "mask.h"
static void font_startup(void)
{
if (!XftInit(0)) {
- g_warning(_("Couldn't initialize Xft.\n"));
+ g_warning(_("Couldn't initialize Xft."));
exit(EXIT_FAILURE);
}
FcNameRegisterObjectTypes(objs, (sizeof(objs) / sizeof(objs[0])));
f->elipses_length = (signed) info.xOff;
}
-static RrFont *openfont(const RrInstance *inst, char *fontstring)
+static RrFont *openfont(const RrInstance *inst, gchar *fontstring)
{
RrFont *out;
FcPattern *pat, *match;
return NULL;
match = XftFontMatch(RrDisplay(inst), RrScreen(inst), pat, &res);
+ FcPatternDestroy(pat);
if (!match)
return NULL;
return out;
}
-RrFont *RrFontOpen(const RrInstance *inst, char *fontstring)
+RrFont *RrFontOpen(const RrInstance *inst, gchar *fontstring)
{
RrFont *out;
*y = info.height + (f->shadow ? ABS(f->offset) : 0);
}
-int RrFontMeasureString(const RrFont *f, const gchar *str)
+gint RrFontMeasureString(const RrFont *f, const gchar *str)
{
gint x, y;
font_measure_full (f, str, &x, &y);
return x + 4;
}
-int RrFontHeight(const RrFont *f)
+gint RrFontHeight(const RrFont *f)
{
return f->xftfont->ascent + f->xftfont->descent +
(f->shadow ? f->offset : 0);
}
-int RrFontMaxCharWidth(const RrFont *f)
+gint RrFontMaxCharWidth(const RrFont *f)
{
return (signed) f->xftfont->max_advance_width;
}