X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/putty/blobdiff_plain/f89c329410c18fe1f09d843747fad77babb9f89c..e73667f337301c82c515562f5c79a54fd40d4c55:/windows/winstuff.h diff --git a/windows/winstuff.h b/windows/winstuff.h index 020f43b8..1ecf6dcb 100644 --- a/windows/winstuff.h +++ b/windows/winstuff.h @@ -57,6 +57,9 @@ typedef struct terminal_tag Terminal; #define PUTTY_REG_GPARENT "Software" #define PUTTY_REG_GPARENT_CHILD "SimonTatham" +#define PUTTY_HELP_FILE "putty.hlp" +#define PUTTY_HELP_CONTENTS "putty.cnt" + #define GETTICKCOUNT GetTickCount #define CURSORBLINK GetCaretBlinkTime() #define TICKSPERSEC 1000 /* GetTickCount returns milliseconds */ @@ -66,9 +69,10 @@ typedef struct terminal_tag Terminal; typedef HDC Context; /* - * Window handles for the dialog boxes that can be running during a + * Window handles for the windows that can be running during a * PuTTY session. */ +GLOBAL HWND hwnd; /* the main terminal window */ GLOBAL HWND logbox; /* @@ -81,6 +85,7 @@ GLOBAL HINSTANCE hinst; */ GLOBAL char *help_path; GLOBAL int help_has_contents; +GLOBAL int requested_help; /* * The terminal and logging context are notionally local to the @@ -117,11 +122,11 @@ GLOBAL void *logctx; /* * 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 + * it's a macro which always returns NULL. 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) +#define sk_getxdmdata(socket, lenp) (NULL) /* * File-selector filter strings used in the config box. On Windows, @@ -134,6 +139,15 @@ GLOBAL void *logctx; "All Files (*.*)\0*\0\0\0") /* + * On some versions of Windows, it has been known for WM_TIMER to + * occasionally get its callback time simply wrong, and call us + * back several minutes early. Defining these symbols enables + * compensation code in timing.c. + */ +#define TIMING_SYNC +#define TIMING_SYNC_TICKCOUNT + +/* * winnet.c dynamically loads WinSock 2 or WinSock 1 depending on * what it can get, which means any WinSock routines used outside * that module must be exported from it as function pointers. So @@ -169,6 +183,11 @@ struct ctlpos { /* * Exports from winutils.c. */ +typedef struct filereq_tag filereq; /* cwd for file requester */ +BOOL request_file(filereq *state, OPENFILENAME *of, int preserve, int save); +filereq *filereq_new(void); +void filereq_free(filereq *state); +int message_box(LPCTSTR text, LPCTSTR caption, DWORD style, DWORD helpctxid); void split_into_argv(char *, int *, char ***, char ***); /* @@ -212,7 +231,8 @@ HWND doctl(struct ctlpos *cp, RECT r, void bartitle(struct ctlpos *cp, char *name, int id); void beginbox(struct ctlpos *cp, char *name, int idbox); void endbox(struct ctlpos *cp); -void multiedit(struct ctlpos *cp, int password, ...); +void editboxfw(struct ctlpos *cp, int password, char *text, + int staticid, int editid); void radioline(struct ctlpos *cp, char *text, int id, int nacross, ...); void bareradioline(struct ctlpos *cp, int nacross, ...); void radiobig(struct ctlpos *cp, char *text, int id, ...); @@ -337,14 +357,6 @@ void show_help(HWND hwnd); /* * Exports from winmisc.c. */ - -int SaneDialogBox(HINSTANCE hinst, - LPCTSTR tmpl, - HWND hwndparent, - DLGPROC lpDialogFunc); - -void SaneEndDialog(HWND hwnd, int ret); - extern OSVERSIONINFO osVersion; BOOL init_winver(void);