Support for blinking text and blinking cursor. Won't actually be
[u/mdw/putty] / unix / unix.h
1 #ifndef PUTTY_UNIX_H
2 #define PUTTY_UNIX_H
3
4 typedef void *Context; /* FIXME: probably needs changing */
5
6 extern Backend pty_backend;
7
8 /*
9 * Under GTK, we send MA_CLICK _and_ MA_2CLK, or MA_CLICK _and_
10 * MA_3CLK, when a button is pressed for the second or third time.
11 */
12 #define MULTICLICK_ONLY_EVENT 0
13
14 /*
15 * Under X, selection data must not be NUL-terminated.
16 */
17 #define SELECTION_NUL_TERMINATED 0
18
19 /*
20 * Under X, copying to the clipboard terminates lines with just LF.
21 */
22 #define SEL_NL { 10 }
23
24 /* Simple wraparound timer function */
25 unsigned long getticks(void); /* based on gettimeofday(2) */
26 #define GETTICKCOUNT getticks
27 #define TICKSPERSEC 1000000 /* gettimeofday returns microseconds */
28 #define CURSORBLINK 450000 /* no standard way to set this */
29
30 #define WCHAR wchar_t
31 #define BYTE unsigned char
32
33 int is_dbcs_leadbyte(int codepage, char byte);
34 int mb_to_wc(int codepage, int flags, char *mbstr, int mblen,
35 wchar_t *wcstr, int wclen);
36 int wc_to_mb(int codepage, int flags, wchar_t *wcstr, int wclen,
37 char *mbstr, int mblen, char *defchr, int *defused);
38 void init_ucs(void);
39
40 /* Things pty.c needs from pterm.c */
41 char *get_x_display(void);
42 int font_dimension(int which); /* 0 for width, 1 for height */
43
44 #define DEFAULT_CODEPAGE 0 /* FIXME: no idea how to do this */
45
46 #endif