5 #include "Dimensions.h"
13 static void KeyEntry PROTO((floatish, char *, floatish));
21 for (i = 0; i < nidents; i++) /* count identifiers */
24 c = multipageflag ? 0 : graphy0;
25 dc = graphheight / (floatish) ((i <= 20) ? (i + 1) : 20);
27 for (i = 0; i < nidents; i++) {
29 KeyEntry(c, identtable[i]->name, ShadeOf(identtable[i]->name));
30 // if we have spit out 20 entries and we're going to output more
32 if (i % DEFAULT_TWENTY == (DEFAULT_TWENTY - 1) && i != nidents - 1) {
42 KeyEntry(centreline, name, colour)
43 floatish centreline; char* name; floatish colour;
49 namebase = centreline - (floatish) (NORMAL_FONT / 2);
50 keyboxbase = centreline - ((floatish) KEY_BOX_WIDTH / 2.0);
52 kstart = graphx0 + (multipageflag ? 0 : graphwidth);
54 fprintf(psfp, "%f %f moveto\n", kstart + borderspace, keyboxbase);
55 fprintf(psfp, "0 %d rlineto\n", KEY_BOX_WIDTH);
56 fprintf(psfp, "%d 0 rlineto\n", KEY_BOX_WIDTH);
57 fprintf(psfp, "0 %d rlineto\n", -KEY_BOX_WIDTH);
58 fprintf(psfp, "closepath\n");
60 fprintf(psfp, "gsave\n");
62 fprintf(psfp, "fill\n");
63 fprintf(psfp, "grestore\n");
64 fprintf(psfp, "stroke\n");
66 fprintf(psfp, "HE%d setfont\n", NORMAL_FONT);
67 fprintf(psfp, "%f %f moveto\n", kstart + (floatish) KEY_BOX_WIDTH + 2 * borderspace, namebase);
69 fprintf(psfp, "(%s) show\n", name);