diff options
Diffstat (limited to 'src/keydis.c')
-rw-r--r-- | src/keydis.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/keydis.c b/src/keydis.c index c8883a7..73f6306 100644 --- a/src/keydis.c +++ b/src/keydis.c @@ -10,6 +10,9 @@ static char rcsid[] = "$Id$"; /* * $Log$ + * Revision 1.4 2008/02/22 17:07:00 james + * *** empty log message *** + * * Revision 1.3 2008/02/15 23:52:12 james * *** empty log message *** * @@ -88,6 +91,19 @@ keydis_ipc_set_flow (KeyDis * _t, Context * c, int flow) static int +keydis_ipc_set_ansi (KeyDis * _t, Context * c, int ansi) +{ + KeyDis_IPC *t = (KeyDis_IPC *) _t; + + vt102_set_ansi (c->v, ansi); + + ipc_msg_send_setansi (t->s, ansi); + + return 0; +} + + +static int keydis_ipc_hangup (KeyDis * _t, Context * c) { KeyDis_IPC *t = (KeyDis_IPC *) _t; @@ -136,6 +152,16 @@ keydis_vt102_set_flow (KeyDis * _t, Context * c, int flow) return 0; } +static int +keydis_vt102_set_ansi (KeyDis * _t, Context * c, int ansi) +{ + KeyDis_VT102 *t = (KeyDis_VT102 *) _t; + + if (c->v) + c->v->xn_glitch=ansi ? 0:1; + return 0; +} + static int keydis_vt102_hangup (KeyDis * _t, Context * c) @@ -158,6 +184,7 @@ keydis_vt102_new (void) t->set_baud = keydis_vt102_set_baud; t->send_break = keydis_vt102_send_break; t->set_flow = keydis_vt102_set_flow; + t->set_ansi = keydis_vt102_set_ansi; t->hangup = keydis_vt102_hangup; return (KeyDis *) t; } @@ -172,6 +199,7 @@ keydis_ipc_new (Socket * s) t->set_baud = keydis_ipc_set_baud; t->send_break = keydis_ipc_send_break; t->set_flow = keydis_ipc_set_flow; + t->set_ansi = keydis_ipc_set_ansi; t->hangup = keydis_ipc_hangup; t->s = s; return (KeyDis *) t; |