int hb_conSetCursor( HB_BOOL bSetCursor, int iNewCursor ) { int iCursor; HB_TRACE( HB_TR_DEBUG, ( "hb_conSetCursor(%d, %d)", ( int ) bSetCursor, iNewCursor ) ); hb_gtGetCursor( &iCursor ); if( bSetCursor ) hb_gtSetCursor( iNewCursor ); return iCursor; }
int main( void ) { const char * test = "Testing GT API Functions"; const char * test2 = "This message wraps!"; void * scr; HB_SIZE size; /* NOTE: always have to initialze video subsystem */ hb_gtInit( 0, 0, 0 ); /* save screen */ hb_gtRectSize( 1, 1, hb_gtMaxRow(), hb_gtMaxCol(), &size ); scr = hb_xgrab( size ); hb_gtSave( 1, 1, hb_gtMaxRow() - 1, hb_gtMaxCol() - 1, scr ); /* writing text */ hb_gtSetPos( 3, 3 ); hb_gtWrite( test, strlen( test ) ); hb_gtSetPos( 12, 42 ); hb_gtWrite( test, strlen( test ) ); /* wrapping text */ hb_gtSetPos( 7, 70 ); hb_gtWrite( test2, strlen( test2 ) ); /* writing color text */ hb_gtSetColorStr( "W+/B, B/W" ); hb_gtColorSelect( HB_CLR_STANDARD ); hb_gtWrite( "Enhanced color (B/W)", 20 ); hb_gtSetPos( 22, 62 ); hb_gtColorSelect( HB_CLR_ENHANCED ); hb_gtWrite( "Standard Color (W+/B)", 21 ); /* boxes */ hb_gtBoxS( 10, 10, 20, 20 ); hb_gtBoxD( 10, 40, 15, 45 ); /* cursor functions */ hb_gtSetPos( 12, 1 ); /* none */ hb_gtSetCursor( SC_NONE ); hb_inkey( HB_TRUE, 0.0, INKEY_ALL ); /* underline */ hb_gtSetCursor( SC_NORMAL ); hb_inkey( HB_TRUE, 0.0, INKEY_ALL ); /* lower half block */ hb_gtSetCursor( SC_INSERT ); hb_inkey( HB_TRUE, 0.0, INKEY_ALL ); /* full block */ hb_gtSetCursor( SC_SPECIAL1 ); hb_inkey( HB_TRUE, 0.0, INKEY_ALL ); /* upper half block */ hb_gtSetCursor( SC_SPECIAL2 ); hb_inkey( HB_TRUE, 0.0, INKEY_ALL ); /* restore screen */ hb_gtRest( 1, 1, hb_gtMaxRow() - 1, hb_gtMaxCol() - 1, scr ); hb_xfree( scr ); return 0; }