home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
World of Shareware - Software Farm 2
/
wosw_2.zip
/
wosw_2
/
QBAS
/
DIAMOND1.ZIP
/
DIATEST.ZIP
/
DIATEST.C
next >
Wrap
C/C++ Source or Header
|
1992-03-07
|
4KB
|
183 lines
#include "windows.h"
#include "diatest.h"
HANDLE hInst;
HWND MainWin;
char *PressStr[ 7 ] = { "Top Pressed", "Right Pressed", "Bottom Pressed",
"Left Pressed", "Enabled", "Disabled", "Not on Pad" };
int PASCAL WinMain( hInstance, hPrevInstance, lpCmdLine, nCmdShow )
HANDLE hInstance;
HANDLE hPrevInstance;
LPSTR lpCmdLine;
int nCmdShow;
{
MSG msg;
if( ! hPrevInstance )
if( ! InitApplication( hInstance ) )
return( FALSE );
if( ! InitInstance( hInstance, nCmdShow ) )
return( FALSE );
while( GetMessage( &msg, NULL, NULL, NULL ) )
{
TranslateMessage( &msg );
DispatchMessage( &msg );
}
return( msg.wParam );
}
BOOL InitApplication( hInstance )
HANDLE hInstance;
{
WNDCLASS wc;
wc.style = NULL;
wc.lpfnWndProc = MainWndProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = hInstance;
wc.hIcon = LoadIcon( hInst, "MainIcon" );
wc.hCursor = LoadCursor( NULL, IDC_ARROW );
wc.hbrBackground = COLOR_WINDOW + 1;
wc.lpszMenuName = "MainMenu";
wc.lpszClassName = "DIATEST";
return( RegisterClass( &wc ) );
}
BOOL InitInstance(hInstance, nCmdShow)
HANDLE hInstance;
int nCmdShow;
{
HWND hWnd;
hInst = hInstance;
hWnd = CreateWindow( "DIATEST",
(LPSTR)"Diamond Control",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
200,
200,
NULL,
NULL,
hInstance,
NULL );
if( ! hWnd )
return( FALSE );
MainWin = hWnd;
ShowWindow( hWnd, nCmdShow );
UpdateWindow( hWnd );
return( TRUE );
}
long FAR PASCAL MainWndProc( hWnd, message, wParam, lParam )
HWND hWnd;
unsigned message;
WORD wParam;
LONG lParam;
{
FARPROC DlgProc;
switch( message )
{
case WM_COMMAND:
if( wParam == IDM_EXIT )
{
PostQuitMessage( 0 );
break;
}
if( wParam == IDM_ABOUT )
{
DlgProc = MakeProcInstance( About, hInst );
DialogBox( hInst, "ABOUT", MainWin, DlgProc );
FreeProcInstance( DlgProc );
break;
}
break;
case WM_DESTROY:
PostQuitMessage( 0 );
return( TRUE );
default:
return( DefWindowProc( hWnd, message, wParam, lParam ) );
}
return( NULL );
}
BOOL FAR PASCAL About( hDlg, message, wParam, lParam )
HWND hDlg;
unsigned message;
WORD wParam;
LONG lParam;
{
HANDLE hMod;
switch( message )
{
case WM_INITDIALOG:
SetProp( hDlg, MAKEINTRESOURCE( 1 ), 1 );
return( TRUE );
case WM_CTLCOLOR:
if( HIWORD( lParam ) == CTLCOLOR_DLG ||
HIWORD( lParam ) == CTLCOLOR_STATIC )
{
SetBkColor( wParam, RGB( 192, 192, 192 ) );
SetBkMode( wParam, OPAQUE );
return( GetStockObject( LTGRAY_BRUSH ) );
}
break;
case WM_COMMAND:
if( wParam == 101 )
{
if( GetProp( hDlg, MAKEINTRESOURCE( 1 ) ) )
{
SetProp( hDlg, MAKEINTRESOURCE( 1 ), 0 );
SendMessage( GetDlgItem( hDlg, 100 ), WM_ENABLE, FALSE, NULL );
SetWindowText( GetDlgItem( hDlg, 200 ), PressStr[ 5 ] );
}
else
{
SetProp( hDlg, MAKEINTRESOURCE( 1 ), 1 );
SendMessage( GetDlgItem( hDlg, 100 ), WM_ENABLE, TRUE, NULL );
SetWindowText( GetDlgItem( hDlg, 200 ), PressStr[ 4 ] );
}
break;
}
if( wParam == IDOK )
{
RemoveProp( hDlg, MAKEINTRESOURCE( 1 ) );
EndDialog( hDlg, TRUE );
return( TRUE );
}
if( wParam == 100 )
{
if( LOWORD( lParam ) == -1 )
SetWindowText( GetDlgItem( hDlg, 200 ), PressStr[ 6 ] );
else
SetWindowText( GetDlgItem( hDlg, 200 ), PressStr[ LOWORD( lParam ) ] );
break;
}
break;
}
return( FALSE );
}