|
|
1.1.1.2 ! root 1: ! 2: /******************************************************************************\ ! 3: * This is a part of the Microsoft Source Code Samples. ! 4: * Copyright (C) 1993 Microsoft Corporation. ! 5: * All rights reserved. ! 6: * This source code is only intended as a supplement to ! 7: * Microsoft Development Tools and/or WinHelp documentation. ! 8: * See these sources for detailed information regarding the ! 9: * Microsoft samples programs. ! 10: \******************************************************************************/ ! 11: 1.1 root 12: 13: #ifdef WIN16 14: #define APIENTRY FAR PASCAL 15: typedef WORD WPARAM; 16: #endif 17: 18: #define BOUNCECLASS "BOUNCEDEMO" 19: #define BOUNCETITLE "Bouncing Ball Demo (xforms)" 20: 21: 22: typedef struct _MYXFORM 23: { 24: int xForm[3][3]; 25: } MYXFORM; 26: typedef MYXFORM *PMYXFORM; 27: typedef MYXFORM NEAR *NPMYXFORM; 28: typedef MYXFORM FAR *LPMYXFORM; 29: 30: 31: /* 32: ** BALL OBJECT 33: */ 34: typedef struct _BALLDATA 35: { 36: HWND hWnd; 37: int nWidth; 38: int nHeight; 39: int xDirection; 40: int yDirection; 41: BOOL bNewPosition; 42: int xPosition; 43: int yPosition; 44: COLORREF crColor; 45: MYXFORM xForm; 46: } BALLDATA; 47: typedef BALLDATA *PBALLDATA; 48: typedef BALLDATA NEAR *NPBALLDATA; 49: typedef BALLDATA FAR *LPBALLDATA; 50: 51: HANDLE ballCreate(HWND,int,int,COLORREF); 52: BOOL ballDestroy(HANDLE); 53: VOID ballBounce(HANDLE); 54: BOOL ballSetDimensions(HANDLE,int,int); 55: BOOL ballGetDimensions(HANDLE,LPPOINT); 56: BOOL ballSetDirection(HANDLE,int,int); 57: BOOL ballGetDirection(HANDLE,LPPOINT); 58: BOOL ballGetPosition(HANDLE,LPPOINT); 59: BOOL ballSetPosition(HANDLE,int,int); 60: 61: 62: 63: 64: typedef struct _BOUNCEDATA 65: { 66: HANDLE hBall1; 67: HANDLE hBall2; 68: HANDLE hBall3; 69: HANDLE hBall4; 70: } BOUNCEDATA; 71: typedef BOUNCEDATA *PBOUNCEDATA; 72: typedef BOUNCEDATA NEAR *NPBOUNCEDATA; 73: typedef BOUNCEDATA FAR *LPBOUNCEDATA; 74: 75: 76: /* 77: ** DRAW WINDOW ROUTINES (draw.c) 78: */ 79: HWND FAR CreateBounceWindow(HWND,int); 80: LONG APIENTRY BounceProc(HWND,UINT,WPARAM,LONG); 81: BOOL BounceCreateProc(HWND); 82: VOID BounceDestroyProc(HWND); 83: BOOL BounceCommandProc(HWND,WPARAM,LONG); 84: VOID BouncePaintProc(HWND); 85: 86: VOID BounceObjects(HWND); 87: VOID BounceRefresh(HWND); 88: 89: 90: VOID CheckEdgePosition(HWND,HANDLE);
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.