|
|
1.1 ! root 1: /****************************************************************************/ ! 2: /* */ ! 3: /* Microsoft Confidential */ ! 4: /* */ ! 5: /* Copyright (c) Microsoft Corp. 1987, 1990 */ ! 6: /* All Rights Reserved */ ! 7: /* */ ! 8: /****************************************************************************/ ! 9: /****************************** Module Header ******************************* ! 10: * Module Name: iefuncs.h ! 11: * ! 12: * Function declarations for the Image Editor. ! 13: * ! 14: * History: ! 15: * ! 16: ****************************************************************************/ ! 17: ! 18: ! 19: ! 20: /* ! 21: * colorwp.c ! 22: */ ! 23: ! 24: VOID ColorShow(BOOL fShow); ! 25: DIALOGPROC ColorDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 26: WINDOWPROC ColorBoxWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 27: WINDOWPROC ColorLRWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 28: VOID SetScreenColor(DWORD rgb); ! 29: VOID SetColorPalette(INT nColors, INT fImageType, BOOL fForce); ! 30: VOID RestoreDefaultColors(VOID); ! 31: ! 32: ! 33: /* ! 34: * devinfo.c ! 35: */ ! 36: ! 37: VOID InitDeviceList(VOID); ! 38: PDEVICE DeviceLinkAlloc(INT iType, PSTR pszName, INT nColors, INT cx, INT cy); ! 39: PDEVICE DeviceLinkFind(PDEVICE pDeviceHead, INT nColors, INT cx, INT cy); ! 40: BOOL DeviceLinkUsed(PDEVICE pDevice); ! 41: ! 42: ! 43: /* ! 44: * file.c ! 45: */ ! 46: ! 47: VOID SetFileName(PSTR pszFullFileName); ! 48: PSTR FileInPath(PSTR pstrPath); ! 49: VOID ClearResource(VOID); ! 50: BOOL OpenDlg(PSTR pszFileName, INT iType); ! 51: BOOL SaveAsDlg(PSTR pszFileName, INT iType); ! 52: DIALOGPROC GetOpenFileNameHook(HWND hwnd, UINT msg, WPARAM wParam, ! 53: LPARAM lParam); ! 54: BOOL VerifySaveFile(VOID); ! 55: BOOL SaveFile(BOOL fSaveAs); ! 56: BOOL OpenAFile(VOID); ! 57: VOID OpenCmdLineFile(PSTR pstrFileName); ! 58: BOOL MyFileRead(HFILE hf, LPSTR lpBuffer, UINT nBytes, PSTR pszFileName, ! 59: INT iType); ! 60: BOOL MyFileWrite(HFILE hf, LPSTR lpBuffer, UINT nBytes, PSTR pszFileName); ! 61: ! 62: ! 63: /* ! 64: * icclip.c ! 65: */ ! 66: ! 67: BOOL CopyImageClip(VOID); ! 68: BOOL PasteImageClip(VOID); ! 69: DIALOGPROC PasteOptionsDlgProc(HWND hwnd, UINT msg, WPARAM wParam, ! 70: LPARAM lParam); ! 71: VOID PickSetRect(INT xLeft, INT yTop, INT xRight, INT yBottom); ! 72: ! 73: ! 74: /* ! 75: * image.c ! 76: */ ! 77: ! 78: BOOL ImageNew(PDEVICE pDevice); ! 79: BOOL ImageNewBitmap(INT cx, INT cy, INT nColors); ! 80: BOOL ImageOpen(PIMAGEINFO pImage); ! 81: BOOL ImageOpen2(PIMAGEINFO pImage); ! 82: VOID ImageSave(VOID); ! 83: ! 84: ! 85: /* ! 86: * imagedc.c ! 87: */ ! 88: ! 89: BOOL ImageDCCreate(INT iType, INT cx, INT cy, INT nColors); ! 90: VOID ImageDCDelete(VOID); ! 91: VOID ImageDCClear(VOID); ! 92: VOID ImageDCSeparate(HDC hdcImage, INT cx, INT cy, HDC hdcANDMask, ! 93: DWORD rgbScreen); ! 94: VOID ImageDCCombine(HDC hdcImage, INT cx, INT cy, HDC hdcANDMask); ! 95: VOID ImageDCMonoBlt(HDC hdcImage, INT cx, INT cy); ! 96: ! 97: ! 98: /* ! 99: * imagedit.c ! 100: */ ! 101: ! 102: WINDOWPROC MainWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 103: BOOL ReadWindowPos(PSTR pstrKeyName, PINT px, PINT py, PINT pcx, PINT pcy, ! 104: BOOL *pfMaximized); ! 105: VOID WriteWindowPos(PRECT prc, BOOL fMaximized, PSTR pstrKeyName); ! 106: ! 107: ! 108: /* ! 109: * imagedlg.c ! 110: */ ! 111: ! 112: INT DlgBox(INT idDlg, WNDPROC lpfnDlg); ! 113: VOID EnteringDialog(INT idDlg, PINT pidPrevDlg, BOOL fEntering); ! 114: VOID ImageNewDialog(INT iType); ! 115: VOID ImageSelectDialog(VOID); ! 116: DIALOGPROC ResourceTypeDlgProc(HWND hwnd, UINT msg, WPARAM wParam, ! 117: LPARAM lParam); ! 118: DIALOGPROC NewCursorImageDlgProc(HWND hwnd, UINT msg, WPARAM wParam, ! 119: LPARAM lParam); ! 120: DIALOGPROC NewIconImageDlgProc(HWND hwnd, UINT msg, WPARAM wParam, ! 121: LPARAM lParam); ! 122: DIALOGPROC SelectImageDlgProc(HWND hwnd, UINT msg, WPARAM wParam, ! 123: LPARAM lParam); ! 124: DIALOGPROC BitmapSizeDlgProc(HWND hwnd, UINT msg, WPARAM wParam, ! 125: LPARAM lParam); ! 126: ! 127: ! 128: /* ! 129: * imaglink.c ! 130: */ ! 131: ! 132: PIMAGEINFO ImageLinkAlloc(PDEVICE pDevice, INT cx, INT cy, INT xHotSpot, ! 133: INT yHotSpot, INT nColors); ! 134: VOID ImageLinkFree(PIMAGEINFO pImageFree); ! 135: VOID ImageLinkFreeList(VOID); ! 136: VOID ImageDelete(VOID); ! 137: ! 138: ! 139: /* ! 140: * imagundo.c ! 141: */ ! 142: ! 143: VOID ImageUndo(VOID); ! 144: VOID ImageUpdateUndo(VOID); ! 145: VOID ImageFreeUndo(VOID); ! 146: ! 147: ! 148: /* ! 149: * menucmd.c ! 150: */ ! 151: ! 152: VOID InitMenu(HMENU hMenu); ! 153: VOID MenuCmd(INT item); ! 154: DWORD APIENTRY MsgFilterHookFunc(INT nCode, WPARAM wParam, LPMSG lpMsg); ! 155: VOID ShowHelp(BOOL fMenuHelp); ! 156: DIALOGPROC AboutDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 157: ! 158: ! 159: /* ! 160: * rwbmp.c ! 161: */ ! 162: ! 163: BOOL LoadBitmapFile(PSTR pszFullFileName); ! 164: BOOL SaveBitmapFile(PSTR pszFullFileName); ! 165: ! 166: ! 167: /* ! 168: * rwicocur.c ! 169: */ ! 170: ! 171: BOOL LoadIconCursorFile(PSTR pszFullFileName, BOOL fIcon); ! 172: BOOL IsValidDIB(LPBITMAPINFO pDIB, DWORD cbDIBSize, BOOL fIcoCur); ! 173: BOOL SaveIconCursorFile(PSTR pszFullFileName, INT iType); ! 174: ! 175: ! 176: /* ! 177: * rwpal.c ! 178: */ ! 179: ! 180: VOID LoadColorFile(VOID); ! 181: VOID SaveColorFile(VOID); ! 182: ! 183: ! 184: /* ! 185: * propbar.c ! 186: */ ! 187: ! 188: DIALOGPROC PropBarDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 189: VOID PropBarUpdate(VOID); ! 190: VOID PropBarSetImage(PIMAGEINFO pImage); ! 191: VOID PropBarSetPos(INT x, INT y); ! 192: VOID PropBarClearPos(VOID); ! 193: VOID PropBarSetSize(POINT pt1, POINT pt2); ! 194: VOID PropBarClearSize(VOID); ! 195: VOID PropBarSetHotSpot(INT xHotSpot, INT yHotSpot); ! 196: VOID PropBarClearHotSpot(VOID); ! 197: VOID PropBarShowHotSpot(BOOL fShow); ! 198: ! 199: ! 200: /* ! 201: * toolbox.c ! 202: */ ! 203: ! 204: VOID ToolboxCreate(VOID); ! 205: VOID ToolboxShow(BOOL fShow); ! 206: VOID ToolboxUpdate(VOID); ! 207: WINDOWPROC ToolboxWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 208: WINDOWPROC ToolBtnWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 209: VOID ToolboxSelectTool(INT tool); ! 210: ! 211: ! 212: /* ! 213: * util.c ! 214: */ ! 215: ! 216: VOID *MyAlloc(INT cbAlloc); ! 217: VOID *MyRealloc(VOID *npMem, INT cbNewAlloc); ! 218: VOID *MyFree(VOID *npMem); ! 219: INT Message(UINT idMsg, ...); ! 220: VOID CenterWindow(HWND hwnd); ! 221: VOID FitRectToScreen(PRECT prc); ! 222: PSTR ids(UINT idString); ! 223: HBITMAP MyCreateBitmap(HDC hdc, INT cx, INT cy, INT nColors); ! 224: ! 225: #if defined(DBG) && defined(WIN16) ! 226: VOID DBGStackReport(BOOL fInit); ! 227: #else ! 228: #define DBGStackReport(fInit) ! 229: #endif ! 230: ! 231: #ifdef DBG ! 232: VOID DBGBltImage(HDC hdc); ! 233: VOID DBGprintf(PSTR fmt, ...); ! 234: #else ! 235: #define DBGBltImage(hdc) ! 236: #define DBGprintf ! 237: #endif ! 238: ! 239: ! 240: /* ! 241: * viewwp.c ! 242: */ ! 243: ! 244: VOID ViewCreate(VOID); ! 245: VOID ViewShow(BOOL fShow); ! 246: VOID ViewUpdate(VOID); ! 247: VOID ViewReset(VOID); ! 248: WINDOWPROC ViewWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 249: VOID ViewSetPixel(INT x, INT y, INT nBrushSize); ! 250: VOID DrawMarginBorder(HWND hwnd, HDC hdc); ! 251: VOID DrawSunkenRect(PRECT prc, HDC hdc); ! 252: ! 253: ! 254: /* ! 255: * workwp.c ! 256: */ ! 257: ! 258: WINDOWPROC WorkWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 259: VOID WorkUpdate(VOID); ! 260: VOID WorkReset(VOID); ! 261: VOID PencilDP(HWND hwnd, UINT msg, POINT ptNew); ! 262: VOID BrushDP(HWND hwnd, UINT msg, POINT ptNew); ! 263: VOID PickDP(HWND hwnd, UINT msg, POINT ptNew); ! 264: VOID LineDP(HWND hwnd, UINT msg, POINT ptNew); ! 265: VOID RectDP(HWND hwnd, UINT msg, POINT ptNew); ! 266: VOID CircleDP(HWND hwnd, UINT msg, POINT ptNew); ! 267: VOID FloodDP(HWND hwnd, UINT msg, POINT ptNew); ! 268: VOID HotSpotDP(HWND hwnd, UINT msg, POINT ptNew); ! 269: VOID NormalizePoints(PPOINT pptStart, PPOINT pptEnd);
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.