OpenCOBOL 1.1pre-rel
screenio.h
Go to the documentation of this file.
00001 /*
00002  * Copyright (C) 2002-2009 Keisuke Nishida
00003  * Copyright (C) 2007-2009 Roger While
00004  *
00005  * This library is free software; you can redistribute it and/or
00006  * modify it under the terms of the GNU Lesser General Public License
00007  * as published by the Free Software Foundation; either version 2.1,
00008  * or (at your option) any later version.
00009  *
00010  * This library is distributed in the hope that it will be useful,
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00013  * GNU Lesser General Public License for more details.
00014  *
00015  * You should have received a copy of the GNU Lesser General Public
00016  * License along with this library; see the file COPYING.LIB.  If
00017  * not, write to the Free Software Foundation, 51 Franklin Street, Fifth Floor
00018  * Boston, MA 02110-1301 USA
00019  */
00020 
00021 #ifndef COB_SCREENIO_H
00022 #define COB_SCREENIO_H
00023 
00024 #include <libcob/common.h>
00025 
00026 #define COB_SCREEN_BLACK        0
00027 #define COB_SCREEN_BLUE         1
00028 #define COB_SCREEN_GREEN        2
00029 #define COB_SCREEN_CYAN         3
00030 #define COB_SCREEN_RED          4
00031 #define COB_SCREEN_MAGENTA      5
00032 #define COB_SCREEN_YELLOW       6
00033 #define COB_SCREEN_WHITE        7
00034 
00035 #define COB_SCREEN_LINE_PLUS    0x00000001
00036 #define COB_SCREEN_LINE_MINUS   0x00000002
00037 #define COB_SCREEN_COLUMN_PLUS  0x00000004
00038 #define COB_SCREEN_COLUMN_MINUS 0x00000008
00039 
00040 #define COB_SCREEN_AUTO         0x00000010
00041 #define COB_SCREEN_BELL         0x00000020
00042 #define COB_SCREEN_BLANK_LINE   0x00000040
00043 #define COB_SCREEN_BLANK_SCREEN 0x00000080
00044 #define COB_SCREEN_BLINK        0x00000100
00045 #define COB_SCREEN_ERASE_EOL    0x00000200
00046 #define COB_SCREEN_ERASE_EOS    0x00000400
00047 #define COB_SCREEN_FULL         0x00000800
00048 #define COB_SCREEN_HIGHLIGHT    0x00001000
00049 #define COB_SCREEN_LOWLIGHT     0x00002000
00050 #define COB_SCREEN_REQUIRED     0x00004000
00051 #define COB_SCREEN_REVERSE      0x00008000
00052 #define COB_SCREEN_SECURE       0x00010000
00053 #define COB_SCREEN_UNDERLINE    0x00020000
00054 #define COB_SCREEN_OVERLINE     0x00040000
00055 #define COB_SCREEN_PROMPT       0x00080000
00056 #define COB_SCREEN_UPDATE       0x00100000
00057 #define COB_SCREEN_INPUT        0x00200000
00058 #define COB_SCREEN_SCROLL_DOWN  0x00400000
00059 
00060 #define COB_SCREEN_TYPE_GROUP           0
00061 #define COB_SCREEN_TYPE_FIELD           1
00062 #define COB_SCREEN_TYPE_VALUE           2
00063 #define COB_SCREEN_TYPE_ATTRIBUTE       3
00064 
00065 typedef struct __cob_screen cob_screen;
00066 
00067 struct __cob_screen {
00068         cob_screen              *next;
00069         cob_screen              *child;         /* for COB_SCREEN_TYPE_GROUP */
00070         cob_field               *field;         /* for COB_SCREEN_TYPE_FIELD */
00071         cob_field               *value;         /* for COB_SCREEN_TYPE_VALUE */
00072         cob_field               *line;
00073         cob_field               *column;
00074         cob_field               *foreg;
00075         cob_field               *backg;
00076         int                     type;
00077         int                     occurs;
00078         int                     attr;           /* for COB_SCREEN_TYPE_ATTRIBUTE */
00079 };
00080 
00081 DLL_EXPIMP extern int   cob_screen_mode;
00082 
00083 extern void cob_screen_line_col (cob_field *, const int);
00084 extern void cob_screen_display  (cob_screen *, cob_field *, cob_field *);
00085 extern void cob_screen_accept   (cob_screen *, cob_field *, cob_field *);
00086 extern void cob_field_display   (cob_field *, cob_field *, cob_field *,
00087                                  cob_field *, cob_field *, cob_field *,
00088                                  const int);
00089 extern void cob_field_accept    (cob_field *, cob_field *, cob_field *,
00090                                  cob_field *, cob_field *, cob_field *,
00091                                  const int);
00092 
00093 #endif /* COB_SCREENIO_H */
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines