summaryrefslogtreecommitdiffstats
path: root/otherlibs/graph/text.c
diff options
context:
space:
mode:
Diffstat (limited to 'otherlibs/graph/text.c')
-rw-r--r--otherlibs/graph/text.c66
1 files changed, 33 insertions, 33 deletions
diff --git a/otherlibs/graph/text.c b/otherlibs/graph/text.c
index ad41f2ff2..f4d980aed 100644
--- a/otherlibs/graph/text.c
+++ b/otherlibs/graph/text.c
@@ -16,69 +16,69 @@
#include "libgraph.h"
#include <alloc.h>
-XFontStruct * grfont = NULL;
+XFontStruct * caml_gr_font = NULL;
-static void gr_font(char *fontname)
+static void caml_gr_get_font(char *fontname)
{
- XFontStruct * font = XLoadQueryFont(grdisplay, fontname);
- if (font == NULL) gr_fail("cannot find font %s", fontname);
- if (grfont != NULL) XFreeFont(grdisplay, grfont);
- grfont = font;
- XSetFont(grdisplay, grwindow.gc, grfont->fid);
- XSetFont(grdisplay, grbstore.gc, grfont->fid);
+ XFontStruct * font = XLoadQueryFont(caml_gr_display, fontname);
+ if (font == NULL) caml_gr_fail("cannot find font %s", fontname);
+ if (caml_gr_font != NULL) XFreeFont(caml_gr_display, caml_gr_font);
+ caml_gr_font = font;
+ XSetFont(caml_gr_display, caml_gr_window.gc, caml_gr_font->fid);
+ XSetFont(caml_gr_display, caml_gr_bstore.gc, caml_gr_font->fid);
}
-value gr_set_font(value fontname)
+value caml_gr_set_font(value fontname)
{
- gr_check_open();
- gr_font(String_val(fontname));
+ caml_gr_check_open();
+ caml_gr_get_font(String_val(fontname));
return Val_unit;
}
-value gr_set_text_size (value sz)
+value caml_gr_set_text_size (value sz)
{
return Val_unit;
}
-static void gr_draw_text(char *txt, int len)
+static void caml_gr_draw_text(char *txt, int len)
{
- if (grfont == NULL) gr_font(DEFAULT_FONT);
- if (grremember_mode)
- XDrawString(grdisplay, grbstore.win, grbstore.gc,
- grx, Bcvt(gry) - grfont->descent + 1, txt, len);
- if (grdisplay_mode) {
- XDrawString(grdisplay, grwindow.win, grwindow.gc,
- grx, Wcvt(gry) - grfont->descent + 1, txt, len);
- XFlush(grdisplay);
+ if (caml_gr_font == NULL) caml_gr_get_font(DEFAULT_FONT);
+ if (caml_gr_remember_modeflag)
+ XDrawString(caml_gr_display, caml_gr_bstore.win, caml_gr_bstore.gc,
+ caml_gr_x, Bcvt(caml_gr_y) - caml_gr_font->descent + 1, txt, len);
+ if (caml_gr_display_modeflag) {
+ XDrawString(caml_gr_display, caml_gr_window.win, caml_gr_window.gc,
+ caml_gr_x, Wcvt(caml_gr_y) - caml_gr_font->descent + 1, txt, len);
+ XFlush(caml_gr_display);
}
- grx += XTextWidth(grfont, txt, len);
+ caml_gr_x += XTextWidth(caml_gr_font, txt, len);
}
-value gr_draw_char(value chr)
+value caml_gr_draw_char(value chr)
{
char str[1];
- gr_check_open();
+ caml_gr_check_open();
str[0] = Int_val(chr);
- gr_draw_text(str, 1);
+ caml_gr_draw_text(str, 1);
return Val_unit;
}
-value gr_draw_string(value str)
+value caml_gr_draw_string(value str)
{
- gr_check_open();
- gr_draw_text(String_val(str), string_length(str));
+ caml_gr_check_open();
+ caml_gr_draw_text(String_val(str), string_length(str));
return Val_unit;
}
-value gr_text_size(value str)
+value caml_gr_text_size(value str)
{
int width;
value res;
- gr_check_open();
- if (grfont == NULL) gr_font(DEFAULT_FONT);
- width = XTextWidth(grfont, String_val(str), string_length(str));
+ caml_gr_check_open();
+ if (caml_gr_font == NULL) caml_gr_get_font(DEFAULT_FONT);
+ width = XTextWidth(caml_gr_font, String_val(str), string_length(str));
res = alloc_small(2, 0);
Field(res, 0) = Val_int(width);
- Field(res, 1) = Val_int(grfont->ascent + grfont->descent);
+ Field(res, 1) = Val_int(caml_gr_font->ascent + caml_gr_font->descent);
return res;
}