home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / magazine / progjour / 1991 / 04 / v_close.c < prev    next >
C/C++ Source or Header  |  1991-05-03  |  885b  |  31 lines

  1. /*    v_close.c- Remove Viewport from Screen Permanantly */
  2.  
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5. #include <conio.h>
  6. #include <tools/viewport.h>
  7.  
  8. int v_close( viewport *v )
  9. {
  10.     /* Close the viewport (set it back to a pristine condition). The
  11.      * underlying text is restored if it was saved by v_open. Any
  12.      * old image (as is saved by v_deactivate()) is discarded.
  13.      */
  14.  
  15.     if( v->magic != VMAGIC )
  16.         return 0;
  17.  
  18.     if( v->old_image )                  /* If window is inactive,       */
  19.         VFREE( v->old_image );          /* free the old image           */
  20.  
  21.     if( v->savebuf )                    /* and restore original text.   */
  22.     {
  23.         _v_restore_scr( v->savebuf, v->row, v->col, v->nrows, v->ncols );
  24.         VFREE( v->savebuf );
  25.         v->savebuf = NULL;
  26.     }
  27.     v->closed   = 1;
  28.     v->inactive = 1;
  29.     return 1;
  30. }
  31.