Remove building with NOCRYPTO option
[minix.git] / external / bsd / nvi / dist / motif_l / m_motif.h
bloba90593730600f73e7ac35d4b4caa9d27c6909378
1 /* $NetBSD: m_motif.h,v 1.2 2013/11/22 15:52:06 christos Exp $ */
2 /*-
3 * Copyright (c) 1996
4 * Rob Zimmermann. All rights reserved.
5 * Copyright (c) 1996
6 * Keith Bostic. All rights reserved.
8 * See the LICENSE file for redistribution information.
10 * "Id: m_motif.h,v 8.11 1996/12/20 10:26:59 bostic Exp (Berkeley) Date: 1996/12/20 10:26:59 ";
14 * Color support
16 #define COLOR_INVALID 0xff /* force color change */
19 * These are color indices. When vi passes color info, we can do 2..0x3f
20 * in the 8 bits I've allocated.
22 #define COLOR_STANDARD 0x00 /* standard video */
23 #define COLOR_INVERSE 0x01 /* reverse video */
25 /* These are flag bits, they override the above colors. */
26 #define COLOR_CARET 0x80 /* draw the caret */
27 #define COLOR_SELECT 0x40 /* draw the selection */
29 #define ToRowCol( scr, lin, r, c ) \
30 r = (lin) / scr->cols; \
31 c = ((lin) - r * (scr->cols)) % scr->cols;
32 #define Linear( scr, y, x ) \
33 ( (y) * scr->cols + (x) )
34 #define CharAt( scr, y, x ) \
35 ( scr->characters + Linear( scr, y, x ) )
36 #define FlagAt( scr, y, x ) \
37 ( scr->flags + Linear( scr, y, x ) )
39 #define XPOS( scr, x ) \
40 scr->ch_width * (x)
41 #define YTOP( scr, y ) \
42 scr->ch_height * (y)
43 #define YPOS( scr, y ) \
44 YTOP( scr, ((y)+1) ) - scr->ch_descent
46 #define ROW( scr, y ) \
47 ( (y) / scr->ch_height )
49 #define COLUMN( scr, x ) \
50 ( (x) / scr->ch_width )
52 /* Describes a single 'screen' implemented in X widgetry. */
53 typedef struct {
54 Widget parent, /* the pane */
55 area, /* text goes here */
56 form, /* holds text and scrollbar */
57 scroll; /* not connected yet */
58 Region clip;
59 int color;
60 int rows,
61 cols;
62 int ch_width,
63 ch_height,
64 ch_descent;
65 int curx, cury;
66 char *characters;
67 char *flags;
68 Boolean init;
69 } xvi_screen;
71 /* Option type. */
72 typedef enum {
73 optToggle,
74 optInteger,
75 optString,
76 optFile,
77 optTerminator
78 } optKind;
80 /* Option entry. */
81 typedef struct {
82 optKind kind; /* Option type. */
83 String name; /* Option name. */
84 void *value; /* Current option value. */
85 u_int flags; /* Associated flags. */
86 } optData;
88 /* Option page. */
89 typedef struct {
90 String name;
91 String description;
92 Widget holder;
93 optData *toggles;
94 optData *ints;
95 optData *others;
96 } optSheet;
98 /* Utilities for converting X resources...
100 * __XutConvertResources( Widget, String root, XutResource *, int count )
101 * The resource block is loaded with converted values
102 * If the X resource does not exist, no change is made to the value
103 * 'root' should be the application name.
105 typedef enum {
106 XutRKinteger,
107 XutRKboolean,
108 XutRKpixel,
109 XutRKpixelBackup, /* if XutRKpixel fails */
110 XutRKfont,
111 XutRKcursor
112 } XutResourceKind;
114 typedef struct {
115 String name;
116 XutResourceKind kind;
117 void *value;
118 } XutResource;
120 /* Internal use: */
121 extern GC __vi_copy_gc;
122 extern void (*__vi_exitp) __P((void));
123 extern xvi_screen *__vi_screen;
125 #include "motif_extern.h"