*** empty log message ***

This commit is contained in:
Paul Tucker
1999-08-07 19:19:19 +00:00
parent 064430ef10
commit 1910b8b0c0
8 changed files with 353 additions and 112 deletions

View File

@@ -1,3 +1,23 @@
19990808-15:00 EDT Paul Tucker <ptucker@sympatico.ca>
* makefile.vc
+ source/rtl/tbrowse.prg
+ source/rtl/tbcolumn.prg
+ source/debug/debugger.prg
+ tests/working/testbrw.prg
* source/rtl/gtapi.c
-hb_gt_ScreenBuffer
* include/gtapi.h
-hb_gt_ScreenBuffer
* source/rtl/gt/gtwin.c source/rtl/gtdos.c
+ Improved or added Dispbegin/end support
* minor corrections in gtdos
* source/rtl/gt_tpl.c
+ dummy hb_gt_Set/GetBlink hb_gt_replicate
* source/rtl/gtos2.c
+ dummy hb_gt_Set/GetBlink hb_gt_replicate
* corrected parameter order as reported by Davig G. Holme
NOTE: cursor sizes are not correct in this version.
19990807-19:34 GMT+1 Antonio Linares <alinares@fivetech.com>
* source/rtl/tbrowse.prg
* improved

View File

@@ -101,7 +101,8 @@ extern void hb_gt_SetAttribute( char cTop, char cLeft, char cBottom, char cRig
extern void hb_gt_DrawShadow( char cTop, char cLeft, char cBottom, char cRight, char attribute );
extern void hb_gt_DispBegin( void );
extern void hb_gt_DispEnd( void );
extern ULONG hb_gt_ScreenBuffer( ULONG buffer );
extern void hb_gt_SetMode( USHORT uiRows, USHORT uiCols );
extern BOOL hb_gt_GetBlink(void);
extern void hb_gt_SetBlink(BOOL bBlink);
#endif /* HB_GTAPI_H_ */

View File

@@ -18,6 +18,7 @@ RTL_DIR=source\rtl
RDD_DIR=source\rdd
HBPP_DIR=source\hbpp
TOOLS_DIR=source\tools
DEBUG_DIR=source\debug
VM_DIR=source\vm
INCLUDE_DIR=include
BIN_DIR=bin
@@ -90,6 +91,8 @@ HARBOUR_LIB_OBJS = \
$(OBJ_DIR)\setcolor.obj \
$(OBJ_DIR)\setkey.obj \
$(OBJ_DIR)\strings.obj \
$(OBJ_DIR)\tbcolumn.obj \
$(OBJ_DIR)\tbrowse.obj \
$(OBJ_DIR)\tclass.obj \
$(OBJ_DIR)\tget.obj \
$(OBJ_DIR)\tgetlist.obj \
@@ -401,6 +404,18 @@ $(OBJ_DIR)\setkey.obj : $(RTL_DIR)\setkey.c
$(OBJ_DIR)\strings.obj : $(RTL_DIR)\strings.c
$(CC) $(CLIBFLAGS) -Fo$@ $**
$(RTL_DIR)\tbcolumn.c : $(RTL_DIR)\tbcolumn.prg
$(HARBOUR_EXE) $** $(HARBOURFLAGS) -o$(**D)
$(OBJ_DIR)\tbcolumn.obj : $(RTL_DIR)\tbcolumn.c
$(CC) $(CLIBFLAGS) -Fo$@ $**
$(RTL_DIR)\tbrowse.c : $(RTL_DIR)\tbrowse.prg
$(HARBOUR_EXE) $** $(HARBOURFLAGS) -o$(**D)
$(OBJ_DIR)\tbrowse.obj : $(RTL_DIR)\tbrowse.c
$(CC) $(CLIBFLAGS) -Fo$@ $**
$(RTL_DIR)\tclass.c : $(RTL_DIR)\tclass.prg
$(HARBOUR_EXE) $** $(HARBOURFLAGS) -o$(**D)
@@ -422,6 +437,16 @@ $(OBJ_DIR)\tgetlist.obj : $(RTL_DIR)\tgetlist.c
$(OBJ_DIR)\transfrm.obj : $(RTL_DIR)\transfrm.c
$(CC) $(CLIBFLAGS) -Fo$@ $**
#
# Debugger source dependencies below. Add as needed
#
$(DEBUG_DIR)\debugger.c : $(DEBUG_DIR)\debugger.prg
$(HARBOUR_EXE) $** $(HARBOURFLAGS) -o$(**D)
$(OBJ_DIR)\debugger.obj : $(DEBUG_DIR)\debugger.c
$(CC) $(CLIBFLAGS) -Fo$@ $**
#
# VM source dependencies below. Add as needed
#

View File

@@ -46,15 +46,15 @@ char hb_gt_Row(void)
{
}
void hb_gt_SetCursorStyle(int style)
{
}
int hb_gt_GetCursorStyle(void)
{
return(0);
}
void hb_gt_SetCursorStyle(int style)
{
}
void hb_gt_Puts(char x, char y, char attr, char *str, int len)
{
}
@@ -94,3 +94,12 @@ void hb_gt_SetMode( USHORT uiRows, USHORT uiCols )
void hb_gt_Replicate( char c, DWORD nLength )
{
}
BOOL hb_gt_GetBlink()
{
RETURN FALSE;
}
void hb_gt_SetBlink( BOOL bBlink )
{
}

View File

@@ -7,6 +7,8 @@
*
* This module is based on VIDMGR by Andrew Clarke and modified for
* the Harbour project
*
* User programs should never call this layer directly!
*/
#include <string.h>
@@ -36,8 +38,17 @@ static char hb_gt_GetScreenMode(void);
static void hb_gt_SetCursorSize(char start, char end);
static void hb_gt_GetCursorSize(char *start, char *end);
#if defined(__WATCOMC__) && defined(__386__)
#define FAR
#endif
static char FAR *scrnPtr;
static char FAR *scrnStealth;
static char FAR *hb_gt_ScreenAddress(void);
void hb_gt_Init(void)
{
scrnStealth = (char *)-1;
scrnPtr = hb_gt_ScreenAddress();
}
void hb_gt_Done(void)
@@ -49,11 +60,12 @@ int hb_gt_IsColor(void)
return hb_gt_GetScreenMode() != 7;
}
#if defined(__WATCOMC__) && defined(__386__)
char *hb_gt_ScreenPtr(char cRow, char cCol)
static char FAR *hb_gt_ScreenAddress()
{
char *ptr;
char FAR *ptr;
#if defined(__WATCOMC__) && defined(__386__)
if (hb_gt_IsColor())
{
ptr = (char *)(0xB800 << 4);
@@ -62,14 +74,7 @@ char *hb_gt_ScreenPtr(char cRow, char cCol)
{
ptr = (char *)(0xB000 << 4);
}
return ptr + (cRow * hb_gt_GetScreenWidth() * 2) + (cCol * 2);
}
#else
char FAR *hb_gt_ScreenPtr(char cRow, char cCol)
{
char FAR *ptr;
if (hb_gt_IsColor())
{
ptr = (char FAR *)MK_FP(0xB800, 0x0000);
@@ -78,10 +83,15 @@ char FAR *hb_gt_ScreenPtr(char cRow, char cCol)
{
ptr = (char FAR *)MK_FP(0xB000, 0x0000);
}
return ptr + (cRow * hb_gt_GetScreenWidth() * 2) + (cCol * 2);
#endif
return ptr;
}
#endif
char FAR *hb_gt_ScreenPtr(char cRow, char cCol)
{
return scrnPtr + (cRow * hb_gt_GetScreenWidth() * 2) + (cCol * 2);
}
static char hb_gt_GetScreenMode(void)
{
@@ -115,8 +125,8 @@ void hb_gt_SetPos(char cRow, char cCol)
#if defined(__TURBOC__)
_AH = 0x02;
_BH = 0;
_DH = cRow
_DL = cCol
_DH = cRow;
_DL = cCol;
geninterrupt(0x10);
#else
union REGS regs;
@@ -268,10 +278,11 @@ void hb_gt_Puts(char cRow, char cCol, char attr, char *str, int len)
}
}
void hb_gt_GetText(char cTop, char cLeft, char cBottom, char right, char *dest)
void hb_gt_GetText(char cTop, char cLeft, char cBottom, char cRight, char *dest)
{
char x, y;
for (y = cTop; y <= cBottom, y++ )
for (y = cTop; y <= cBottom; y++ )
{
for (x = cLeft; x <= cRight; x++)
{
@@ -284,6 +295,7 @@ void hb_gt_GetText(char cTop, char cLeft, char cBottom, char right, char *dest)
void hb_gt_PutText(char cTop, char cLeft, char cBottom, char cRight, char *srce)
{
char x, y;
for (y = cTop; y <= cBottom; y++)
{
for (x = cLeft; x <= cRight; x++)
@@ -294,25 +306,52 @@ void hb_gt_PutText(char cTop, char cLeft, char cBottom, char cRight, char *srce)
}
}
void SetAttribute( char cTop, char cLeft, char cBottom, char cRight, char attribute )
void hb_gt_SetAttribute( char cTop, char cLeft, char cBottom, char cRight, char attribute )
{
char x, y;
char attr, ch;
for (y = cTop; y <= cBottom; y++)
{
for (x = cLeft; x <= cRight; x++)
{
hb_gt_xGetXY( y, x, &attr, &ch );
hb_gt_xPutch( y, x, attribute, ch);
}
}
}
void hb_gt_DrawShadow( char cTop, char cLeft, char cBottom, char cRight, char attribute )
{
char x, y;
char attr, ch;
for (y = cTop; y <= cBottom; y++)
{
hb_gt_xGetXY( y, cRight, &attr, &ch );
hb_gt_xPutch( y, cRight, attribute, ch);
if( y == cBottom )
for (x = cLeft; x <= cRight; x++)
{
hb_gt_xGetXY( y, x, &attr, &ch );
hb_gt_xPutch( y, x, attribute, ch );
}
}
}
/* returns col */
char hb_gt_Col(void)
{
#if defined(__TURBOC__)
_AH = 0x03;
_BH = 0;
geninterrupt(0x10);
return _DH;
return _DL;
#else
union REGS regs;
regs.h.ah = 0x02;
regs.h.ah = 0x03;
regs.h.bh = 0;
#if defined(__WATCOMC__) && defined(__386__)
int386(0x10, &regs, &regs);
@@ -323,7 +362,6 @@ char hb_gt_Col(void)
#endif
}
/* returns row */
char hb_gt_Row(void)
{
#if defined(__TURBOC__)
@@ -333,7 +371,7 @@ char hb_gt_Row(void)
return _DH;
#else
union REGS regs;
regs.h.ah = 0x02;
regs.h.ah = 0x03;
regs.h.bh = 0;
#if defined(__WATCOMC__) && defined(__386__)
int386(0x10, &regs, &regs);
@@ -344,15 +382,78 @@ char hb_gt_Row(void)
#endif
}
void hb_gt_DispBegin(void)
{
if( hb_gtDispCount() == 1 )
{
char FAR *ptr;
ULONG nSize;
nSize = hb_gt_GetScreenWidth() * hb_gt_GetScreenHeight() * 2;
ptr = scrnPtr;
if( (scrnPtr = scrnStealth) == (char *)-1)
scrnPtr = (char FAR *)hb_xgrab( nSize );
scrnStealth = ptr;
memcpy( (void *)scrnPtr, (void *)ptr, nSize );
}
}
void hb_gt_DispEnd(void)
{
if( hb_gtDispCount() == 0 )
{
char FAR *ptr;
ULONG nSize;
nSize = hb_gt_GetScreenWidth() * hb_gt_GetScreenHeight() * 2;
ptr = scrnPtr;
scrnPtr = scrnStealh;
scrnStealth = ptr;
memcpy( (void *)scrnPtr, (void *)ptr, nSize );
}
}
void hb_gt_SetMode( USHORT uiRows, USHORT uiCols )
{
uiRows=uiCols=0;
}
void hb_gt_DispBegin(void)
void hb_gt_Replicate(char c, DWORD nLength)
{
c= ' ';
nLength = 0;
}
void hb_gt_DispEnd(void)
BOOL hb_gt_GetBlink()
{
#if defined(__WATCOMC__) && defined(__386__)
return *((char *)0x0465) & 0x10;
#else
return *((char FAR *)MK_FP(0x0040, 0x0065)) &0x10;
#endif
}
void hb_gt_SetBlink( BOOL bBlink )
{
#if defined(__TURBOC__)
_AX = 0x1003;
_BX = bBlink;
geninterrupt(0x10);
return;
#else
union REGS regs;
regs.h.ah = 0x10;
regs.h.al = 0x03;
regs.h.bh = 0;
regs.h.bl = bBlink;
#if defined(__WATCOMC__) && defined(__386__)
int386(0x10, &regs, &regs);
#else
int86(0x10, &regs, &regs);
#endif
return;
#endif
}

View File

@@ -7,6 +7,8 @@
*
* This module is based on VIDMGR by Andrew Clarke and modified for
* the Harbour project
*
* User programs should never call this layer directly!
*/
#define INCL_KBD
@@ -72,6 +74,14 @@ char hb_gt_Col(void)
return y;
}
static void hb_gt_GetCursorSize(char *start, char *end)
{
VIOCURSORINFO vi;
VioGetCurType(&vi, 0);
*start = vi.yStart;
*end = vi.cEnd;
}
static void hb_gt_SetCursorSize(char start, char end)
{
VIOCURSORINFO vi;
@@ -82,25 +92,68 @@ static void hb_gt_SetCursorSize(char start, char end)
VioSetCurType(&vi, 0);
}
static void hb_gt_GetCursorSize(char *start, char *end)
int hb_gt_GetCursorStyle(void)
{
VIOCURSORINFO vi;
VioGetCurType(&vi, 0);
*start = vi.yStart;
*end = vi.cEnd;
char start, end;
int rc;
hb_gt_GetCursorSize(&start, &end);
if((start == 32) && (end == 32))
{
rc=SC_NONE;
}
else if((start == 6) && (end == 7))
{
rc=SC_NORMAL;
}
else if((start == 4) && (end == 7))
{
rc=SC_INSERT;
}
else if((start == 0) && (end == 7))
{
rc=SC_SPECIAL1;
}
else if((start == 0) && (end == 3))
{
rc=SC_SPECIAL2;
}
else
{
rc=SC_NONE;
}
return(rc);
}
void hb_gt_SetCursorStyle(int style)
{
/* TODO: need to implement this */
}
switch(style)
{
case SC_NONE:
hb_gt_SetCursorSize(32, 32);
break;
int hb_gt_GetCursorStyle(void)
{
/* TODO: need to implement this */
int rc=0;
case SC_NORMAL:
hb_gt_SetCursorSize(6, 7);
break;
return(rc);
case SC_INSERT:
hb_gt_SetCursorSize(4, 7);
break;
case SC_SPECIAL1:
hb_gt_SetCursorSize(0, 7);
break;
case SC_SPECIAL2:
hb_gt_SetCursorSize(0, 3);
break;
default:
break;
}
}
void hb_gt_Puts(char cRow, char cCol, char attr, char *str, int len)
@@ -152,3 +205,18 @@ void hb_gt_DispBegin(void)
void hb_gt_DispEnd(void)
{
}
void hb_gt_Replicate(char c, DWORD nLength)
{
c= ' ';
nLength = 0;
}
BOOL hb_gt_GetBlink()
{
return FALSE;
}
void hb_gt_SetBlink( BOOL bBlink )
{
}

View File

@@ -31,6 +31,8 @@ typedef WORD far *LPWORD;
static HANDLE HInput = INVALID_HANDLE_VALUE;
static HANDLE HOutput = INVALID_HANDLE_VALUE;
static HANDLE HStealth = INVALID_HANDLE_VALUE; /* DispBegin buffer */
static HANDLE HOriginal;
static HANDLE HCursor; /* When DispBegin is in effect, all cursor related
functions must refer to the original handle!
Otherwise turds are left on the screen when
@@ -56,16 +58,61 @@ void hb_gt_Init(void)
{
LOG("Initializing");
HInput = GetStdHandle(STD_INPUT_HANDLE);
HOutput = HCursor = GetStdHandle(STD_OUTPUT_HANDLE);
hb_gt_ScreenBuffer((ULONG)HOutput);
HOriginal = HOutput = HCursor = GetStdHandle(STD_OUTPUT_HANDLE);
}
void hb_gt_Done(void)
{
/* because the current screen may not be the one that was active
when the app started, we need to restore that screen and update
it with the current image before quiting.
*/
if( HOutput != HOriginal )
{
COORD coDest = {0, 0};
COORD coBuf; /* the size of the buffer to read into */
CHAR_INFO *pCharInfo; /* buffer to store info from ReadConsoleOutput */
SMALL_RECT srWin; /* source rectangle to read from */
CONSOLE_SCREEN_BUFFER_INFO csbi;
srWin.Top = srWin.Left = 0;
srWin.Bottom = (coBuf.Y = hb_gt_GetScreenHeight()) -1;
srWin.Right = (coBuf.X = hb_gt_GetScreenWidth()) -1;
/* allocate a buffer for the screen rectangle */
pCharInfo = (CHAR_INFO *)hb_xgrab(coBuf.X * coBuf.Y * sizeof(CHAR_INFO));
/* read the screen rectangle into the buffer */
ReadConsoleOutput(HOutput, /* current screen handle */
pCharInfo, /* transfer area */
coBuf, /* size of destination buffer */
coDest, /* upper-left cell to write data to */
&srWin); /* screen buffer rectangle to read from */
GetConsoleScreenBufferInfo(HOutput, &csbi);
HOutput = HOriginal;
SetConsoleScreenBufferSize(HOutput, coBuf);
SetConsoleCursorPosition(HOutput, csbi.dwCursorPosition);
WriteConsoleOutput(HOutput, /* output handle */
pCharInfo, /* data to write */
coBuf, /* col/row size of source buffer */
coDest, /* upper-left cell to write data from in src */
&srWin); /* screen buffer rect to write data to */
hb_xfree(pCharInfo);
SetConsoleActiveScreenBuffer(HOutput);
}
CloseHandle(HInput);
HInput = INVALID_HANDLE_VALUE;
CloseHandle(HOutput);
HOutput = INVALID_HANDLE_VALUE;
CloseHandle(HStealth);
HStealth = INVALID_HANDLE_VALUE;
CloseHandle(HOriginal);
HOriginal = INVALID_HANDLE_VALUE;
LOG("Ending");
}
@@ -366,19 +413,16 @@ void hb_gt_DispBegin(void)
COORD coBuf; /* the size of the buffer to read into */
CHAR_INFO *pCharInfo; /* buffer to store info from ReadConsoleOutput */
SMALL_RECT srWin; /* source rectangle to read from */
USHORT uiCount;
if( ( uiCount = hb_gtDispCount() ) == 1)
if( hb_gtDispCount() == 1 )
{
srWin.Top = srWin.Left = 0;
srWin.Right = (coBuf.X = hb_gt_GetScreenWidth()) -1;
srWin.Bottom = (coBuf.Y = hb_gt_GetScreenHeight()) -1;
srWin.Right = (coBuf.X = hb_gt_GetScreenWidth()) -1;
/* allocate a buffer for the screen rectangle */
pCharInfo = (CHAR_INFO *)hb_xgrab(coBuf.X * coBuf.Y * sizeof(CHAR_INFO));
hb_gt_ScreenBuffer( (ULONG)HOutput ); /* store current handle */
/* read the screen rectangle into the buffer */
ReadConsoleOutput(HOutput, /* current screen handle */
pCharInfo, /* transfer area */
@@ -386,14 +430,19 @@ void hb_gt_DispBegin(void)
coDest, /* upper-left cell to write data to */
&srWin); /* screen buffer rectangle to read from */
HOutput = CreateConsoleScreenBuffer(
GENERIC_READ | GENERIC_WRITE, /* Access flag */
FILE_SHARE_READ | FILE_SHARE_WRITE, /* Buffer share mode */
NULL, /* Security attribute ptr */
CONSOLE_TEXTMODE_BUFFER, /* Type of buffer */
NULL); /* reserved */
/* store current handle */
if( HStealth = INVALID_HANDLE_VALUE )
{
HStealth = CreateConsoleScreenBuffer(
GENERIC_READ | GENERIC_WRITE, /* Access flag */
FILE_SHARE_READ | FILE_SHARE_WRITE, /* Buffer share mode */
NULL, /* Security attribute */
CONSOLE_TEXTMODE_BUFFER, /* Type of buffer */
NULL); /* reserved */
SetConsoleScreenBufferSize(HOutput, coBuf);
SetConsoleScreenBufferSize(HStealth, coBuf);
}
HOutput = HStealth;
WriteConsoleOutput(HOutput, /* output handle */
pCharInfo, /* data to write */
@@ -408,39 +457,16 @@ void hb_gt_DispBegin(void)
void hb_gt_DispEnd(void)
{
/* ptucker */
COORD coDest = {0, 0};
COORD coBuf; /* the size of the buffer to read into */
CHAR_INFO *pCharInfo; /* buffer to store info from ReadConsoleOutput */
SMALL_RECT srWin; /* source rectangle to read from */
USHORT uiCount;
if( ( uiCount = hb_gtDispCount() ) == 1 )
if( hb_gtDispCount() == 0 )
{
srWin.Top = srWin.Left = 0;
srWin.Right = (coBuf.X = hb_gt_GetScreenWidth()) -1;
srWin.Bottom = (coBuf.Y = hb_gt_GetScreenHeight()) -1;
CONSOLE_CURSOR_INFO cci;
GetConsoleCursorInfo(HCursor, &cci);
SetConsoleCursorInfo(HOutput, &cci);
SetConsoleActiveScreenBuffer(HOutput);
HStealth = HCursor;
HCursor = HOutput;
/* allocate a buffer for the screen rectangle */
pCharInfo = (CHAR_INFO *)hb_xgrab(coBuf.X * coBuf.Y * sizeof(CHAR_INFO));
/* read the screen rectangle into the buffer */
ReadConsoleOutput(HOutput, /* current screen buffer */
pCharInfo, /* transfer area */
coBuf, /* col/row size of destination buffer */
coDest, /* upper-left cell to write data to in dest */
&srWin); /* screen buffer rectangle to read from */
CloseHandle( HOutput );
HOutput = (HANDLE)hb_gt_ScreenBuffer( 0 ); /* get previous handle */
WriteConsoleOutput(HOutput, /* output buffer */
pCharInfo, /* buffer with data to write */
coBuf, /* col/row size of source buffer */
coDest, /* upper-left cell to write data from in src */
&srWin); /* screen buffer rect to write data to */
hb_xfree(pCharInfo);
}
}
@@ -490,8 +516,17 @@ void hb_gt_Replicate(char c, DWORD nLength)
c, /* character to write */
nLength, /* number of cells to write */
coBuf, /* coordinates of first cell */
&nWritten /* receives actual number written */
&nWritten /* receives actual number written */
);
}
BOOL hb_gt_GetBlink()
{
return FALSE;
}
void hb_gt_SetBlink( BOOL bBlink )
{
}

View File

@@ -6,6 +6,7 @@
* GTAPI.C: Generic Terminal for Harbour
*
* Latest mods:
* 1.53 19990807 ptucker Modified Dispbegin/end support
* 1.47 19990802 ptucker DispBegin/End and SetMode for gtWin
* 1.46 19990801 ptucker simplified hb_gtScroll if gtWin
* 1.44 19990730 ptucker simplified gtputs and gtSetAttribute
@@ -81,14 +82,11 @@ int *_Color; /* masks: 0x0007 Foreground
*/
int _ColorCount;
ULONG *_ScrnBuffer;
/* gt API functions */
void hb_gtInit(void)
{
/* ptucker */
_ScrnBuffer = (ULONG *)hb_xgrab( sizeof( ULONG ) );
_Color = (int *)hb_xgrab(5*sizeof( int ) );
_ColorCount = 5;
hb_gt_Init();
@@ -105,20 +103,6 @@ void hb_gtExit(void)
hb_xfree( _Color );
while( s_uiDispCount )
hb_gtDispEnd();
hb_xfree( _ScrnBuffer );
}
/* this gets called from gtwin/gtdos, etc. */
/* otherwise it has to be duplicated in each driver */
ULONG hb_gt_ScreenBuffer( ULONG NewBuffer)
{
/* ptucker */
ULONG Previous = _ScrnBuffer[s_uiDispCount];
if( NewBuffer )
_ScrnBuffer[s_uiDispCount] = NewBuffer;
return Previous;
}
int hb_gtBox (USHORT uiTop, USHORT uiLeft, USHORT uiBottom, USHORT uiRight, char* pbyFrame)
@@ -173,7 +157,7 @@ int hb_gtBox (USHORT uiTop, USHORT uiLeft, USHORT uiBottom, USHORT uiRight, char
/* Draw the box or line as specified */
height = uiBottom - uiTop + 1;
width = uiRight - uiLeft + 1;
// hb_gtDispBegin();
/* hb_gtDispBegin(); */
if( height > 1 && width > 1 )
{
@@ -213,7 +197,7 @@ int hb_gtBox (USHORT uiTop, USHORT uiLeft, USHORT uiBottom, USHORT uiRight, char
}
/* speed issue for now */
// hb_gtDispEnd();
/* hb_gtDispEnd(); */
hb_gtSetPos(uiTopBak + 1, uiLeftBak + 1);
@@ -248,7 +232,6 @@ int hb_gtDispBegin(void)
{
/* ptucker */
++s_uiDispCount;
_ScrnBuffer = (ULONG *)hb_xrealloc( _ScrnBuffer, sizeof( ULONG ) * (s_uiDispCount+1) );
hb_gt_DispBegin();
return(0);
}
@@ -261,9 +244,8 @@ USHORT hb_gtDispCount(void)
int hb_gtDispEnd(void)
{
/* ptucker */
hb_gt_DispEnd();
--s_uiDispCount;
_ScrnBuffer = (ULONG *)hb_xrealloc( _ScrnBuffer, sizeof( ULONG ) * (s_uiDispCount+1) );
hb_gt_DispEnd();
return(0);
}
@@ -585,14 +567,14 @@ int hb_gtScrDim(USHORT * uipHeight, USHORT * uipWidth)
int hb_gtGetBlink(BOOL * bBlink)
{
*bBlink = FALSE;
*bBlink = hb_gt_GetBlink();
return ( 0 );
return(0);
}
int hb_gtSetBlink(BOOL bBlink)
{
HB_SYMBOL_UNUSED( bBlink );
hb_gt_SetBlink( bBlink );
return(0);
}