--- rxvt-unicode/src/rxvt.h 2006/01/17 06:06:42 1.213 +++ rxvt-unicode/src/rxvt.h 2006/01/17 12:22:59 1.218 @@ -96,6 +96,8 @@ # define STDERR_FILENO 2 #endif +enum rxvt_privaction { IGNORE = 'i', SAVE = 's', RESTORE = 'r' };//TODO + /* ***************************************************************************** * PROTOTYPES @@ -174,6 +176,30 @@ } bgPixmap_t; #endif +struct rxvt_ptytty { + int pty; // pty file descriptor; connected to rxvt + int tty; // tty file descriptor; connected to child + + virtual ~rxvt_ptytty () + { + // + } + + virtual bool get () = 0; + virtual void put () = 0; + + virtual void login (int cmd_pid, bool login_shell, const char *hostname) = 0; + virtual void logout () = 0; + + void close_tty (); + + bool make_controlling_tty (); + void set_utf8_mode (bool on); +}; + +// a "factory" *g* +rxvt_ptytty *rxvt_new_ptytty (); + /* * the 'essential' information for reporting Mouse Events * pared down from XButtonEvent @@ -1124,8 +1150,7 @@ char *cmdbuf_ptr, *cmdbuf_endp; char cmdbuf_base[CBUFSIZ]; - rxvt_ptytty pty; - rxvt_session session; + rxvt_ptytty *pty; rxvt_salloc *talloc; // text line allocator rxvt_salloc *ralloc; // rend line allocator