X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/3976728b1aa1805bee688fcfa9131edcbe4dae88..ab8605c2047cac4e6f30cee6530e886e63324bf5:/mac/mac.h diff --git a/mac/mac.h b/mac/mac.h index 1bd54824..19e42dd6 100644 --- a/mac/mac.h +++ b/mac/mac.h @@ -6,36 +6,33 @@ #define PUTTY_MAC_H #include +#include #include #include #include #include +#include + +#include "charset.h" struct mac_gestalts { + long sysvers; long qdvers; long apprvers; long cntlattr; long windattr; + long encvvers; /* TEC version (from TECGetInfo()) */ + long uncvattr; /* Unicode Converter attributes (frem TECGetInfo()) */ }; extern struct mac_gestalts mac_gestalts; +#if TARGET_RT_MAC_CFM +/* All systems that can use CFM have Color QuickDraw */ +#define HAVE_COLOR_QD() 1 +#else #define HAVE_COLOR_QD() (mac_gestalts.qdvers > gestaltOriginalQD) - -/* from macterm.c */ -extern void mac_newsession(void); -extern void mac_activateterm(WindowPtr, Boolean); -extern void mac_adjusttermcursor(WindowPtr, Point, RgnHandle); -extern void mac_adjusttermmenus(WindowPtr); -extern void mac_updateterm(WindowPtr); -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); -/* from maccfg.c */ -extern void mac_loadconfig(Config *); -/* from macnet.c */ -extern void macnet_eventcheck(void); +#endif typedef struct { /* Config that created this session */ @@ -52,8 +49,6 @@ typedef struct { char *realhost; /* Logging */ void *logctx; - /* Conveniences */ - unsigned long attr_mask; /* Mask of attributes to display */ /* Mac-specific elements */ short fontnum; @@ -61,12 +56,40 @@ typedef struct { int font_leading; int font_boldadjust; WindowPtr window; + WindowPtr settings_window; PaletteHandle palette; ControlHandle scrollbar; WCTabHandle wctab; 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. */ } Session; +/* from macdlg.c */ +extern void mac_newsession(void); +extern void mac_clickdlg(WindowPtr, EventRecord *); +extern void mac_activatedlg(WindowPtr, EventRecord *); +/* from macterm.c */ +extern void mac_opensession(void); +extern void mac_startsession(Session *); +extern void mac_activateterm(WindowPtr, Boolean); +extern void mac_adjusttermcursor(WindowPtr, Point, RgnHandle); +extern void mac_adjusttermmenus(WindowPtr); +extern void mac_updateterm(WindowPtr); +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); +/* from macstore.c */ +extern OSErr get_session_dir(Boolean makeit, short *pVRefNum, long *pDirID); +extern void *open_settings_r_fsp(FSSpec *); +/* from macucs.c */ +extern void init_ucs(void); +/* from mtcpnet.c */ +extern OSErr mactcp_init(void); +extern void mactcp_shutdown(void); +extern void mactcp_poll(void); + #endif /*