]> asedeno.scripts.mit.edu Git - PuTTY.git/blob - unix/unix.h
Don't forget to initialise the pixel size parameters of the window
[PuTTY.git] / 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  400000            /* FIXME: need right way to do 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