static void nsfont_close (struct font *font);
static int nsfont_has_char (Lisp_Object entity, int c);
static unsigned int nsfont_encode_char (struct font *font, int c);
-static int nsfont_text_extents (struct font *font, unsigned int *code,
- int nglyphs, struct font_metrics *metrics);
+static void nsfont_text_extents (struct font *font, unsigned int *code,
+ int nglyphs, struct font_metrics *metrics);
static int nsfont_draw (struct glyph_string *s, int from, int to, int x, int y,
bool with_background);
nsfont_encode_char,
nsfont_text_extents,
nsfont_draw,
- /* excluded: get_bitmap, free_bitmap, get_outline, free_outline,
+ /* excluded: get_bitmap, free_bitmap,
anchor_point, otf_capability, otf_driver,
start_for_frame, end_for_frame, shape */
};
font->baseline_offset = 0;
font->relative_compose = 0;
- font->props[FONT_FORMAT_INDEX] = Qns;
- font->props[FONT_FILE_INDEX] = Qnil;
-
{
const char *fontName = [[nsfont fontName] UTF8String];
xfree (font_info->glyphs[i]);
xfree (font_info->metrics[i]);
}
+ xfree (font_info->glyphs);
+ xfree (font_info->metrics);
[font_info->nsfont release];
#ifdef NS_IMPL_COCOA
CGFontRelease (font_info->cgfont);
/* Perform the size computation of glyphs of FONT and fill in members
of METRICS. The glyphs are specified by their glyph codes in
CODE (length NGLYPHS). */
-static int
-nsfont_text_extents (struct font *font, unsigned int *code, int nglyphs,
- struct font_metrics *metrics)
+static void
+nsfont_text_extents (struct font *font, unsigned int *code,
+ int nglyphs, struct font_metrics *metrics)
{
struct nsfont_info *font_info = (struct nsfont_info *)font;
struct font_metrics *pcm;
memset (metrics, 0, sizeof (struct font_metrics));
- for (i =0; i<nglyphs; i++)
+ for (i = 0; i < nglyphs; i++)
{
/* get metrics for this glyph, filling cache if need be */
/* TODO: get metrics for whole string from an NSLayoutManager
}
metrics->width = totalWidth;
-
- return totalWidth; /* not specified in doc, but xfont.c does it */
}
static unsigned char cbuf[1024];
unsigned char *c = cbuf;
#ifdef NS_IMPL_GNUSTEP
+#if GNUSTEP_GUI_MAJOR_VERSION > 0 || GNUSTEP_GUI_MINOR_VERSION > 22
+ static CGFloat advances[1024];
+ CGFloat *adv = advances;
+#else
static float advances[1024];
float *adv = advances;
+#endif
#else
static CGSize advances[1024];
CGSize *adv = advances;