X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/2e96d5041e9e7a241d14305ae3e89637476c4968..1d4d52ce113338223b275c906b45da2a11bc839d:/mac/mac.h diff --git a/mac/mac.h b/mac/mac.h index 74a0a791..1f14a0d1 100644 --- a/mac/mac.h +++ b/mac/mac.h @@ -15,6 +15,11 @@ #include "charset.h" +#define PUTTY_CREATOR FOUR_CHAR_CODE('pTTY') +#define INTERNAL_CREATOR FOUR_CHAR_CODE('pTTI') +#define SESS_TYPE FOUR_CHAR_CODE('Sess') +#define SEED_TYPE FOUR_CHAR_CODE('Seed') + struct mac_gestalts { long sysvers; long qdvers; @@ -23,8 +28,7 @@ struct mac_gestalts { long windattr; long encvvers; /* TEC version (from TECGetInfo()) */ long uncvattr; /* Unicode Converter attributes (frem TECGetInfo()) */ - long mtcpvers; - long otptattr; + long navsvers; /* Navigation Services version */ }; extern struct mac_gestalts mac_gestalts; @@ -53,12 +57,20 @@ typedef struct Session { char *realhost; /* Logging */ void *logctx; + /* Unicode stuff */ + struct unicode_data ucsdata; /* Mac-specific elements */ short fontnum; int font_ascent; int font_leading; int font_boldadjust; + Point font_stdnumer; + Point font_stddenom; + Point font_widenumer; + Point font_widedenom; + Point font_bignumer; + Point font_bigdenom; WindowPtr window; WindowPtr settings_window; PaletteHandle palette; @@ -67,12 +79,17 @@ typedef struct Session { int raw_mouse; UnicodeToTextInfo uni_to_font; /* Only one of uni_to_font and */ charset_t font_charset; /* font_charset is used at a time. */ + int hasfile; + FSSpec savefile; } Session; extern Session *sesslist; /* from macdlg.c */ extern void mac_newsession(void); +extern void mac_dupsession(void); +extern void mac_savesession(void); +extern void mac_savesessionas(void); extern void mac_clickdlg(WindowPtr, EventRecord *); extern void mac_activatedlg(WindowPtr, EventRecord *); /* from macterm.c */ @@ -87,12 +104,16 @@ extern void mac_clickterm(WindowPtr, EventRecord *); extern void mac_growterm(WindowPtr, EventRecord *); extern void mac_keyterm(WindowPtr, EventRecord *); extern void mac_menuterm(WindowPtr, short, short); +extern void mac_closeterm(WindowPtr); /* from macstore.c */ extern OSErr get_putty_dir(Boolean makeit, short *pVRefNum, long *pDirID); extern OSErr get_session_dir(Boolean makeit, short *pVRefNum, long *pDirID); extern void *open_settings_r_fsp(FSSpec *); +extern void *open_settings_w_fsp(FSSpec *); /* from macucs.c */ -extern void init_ucs(void); +extern void init_ucs(Session *); +/* from macnet.c */ +extern void sk_poll(void); /* from mtcpnet.c */ extern OSErr mactcp_init(void); extern void mactcp_cleanup(void); @@ -125,6 +146,11 @@ extern Socket ot_register(void *, Plug); extern Socket ot_new(SockAddr addr, int, int, int, int, Plug); extern Socket ot_newlistener(char *, int, Plug, int); extern char *ot_addr_error(SockAddr); +/* Apple Event Handlers (in various files) */ +extern pascal OSErr mac_aevt_oapp(const AppleEvent *, AppleEvent *, long); +extern pascal OSErr mac_aevt_odoc(const AppleEvent *, AppleEvent *, long); +extern pascal OSErr mac_aevt_pdoc(const AppleEvent *, AppleEvent *, long); +extern pascal OSErr mac_aevt_quit(const AppleEvent *, AppleEvent *, long); #endif