X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/putty/blobdiff_plain/6cb61a05b6157236bbea7b351cfc741eb6853605..2f92b7170f74a58d1e33d7913e154f9f47852683:/mac/mac.h diff --git a/mac/mac.h b/mac/mac.h index 612e947e..1f684d96 100644 --- a/mac/mac.h +++ b/mac/mac.h @@ -13,20 +13,30 @@ #include #include +#include "charset.h" + struct mac_gestalts { long sysvers; long qdvers; long apprvers; long cntlattr; long windattr; - long encvvers; + 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) +#endif -typedef struct { +typedef struct Session { + struct Session *next; + struct Session **prev; /* Config that created this session */ Config cfg; /* Terminal emulator internal state */ @@ -53,9 +63,12 @@ typedef struct { ControlHandle scrollbar; WCTabHandle wctab; int raw_mouse; - UnicodeToTextInfo uni_to_font; + UnicodeToTextInfo uni_to_font; /* Only one of uni_to_font and */ + charset_t font_charset; /* font_charset is used at a time. */ } Session; +extern Session *sesslist; + /* from macdlg.c */ extern void mac_newsession(void); extern void mac_clickdlg(WindowPtr, EventRecord *); @@ -63,6 +76,7 @@ extern void mac_activatedlg(WindowPtr, EventRecord *); /* from macterm.c */ extern void mac_opensession(void); extern void mac_startsession(Session *); +extern void mac_pollterm(void); extern void mac_activateterm(WindowPtr, Boolean); extern void mac_adjusttermcursor(WindowPtr, Point, RgnHandle); extern void mac_adjusttermmenus(WindowPtr); @@ -72,8 +86,15 @@ extern void mac_growterm(WindowPtr, EventRecord *); extern void mac_keyterm(WindowPtr, EventRecord *); extern void mac_menuterm(WindowPtr, short, short); /* from macstore.c */ -OSErr get_session_dir(Boolean makeit, short *pVRefNum, long *pDirID); +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 *); +/* 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