#include <Controls.h>
#include <Events.h>
#include <Gestalt.h>
+#include <Lists.h>
#include <MacWindows.h>
#include <Palettes.h>
#include <UnicodeConverter.h>
-#include <stdio.h> /* for FILENAME_MAX */
-
#include "charset.h"
-struct Filename {
- char path[FILENAME_MAX];
-};
-#define f_open(filename, mode) ( fopen((filename).path, (mode)) )
-
-struct FontSpec {
- char name[64];
- int isbold;
- int height;
-};
-
#define PUTTY_CREATOR FOUR_CHAR_CODE('pTTY')
#define INTERNAL_CREATOR FOUR_CHAR_CODE('pTTI')
#define SESS_TYPE FOUR_CHAR_CODE('Sess')
long windattr;
long encvvers; /* TEC version (from TECGetInfo()) */
long uncvattr; /* Unicode Converter attributes (frem TECGetInfo()) */
+ long navsvers; /* Navigation Services version */
};
extern struct mac_gestalts mac_gestalts;
#define HAVE_COLOR_QD() (mac_gestalts.qdvers > gestaltOriginalQD)
#endif
+/* Every window used by PuTTY has a refCon field pointing to one of these. */
+typedef struct {
+ struct Session *s;
+ int wtype;
+} WinInfo;
+
+#define mac_windowsession(w) (((WinInfo *)GetWRefCon(w))->s)
+
typedef struct Session {
struct Session *next;
struct Session **prev;
Point font_bigdenom;
WindowPtr window;
WindowPtr settings_window;
+ WindowPtr eventlog_window;
+ ListHandle eventlog;
PaletteHandle palette;
ControlHandle scrollbar;
WCTabHandle wctab;
extern void mac_savesessionas(void);
extern void mac_clickdlg(WindowPtr, EventRecord *);
extern void mac_activatedlg(WindowPtr, EventRecord *);
+/* from maceventlog.c */
+void mac_freeeventlog(Session *);
+extern void mac_clickeventlog(WindowPtr, EventRecord *);
+extern void mac_activateeventlog(WindowPtr, EventRecord *);
+extern void mac_groweventlog(WindowPtr, EventRecord *);
+extern void mac_updateeventlog(WindowPtr);
+extern void mac_showeventlog(Session *);
/* from macterm.c */
extern void mac_opensession(void);
extern void mac_startsession(Session *);