home *** CD-ROM | disk | FTP | other *** search
- #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 );
- }
-
-