From e0ace86247de9c0f91cfb87188eff51df5508c7a Mon Sep 17 00:00:00 2001 From: james <> Date: Thu, 28 Feb 2008 11:27:48 +0000 Subject: *** empty log message *** --- src/cmd.c | 37 +++++++++++++++++++++++++++---------- 1 file changed, 27 insertions(+), 10 deletions(-) (limited to 'src/cmd.c') diff --git a/src/cmd.c b/src/cmd.c index 7105c5b..21a7909 100644 --- a/src/cmd.c +++ b/src/cmd.c @@ -10,6 +10,9 @@ static char rcsid[] = "$Id$"; /* * $Log$ + * Revision 1.4 2008/02/28 11:27:48 james + * *** empty log message *** + * * Revision 1.3 2008/02/22 17:07:00 james * *** empty log message *** * @@ -29,21 +32,28 @@ cmd_parse (Cmd * c, Context * ctx, char *buf) { if (!strcmp (buf, "quit")) c->disconnect++; - - if (!strcmp (buf, "flow")) + else if (!strcmp (buf, "flow")) ctx->k->set_flow (ctx->k, ctx, 1); - if (!strcmp (buf, "noflow")) + else if (!strcmp (buf, "noflow")) ctx->k->set_flow (ctx->k, ctx, 0); - if (!strcmp (buf, "ansi")) + else if (!strcmp (buf, "ansi")) ctx->k->set_ansi (ctx->k, ctx, 0); - if (!strcmp (buf, "noansi")) + else if (!strcmp (buf, "noansi")) ctx->k->set_ansi (ctx->k, ctx, 1); - if (!strncmp (buf, "baud", 4)) + else if (!strncmp (buf, "baud", 4)) ctx->k->set_baud (ctx->k, ctx, atoi (buf + 4)); - if (!strncmp (buf, "break", 4)) + else if (!strcmp (buf, "break")) ctx->k->send_break (ctx->k, ctx); - if (!strncmp (buf, "hangup", 4)) + else if (!strcmp (buf, "hangup")) ctx->k->hangup (ctx->k, ctx); + else if (!strcmp (buf, "reset")) + ctx->k->reset (ctx->k, ctx); + else if (!strncmp (buf, "width", 5)) + ctx->k->set_size (ctx->k, ctx,atoi(buf+5),0); + else if (!strncmp (buf, "height", 6)) + ctx->k->set_size (ctx->k, ctx,0,atoi(buf+6)); + else + c->error++; } @@ -53,18 +63,25 @@ cmd_show_status (Cmd * c, Context * ctx) if (!ctx->v) return; - if (!c->active) + if (c->error) + vt102_status_line (ctx->v, "Command not recognized - press any key"); + else if (!c->active) vt102_status_line (ctx->v, c->csl); else vt102_status_line (ctx->v, c->buf); - } int cmd_key (Cmd * c, Context * ctx, int key) { + if (c->error) { + c->error=0; + cmd_show_status (c, ctx); + return 0; + } + if (key == 13) { cmd_parse (c, ctx, c->buf + 1); -- cgit v1.2.3