X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/5def752285da767c159c1ef88fe7f927dc5286f2..ebb7ac45d108c634ee714c584e0dd197a0ff3716:/winstuff.h diff --git a/winstuff.h b/winstuff.h index 9dcfded7..1cbe5b78 100644 --- a/winstuff.h +++ b/winstuff.h @@ -5,6 +5,20 @@ #ifndef PUTTY_WINSTUFF_H #define PUTTY_WINSTUFF_H +#include /* for FILENAME_MAX */ + +struct Filename { + char path[FILENAME_MAX]; +}; +#define f_open(filename, mode) ( fopen((filename).path, (mode)) ) + +struct FontSpec { + char name[64]; + int isbold; + int height; + int charset; +}; + /* * Global variables. Most modules declare these `extern', but * window.c will do `#define PUTTY_DO_GLOBALS' before including this @@ -18,6 +32,13 @@ #endif #endif +#ifndef DONE_TYPEDEFS +#define DONE_TYPEDEFS +typedef struct config_tag Config; +typedef struct backend_tag Backend; +typedef struct terminal_tag Terminal; +#endif + #define PUTTY_REG_POS "Software\\SimonTatham\\PuTTY" #define PUTTY_REG_PARENT "Software\\SimonTatham" #define PUTTY_REG_PARENT_CHILD "PuTTY" @@ -50,6 +71,14 @@ GLOBAL char *help_path; GLOBAL int help_has_contents; /* + * The terminal and logging context are notionally local to the + * Windows front end, but they must be shared between window.c and + * windlg.c. Likewise the saved-sessions list. + */ +GLOBAL Terminal *term; +GLOBAL void *logctx; + +/* * I've just looked in the windows standard headr files for WM_USER, there * are hundreds of flags defined using the form WM_USER+123 so I've * renumbered this NETEVENT value and the two in window.c @@ -74,6 +103,15 @@ GLOBAL int help_has_contents; #define SEL_NL { 13, 10 } /* + * sk_getxdmdata() does not exist under Windows (not that I + * couldn't write it if I wanted to, but I haven't bothered), so + * it's a macro which always returns FALSE. With any luck this will + * cause the compiler to notice it can optimise away the + * implementation of XDM-AUTHORIZATION-1 in x11fwd.c :-) + */ +#define sk_getxdmdata(socket, ip, port) (0) + +/* * Exports from winctrls.c. */ @@ -155,7 +193,8 @@ void progressbar(struct ctlpos *cp, int id); void fwdsetter(struct ctlpos *cp, int listid, char *stext, int sid, char *e1stext, int e1sid, int e1id, char *e2stext, int e2sid, int e2id, - char *btext, int bid); + char *btext, int bid, + char *r1text, int r1id, char *r2text, int r2id); /* * Exports from windlg.c. @@ -173,4 +212,10 @@ void force_normal(HWND hwnd); void UpdateSizeTip(HWND src, int cx, int cy); void EnableSizeTip(int bEnable); +/* + * Exports from unicode.c. + */ +struct unicode_data; +void init_ucs(Config *, struct unicode_data *); + #endif