X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=macosx%2Fosxclass.h;h=e147bd99fe8d7464d4fb07071e2058d4b8d944d1;hb=162d04d360d8d70269ad17a02d44a983cb8dbfef;hp=76a8fc7c8d97deb6802ef49ba8691e9c0a8b5c66;hpb=8574822b9b340fbfa9246c309fdfc803c970ea90;p=PuTTY.git diff --git a/macosx/osxclass.h b/macosx/osxclass.h index 76a8fc7c..e147bd99 100644 --- a/macosx/osxclass.h +++ b/macosx/osxclass.h @@ -27,6 +27,13 @@ extern AppController *controller; * The SessionWindow class, defined in osxwin.m. */ +struct alert_queue { + struct alert_queue *next; + NSAlert *alert; + void (*callback)(void *, int); + void *ctx; +}; + @class SessionWindow; @class TerminalView; @@ -40,8 +47,15 @@ extern AppController *controller; void *ldisc; Backend *back; void *backhandle; + int exited; + /* + * The following two members relate to the currently active + * alert sheet, if any. They are NULL if there isn't one. + */ void (*alert_callback)(void *, int); void *alert_ctx; + /* This queues future alerts that need to be shown. */ + struct alert_queue *alert_qhead, *alert_qtail; } - (id)initWithConfig:(Config)cfg; - (void)drawStartFinish:(BOOL)start; @@ -52,6 +66,8 @@ extern AppController *controller; - (int)fromBackend:(const char *)data len:(int)len isStderr:(int)is_stderr; - (void)startAlert:(NSAlert *)alert withCallback:(void (*)(void *, int))callback andCtx:(void *)ctx; +- (void)endSession:(int)clean; +- (void)notifyRemoteExit; @end /* @@ -64,7 +80,6 @@ extern AppController *controller; { NSOutlineView *treeview; struct controlbox *ctrlbox; - struct sesslist sl; void *dv; Config cfg; }