f7f27309 |
1 | #ifndef PUTTY_UNIX_H |
2 | #define PUTTY_UNIX_H |
3 | |
4 | typedef void *Context; /* FIXME: probably needs changing */ |
5 | |
1709795f |
6 | extern Backend pty_backend; |
7 | |
e6346999 |
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 | |
0f351587 |
19 | /* |
20 | * Under X, copying to the clipboard terminates lines with just LF. |
21 | */ |
22 | #define SEL_NL { 10 } |
23 | |
f7f27309 |
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 */ |
215a9fd9 |
28 | #define CURSORBLINK 450000 /* no standard way to set this */ |
f7f27309 |
29 | |
30 | #define WCHAR wchar_t |
31 | #define BYTE unsigned char |
32 | |
1709795f |
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); |
e6346999 |
36 | int wc_to_mb(int codepage, int flags, wchar_t *wcstr, int wclen, |
37 | char *mbstr, int mblen, char *defchr, int *defused); |
1709795f |
38 | void init_ucs(void); |
f7f27309 |
39 | |
e9aef757 |
40 | /* Things pty.c needs from pterm.c */ |
755a6d84 |
41 | char *get_x_display(void); |
e9aef757 |
42 | int font_dimension(int which); /* 0 for width, 1 for height */ |
755a6d84 |
43 | |
faec60ed |
44 | /* Things uxstore.c needs from pterm.c */ |
45 | char *app_name; /* for doing resource lookups */ |
46 | |
0ac15bdc |
47 | /* Things uxstore.c provides to pterm.c */ |
48 | void provide_xrm_string(char *string); |
49 | |
f7f27309 |
50 | #define DEFAULT_CODEPAGE 0 /* FIXME: no idea how to do this */ |
51 | |
52 | #endif |