home *** CD-ROM | disk | FTP | other *** search
- #include <conio.h>
- #include <stdio.h>
- #include "win.h"
-
- void main( void )
- {
- WINHANDLE hWin[3];
- short sCurWin;
- int sIn;
-
- enum MODE
- {
- eX,
- eY,
- eW,
- eL,
- eC,
- eV,
- eH
- } eMode;
-
-
- vWinOpen(80, 50, '▒', eWinWhite, eWinBlack);
-
- /* X Y W L VW VL, HOW SWITCHES */
- hWin[0] = vWinCreate ( 5, 5, 10, 10, 10, 10, FRAME_SWITCH );
- hWin[1] = vWinCreate ( 1, 5, 5, 10, 18, 20, FRAME_SWITCH );
- hWin[2] = vWinCreate ( 7, 7, 5, 10, 18, 20, FRAME_SWITCH );
-
- if
- (
- !IsWinHandleValid(hWin[0]) ||
- !IsWinHandleValid(hWin[1]) ||
- !IsWinHandleValid(hWin[2])
- )
- {
- printf("Error Creating Window!");
- }
- else
- {
- vWinSetTextColor( hWin[0], eWinWhite, eWinGreen);
- vWinSetBorderColor( hWin[0], eWinWhite, eWinBlue);
- vWinClear(hWin[0]);
- vWinActivate(hWin[0]);
-
- vWinSetTextColor( hWin[1], eWinWhite, eWinBlue);
- vWinSetBorderColor( hWin[0], eWinWhite, eWinBlue);
- vWinClear(hWin[1]);
- vWinActivate(hWin[1]);
-
- vWinSetTextColor( hWin[2], eWinWhite, eWinBlack);
- vWinSetBorderColor( hWin[0], eWinWhite, eWinBlue);
- vWinClear(hWin[2]);
- vWinActivate(hWin[2]);
-
- vWinSetLocZ(hWin[0], 0);
- eMode = eX;
- sCurWin = 0;
- sIn = '\0';
- while (sIn != 'Q')
- {
-
- vWinSetBorderColor( hWin[sCurWin], eWinBlue, eWinWhite);
- sIn = getch();
- switch (sIn)
- {
- case'V':
- case'v':
- eMode = eV;
- break;
-
- case'H':
- case'h':
- eMode = eH;
- break;
-
- case'C':
- case'c':
- eMode = eC;
- break;
-
- case'X':
- case'x':
- eMode = eX;
- break;
-
- case'Y':
- case'y':
- eMode = eY;
- break;
-
- case'W':
- case'w':
- eMode = eW;
- break;
-
- case'L':
- case'l':
- eMode = eL;
- break;
- case'+':
- switch ( eMode )
- {
- case eC:
- vWinPutS ( hWin[sCurWin], "+ WINDOW\n");
- vWinSetBorderColor( hWin[sCurWin], eWinWhite, eWinBlue);
- sCurWin += 1;
- if ( sCurWin == 3 )
- sCurWin = 0;
- break;
- case eH:
- vWinPutS ( hWin[sCurWin], "+ Origin X \n");
- vWinSetOrgXY
- (
- hWin[sCurWin],
- sWinGetOrgX(hWin[sCurWin]) + 1,
- sWinGetOrgY(hWin[sCurWin])
- );
- break;
- case eV:
- vWinPutS ( hWin[sCurWin], "+ Origin Y \n");
- vWinSetOrgXY
- (
- hWin[sCurWin],
- sWinGetOrgX(hWin[sCurWin]),
- sWinGetOrgY(hWin[sCurWin]) + 1
- );
- break;
- case eX:
- vWinPutS ( hWin[sCurWin], "+ X\n");
- vWinSetLocXY
- (
- hWin[sCurWin],
- sWinGetLocX(hWin[sCurWin]) + 1,
- sWinGetLocY(hWin[sCurWin])
- );
- break;
- case eY:
- vWinPutS ( hWin[sCurWin], "+ Y\n");
- vWinSetLocXY
- (
- hWin[sCurWin],
- sWinGetLocX(hWin[sCurWin]),
- sWinGetLocY(hWin[sCurWin]) + 1
- );
- break;
- case eW:
- vWinPutS ( hWin[sCurWin], "+ W\n");
- vWinSetLocWL
- (
- hWin[sCurWin],
- usWinGetLocW(hWin[sCurWin]) + 1,
- usWinGetLocL(hWin[sCurWin])
- );
- break;
- case eL:
- vWinPutS ( hWin[sCurWin], "+ L\n");
- vWinSetLocWL
- (
- hWin[sCurWin],
- usWinGetLocW(hWin[sCurWin]),
- usWinGetLocL(hWin[sCurWin])+1
- );
- break;
- }
- break;
-
- case'-':
- switch ( eMode )
- {
- case eC:
- vWinPutS ( hWin[sCurWin], "- WINDOW\n");
- vWinSetBorderColor( hWin[sCurWin], eWinWhite, eWinBlue);
- sCurWin -= 1;
- if ( sCurWin == -1 )
- sCurWin = 2;
- break;
- case eH:
- vWinPutS ( hWin[sCurWin], "- Origin X \n");
- vWinSetOrgXY
- (
- hWin[sCurWin],
- sWinGetOrgX(hWin[sCurWin]) - 1,
- sWinGetOrgY(hWin[sCurWin])
- );
- break;
- case eV:
- vWinPutS ( hWin[sCurWin], "- Origin Y \n");
- vWinSetOrgXY
- (
- hWin[sCurWin],
- sWinGetOrgX(hWin[sCurWin]),
- sWinGetOrgY(hWin[sCurWin]) - 1
- );
- break;
- case eX:
- vWinPutS ( hWin[sCurWin], "- X\n");
- vWinSetLocXY
- (
- hWin[sCurWin],
- sWinGetLocX(hWin[sCurWin]) - 1,
- sWinGetLocY(hWin[sCurWin])
- );
- break;
- case eY:
- vWinPutS ( hWin[sCurWin], "- Y\n");
- vWinSetLocXY
- (
- hWin[sCurWin],
- sWinGetLocX(hWin[sCurWin]),
- sWinGetLocY(hWin[sCurWin]) - 1
- );
- break;
- case eW:
- vWinPutS ( hWin[sCurWin], "- W\n");
- vWinSetLocWL
- (
- hWin[sCurWin],
- usWinGetLocW(hWin[sCurWin]) - 1,
- usWinGetLocL(hWin[sCurWin])
- );
- break;
- case eL:
- vWinPutS ( hWin[sCurWin], "- L\n");
- vWinSetLocWL
- (
- hWin[sCurWin],
- usWinGetLocW(hWin[sCurWin]),
- usWinGetLocL(hWin[sCurWin])-1
- );
- break;
- }
- break;
- }
-
- }
-
- vWinDestroy( hWin[0] );
- vWinDestroy( hWin[1] );
- vWinDestroy( hWin[2] );
- vWinClose();
- }
-
- }
-