home *** CD-ROM | disk | FTP | other *** search
/ Microsoft Multimedia Jumpstart 1.1a / CD_ROM.BIN / develpmt / source / mergedib / mergedib.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-09-12  |  3.0 KB  |  92 lines

  1. /* MergeDIB.h
  2.  */
  3.  
  4.  
  5. /* constants */
  6. #define MAXPALSIZE    236        // max. no. entries in a palette
  7. #define PRIMARY_DIB    0        // index into <gahdib> and <gahpal>
  8. #define SECONDARY_DIB    1        // index into <gahdib> and <gahpal>
  9. #define MERGED_DIB    2        // index into <gahdib> and <gahpal>
  10. #define SCROLL_RANGE    10000        // range of scroll bar
  11. #define SCROLL_PAGE    1000        // page up/down scrolls this much
  12. #define SCROLL_LINE    100        // line up/down scrolls this much
  13.  
  14.  
  15. /* a window proc */
  16. typedef LONG (FAR PASCAL * LPWNDPROC) ();
  17.  
  18.  
  19. /* globals from "MergeDIB.c" */
  20. extern HWND        ghwndApp;    // main application window
  21. extern HMENU        ghmenuApp;    // main application menu
  22. extern HANDLE        ghInst;        // program instance handle
  23. extern GLOBALHANDLE    gahdib[3];    // primary/secondary/merged DIB
  24. extern HPALETTE        gahpal[3];    // primary/secondary/merged palette
  25. extern HPALETTE        ghpal;        // current palette
  26. extern BOOL        giDIBViewed;    // which DIB is being viewed?
  27. extern NPLOGPALETTE    gaplogpal[3];    // primary/secondary/merged color table
  28.  
  29. /* globals from "rare.c" */
  30. extern char        gachAppName[];    // for title bar etc.
  31.  
  32.  
  33. /* <dwFlags> for PromptForFileName() */
  34. #define PFFN_OPENFILE        0x0001    // prompt to open a file
  35. #define PFFN_SAVEFILE        0x0002    // prompt to save a file
  36. #define PFFN_SHOWDEFAULT    0x0004    // init. show what's in <achFileName>
  37. #define PFFN_OVERWRITEPROMPT    0x0008    // prompt the user about overwriting
  38. #define PFFN_UPPERCASE        0x0010    // make the name uppercase
  39.  
  40.  
  41. /* RCDATA resources */
  42. #define OPENFILEFILTER        10
  43.  
  44.  
  45. /* "File" menu */
  46. #define IDM_OPENPRIMARYDIB    11
  47. #define IDM_OPENSECONDARYDIB    12
  48. #define IDM_EXIT        13
  49. #define IDM_ABOUT        14
  50.  
  51. /* "Edit" menu */
  52. #define IDM_COPYMERGEDPALETTE    21
  53.  
  54. /* "View" menu */
  55. #define IDM_VIEWPRIMARYDIB    31
  56. #define IDM_VIEWSECONDARYDIB    32
  57. #define IDM_VIEWMERGEDDIB    33
  58. #define IDM_FADE        34
  59.  
  60.  
  61. /* strings */
  62. #define IDS_APPNAME        100    // MergeDIB
  63. #define IDS_UNTITLED        101    // (Untitled)
  64. #define IDS_DEFEXT        102    // <default extension>
  65. #define IDS_OPEN        103    // Open Bitmap
  66. #define IDS_ERROROPEN        104    // Error opening '<file>'
  67. #define IDS_OUTOFMEM        105    // Out of memory
  68. #define IDS_BADDIBTYPE        107    // HackDib only supports...
  69. #define IDS_BADDIBSIZE        108    // Secondary DIB must be same size...
  70. #define IDS_MERGEPALEXCEEDED    109    // Merged DIB would need...
  71.  
  72.  
  73. /* prototypes from "MergeDIB.c" */
  74. void FAR PASCAL AppPaint(HWND hwnd, HDC hdc);
  75. void FAR PASCAL InitMenus(void);
  76. int PASCAL WinMain(HANDLE hInst, HANDLE hPrev, LPSTR lpszCmdLine, int iCmdShow);
  77. LONG FAR PASCAL _export AppWndProc(HWND hwnd, WORD wMsg,
  78.     WORD wParam, LONG lParam);
  79.  
  80. /* prototypes from "file.c" */
  81. void FAR PASCAL FreeDIB(int iDIB);
  82. BOOL FAR PASCAL FileOpen(int iDIB, LPSTR szFileName);
  83.  
  84. /* prototypes from "rare.c" */
  85. BOOL FAR PASCAL AppInit(HANDLE hInst, HANDLE hPrev);
  86. void FAR PASCAL AppExit(HWND hwnd);
  87. BOOL FAR PASCAL _export AboutDlgProc(HWND hwnd, WORD wMsg,
  88.     WORD wParam, LONG lParam);
  89. BOOL FAR PASCAL PromptForFileName(HWND hwndOwner, HANDLE hInst,
  90.     LPSTR achFileName, WORD cchFileName, WORD idCaption,
  91.     WORD idFilter, WORD idDefExt, DWORD dwFlags);
  92.