#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;
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;
char *realhost;
/* Logging */
void *logctx;
+ /* Unicode stuff */
+ struct unicode_data ucsdata;
/* Mac-specific elements */
short fontnum;
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 */
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);
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