1 /* $Header: /home/yav/xpx/RCS/cursor.c,v 1.16 1995/11/23 16:28:39 yav Exp $
2 * xpx cursor window
3 * written by yav (UHD98984@pcvan.or.jp)
4 */
5
6 #include <X11/Xlib.h>
7 #include <X11/Xutil.h>
8
9 #include "headers.h"
10 #include "xpx.h"
11 #include "work.h"
12 #include "cursdef.h"
13 #define PUBLIC_CURSOR_C
14 #include "extern.h"
15
16 #define CURSW 32
17 #define CURSH 18
18
19 char rcsid_cursor[] = "$Id: cursor.c,v 1.16 1995/11/23 16:28:39 yav Exp $";
20
curs_strfunc(p)21 char *curs_strfunc(p)
22 MENU *p;
23 {
24 int i;
25
26 switch(p->n) {
27 case CURS_TOPX:
28 i = imgofsx/zoomfactor;
29 break;
30 case CURS_TOPY:
31 i = imgofsy/zoomfactor;
32 break;
33 case CURS_CURX:
34 i = curx;
35 break;
36 case CURS_CURY:
37 i = cury;
38 break;
39 case CURS_CURC:
40 i = current_col;
41 break;
42 }
43 sprintf(p->str, "%d", i);
44 return p->str;
45 }
46
47 MENU cursmenu[] = {
48 {
49 CURS_TOPX, MenuModeMaskBorder,
50 (CURSW+BDW)*CURS_TOPX, 0, CURSW, CURSH,
51 0, ExposureMask, 0,
52 NULL, curs_strfunc, 0, 8, NULL},
53 {
54 CURS_TOPY, MenuModeMaskBorder,
55 (CURSW+BDW)*CURS_TOPY, 0, CURSW, CURSH,
56 0, ExposureMask, 0,
57 NULL, curs_strfunc, 0, 8, NULL},
58 {
59 CURS_CURX, MenuModeMaskBorder,
60 (CURSW+BDW)*CURS_CURX, 0, CURSW, CURSH,
61 0, ExposureMask, 0,
62 NULL, curs_strfunc, 0, 8, NULL},
63 {
64 CURS_CURY, MenuModeMaskBorder,
65 (CURSW+BDW)*CURS_CURY, 0, CURSW, CURSH,
66 0, ExposureMask, 0,
67 NULL, curs_strfunc, 0, 8, NULL},
68 {
69 CURS_CURC, MenuModeMaskBorder,
70 (CURSW+BDW)*CURS_CURC, 0, CURSW, CURSH,
71 0, ExposureMask, 0,
72 NULL, curs_strfunc, 0, 8, NULL},
73 {
74 -1, 0,
75 0, 0, 0, 0,
76 0, 0, 0,
77 NULL, NULL, 0, 0, NULL}};
78
create_cursor_window(win,x,y)79 int create_cursor_window(win, x, y)
80 Window win;
81 int x;
82 int y;
83 {
84 topmenuwin_create(cursmenu, x, y);
85 return 0;
86 }
87
88 /* End of file */
89