vlp-10 Using coding style in loggraph.
authorRafał Długołęcki <kontakt@dlugolecki.net.pl>
Sun, 14 Jul 2013 17:46:16 +0000 (19:46 +0200)
committerRafał Długołęcki <kontakt@dlugolecki.net.pl>
Sun, 14 Jul 2013 17:46:16 +0000 (19:46 +0200)
src/graph/loggraph.cpp

index c6c11a9ee0bd26e7c213d468c3ad83a03e601b7f..461669fe881fe64a388048a75a1662efb451d9c4 100644 (file)
@@ -1,3 +1,4 @@
+/*
 //
 // Qt Example Application: drawdemo
 //
@@ -5,6 +6,7 @@
 //
 
 //#include <qwindow.h>
+*/
 #include <qpainter.h>
 #include <qprinter.h>
 #include <qpushbt.h>
@@ -35,8 +37,6 @@
 #include <qpopmenu.h>
 #include <qkeycode.h>
 
-
-
 #define MAXWIDTH       640
 #define MAXHEIGHT      480
 #define TEXT_LINES     50
 #define REQUEST_NAME   "gr.req"
 #define PERM           0666
 
+class VGRMap {
+public:
+       QPixmap *map;
+       int number;
 
-class VGRMap
-{
- public:
-   QPixmap *map;
-   int number;
-
-   VGRMap(int n,QPixmap *m) { number=n; map = m; };
+       VGRMap(int n, QPixmap *m) {
+               number = n;
+               map = m;
+       };
 };
 
-
-
-
-class VGR : public QFrame
-{
-    Q_OBJECT
+class VGR : public QFrame {
+       Q_OBJECT
 public:
-     
-    VGR(char*);
-    ~VGR();
-     
-
-    int resp_sock;
-    int fcol,bcol,gfcol,gbcol;
-    int curx,cury;
-    int tx,ty;
-    QQueue<int> CharBuffer;
-
-    bool string_wait, char_wait, line_wait, mouse_wait, inkey_wait, was_line;
-    QColor *lcolors[256];
-    QFont *prv_font, *italic_font, *bold_font, *normal_font;
-
-    void MakeColors();
-
-    void SetForeground(int);
-    void SetBackground(int);
-    void ClearAll();
-    void ClearArea(int,int,int,int);
-
-    void Line(int,int,int,int);
-    void Ellipse(int x,int y,int a, int b,int alfa, int beta, int fill);
-    void Rect(int x1, int y1, int x2, int y2,int col, int fill);
-    void Point(int x, int y);
-    void TextXY(int x, int y, char *s);
-    void CharXY(int x, int y, char a);
-    void IntXY(int x, int y, int val);
-
-    void WriteText(char *s);
-    void WriteChar(char a);
-    void WriteLine();
-    void PutChar(char a); /* Write Char w/o changing position */
-    void DelChar();
-
-    void Outstring(int x, int y, char *s, int b, int f);
-    void writeintxy(int x, int y, int val,int c);
-    void CurPos();
-     
-
-    int Getmap(int w, int h);
-    void Putmap(int map); 
-
-    void MagicGraph(G_MESSAGE*);
-    bool GetInput(int);
+       VGR(char*);
+       ~VGR();
+
+       int resp_sock;
+       int fcol;
+       int bcol;
+       int gfcol;
+       int gbcol;
+       int curx;
+       int cury;
+       int tx;
+       int ty;
+       QQueue<int> CharBuffer;
+
+       bool string_wait;
+       bool char_wait;
+       bool line_wait;
+       bool mouse_wait;
+       bool inkey_wait;
+       bool was_line;
+       QColor *lcolors[256];
+       QFont *prv_font;
+       QFont *italic_font;
+       QFont *bold_font;
+       QFont *normal_font;
+
+       void MakeColors();
+
+       void SetForeground(int);
+       void SetBackground(int);
+       void ClearAll();
+       void ClearArea(int, int, int, int);
+
+       void Line(int, int, int, int);
+       void Ellipse(int x, int y, int a, int b, int alfa, int beta, int fill);
+       void Rect(int x1, int y1, int x2, int y2, int col, int fill);
+       void Point(int x, int y);
+       void TextXY(int x, int y, char *s);
+       void CharXY(int x, int y, char a);
+       void IntXY(int x, int y, int val);
+
+       void WriteText(char *s);
+       void WriteChar(char a);
+       void WriteLine();
+       
+       /* Write Char w/o changing position */
+       void PutChar(char a);
+       void DelChar();
+
+       void Outstring(int x, int y, char *s, int b, int f);
+       void writeintxy(int x, int y, int val, int c);
+       void CurPos();
+
+       int Getmap(int w, int h);
+       void Putmap(int map); 
+
+       void MagicGraph(G_MESSAGE*);
+       bool GetInput(int);
 
 public slots:
-    void vscrolled(int);
-    void hscrolled(int);
-    void CloseMe();
-    void RequestMessage();
+       void vscrolled(int);
+       void hscrolled(int);
+       void CloseMe();
+       void RequestMessage();
 
 protected:
-     virtual void resizeEvent( QResizeEvent * );
-     virtual void closeEvent(QCloseEvent *);
-     virtual void keyPressEvent(QKeyEvent *);
-     virtual void mousePressEvent(QMouseEvent *);
-     virtual void paintEvent(QPaintEvent *);
-     virtual void focusInEvent(QFocusEvent *); 
+       virtual void resizeEvent(QResizeEvent *);
+       virtual void closeEvent(QCloseEvent *);
+       virtual void keyPressEvent(QKeyEvent *);
+       virtual void mousePressEvent(QMouseEvent *);
+       virtual void paintEvent(QPaintEvent *);
+       virtual void focusInEvent(QFocusEvent *);
+
 private:
-   QPixmap *canvas;
-   QScrollBar *hscroll,*vscroll;
-   QPushButton *close_btn;
-   int ox,oy,lstep,pstep,gx,gy;
-   QList<VGRMap> maps;
-   int firstfreemap;
-   bool Closed, MustRepaint,GraphRead;
-   QSocketNotifier *request;
-   char internal_buffer[256];
-   int strcnt;
-
-  
+       QPixmap *canvas;
+       QScrollBar *hscroll;
+       QScrollBar *vscroll;
+       QPushButton *close_btn;
+       int ox,oy,lstep,pstep,gx,gy;
+       QList<VGRMap> maps;
+       int firstfreemap;
+       bool Closed;
+       bool MustRepaint;
+       bool GraphRead;
+       QSocketNotifier *request;
+       char internal_buffer[256];
+       int strcnt;
 };
 
-
-
 void VGR::MakeColors()
 {
-  lcolors[0] = new QColor(0, 0, 0 ); /* black  */
-  lcolors[1] = new QColor(0, 0, 139);     /* blue dark */
-  lcolors[2] = new QColor(0, 100, 0 );     /* green dark  */
-  lcolors[3] = new QColor(0, 197, 205 );     /* turquoise dark   */
-  lcolors[4] = new QColor(205,0 , 0 );   /* red dark */
-  lcolors[5] = new QColor(238, 130,238); /* violet */
-  lcolors[6] = new QColor(139,35,35 ); /* brown   */
-  lcolors[7] = new QColor(190,190,190 );       /* grey light */
-  lcolors[8] = new QColor(97, 97, 97 );       /* grey dark */
-  lcolors[9] = new QColor(0, 0, 255 );       /* blue */
-  lcolors[10] = new QColor(0, 255, 0 );       /* green */
-  lcolors[11] = new QColor(0, 229,238 );       /* turquoise */
-  lcolors[12] = new QColor(255, 0, 0 );       /* red light */
-  lcolors[13] = new QColor(255, 110,180 );       /* rose */
-  lcolors[14] = new QColor(255,255, 0 );       /* yellow */
-  lcolors[15] = new QColor(255, 255, 255 );       /* white */
+       /* black  */
+       lcolors[0] = new QColor(0, 0, 0);
+       /* blue dark */
+       lcolors[1] = new QColor(0, 0, 139);
+       /* green dark  */
+       lcolors[2] = new QColor(0, 100, 0);
+       /* turquoise dark   */
+       lcolors[3] = new QColor(0, 197, 205);
+       /* red dark */
+       lcolors[4] = new QColor(205, 0, 0);
+       /* violet */
+       lcolors[5] = new QColor(238, 130, 238);
+       /* brown */
+       lcolors[6] = new QColor(139,35, 35);
+       /* grey light */
+       lcolors[7] = new QColor(190, 190, 190);
+       /* grey dark */
+       lcolors[8] = new QColor(97, 97, 97);
+       /* blue */
+       lcolors[9] = new QColor(0, 0, 255);
+       /* green */
+       lcolors[10] = new QColor(0, 255, 0);
+       /* turquoise */
+       lcolors[11] = new QColor(0, 229, 238);
+       /* red light */
+       lcolors[12] = new QColor(255, 0, 0);
+       /* rose */
+       lcolors[13] = new QColor(255, 110, 180);
+       /* yellow */
+       lcolors[14] = new QColor(255, 255, 0);
+       /* white */
+       lcolors[15] = new QColor(255, 255, 255);
 }
 
-//
-// Construct the DrawView with buttons.
-//
-
+/*
+ * Construct the DrawView with buttons.
+ */
 VGR::VGR(char *sockname)
-:QFrame()
+       :QFrame()
 {
-    QPixmap mp;
-    struct sockaddr_un svr;
-    int len,i,optval,on;
-
-
-
-    normal_font = new QFont("lucidatypewriter",10,QFont::Normal);
-    normal_font->setFixedPitch(TRUE);
-    bold_font = new QFont("lucidatypewriter",10,QFont::Bold);
-    bold_font->setFixedPitch(TRUE);
-    italic_font = new QFont("lucidatypewriter",10,QFont::Normal,TRUE);
-    italic_font->setFixedPitch(TRUE);
-
-    prv_font = normal_font;    
-
-    MakeColors();
-    setCaption( "graphic resource" );
-    setBackgroundColor( white );
-    canvas = new QPixmap(640,480);
-    canvas->fill(backgroundColor());
-
-    ox=0;oy=0;
-    curx=0;cury=0;
-    tx=0;ty=0;gx=0;gy=0;
-    maps.setAutoDelete(TRUE);
-    firstfreemap=1;
-    Closed = FALSE;GraphRead=FALSE;
-    lstep=10;pstep=250;
-    hscroll = new QScrollBar(0,MAXWIDTH,lstep,pstep,0,QScrollBar::Horizontal,this);
-    vscroll = new QScrollBar(0,MAXHEIGHT,lstep,pstep,0,QScrollBar::Vertical,this);
-    hscroll->setTracking(TRUE);
-    vscroll->setTracking(TRUE);  
-    resize( 640,300 );
-
-    hscroll->setGeometry(0,height()-16,width()-16,16);
-    vscroll->setGeometry(width()-16,0,16,height()-16);
-    connect(hscroll,SIGNAL(valueChanged(int)),this,SLOT(hscrolled(int)));
-    connect(vscroll,SIGNAL(valueChanged(int)),this,SLOT(vscrolled(int)));  
-
-    close_btn = new QPushButton(this,"close");
-
-   if( mp.load("pics/close.bmp"))
-      close_btn->setPixmap(mp);
-   else
-      close_btn->setText("C");
-    close_btn->setGeometry(width()-16,height()-16,16,16);
-    close_btn->setEnabled(FALSE);
-    connect(close_btn,SIGNAL(clicked()),this,SLOT(CloseMe()));
-
-  
-    gfcol=fcol = 0;
-    gbcol=bcol = 15; 
-    resp_sock = socket(AF_UNIX,SOCK_STREAM,0); 
-    bzero(&svr,sizeof(svr));
-    svr.sun_family = AF_UNIX;
-    strcpy(svr.sun_path,sockname);
-    len = strlen(svr.sun_path)+sizeof(svr.sun_family);
-    i = ::connect(resp_sock,(struct sockaddr*)&svr,len);
-    if (i==0)  fcntl(resp_sock,F_SETFL,O_NONBLOCK|fcntl(resp_sock,F_GETFL,0));
-    on=1;
-    setsockopt(resp_sock,IPPROTO_TCP,TCP_NODELAY,(char*)&on,sizeof(on));
-    request = new QSocketNotifier(resp_sock,QSocketNotifier::Read);
-    connect(request,SIGNAL(activated(int)),this,SLOT(RequestMessage()));   
-    optval=TCP_BUFFER_SIZE; 
-//    setsockopt(resp_sock,SOL_SOCKET,SO_SNDBUF,&optval,sizeof(optval));
-//    setsockopt(resp_sock,SOL_SOCKET,SO_RCVBUF,&optval,sizeof(optval));
-
-    inkey_wait = FALSE;string_wait = FALSE;
-    char_wait = FALSE;line_wait = FALSE;mouse_wait = FALSE;
-    was_line=FALSE;
-    CharBuffer.clear(); 
-    CharBuffer.setAutoDelete(TRUE);
-
-    setFocusPolicy(QWidget::StrongFocus);
-    hscroll->setRange(0,MAXWIDTH-width()+20);
-    vscroll->setRange(0,MAXHEIGHT-height()+20);
-    hscroll->setSteps((int)(hscroll->width()/hscroll->maxValue()),(int)((hscroll->width()/hscroll->maxValue())*4)); 
-    vscroll->setSteps((int)(vscroll->height()/vscroll->maxValue()),(int)((vscroll->height()/vscroll->maxValue())*4)); 
-
-   setMaximumSize(MAXWIDTH+16,MAXHEIGHT+16);
-   setUpdatesEnabled(FALSE);
+       QPixmap mp;
+       struct sockaddr_un svr;
+       int len, i, optval, on;
+
+       normal_font = new QFont("lucidatypewriter", 10, QFont::Normal);
+       normal_font->setFixedPitch(TRUE);
+       bold_font = new QFont("lucidatypewriter", 10, QFont::Bold);
+       bold_font->setFixedPitch(TRUE);
+       italic_font = new QFont("lucidatypewriter", 10, QFont::Normal,TRUE);
+       italic_font->setFixedPitch(TRUE);
+
+       prv_font = normal_font;
+
+       MakeColors();
+       setCaption("graphic resource");
+       setBackgroundColor(white);
+       canvas = new QPixmap(640, 480);
+       canvas->fill(backgroundColor());
+
+       ox = oy = 0;
+       curx = cury = 0;
+       tx = ty = 0;
+       gx = gy = 0;
+       
+       maps.setAutoDelete(TRUE);
+       firstfreemap = 1;
+       Closed = FALSE;
+       GraphRead = FALSE;
+       lstep = 10;
+       pstep = 250;
+       hscroll = new QScrollBar(0, MAXWIDTH, lstep, pstep, 0, QScrollBar::Horizontal, this);
+       vscroll = new QScrollBar(0, MAXHEIGHT, lstep, pstep, 0, QScrollBar::Vertical, this);
+       hscroll->setTracking(TRUE);
+       vscroll->setTracking(TRUE);
+       resize(640, 300);
+
+       hscroll->setGeometry(0, height() - 16, width() - 16, 16);
+       vscroll->setGeometry(width() - 16, 0, 16, height() - 16);
+
+       connect(hscroll, SIGNAL(valueChanged(int)), this, SLOT(hscrolled(int)));
+       connect(vscroll, SIGNAL(valueChanged(int)), this, SLOT(vscrolled(int)));
+
+       close_btn = new QPushButton(this, "close");
+
+       if (mp.load("pics/close.bmp"))
+               close_btn->setPixmap(mp);
+       else
+               close_btn->setText("C");
+       
+       close_btn->setGeometry(width()-16,height()-16,16,16);
+       close_btn->setEnabled(FALSE);
+       connect(close_btn, SIGNAL(clicked()), this, SLOT(CloseMe()));
+
+
+       gfcol = fcol = 0;
+       gbcol = bcol = 15;
+       resp_sock = socket(AF_UNIX, SOCK_STREAM, 0);
+       bzero(&svr, sizeof(svr));
+       svr.sun_family = AF_UNIX;
+       strcpy(svr.sun_path, sockname);
+       len = strlen(svr.sun_path) + sizeof(svr.sun_family);
+       i = ::connect(resp_sock, (struct sockaddr*)&svr, len);
+       if (i == 0)
+               fcntl(resp_sock, F_SETFL, O_NONBLOCK | 
+                                               fcntl(resp_sock , F_GETFL, 0));
+       on = 1;
+       setsockopt(resp_sock, IPPROTO_TCP, TCP_NODELAY, (char*)&on, sizeof(on));
+       request = new QSocketNotifier(resp_sock, QSocketNotifier::Read);
+       connect(request, SIGNAL(activated(int)), this, SLOT(RequestMessage()));   
+       optval=TCP_BUFFER_SIZE;
+       /*
+       setsockopt(resp_sock,SOL_SOCKET,SO_SNDBUF,&optval,sizeof(optval));
+       setsockopt(resp_sock,SOL_SOCKET,SO_RCVBUF,&optval,sizeof(optval));
+       */
+
+       inkey_wait = string_wait = FALSE;
+       char_wait = line_wait = mouse_wait = FALSE;
+       was_line = FALSE;
+       CharBuffer.clear(); 
+       CharBuffer.setAutoDelete(TRUE);
+
+       setFocusPolicy(QWidget::StrongFocus);
+       hscroll->setRange(0, MAXWIDTH - width() + 20);
+       vscroll->setRange(0, MAXHEIGHT - height() + 20);
+       hscroll->setSteps((int)(hscroll->width() / hscroll->maxValue()),
+                       (int)((hscroll->width() / hscroll->maxValue()) * 4));
+       vscroll->setSteps((int)(vscroll->height() / vscroll->maxValue()),
+                       (int)((vscroll->height() / vscroll->maxValue()) * 4));
+
+       setMaximumSize(MAXWIDTH + 16, MAXHEIGHT + 16);
+       setUpdatesEnabled(FALSE);
 };
 
 VGR::~VGR()
 {
if (request!=NULL)
-  delete request;
      if (request != NULL)
+               delete request;
 }
 
-
-
 void VGR::paintEvent(QPaintEvent *p)
 {
-//if (isUpdatesEnabled())
-{
-  bitBlt(this,0,0,canvas,ox,oy,width()-16,height()-16);
-}
-  MustRepaint=FALSE;
+       /*if (isUpdatesEnabled()) {*/
+       bitBlt(this, 0, 0, canvas, ox, oy, width() - 16, height() - 16);
+       /*}*/
+       MustRepaint = FALSE;
 }
 
 void VGR::focusInEvent(QFocusEvent *)
 {
-setUpdatesEnabled(TRUE);
-repaint();
-setUpdatesEnabled(FALSE);
+       setUpdatesEnabled(TRUE);
+       repaint();
+       setUpdatesEnabled(FALSE);
 }
 
 
 void VGR::resizeEvent( QResizeEvent *ev )
 {
hscroll->setGeometry(0,height()-16,width()-16,16);
vscroll->setGeometry(width()-16,0,16,height()-16);
close_btn->setGeometry(width()-16,height()-16,16,16);
hscroll->setRange(0,MAXWIDTH-width()+20);
vscroll->setRange(0,MAXHEIGHT-height()+20); 
pstep=height()-32;
- hscroll->setSteps(lstep,pstep); 
- vscroll->setSteps(lstep,pstep); 
      hscroll->setGeometry(0, height() - 16, width() - 16, 16);
      vscroll->setGeometry(width() - 16, 0, 16, height() - 16);
      close_btn->setGeometry(width() - 16, height() - 16, 16, 16);
      hscroll->setRange(0, MAXWIDTH - width() + 20);
      vscroll->setRange(0, MAXHEIGHT - height() + 20); 
      pstep = height() - 32;
+       hscroll->setSteps(lstep, pstep);
+       vscroll->setSteps(lstep, pstep);
 }
 
 void VGR::closeEvent(QCloseEvent *ev)
 {
- if (Closed) QFrame::closeEvent(ev);
+       if (Closed)
+               QFrame::closeEvent(ev);
 }
 
 void VGR::mousePressEvent(QMouseEvent *ev)
 {
- G_MESSAGE msg;
- if (mouse_wait)
- {
-  msg.msg_type = MSG_GRAPH;
-  msg.param.pword[0] = GRAPH_MGETPRESS_RESPONSE;
-  msg.param.pword[2] = ev->pos().x()-ox;
-  msg.param.pword[3] = ev->pos().y()-oy;
-  switch(ev->button())
-  {
-    case LeftButton: msg.param.pword[7] = 1;
-                     break;
-    case RightButton: msg.param.pword[7] = 3;
-                     break;
-    case MidButton:msg.param.pword[7] = 2;
-                     break;
-    default:msg.param.pword[7] = 0;break;
-   }
-  write(resp_sock,&msg,sizeof(G_MESSAGE));
-
-  mouse_wait = FALSE;
- }
- QFrame::mousePressEvent(ev);
+       G_MESSAGE msg;
+
+       if (mouse_wait) {
+               msg.msg_type = MSG_GRAPH;
+               msg.param.pword[0] = GRAPH_MGETPRESS_RESPONSE;
+               msg.param.pword[2] = ev->pos().x() - ox;
+               msg.param.pword[3] = ev->pos().y() - oy;
+               switch(ev->button()) {
+               case LeftButton:
+                       msg.param.pword[7] = 1;
+                       break;
+               case RightButton:
+                       msg.param.pword[7] = 3;
+                       break;
+               case MidButton:
+                       msg.param.pword[7] = 2;
+                       break;
+               default:
+                       msg.param.pword[7] = 0;
+                       break;
+               }
+               write(resp_sock, &msg, sizeof(G_MESSAGE));
+
+               mouse_wait = FALSE;
+       }
+       QFrame::mousePressEvent(ev);
 }
 
 
 bool VGR::GetInput(int t)
 {
- G_MESSAGE msg;
-
-if (!CharBuffer.isEmpty())
-{ 
-switch(t)
-{
-case 2:
- {
-   msg.msg_type = MSG_GRAPH;
-   msg.param.pword[0] = GRAPH_INKEY_RESPONSE;
-   msg.param.pword[3] = *(CharBuffer.dequeue());
-   write(resp_sock,&msg,sizeof(G_MESSAGE));
-   inkey_wait = FALSE;
-   return TRUE;
- };break;
-
-case 0: 
- {
-  if (GraphRead)
-  {
-   
-   msg.msg_type = MSG_GRAPH;
-   msg.param.pword[0] = GRAPH_MAGIC_RESPONSE;
-   msg.param.pword[1]=0;
-   msg.param.pchar =(char)(*(CharBuffer.dequeue())); 
-   WriteChar(msg.param.pchar);
-   GraphRead=FALSE;
-   } else
-  {
-  msg.msg_type = MSG_GRAPH;
-  msg.param.pword[0] = GRAPH_READCHAR_RESPONSE;
-  msg.param.pchar =(char)(*(CharBuffer.dequeue()));
-  }
-  
-  write(resp_sock,&msg,sizeof(G_MESSAGE));
-  char_wait = FALSE;
-  return TRUE;
-  };break;
-
-case 1:
- {
-
-   while ( ((!CharBuffer.isEmpty()) && (!(*(CharBuffer.dequeue())=13))));
-   if (!CharBuffer.isEmpty())
-   {
-    msg.msg_type = MSG_GRAPH;
-    msg.param.pword[0] = GRAPH_READLN_RESPONSE;
-    write(resp_sock,&msg,sizeof(G_MESSAGE));
-    line_wait = FALSE; 
-    return TRUE;
-   }
-   
-  };break;// line_wait 
-} //swictch
-} // buffer empty
-
-if ( (CharBuffer.isEmpty()) && (t==2))
-{
-   msg.msg_type = MSG_GRAPH;
-   msg.param.pword[0] = GRAPH_INKEY_RESPONSE;
-   msg.param.pword[3] = 0;
-   write(resp_sock,&msg,sizeof(G_MESSAGE));
-   inkey_wait = FALSE;
-   return TRUE;
-}
-
- return FALSE;   
+       G_MESSAGE msg;
+
+       if (!CharBuffer.isEmpty()) { 
+               switch(t) {
+               case 2: {
+                       msg.msg_type = MSG_GRAPH;
+                       msg.param.pword[0] = GRAPH_INKEY_RESPONSE;
+                       msg.param.pword[3] = *(CharBuffer.dequeue());
+                       write(resp_sock,&msg,sizeof(G_MESSAGE));
+                       inkey_wait = FALSE;
+                       return TRUE;
+               };
+               break;
+
+               case 0:
+                       if (GraphRead) {
+                               msg.msg_type = MSG_GRAPH;
+                               msg.param.pword[0] = GRAPH_MAGIC_RESPONSE;
+                               msg.param.pword[1] = 0;
+                               msg.param.pchar = 
+                                               (char)(*(CharBuffer.dequeue())); 
+                               WriteChar(msg.param.pchar);
+                               GraphRead = FALSE;
+                       } else {
+                               msg.msg_type = MSG_GRAPH;
+                               msg.param.pword[0] = GRAPH_READCHAR_RESPONSE;
+                               msg.param.pchar = 
+                                               (char)(*(CharBuffer.dequeue()));
+                       }
+
+                       write(resp_sock,&msg,sizeof(G_MESSAGE));
+                       char_wait = FALSE;
+                       return TRUE;
+
+               case 1:
+                       while ( ((!CharBuffer.isEmpty()) &&
+                                       (!(*(CharBuffer.dequeue()) = 13))));
+               
+                       if (!CharBuffer.isEmpty()) {
+                               msg.msg_type = MSG_GRAPH;
+                               msg.param.pword[0] = GRAPH_READLN_RESPONSE;
+                               write(resp_sock, &msg, sizeof(G_MESSAGE));
+                               line_wait = FALSE;
+                               return TRUE;
+                       }
+                       /* line_wait */
+                       break;
+               } /* switch */
+       } /* buffer empty */
+
+       if (CharBuffer.isEmpty() && (t == 2)) {
+               msg.msg_type = MSG_GRAPH;
+               msg.param.pword[0] = GRAPH_INKEY_RESPONSE;
+               msg.param.pword[3] = 0;
+               write(resp_sock, &msg, sizeof(G_MESSAGE));
+               inkey_wait = FALSE;
+               return TRUE;
+       }
+
+       return FALSE;   
 }
 
 void VGR::keyPressEvent(QKeyEvent *ev)
 {
- G_MESSAGE msg;
- int *pom;
-
- pom = new int[1];
- *pom=ev->ascii();
- if (*pom==0)
-    switch(ev->key())
-     {
-       case Key_F1:*pom=-10;break;
-       case Key_F2:*pom=-11;break;
-       case Key_F3:*pom=-12;break;
-       case Key_F4:*pom=-13;break;
-       case Key_F5:*pom=-14;break;
-       case Key_F6:*pom=-15;break;
-       case Key_F7:*pom=-16;break;
-       case Key_F8:*pom=-17;break;
-       case Key_F9:*pom=-18;break;
-       case Key_F10:*pom=-19;break;
-       case Key_Insert:*pom=-20;break;
-       case Key_Home:*pom=-21;break;
-       case Key_End:*pom=-22;break;
-       case Key_PageUp:*pom=-23;break;
-       case Key_PageDown:*pom=-24;break;
-       case Key_Left:*pom=-25;break;
-       case Key_Right:*pom=-26;break;
-       case Key_Up:*pom=-27;break;
-       case Key_Down:*pom=-28;break;
-       }// switch
-  
- if ( (!string_wait) && (!inkey_wait) && (!char_wait) && (!line_wait) )
-   CharBuffer.enqueue(pom);
-
- if (inkey_wait)
- {
- msg.msg_type = MSG_GRAPH;
- msg.param.pword[0] = GRAPH_INKEY_RESPONSE;
- msg.param.pword[3] = *pom;
- write(resp_sock,&msg,sizeof(G_MESSAGE));
- inkey_wait = FALSE;
- };
-
- if (char_wait)
- {
-  if (GraphRead)
-  {
-
-  msg.msg_type = MSG_GRAPH;
-  msg.param.pword[0] = GRAPH_MAGIC_RESPONSE;
-  msg.param.pword[1]=0;
-  WriteChar((char)ev->ascii());
-    GraphRead=FALSE;
-  }
-  else
-{
- msg.msg_type = MSG_GRAPH;
- msg.param.pword[0] = GRAPH_READCHAR_RESPONSE;
-}
- msg.param.pchar =(char)ev->ascii();
- write(resp_sock,&msg,sizeof(G_MESSAGE));
- char_wait = FALSE;
- }
-
- if ( (line_wait) && (ev->ascii()==13) )
- {
- msg.msg_type = MSG_GRAPH;
- msg.param.pword[0] = GRAPH_READLN_RESPONSE;
- write(resp_sock,&msg,sizeof(G_MESSAGE));
- line_wait = FALSE;
- }
-
- if (string_wait)
- {
-  if (ev->ascii()==13)
-  {
-    internal_buffer[strcnt]='\0';
-    DelChar();
-    if (GraphRead)
-    {
-     GraphRead=FALSE;
-     msg.msg_type = MSG_GRAPH;
-     msg.param.pword[0] = GRAPH_MAGIC_RESPONSE;
-     msg.param.pword[1]=0;
-    } else
-    { 
-     msg.msg_type = MSG_GRAPH;
-     msg.param.pword[0] = GRAPH_READSTR_RESPONSE;
-    } 
-     strcpy(msg.param.pstr,internal_buffer);
-     write(resp_sock,&msg,sizeof(G_MESSAGE));   
-     string_wait = FALSE;
-     was_line=TRUE;
-     CharBuffer.clear();
-   }
-  else
-  if (ev->ascii()==8)
-  {
-   strcnt--;DelChar();DelChar();WriteChar('_');
-  } else
-  {internal_buffer[strcnt]=(char)ev->ascii();strcnt++;
-   DelChar();
-   WriteChar((char)ev->ascii());WriteChar('_');}
- }
-
+       G_MESSAGE msg;
+       int *pom;
+
+       pom = new int[1];
+       *pom=ev->ascii();
+       if (*pom==0) {
+               switch(ev->key()) {
+               case Key_F1:
+                       *pom = -10;
+                       break;
+               case Key_F2:
+                       *pom = -11;
+                       break;
+               case Key_F3:
+                       *pom = -12;
+                       break;
+               case Key_F4:
+                       *pom = -13;
+                       break;
+               case Key_F5:
+                       *pom = -14;
+                       break;
+               case Key_F6:
+                       *pom = -15;
+                       break;
+               case Key_F7:
+                       *pom = -16;
+                       break;
+               case Key_F8:
+                       *pom = -17;
+                       break;
+               case Key_F9:
+                       *pom = -18;
+                       break;
+               case Key_F10:
+                       *pom = -19;
+                       break;
+               case Key_Insert:
+                       *pom = -20;
+                       break;
+               case Key_Home:
+                       *pom = -21;
+                       break;
+               case Key_End:
+                       *pom = -22;
+                       break;
+               case Key_PageUp:
+                       *pom = -23;
+                       break;
+               case Key_PageDown:
+                       *pom = -24;
+                       break;
+               case Key_Left:
+                       *pom = -25;
+                       break;
+               case Key_Right:
+                       *pom = -26;
+                       break;
+               case Key_Up:
+                       *pom = -27;
+                       break;
+               case Key_Down:
+                       *pom = -28;
+                       break;
+               }/* switch */
+       }
+       if ((!string_wait) && (!inkey_wait) && (!char_wait) && (!line_wait))
+               CharBuffer.enqueue(pom);
+
+
+       if (inkey_wait) {
+               msg.msg_type = MSG_GRAPH;
+               msg.param.pword[0] = GRAPH_INKEY_RESPONSE;
+               msg.param.pword[3] = *pom;
+               write(resp_sock, &msg, sizeof(G_MESSAGE));
+               inkey_wait = FALSE;
+       };
+
+       if (char_wait) {
+               if (GraphRead) {
+                       msg.msg_type = MSG_GRAPH;
+                       msg.param.pword[0] = GRAPH_MAGIC_RESPONSE;
+                       msg.param.pword[1] = 0;
+                       WriteChar((char)ev->ascii());
+                       GraphRead = FALSE;
+               } else {
+                       msg.msg_type = MSG_GRAPH;
+                       msg.param.pword[0] = GRAPH_READCHAR_RESPONSE;
+               }
+               msg.param.pchar = (char)ev->ascii();
+               write(resp_sock, &msg, sizeof(G_MESSAGE));
+               char_wait = FALSE;
+       }
+
+       if ((line_wait) && (ev->ascii() == 13)) {
+               msg.msg_type = MSG_GRAPH;
+               msg.param.pword[0] = GRAPH_READLN_RESPONSE;
+               write(resp_sock, &msg, sizeof(G_MESSAGE));
+               line_wait = FALSE;
+       }
+
+       if (string_wait) {
+               if (ev->ascii() == 13) {
+                       internal_buffer[strcnt] = '\0';
+                       DelChar();
+                       if (GraphRead) {
+                               GraphRead = FALSE;
+                               msg.msg_type = MSG_GRAPH;
+                               msg.param.pword[0] = GRAPH_MAGIC_RESPONSE;
+                               msg.param.pword[1] = 0;
+                       } else {
+                               msg.msg_type = MSG_GRAPH;
+                               msg.param.pword[0] = GRAPH_READSTR_RESPONSE;
+                       }
+                       strcpy(msg.param.pstr, internal_buffer);
+                       write(resp_sock, &msg, sizeof(G_MESSAGE));   
+                       string_wait = FALSE;
+                       was_line = TRUE;
+                       CharBuffer.clear();
+               }
+               else if (ev->ascii() == 8) {
+                       strcnt--;
+                       DelChar();
+                       DelChar();
+                       WriteChar('_');
+               } else {
+                       internal_buffer[strcnt] = (char)ev->ascii();
+                       strcnt++;
+                       DelChar();
+                       WriteChar((char)ev->ascii());
+                       WriteChar('_');
+               }
+       }
 }
 
 
 void VGR::CloseMe()
 {
- qApp->quit();
      qApp->quit();
 }
 
 
 
 void VGR::hscrolled(int val)
 {
-ox = val;
-setUpdatesEnabled(TRUE);
-repaint();
-setUpdatesEnabled(FALSE);
+       ox = val;
+       setUpdatesEnabled(TRUE);
+       repaint();
+       setUpdatesEnabled(FALSE);
 }
 
 void VGR::vscrolled(int val)
 {
-oy = val;
-setUpdatesEnabled(TRUE);
-repaint();
-setUpdatesEnabled(FALSE);
+       oy = val;
+       setUpdatesEnabled(TRUE);
+       repaint();
+       setUpdatesEnabled(FALSE);
 }
 
 
-// **************************************
+/****************************************/
 
 void VGR::SetForeground(int col)
 {
- fcol = col;
      fcol = col;
 }
 
 void VGR::SetBackground(int col)
 {
- bcol = col;
      bcol = col;
 }
 
-void VGR::Line(int x1,int y1,int x2,int y2)
+void VGR::Line(int x1, int y1, int x2, int y2)
 {
- QPainter p;
- p.begin(canvas);
- p.setPen(*lcolors[fcol]);
p.drawLine(x1,y1,x2,y2);
- p.end();
-
- p.begin(this);
- p.setPen(*lcolors[fcol]);
p.drawLine(x1-ox, y1-oy,x2-ox, y2-oy);
- p.end();
      QPainter p;
      p.begin(canvas);
      p.setPen(*lcolors[fcol]);
      p.drawLine(x1, y1, x2, y2);
      p.end();
+
      p.begin(this);
      p.setPen(*lcolors[fcol]);
      p.drawLine(x1 - ox, y1 - oy, x2 - ox, y2 - oy);
      p.end();
 }
 
-
-void VGR::Ellipse(int x,int y,int a, int b,int alfa, int beta, int fill)
+void VGR::Ellipse(int x, int y, int a, int b, int alfa, int beta, int fill)
 {
- QPainter p;
-
- p.begin(canvas);
- p.setPen(*lcolors[fcol]);
- p.setBrush(*lcolors[fcol]);
- if (fill>0)
-  p.drawPie(x,y,a,b,alfa*16,(beta-alfa)*16);
- else
-  p.drawArc(x,y,a,b,alfa*16,(beta-alfa)*16); 
- p.end();
-
- p.begin(this);
- p.setPen(*lcolors[fcol]);
- p.setBrush(*lcolors[fcol]);
- if (fill>0)
-  p.drawPie(x-ox, y-oy,a,b,alfa*16,(beta-alfa)*16);
- else
-  p.drawArc(x-ox, y-oy,a,b,alfa*16,(beta-alfa)*16); 
- p.end();
-
+       QPainter p;
+
+       p.begin(canvas);
+       p.setPen(*lcolors[fcol]);
+       p.setBrush(*lcolors[fcol]);
+       if (fill > 0)
+               p.drawPie(x, y, a, b, alfa * 16, (beta - alfa) * 16);
+       else
+               p.drawArc(x, y, a, b, alfa * 16, (beta - alfa) * 16); 
+
+       p.end();
+
+       p.begin(this);
+       p.setPen(*lcolors[fcol]);
+       p.setBrush(*lcolors[fcol]);
+       if (fill > 0)
+               p.drawPie(x - ox, y - oy, a, b, alfa * 16, (beta - alfa) * 16);
+       else
+               p.drawArc(x - ox, y - oy, a, b, alfa * 16, (beta - alfa) * 16); 
+       
+       p.end();
 }
 
 void VGR::Rect(int x1, int y1, int x2, int y2,int col, int fill)
 {
- QPainter p;
- QBrush b(*lcolors[col]);
- p.begin(canvas);
- p.setPen(*lcolors[col]);
- if (fill>0) p.fillRect(x1,y1,x2-x1,y2-y1,b);
- else p.drawRect(x1,y1,x2-x1,y2-y1);
- p.end();
-
-
- p.begin(this);
- p.setPen(*lcolors[col]);
- if (fill>0) p.fillRect(x1-ox, y1-oy,x2-x1,y2-y1,b);
- else p.drawRect(x1-ox, y1-oy,x2-x1,y2-y1);
- p.end();
-
+       QPainter p;
+       QBrush b(*lcolors[col]);
+       p.begin(canvas);
+       p.setPen(*lcolors[col]);
+       if (fill > 0)
+               p.fillRect(x1 , y1 , x2 - x1, y2 - y1, b);
+       else
+               p.drawRect(x1,y1,x2-x1,y2-y1);
+       
+       p.end();
+
+       p.begin(this);
+       p.setPen(*lcolors[col]);
+       if (fill > 0)
+               p.fillRect(x1 - ox, y1 - oy, x2 - x1, y2 - y1, b);
+       else
+               p.drawRect(x1 - ox, y1 - oy, x2 - x1, y2 - y1);
+       p.end();
 }
+
 void VGR::TextXY(int x, int y, char *s)
 {
- QPainter p;
- QFontMetrics fm(*prv_font);
-
- p.begin(canvas);
- p.setPen(*lcolors[fcol]);
- p.setBackgroundColor(*lcolors[bcol]);
- p.setBackgroundMode(OpaqueMode);
- p.setFont(*prv_font);
- p.drawText(x,y+fm.height(),s,strlen(s));
- p.end();
-
-
- p.begin(this);
- p.setPen(*lcolors[fcol]);
- p.setBackgroundColor(*lcolors[bcol]);
- p.setBackgroundMode(OpaqueMode);
- p.setFont(*prv_font);
- p.drawText(x-ox, y-oy+fm.height(),s,strlen(s));
- p.end();
-
+       QPainter p;
+       QFontMetrics fm(*prv_font);
+
+       p.begin(canvas);
+       p.setPen(*lcolors[fcol]);
+       p.setBackgroundColor(*lcolors[bcol]);
+       p.setBackgroundMode(OpaqueMode);
+       p.setFont(*prv_font);
+       p.drawText(x, y + fm.height(), s, strlen(s));
+       p.end();
+
+
+       p.begin(this);
+       p.setPen(*lcolors[fcol]);
+       p.setBackgroundColor(*lcolors[bcol]);
+       p.setBackgroundMode(OpaqueMode);
+       p.setFont(*prv_font);
+       p.drawText(x - ox, y - oy + fm.height(), s, strlen(s));
+       p.end();
 }
 
 
 void VGR::CharXY(int x, int y, char a)
 {
- QPainter p;
- char s[2];
-  QFontMetrics fm(*prv_font);
-
- s[0] = a;
- s[1] = '\0';
- p.begin(canvas);
- p.setPen(*lcolors[fcol]);
- p.setBackgroundColor(*lcolors[bcol]);
- p.setBackgroundMode(OpaqueMode);
- p.setFont(*prv_font);
- p.drawText(x,y+fm.height(),s,strlen(s));
- p.end();
-
- p.begin(this);
- p.setPen(*lcolors[fcol]);
- p.setBackgroundColor(*lcolors[bcol]);
- p.setBackgroundMode(OpaqueMode);
- p.setFont(*prv_font);
- p.drawText(x-ox, y-oy+fm.height(),s,strlen(s));
- p.end();
-
+       QPainter p;
+       char s[2];
+       QFontMetrics fm(*prv_font);
+
+       s[0] = a;
+       s[1] = '\0';
+       p.begin(canvas);
+       p.setPen(*lcolors[fcol]);
+       p.setBackgroundColor(*lcolors[bcol]);
+       p.setBackgroundMode(OpaqueMode);
+       p.setFont(*prv_font);
+       p.drawText(x , y + fm.height(), s, strlen(s));
+       p.end();
+
+       p.begin(this);
+       p.setPen(*lcolors[fcol]);
+       p.setBackgroundColor(*lcolors[bcol]);
+       p.setBackgroundMode(OpaqueMode);
+       p.setFont(*prv_font);
+       p.drawText(x - ox, y - oy + fm.height(), s, strlen(s));
+       p.end();
 }
 
 
 void VGR::IntXY(int x, int y, int val)
 {
- QPainter p;
- char s[80];
- QFontMetrics fm(*prv_font);
-
- sprintf(s,"%d",val);
- p.begin(canvas);
- p.setPen(*lcolors[fcol]);
- p.setBackgroundColor(*lcolors[bcol]);
- p.setBackgroundMode(OpaqueMode);
- p.setFont(*prv_font);
- p.drawText(x,y+fm.height(),s,strlen(s));
- p.end();
-
-
- p.begin(this);
- p.setPen(*lcolors[fcol]);
- p.setBackgroundColor(*lcolors[bcol]);
- p.setBackgroundMode(OpaqueMode);
- p.setFont(*prv_font);
- p.drawText(x-ox, y-oy+fm.height(),s,strlen(s));
- p.end();
-
+       QPainter p;
+       char s[80];
+       QFontMetrics fm(*prv_font);
+
+       sprintf(s, "%d", val);
+       p.begin(canvas);
+       p.setPen(*lcolors[fcol]);
+       p.setBackgroundColor(*lcolors[bcol]);
+       p.setBackgroundMode(OpaqueMode);
+       p.setFont(*prv_font);
+       p.drawText(x, y + fm.height(), s, strlen(s));
+       p.end();
+
+       p.begin(this);
+       p.setPen(*lcolors[fcol]);
+       p.setBackgroundColor(*lcolors[bcol]);
+       p.setBackgroundMode(OpaqueMode);
+       p.setFont(*prv_font);
+       p.drawText(x - ox, y - oy + fm.height(), s, strlen(s));
+       p.end();
 }
 
 void VGR::WriteText(char *s)
 {
- QPainter p;
- QFontMetrics fm(*prv_font);
-
- p.begin(canvas);
- p.setPen(*lcolors[fcol]);
- p.setBackgroundColor(*lcolors[bcol]);
- p.setBackgroundMode(OpaqueMode);
- p.setFont(*prv_font);
- p.drawText(tx*fm.maxWidth(),(ty+1)*fm.height(),s,strlen(s));
- p.end();
-
- p.begin(this);
- p.setPen(*lcolors[fcol]);
- p.setBackgroundColor(*lcolors[bcol]);
- p.setBackgroundMode(OpaqueMode);
- p.setFont(*prv_font);
- p.drawText(tx*fm.maxWidth()-ox, (ty+1)*fm.height()-oy,s,strlen(s));
- p.end();
-
- tx = tx + strlen(s);
- if (tx>TEXT_COLS) {tx=0;ty++;};
- if (ty>TEXT_LINES) {ClearAll();};
-
+       QPainter p;
+       QFontMetrics fm(*prv_font);
+
+       p.begin(canvas);
+       p.setPen(*lcolors[fcol]);
+       p.setBackgroundColor(*lcolors[bcol]);
+       p.setBackgroundMode(OpaqueMode);
+       p.setFont(*prv_font);
+       p.drawText(tx * fm.maxWidth(), (ty + 1) * fm.height(), s, strlen(s));
+       p.end();
+
+       p.begin(this);
+       p.setPen(*lcolors[fcol]);
+       p.setBackgroundColor(*lcolors[bcol]);
+       p.setBackgroundMode(OpaqueMode);
+       p.setFont(*prv_font);
+       p.drawText(tx * fm.maxWidth() - ox, (ty + 1) * fm.height() - oy, s,
+                                                               strlen(s));
+       p.end();
+
+       tx = tx + strlen(s);
+       if (tx > TEXT_COLS) {
+               tx = 0;
+               ty++;
+       }
+       if (ty > TEXT_LINES) {
+               ClearAll();
+       }
 }
 
 void VGR::WriteChar(char a)
 {
- QPainter p;
- QFontMetrics fm(*prv_font);
- char s[2];
- s[0] = a;
- s[1] = '\0';
-
-if (GraphRead)
-{
- p.begin(canvas);
- p.setPen(*lcolors[gfcol]);
- p.setBackgroundColor(*lcolors[gbcol]);
- p.setBackgroundMode(OpaqueMode);
- p.setFont(*prv_font);
- p.drawText(gx,gy+fm.height(),s,strlen(s));
- p.end();
-
- p.begin(this);
- p.setPen(*lcolors[gfcol]);
- p.setBackgroundColor(*lcolors[gbcol]);
- p.setBackgroundMode(OpaqueMode);
- p.setFont(*prv_font);
- p.drawText(gx-ox, gy-oy+fm.height(),s,strlen(s));
- p.end();
-
- gx = gx + strlen(s)*fm.maxWidth();
- if (gx>MAXWIDTH) {gy=gy+fm.height();gx=0;};
- if (gy>MAXHEIGHT) {ClearAll();};
-}
-else
-{
- p.begin(canvas);
- p.setPen(*lcolors[fcol]);
- p.setBackgroundColor(*lcolors[bcol]);
- p.setBackgroundMode(OpaqueMode);
- p.setFont(*prv_font);
- p.drawText(tx*fm.maxWidth(),(ty+1)*fm.height(),s,strlen(s));
- p.end();
-
- p.begin(this);
- p.setPen(*lcolors[fcol]);
- p.setBackgroundColor(*lcolors[bcol]);
- p.setBackgroundMode(OpaqueMode);
- p.setFont(*prv_font);
- p.drawText(tx*fm.maxWidth()-ox, (ty+1)*fm.height()-oy,s,strlen(s));
- p.end();
-
- tx = tx + strlen(s);
- if (tx>TEXT_COLS) {tx=0;ty++;};
- if (ty>TEXT_LINES) {ClearAll();};
-}
+       QPainter p;
+       QFontMetrics fm(*prv_font);
+       char s[2];
+
+       s[0] = a;
+       s[1] = '\0';
+
+       if (GraphRead) {
+               p.begin(canvas);
+               p.setPen(*lcolors[gfcol]);
+               p.setBackgroundColor(*lcolors[gbcol]);
+               p.setBackgroundMode(OpaqueMode);
+               p.setFont(*prv_font);
+               p.drawText(gx, gy + fm.height(), s, strlen(s));
+               p.end();
+
+               p.begin(this);
+               p.setPen(*lcolors[gfcol]);
+               p.setBackgroundColor(*lcolors[gbcol]);
+               p.setBackgroundMode(OpaqueMode);
+               p.setFont(*prv_font);
+               p.drawText(gx - ox, gy - oy + fm.height(), s, strlen(s));
+               p.end();
+
+               gx = gx + strlen(s) * fm.maxWidth();
+               if (gx > MAXWIDTH) {
+                       gy = gy + fm.height();
+                       gx=0;
+               }
+               if (gy > MAXHEIGHT) {
+                       ClearAll();
+               }
+       } else {
+               p.begin(canvas);
+               p.setPen(*lcolors[fcol]);
+               p.setBackgroundColor(*lcolors[bcol]);
+               p.setBackgroundMode(OpaqueMode);
+               p.setFont(*prv_font);
+               p.drawText(tx * fm.maxWidth(), (ty + 1) * fm.height(), s, 
+                                                               strlen(s));
+               p.end();
+
+               p.begin(this);
+               p.setPen(*lcolors[fcol]);
+               p.setBackgroundColor(*lcolors[bcol]);
+               p.setBackgroundMode(OpaqueMode);
+               p.setFont(*prv_font);
+               p.drawText(tx * fm.maxWidth() - ox, (ty + 1) * fm.height() - oy,
+                                                               s, strlen(s));
+               p.end();
+
+               tx = tx + strlen(s);
+               if (tx > TEXT_COLS) {
+                       tx = 0;
+                       ty++;
+               }
+               if (ty > TEXT_LINES) {
+                       ClearAll();
+               }
+       }
 }
 
 void VGR::DelChar()
 {
- QPainter p;
- QFontMetrics fm(*prv_font);
-
-if (GraphRead)
-{
- p.begin(canvas);
- p.setPen(*lcolors[fcol]);
- p.fillRect(gx-fm.maxWidth(),gy,fm.maxWidth(),
-           fm.height()+fm.descent()+1, *lcolors[bcol]);
- p.end();
-
- p.begin(this);
- p.setPen(*lcolors[fcol]);
-
- p.fillRect(gx-ox-fm.maxWidth(), gy-oy,fm.maxWidth(),
-           fm.height()+fm.descent()+1, *lcolors[bcol]);
- p.end();
- gx=gx-fm.maxWidth();
-
-}
-else // Text read
-{
- p.begin(canvas);
- p.setPen(*lcolors[fcol]);
- p.fillRect((tx-1)*fm.maxWidth(),(ty)*fm.height(),tx*fm.maxWidth(),
-           (ty+1)*fm.height()+fm.descent()+1, *lcolors[bcol]);
- p.end();
-
- p.begin(this);
- p.setPen(*lcolors[fcol]);
- p.fillRect((tx-1)*fm.maxWidth()-ox, (ty)*fm.height()-oy,tx*fm.maxWidth(),
-           (ty+1)*fm.height()+fm.descent()+1, *lcolors[bcol]);
- p.end();
-
- tx--;
- if (tx<0) tx=0;
-}
+       QPainter p;
+       QFontMetrics fm(*prv_font);
+
+       if (GraphRead) {
+               p.begin(canvas);
+               p.setPen(*lcolors[fcol]);
+               p.fillRect(gx - fm.maxWidth(), gy, fm.maxWidth(),
+                               fm.height() + fm.descent() + 1, *lcolors[bcol]);
+               p.end();
+
+               p.begin(this);
+               p.setPen(*lcolors[fcol]);
+
+               p.fillRect(gx - ox - fm.maxWidth(), gy - oy, fm.maxWidth(),
+                               fm.height() + fm.descent() + 1, *lcolors[bcol]);
+               p.end();
+               gx = gx - fm.maxWidth();
+       } else {
+               /* Text read */
+               p.begin(canvas);
+               p.setPen(*lcolors[fcol]);
+               p.fillRect((tx - 1) * fm.maxWidth(), (ty) * fm.height(), 
+                                                       tx * fm.maxWidth(),
+                               (ty + 1) * fm.height() + fm.descent() + 1, 
+                                                               *lcolors[bcol]);
+               p.end();
+
+               p.begin(this);
+               p.setPen(*lcolors[fcol]);
+               p.fillRect((tx - 1) * fm.maxWidth() - ox, (ty) * fm.height() - oy,
+                                                       tx * fm.maxWidth(),
+                               (ty + 1) * fm.height() + fm.descent() + 1,
+                                                               *lcolors[bcol]);
+               p.end();
+
+               tx--;
+               if (tx < 0)
+                       tx = 0;
+       }
 }
 
 void VGR::PutChar(char a)
 {
-QPainter p;
- QFontMetrics fm(*prv_font);
- char s[2];
- s[0] = a;
- s[1] = '\0';
- p.begin(canvas);
- p.setPen(*lcolors[fcol]);
- p.setBackgroundColor(*lcolors[bcol]);
- p.setBackgroundMode(OpaqueMode);
- p.setFont(*prv_font);
p.drawText(tx*fm.maxWidth(),(ty+1)*fm.height(),s,strlen(s));
- p.end();
-
- p.begin(this);
- p.setPen(*lcolors[fcol]);
- p.setBackgroundColor(*lcolors[bcol]);
- p.setBackgroundMode(OpaqueMode);
- p.setFont(*prv_font);
- p.drawText(tx*fm.maxWidth()-ox, (ty+1)*fm.height()-oy,s,strlen(s));
p.end();
-
+       QPainter p;
      QFontMetrics fm(*prv_font);
      char s[2];
+
      s[0] = a;
      s[1] = '\0';
      p.begin(canvas);
      p.setPen(*lcolors[fcol]);
      p.setBackgroundColor(*lcolors[bcol]);
      p.setBackgroundMode(OpaqueMode);
      p.setFont(*prv_font);
      p.drawText(tx * fm.maxWidth(), (ty + 1) * fm.height(), s, strlen(s));
      p.end();
+
      p.begin(this);
      p.setPen(*lcolors[fcol]);
      p.setBackgroundColor(*lcolors[bcol]);
      p.setBackgroundMode(OpaqueMode);
      p.setFont(*prv_font);
+       p.drawText(tx * fm.maxWidth() - ox, (ty + 1) * fm.height() - oy, s,
                                                              strlen(s));
+       p.end();
 }
 
 void VGR::WriteLine()
 {
- tx=0;ty++;
- if (ty>TEXT_LINES) {ClearAll();}; 
+       tx = 0;
+       ty++;
+       if (ty > TEXT_LINES) {
+               ClearAll();
+       }
 }
 
 
 void VGR::Point(int x, int y)
 {
- QPainter p;
      QPainter p;
 
- p.begin(canvas);
- p.setPen(*lcolors[fcol]);
- p.drawPoint(x,y);
- p.end();
-
- p.begin(this);
- p.setPen(*lcolors[fcol]);
- p.drawPoint(x-ox, y-oy);
- p.end();
+       p.begin(canvas);
+       p.setPen(*lcolors[fcol]);
+       p.drawPoint(x, y);
+       p.end();
 
+       p.begin(this);
+       p.setPen(*lcolors[fcol]);
+       p.drawPoint(x - ox, y - oy);
+       p.end();
 }
 
-
 void VGR::ClearArea(int x, int y, int w, int h)
 {
- QPainter p;
- p.begin(canvas);
p.eraseRect(x,y,w,h);
- p.end();
-
- p.begin(this);
p.eraseRect(x-ox,y-oy,w,h);
- p.end();
      QPainter p;
      p.begin(canvas);
      p.eraseRect(x, y, w, h);
      p.end();
+
      p.begin(this);
      p.eraseRect(x - ox, y - oy, w, h);
      p.end();
 }
 
 void VGR::ClearAll()
 {
- QPainter p;
- QBrush b(QColor(white));
      QPainter p;
      QBrush b(QColor(white));
 
- tx = 0; ty = 0;
- curx = 0; cury = 0;
- canvas->fill(backgroundColor());
-
- p.begin(this);
- p.fillRect(0,0,width()-16,height()-16,backgroundColor());
- p.end();
+       tx = ty = 0;
+       curx = cury = 0;
+       canvas->fill(backgroundColor());
 
+       p.begin(this);
+       p.fillRect(0, 0, width() - 16, height() - 16, backgroundColor());
+       p.end();
 }
 
-
 int VGR::Getmap(int w, int h)
 {
- QPixmap *m;
      QPixmap *m;
 
m = new QPixmap(w,h);
bitBlt(m,0,0,canvas,curx,cury,w,h);
maps.append(new VGRMap(firstfreemap,m));
- firstfreemap++;
return(firstfreemap-1);
      m = new QPixmap(w, h);
      bitBlt(m, 0, 0, canvas, curx, cury, w, h);
      maps.append(new VGRMap(firstfreemap, m));
      firstfreemap++;
      return(firstfreemap - 1);
 }
 
 
 void VGR::Putmap(int map)
 {
- VGRMap *m;
- m = maps.first();
- while (m!=NULL)
- {
-  if (m->number == map)
-  {
-    bitBlt(canvas,curx,cury,m->map,0,0,m->map->width(),m->map->height());
-    bitBlt(this,curx-ox, cury-oy,m->map,0,0,m->map->width(),m->map->height());
-    break;
-   }
-   m = maps.next();
- }
-} 
-
-
+       VGRMap *m;
+       m = maps.first();
+       while (m != NULL) {
+               if (m->number == map) {
+                       bitBlt(canvas, curx, cury, m->map, 0, 0,
+                                       m->map->width(), m->map->height());
+                       bitBlt(this, curx - ox, cury - oy, m->map, 0, 0,
+                                       m->map->width(), m->map->height());
+                       break;
+               }
+               m = maps.next();
+       }
+}
 
 void VGR::Outstring(int x, int y, char *s, int b, int f)
 {
- QPainter p;
- QFontMetrics fm(*prv_font);
-
- p.begin(canvas);
- p.setPen(*lcolors[f]);
- p.setBackgroundColor(*lcolors[b]);
- p.setBackgroundMode(OpaqueMode);
- p.setFont(*prv_font);
p.drawText(x,y+fm.height(),s,strlen(s));
- p.end();
-
- p.begin(this);
- p.setPen(*lcolors[f]);
- p.setFont(*prv_font);
- p.setBackgroundColor(*lcolors[b]);
- p.setBackgroundMode(OpaqueMode);
p.drawText(x-ox, y-oy+fm.height(),s,strlen(s));
- p.end();
      QPainter p;
      QFontMetrics fm(*prv_font);
+
      p.begin(canvas);
      p.setPen(*lcolors[f]);
      p.setBackgroundColor(*lcolors[b]);
      p.setBackgroundMode(OpaqueMode);
      p.setFont(*prv_font);
      p.drawText(x, y + fm.height(), s, strlen(s));
      p.end();
+
      p.begin(this);
      p.setPen(*lcolors[f]);
      p.setFont(*prv_font);
      p.setBackgroundColor(*lcolors[b]);
      p.setBackgroundMode(OpaqueMode);
      p.drawText(x - ox, y - oy + fm.height(), s, strlen(s));
      p.end();
 
 }
 
 void VGR::writeintxy(int x, int y, int val,int c)
 {
- QPainter p;
- char s[80];
- QFontMetrics fm(*prv_font);
-
- sprintf(s,"%d",val);
- p.begin(canvas);
- p.setPen(*lcolors[c]);
- p.setFont(*prv_font);
- p.drawText(x,y,s,strlen(s));
- p.end();
-
- p.begin(this);
- p.setPen(*lcolors[c]);
- p.setFont(*prv_font);
- p.drawText(x-ox, y-oy+fm.height(),s,strlen(s));
- p.end();
-
+       QPainter p;
+       char s[80];
+       QFontMetrics fm(*prv_font);
+
+       sprintf(s, "%d", val);
+       p.begin(canvas);
+       p.setPen(*lcolors[c]);
+       p.setFont(*prv_font);
+       p.drawText(x, y, s, strlen(s));
+       p.end();
+
+       p.begin(this);
+       p.setPen(*lcolors[c]);
+       p.setFont(*prv_font);
+       p.drawText(x - ox, y - oy + fm.height(), s, strlen(s));
+       p.end();
 }
 
 
 void VGR::CurPos()
 {
- G_MESSAGE msg;
- msg.msg_type = MSG_GRAPH;
- msg.param.pword[0] = GRAPH_CURPOS_RESPONSE;
- msg.param.pword[3] = curx;
- msg.param.pword[4] = cury;
write(resp_sock,&msg,sizeof(G_MESSAGE));
      G_MESSAGE msg;
      msg.msg_type = MSG_GRAPH;
      msg.param.pword[0] = GRAPH_CURPOS_RESPONSE;
      msg.param.pword[3] = curx;
      msg.param.pword[4] = cury;
      write(resp_sock, &msg, sizeof(G_MESSAGE));
 }
 
 
 void VGR::RequestMessage()
 {
- G_MESSAGE m,mm;
- int stat;
-
- bzero(&m,sizeof(G_MESSAGE));
- stat = read(resp_sock,&m,sizeof(G_MESSAGE));
- if (stat>0)
-   if (m.msg_type == MSG_GRAPH)
- {
-  switch(m.param.pword[0])
-   {
-
-   case GRAPH_FREE: 
-                   close_btn->setEnabled(TRUE);
-                   delete request;
-                   request=NULL;
-                   break;
-   case GRAPH_SET_TITLE:setCaption(m.param.pstr);break;                
-   case GRAPH_WRITE:if (strcmp(m.param.pstr,"\n")==0)
-                   WriteLine();else
-                   WriteText(m.param.pstr);
-                   break;
-   case GRAPH_WRITEXY: TextXY(m.param.pword[3], 
-                      m.param.pword[4],m.param.pstr);break;
-   case GRAPH_READCHAR: if (!GetInput(0)) char_wait = TRUE;break;
-   case GRAPH_READSTR:  strcpy(internal_buffer,"");strcnt=0;
-                        string_wait=TRUE;WriteChar('_');break;
-   case GRAPH_READLN:  if (was_line)
-                       {
-                          m.msg_type = MSG_GRAPH;
-                          m.param.pword[0] = GRAPH_READLN_RESPONSE;
-                          write(resp_sock,&m,sizeof(G_MESSAGE));
-                          was_line=FALSE; 
-                         }
-                       else  { if (!GetInput(1)) line_wait = TRUE;} 
-                       break;                     
-   case GRAPH_PUTCHAR:  WriteChar(m.param.pchar);break;
-   case GRAPH_LINETO:   Line(curx,cury,
-                        m.param.pword[3],m.param.pword[4]);break;               
-   case GRAPH_ELLIPSE:  Ellipse(m.param.pword[3], 
-                  m.param.pword[4],m.param.pword[5],m.param.pword[6],
-                  m.param.pword[7],m.param.pword[8], m.param.pword[9]);
-                 break;        
-   case GRAPH_RECT: Rect(m.param.pword[3], 
-                  m.param.pword[4],m.param.pword[5],
-                  m.param.pword[6], m.param.pword[7],
-                  m.param.pword[8]);
-                  break;       
-   case GRAPH_FOREGROUND:SetForeground(m.param.pword[3]);break;        
-   case GRAPH_BACKGROUND:SetBackground(m.param.pword[3]);break ;
-   case GRAPH_POINT:Point(m.param.pword[3], m.param.pword[4]);
-                   break;
-   case GRAPH_CLEAR:ClearAll();
-                  break;
-   case GRAPH_INKEY:if (!GetInput(2)) inkey_wait = TRUE;break; 
-   case GRAPH_CURPOS:CurPos();break;
-   case GRAPH_OUTSTRING:Outstring( m.param.pword[2],m.param.pword[3],m.param.pstr,
-           m.param.pword[4],m.param.pword[5]);
-            break;
-   case GRAPH_WRITEINTXY: writeintxy(m.param.pword[2],
-                           m.param.pword[3],m.param.pword[4],
-                           m.param.pword[5]);break;
-   case GRAPH_GETMAP:
-     bzero(&mm,sizeof(G_MESSAGE));
-     mm.msg_type = MSG_GRAPH;
-     mm.param.pword[0] = GRAPH_GETMAP_RESPONSE;
-     mm.param.pword[2] = Getmap(m.param.pword[2]-curx,
-                         m.param.pword[3]-cury);
-     mm.param.pword[3] = m.param.pword[2]-curx;
-     mm.param.pword[4] = m.param.pword[3]-cury;
-     write(resp_sock,&mm,sizeof(G_MESSAGE));                           
-                      break;
-   case GRAPH_PUTMAP: Putmap(m.param.pword[2]);
-                      break;                                                          
-   case GRAPH_MOVE: curx = m.param.pword[2];
-                    cury = m.param.pword[3];
-                    break;
-   case GRAPH_MGETPRESS:mouse_wait=TRUE;break;
-   case GRAPH_MAGIC: MagicGraph(&m);break;
-   case GRAPH_HASCII: if (m.param.pword[1]!=0) CharXY(curx,cury,(char)m.param.pword[1]); 
-                      else CharXY(curx,cury,' ');break; 
-    } /* end switch */
- } /* stat > 0 */
+       G_MESSAGE m,mm;
+       int stat;
+
+       bzero(&m, sizeof(G_MESSAGE));
+       stat = read(resp_sock, &m, sizeof(G_MESSAGE));
+       if (stat > 0) {
+               if (m.msg_type == MSG_GRAPH) {
+                       switch(m.param.pword[0]) {
+                       case GRAPH_FREE: 
+                               close_btn->setEnabled(TRUE);
+                               delete request;
+                               request = NULL;
+                               break;
+                       case GRAPH_SET_TITLE:
+                               setCaption(m.param.pstr);
+                               break;
+                       case GRAPH_WRITE:
+                               if (strcmp(m.param.pstr,"\n") == 0)
+                                       WriteLine();
+                               else
+                                       WriteText(m.param.pstr);
+
+                               break;
+                       case GRAPH_WRITEXY:
+                               TextXY(m.param.pword[3], m.param.pword[4], 
+                                                               m.param.pstr);
+                               break;
+                       case GRAPH_READCHAR:
+                               if (!GetInput(0))
+                                       char_wait = TRUE;
+
+                               break;
+                       case GRAPH_READSTR:
+                               strcpy(internal_buffer, "");
+                               strcnt = 0;
+                               string_wait = TRUE;
+                               WriteChar('_');
+                               break;
+                       case GRAPH_READLN:
+                               if (was_line) {
+                                       m.msg_type = MSG_GRAPH;
+                                       m.param.pword[0] = GRAPH_READLN_RESPONSE;
+                                       write(resp_sock, &m, sizeof(G_MESSAGE));
+                                       was_line = FALSE;
+                               } else if (!GetInput(1))
+                                       line_wait = TRUE;
+                               break;
+                       case GRAPH_PUTCHAR:
+                               WriteChar(m.param.pchar);
+                               break;
+                       case GRAPH_LINETO:
+                               Line(curx,cury, m.param.pword[3],
+                                                       m.param.pword[4]);
+                               break;
+                       case GRAPH_ELLIPSE:
+                               Ellipse(m.param.pword[3], m.param.pword[4],
+                                       m.param.pword[5], m.param.pword[6], 
+                                       m.param.pword[7], m.param.pword[8],
+                                                       m.param.pword[9]);
+                               break;
+                       case GRAPH_RECT:
+                               Rect(m.param.pword[3], m.param.pword[4], 
+                                       m.param.pword[5], m.param.pword[6],
+                                       m.param.pword[7], m.param.pword[8]);
+                               break;  
+                       case GRAPH_FOREGROUND:
+                               SetForeground(m.param.pword[3]);
+                               break;
+                       case GRAPH_BACKGROUND:
+                               SetBackground(m.param.pword[3]);
+                               break;
+                       case GRAPH_POINT:
+                               Point(m.param.pword[3], m.param.pword[4]);
+                               break;
+                       case GRAPH_CLEAR:
+                               ClearAll();
+                               break;
+                       case GRAPH_INKEY:
+                               if (!GetInput(2))
+                                       inkey_wait = TRUE;
+
+                               break; 
+                       case GRAPH_CURPOS:
+                               CurPos();
+                               break;
+                       case GRAPH_OUTSTRING:
+                               Outstring(m.param.pword[2], m.param.pword[3],
+                                               m.param.pstr, m.param.pword[4],
+                                               m.param.pword[5]);
+                               break;
+                       case GRAPH_WRITEINTXY:
+                               writeintxy(m.param.pword[2], m.param.pword[3],
+                                       m.param.pword[4], m.param.pword[5]);
+                               break;
+                       case GRAPH_GETMAP:
+                               bzero(&mm, sizeof(G_MESSAGE));
+                               mm.msg_type = MSG_GRAPH;
+                               mm.param.pword[0] = GRAPH_GETMAP_RESPONSE;
+                               mm.param.pword[2] = Getmap(m.param.pword[2] - curx, m.param.pword[3] - cury);
+                               mm.param.pword[3] = m.param.pword[2] - curx;
+                               mm.param.pword[4] = m.param.pword[3] - cury;
+                               write(resp_sock, &mm, sizeof(G_MESSAGE));
+                               break;
+                       case GRAPH_PUTMAP:
+                               Putmap(m.param.pword[2]);
+                               break;
+                       case GRAPH_MOVE:
+                               curx = m.param.pword[2];
+                               cury = m.param.pword[3];
+                               break;
+                       case GRAPH_MGETPRESS:
+                               mouse_wait = TRUE;
+                               break;
+                       case GRAPH_MAGIC:
+                               MagicGraph(&m);
+                               break;
+                       case GRAPH_HASCII:
+                               if (m.param.pword[1] != 0)
+                                       CharXY(curx, cury, (char)m.param.pword[1]);
+                               else
+                                       CharXY(curx, cury, ' ');
+                               break;
+                       } /* end switch */
+               } /* stat > 0 */
+       }
 }
 
 
@@ -1051,126 +1159,159 @@ void VGR::RequestMessage()
 
 void VGR::MagicGraph(G_MESSAGE *msg)
 {
- int f,b;
- char ss[255];
- QPixmap p;
- VGRMap *pmap;
-
- switch(msg->param.pword[1])
- {
-  case 10:tx=msg->param.pword[2];ty=msg->param.pword[3];break; // gotoxy
-  case 11:fcol=msg->param.pword[2];break;                     // forecolor
-  case 12:bcol=msg->param.pword[2];break;                    // bkcolor
-  case 13:prv_font=bold_font;break;
-  case 14:prv_font=italic_font;break;
-  case 15:prv_font=normal_font;break; 
-  case 16:ClearAll();break;
-  case 303: // Draw array_of char (x,y,fcol,bcol)
-          f=fcol;b=bcol;
-          fcol=msg->param.pword[4];
-          bcol=msg->param.pword[5];
-          TextXY(msg->param.pword[2],msg->param.pword[3],
-                 msg->param.pstr);
-          fcol=f;bcol=b;
-          break;
-  case 300: // Draw int (x,y,int,fcol,bcol)
-          f=fcol;b=bcol;
-          fcol=msg->param.pword[5];
-          bcol=msg->param.pword[6];
-          IntXY(msg->param.pword[2],msg->param.pword[3],
-                 msg->param.pword[4]);
-          fcol=f;bcol=b;
-          break;
-  case 301: // Draw char (x,y,char,fcol,bcol)
-          f=fcol;b=bcol;
-          fcol=msg->param.pword[5];
-          bcol=msg->param.pword[6];
-          CharXY(msg->param.pword[2],msg->param.pword[3],
-                 (char)(msg->param.pword[4]));
-          fcol=f;bcol=b;
-          break;
-  case 302: // Draw real (x,y,int,frac,fcol,bcol)
-          f=fcol;b=bcol;
-          fcol=msg->param.pword[6];
-          bcol=msg->param.pword[7];
-          sprintf(ss,"%d.%d",msg->param.pword[4],msg->param.pword[5]);
-          TextXY(msg->param.pword[2],msg->param.pword[3],ss);
-          fcol=f;bcol=b;
-          break;
-  case -304: // ReadText (x,y,fcol,bcol)
-  case -305:
-  case -307:
-          gfcol=msg->param.pword[4];
-          gbcol=msg->param.pword[5];
-          strcpy(internal_buffer,"");strcnt=0;
-          GraphRead=TRUE;
-          gx=msg->param.pword[2];
-          gy=msg->param.pword[3]; 
-          string_wait=TRUE;WriteChar('_');
-          break;
-  case -306:
-          if (!GetInput(0))
-          {
-          gfcol=msg->param.pword[4];
-          gbcol=msg->param.pword[5];
-          strcpy(internal_buffer,"");strcnt=0;
-          GraphRead=TRUE;
-          gx=msg->param.pword[2];
-          gy=msg->param.pword[3]; 
-          char_wait = TRUE;
-          }
-          break;
-  case 308: // Put image from file (x,y,fname)
-            if (p.load(msg->param.pstr))
-            {
-             bitBlt(canvas,msg->param.pword[2],msg->param.pword[3],&p,0,0,p.width(),p.height());
-             bitBlt(this,msg->param.pword[2]-ox, msg->param.pword[3]-oy,&p,0,0,p.width(),p.height());
-             }
-          break;
-  case 309:// Kill map
-           pmap = maps.first();
-           while (pmap!=NULL)
-            {
-              if (msg->param.pword[2] == pmap->number)
-              {
-                maps.remove(pmap);
-                break;
-               }
-             pmap=maps.next();
-            }
-          break;
-  case 310: // Line (x1,y1,x2,y2,col)
-          f=fcol;
-          fcol=msg->param.pword[6];
-          Line(msg->param.pword[2],msg->param.pword[3],
-               msg->param.pword[4],msg->param.pword[5]);
-          fcol=f; 
-          break;
- case 311: // Rectangle(x1,y1,x2,y2,fcol,icol)
-          Rect(msg->param.pword[2],msg->param.pword[3],
-               msg->param.pword[4],msg->param.pword[5],
-               msg->param.pword[7],1);
-          Rect(msg->param.pword[2],msg->param.pword[3],
-               msg->param.pword[4],msg->param.pword[5],
-               msg->param.pword[6],0);
-          break;
- case 312: // ClearArea(x1,y1,w,h)
-         ClearArea(msg->param.pword[2],msg->param.pword[3],         
-                   msg->param.pword[4],msg->param.pword[5]);
-         break;
-  }//switch
+       int f,b;
+       char ss[255];
+       QPixmap p;
+       VGRMap *pmap;
+
+       switch(msg->param.pword[1]) {
+       /* gotoxy */
+       case 10:
+               tx = msg->param.pword[2];
+               ty = msg->param.pword[3];
+               break;
+       /* forecolor */
+       case 11:
+               fcol = msg->param.pword[2];
+               break;
+       /* bkcolor */
+       case 12:
+               bcol = msg->param.pword[2];
+               break;
+       case 13:
+               prv_font = bold_font;
+               break;
+       case 14:
+               prv_font = italic_font;
+               break;
+       case 15:
+               prv_font = normal_font;
+               break; 
+       case 16:
+               ClearAll();
+               break;
+       /* Draw array_of char (x,y,fcol,bcol) */
+       case 303:
+               f = fcol;
+               b = bcol;
+               fcol = msg->param.pword[4];
+               bcol = msg->param.pword[5];
+               TextXY(msg->param.pword[2], msg->param.pword[3], msg->param.pstr);
+               fcol = f;
+               bcol = b;
+               break;
+       /* Draw int (x,y,int,fcol,bcol) */
+       case 300:
+               f = fcol;
+               b = bcol;
+               fcol = msg->param.pword[5];
+               bcol = msg->param.pword[6];
+               IntXY(msg->param.pword[2], msg->param.pword[3], msg->param.pword[4]);
+               fcol = f;
+               bcol = b;
+               break;
+       /* Draw char (x,y,char,fcol,bcol) */
+       case 301:
+               f = fcol;
+               b = bcol;
+               fcol = msg->param.pword[5];
+               bcol = msg->param.pword[6];
+               CharXY(msg->param.pword[2], msg->param.pword[3], 
+                                               (char)(msg->param.pword[4]));
+               fcol = f;
+               bcol = b;
+               break;
+       /* Draw real (x,y,int,frac,fcol,bcol) */
+       case 302:
+               f = fcol;
+               b = bcol;
+               fcol = msg->param.pword[6];
+               bcol = msg->param.pword[7];
+               sprintf(ss, "%d.%d", msg->param.pword[4], msg->param.pword[5]);
+               TextXY(msg->param.pword[2], msg->param.pword[3], ss);
+               fcol = f;
+               bcol = b;
+               break;
+       /* ReadText (x,y,fcol,bcol) */
+       case -304:
+       case -305:
+       case -307:
+               gfcol = msg->param.pword[4];
+               gbcol = msg->param.pword[5];
+               strcpy(internal_buffer, "");
+               strcnt = 0;
+               GraphRead = TRUE;
+               gx = msg->param.pword[2];
+               gy = msg->param.pword[3]; 
+               string_wait = TRUE;
+               WriteChar('_');
+               break;
+       case -306:
+               if (!GetInput(0)) {
+                       gfcol = msg->param.pword[4];
+                       gbcol = msg->param.pword[5];
+                       strcpy(internal_buffer, "");
+                       strcnt = 0;
+                       GraphRead = TRUE;
+                       gx = msg->param.pword[2];
+                       gy = msg->param.pword[3]; 
+                       char_wait = TRUE;
+               }
+               break;
+       /* Put image from file (x,y,fname) */
+       case 308:
+               if (p.load(msg->param.pstr)) {
+                       bitBlt(canvas, msg->param.pword[2],
+                                               msg->param.pword[3], &p,
+                                               0, 0, p.width(), p.height());
+                       bitBlt(this, msg->param.pword[2] - ox,
+                                               msg->param.pword[3] - oy, &p,
+                                               0, 0, p.width(), p.height());
+               }
+               break;
+       /* Kill map */
+       case 309:
+               pmap = maps.first();
+               while (pmap != NULL) {
+                       if (msg->param.pword[2] == pmap->number) {
+                               maps.remove(pmap);
+                               break;
+                       }
+                       pmap = maps.next();
+               }
+               break;
+       /* Line (x1,y1,x2,y2,col) */
+       case 310:
+               f = fcol;
+               fcol = msg->param.pword[6];
+               Line(msg->param.pword[2], msg->param.pword[3], 
+                               msg->param.pword[4], msg->param.pword[5]);
+               fcol = f;
+               break;
+       /* Rectangle(x1,y1,x2,y2,fcol,icol) */
+       case 311:
+               Rect(msg->param.pword[2], msg->param.pword[3],
+                               msg->param.pword[4], msg->param.pword[5],
+                               msg->param.pword[7], 1);
+               Rect(msg->param.pword[2], msg->param.pword[3],
+                               msg->param.pword[4],msg->param.pword[5],
+                               msg->param.pword[6], 0);
+               break;
+       /* ClearArea(x1,y1,w,h) */
+       case 312:
+               ClearArea(msg->param.pword[2],msg->param.pword[3],
+                               msg->param.pword[4], msg->param.pword[5]);
+               break;
+       }//switch
 }
 
-
-
-
 #include "loggraph.moc"
 
-int main( int argc, char **argv )
+int main(int argc, char **argv)
 {
-    QApplication app( argc, argv );
-    VGR gs(argv[1]);
-    app.setMainWidget(&gs);
-    gs.show();
-    return app.exec();
+       QApplication app(argc, argv);
+       VGR gs(argv[1]);
+       app.setMainWidget(&gs);
+       gs.show();
+       return app.exec();
 }