|
|
1.1 ! 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: ! 12: /****************************** Module Header ******************************* ! 13: * Module Name: dlgfuncs.h ! 14: * ! 15: * Contains prototypes for the functions used in the dialog box editor. ! 16: * ! 17: ****************************************************************************/ ! 18: ! 19: /* ! 20: * addctrl.c ! 21: */ ! 22: ! 23: VOID AddNewDialog(VOID); ! 24: VOID DropControl(PWINDOWCLASSDESC pwcd, PRECT prc); ! 25: NPCTYPE AddControl(PWINDOWCLASSDESC pwcd, LPTSTR pszText, DWORD style, ! 26: DWORD flExtStyle, INT id, INT x, INT y, INT cx, INT cy, LPTSTR pszDlgName, ! 27: PDIALOGINFO pdi); ! 28: HWND CreateControl(NPCTYPE npc, LPTSTR pszText, DWORD flStyle, DWORD flExtStyle, ! 29: INT id, PRECT prc, HWND hwndBehind, PDIALOGINFO pdi); ! 30: VOID DeleteControl(VOID); ! 31: VOID DeleteDialog(BOOL fResAlso); ! 32: ! 33: ! 34: /* ! 35: * ctrlproc.c ! 36: */ ! 37: ! 38: WINDOWPROC DialogCtrlWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 39: WINDOWPROC CtrlWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 40: WINDOWPROC ChildWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 41: BOOL DrawOwnerDrawButton(LPDRAWITEMSTRUCT lpdis); ! 42: ! 43: ! 44: /* ! 45: * custcntl.c ! 46: */ ! 47: ! 48: DIALOGPROC NewCustDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 49: VOID OpenCustomDialog(VOID); ! 50: PWINDOWCLASSDESC SelCustDialog(VOID); ! 51: DIALOGPROC SelCustDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 52: DIALOGPROC RemCustDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 53: WINDOWPROC CustomWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 54: PCUSTLINK AddCustomLink(LPCCINFO pcci, BOOL fEmulated, BOOL fUnicodeDLL, ! 55: LPTSTR pszFileName, HANDLE hmod); ! 56: VOID RemoveCustomLink(PCUSTLINK pcl); ! 57: BOOL CallCustomStyle(NPCTYPE npc, PDWORD pflStyleNew, PDWORD pflExtStyleNew, ! 58: LPTSTR pszTextNew); ! 59: INT CallCustomSizeToText(NPCTYPE npc); ! 60: VOID ReadCustomProfile(VOID); ! 61: VOID WriteCustomProfile(VOID); ! 62: ! 63: ! 64: /* ! 65: * dialogs.c ! 66: */ ! 67: ! 68: INT DlgBox(INT idDlg, WNDPROC lpfnDlg); ! 69: VOID EnteringDialog(INT idDlg, PINT pidPrevDlg, BOOL fEntering); ! 70: VOID CreateTestDialog(VOID); ! 71: VOID DestroyTestDialog(VOID); ! 72: VOID SelectDialogDialog(VOID); ! 73: VOID ArrangeSettingsDialog(VOID); ! 74: DIALOGPROC AboutDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 75: ! 76: ! 77: /* ! 78: * dlgedit.c ! 79: */ ! 80: ! 81: WINDOWPROC MainWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 82: BOOL ReadWindowPos(LPTSTR pszKeyName, PINT px, PINT py, PINT pcx, PINT pcy, ! 83: BOOL *pfMaximized); ! 84: VOID WriteWindowPos(PRECT prc, BOOL fMaximized, LPTSTR pszKeyName); ! 85: ! 86: ! 87: /* ! 88: * drag.c ! 89: */ ! 90: ! 91: VOID ShowTrackRect(VOID); ! 92: VOID HideTrackRect(VOID); ! 93: VOID FitRectToBounds(PRECT prc, INT nOverHang, INT HandleHit, BOOL fDialog); ! 94: INT GetOverHang(INT iType, INT cy); ! 95: VOID GridizeRect(PRECT prc, INT fGridFlags); ! 96: VOID SizeDragToControl(NPCTYPE npc); ! 97: WINDOWPROC DragWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 98: VOID DrawHandles(HWND hwnd, HDC hDC, BOOL fCurrentSelection); ! 99: INT HandleHitTest(HWND hwnd, INT x, INT y); ! 100: VOID CtrlButtonDown(HWND hwnd, INT x, INT y, BOOL fHandleWindow); ! 101: VOID DragNewBegin(INT cx, INT cy, INT nOverHang); ! 102: VOID CtrlMouseMove(HWND hwnd, BOOL fDragWindow, INT x, INT y); ! 103: VOID PreDragTimeout(HWND hwnd, BOOL fTimedOut); ! 104: VOID DragCancel(VOID); ! 105: VOID CtrlButtonUp(INT x, INT y); ! 106: VOID DragEnd(INT x, INT y); ! 107: ! 108: ! 109: /* ! 110: * file.c ! 111: */ ! 112: ! 113: BOOL Open(INT FileType); ! 114: VOID BuildFilterString(INT FileType, LPTSTR pszFilter); ! 115: INT DoWeSave(INT rgbFlags); ! 116: BOOL Save(INT rgbFlags); ! 117: VOID OpenCmdLineFile(LPTSTR pszFileName); ! 118: LPTSTR FileInPath(LPTSTR pszPath); ! 119: VOID ShowFileStatus(BOOL fForce); ! 120: BOOL DifferentDirs(LPTSTR pszPath1, LPTSTR pszPath2); ! 121: BOOL HasPath(LPTSTR pszFileSpec); ! 122: BOOL WriteDWordPad(HANDLE hf, DWORD cbFile); ! 123: ! 124: ! 125: /* ! 126: * groupdlg.c ! 127: */ ! 128: ! 129: VOID OrderGroupDialog(VOID); ! 130: DIALOGPROC OrderDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 131: ! 132: /* ! 133: * include.c ! 134: */ ! 135: ! 136: NPLABEL AddLabel(LPTSTR pszLabel, INT id, DWORD fpos, ! 137: INT nValueOffset, NPLABEL *pplHead, NPLABEL *pplDelHead, ! 138: NPLABEL npLabelSkip, BOOL *pfDups); ! 139: NPLABEL FindLabel(LPTSTR pszLabel, NPLABEL plHead); ! 140: NPLABEL FindID(INT id, NPLABEL plHead); ! 141: BOOL FindIDInRes(INT id); ! 142: VOID DeleteLabel(LPTSTR pszLabel, NPLABEL *pplHead, NPLABEL *pplDelHead); ! 143: BOOL IsSymbol(LPTSTR pszSym); ! 144: VOID IDToLabel(LPTSTR pchLabel, INT id, BOOL fHexOK); ! 145: BOOL LabelToID(LPTSTR pszLabel, PINT pID); ! 146: VOID FreeLabels(NPLABEL *nppLabels); ! 147: ! 148: ! 149: /* ! 150: * menu.c ! 151: */ ! 152: ! 153: VOID DialogMenu(INT cmd); ! 154: VOID LoadMenuBitmaps(HMENU hMenu); ! 155: VOID FreeMenuBitmaps(VOID); ! 156: VOID InitMenu(HMENU hMenu); ! 157: BOOL APIENTRY MsgFilterHookFunc(INT nCode, WPARAM wParam, LPMSG lpMsg); ! 158: VOID ShowHelp(BOOL fMenuHelp); ! 159: ! 160: ! 161: /* ! 162: * reslist.c ! 163: */ ! 164: ! 165: BOOL FindDialog(LPTSTR pszDlgName); ! 166: PRESLINK AllocResLink(PRES pRes); ! 167: VOID RestoreDialog(VOID); ! 168: VOID FreeRes(VOID); ! 169: VOID FreeResList(VOID); ! 170: VOID FreeResLink(PRESLINK prl); ! 171: VOID DeleteDialogResource(VOID); ! 172: ! 173: ! 174: /* ! 175: * restodlg.c ! 176: */ ! 177: ! 178: BOOL SynchDialogResource(VOID); ! 179: PRES AllocDialogResource(BOOL fTestMode, BOOL fClipboard); ! 180: VOID ResLinkToDialog(PRESLINK prl); ! 181: BOOL ResToDialog(PRES pRes, BOOL fDoDialog); ! 182: INT GetiClass(LPTSTR pszClass); ! 183: VOID Duplicate(VOID); ! 184: VOID MakeCopyFromRes(PRES pRes); ! 185: ! 186: ! 187: /* ! 188: * resutil.c ! 189: */ ! 190: ! 191: PCONTROLDATA ParseDialogBoxHeader(PDIALOGBOXHEADER pdbh, PDWORD pflStyle, ! 192: PDWORD pflExtStyle, PINT pcdit, PINT px, PINT py, PINT pcx, PINT pcy, ! 193: LPTSTR *ppszMenuName, LPTSTR *ppszClass, LPTSTR *ppszCaption, ! 194: PINT pPointSize, LPTSTR *ppszFontName); ! 195: PCONTROLDATA ParseControlData(PCONTROLDATA pcd, PDWORD pflStyle, ! 196: PDWORD pflExtStyle, PINT px, PINT py, PINT pcx, PINT pcy, PINT pid, ! 197: LPTSTR *ppszClass, LPTSTR *ppszText); ! 198: VOID DWordAlign(PBYTE *ppb); ! 199: VOID DWordPad(PBYTE *ppb); ! 200: LPTSTR ResourceType(PRES pRes); ! 201: LPTSTR ResourceName(PRES pRes); ! 202: PRES2 ResourcePart2(PRES pRes); ! 203: DWORD ResourceSize(PRES pRes); ! 204: PBYTE SkipResHeader(PRES pRes); ! 205: PBYTE SkipSz(LPTSTR pNameOrd); ! 206: PCONTROLDATA SkipDialogBoxHeader(PDIALOGBOXHEADER pdbh); ! 207: PCONTROLDATA SkipControlData(PCONTROLDATA pcd); ! 208: PBYTE NameOrdCpy(LPTSTR pNameOrdDest, LPTSTR pNameOrdSrc); ! 209: INT NameOrdCmp(LPTSTR pNameOrd1, LPTSTR pNameOrd2); ! 210: INT NameOrdLen(LPTSTR pNameOrd); ! 211: LPTSTR NameOrdDup(LPTSTR pNameOrd); ! 212: VOID StrToNameOrd(LPTSTR pszNameOrd, BOOL fDecOnly); ! 213: PBYTE WriteOrd(PORDINAL pOrd, INT nOrdinalID); ! 214: PBYTE WriteResHeader(PRES pRes, DWORD DataSize, INT iResType, LPTSTR pszResName, ! 215: WORD fResFlags, WORD LanguageId, DWORD DataVersion, DWORD Version, ! 216: DWORD Characteristics); ! 217: PBYTE WriteSz(LPTSTR pszDest, LPTSTR pszSrc); ! 218: ! 219: ! 220: /* ! 221: * rwdlg.c ! 222: */ ! 223: ! 224: BOOL WriteDlg(HANDLE hfWrite, LPTSTR pszFullDlgFile); ! 225: ! 226: ! 227: /* ! 228: * rwinc.c ! 229: */ ! 230: ! 231: BOOL OpenIncludeFile(LPTSTR pszOpenInclude); ! 232: VOID FreeInclude(VOID); ! 233: BOOL WriteInc(HANDLE hfWrite); ! 234: ! 235: ! 236: /* ! 237: * rwres.c ! 238: */ ! 239: ! 240: BOOL OpenResFile(LPTSTR pszFullPath); ! 241: BOOL WriteRes(HANDLE hfWrite, LPTSTR pszFullResFile); ! 242: ! 243: ! 244: /* ! 245: * select.c ! 246: */ ! 247: ! 248: BOOL SelectControl(NPCTYPE npc, BOOL fCheckShift); ! 249: VOID SelectControl2(NPCTYPE npc, BOOL fDontUpdate); ! 250: VOID RedrawSelection(VOID); ! 251: VOID SetAnchorToFirstSel(BOOL fDontUpdate); ! 252: VOID SelectNext(VOID); ! 253: VOID SelectPrevious(VOID); ! 254: VOID UnSelectControl(NPCTYPE npc); ! 255: VOID CalcSelectedRect(VOID); ! 256: VOID CancelSelection(BOOL fUpdate); ! 257: VOID OutlineSelectBegin(INT x, INT y); ! 258: VOID OutlineSelectDraw(INT x, INT y); ! 259: VOID OutlineSelectCancel(VOID); ! 260: VOID OutlineSelectEnd(INT x, INT y); ! 261: VOID MyFrameRect(HDC hDC, PRECT prc, DWORD dwRop); ! 262: VOID MoveControl(WPARAM vKey); ! 263: VOID PositionControl(PRECT prc); ! 264: VOID RepositionDialog(VOID); ! 265: VOID SaveDlgClientRect(HWND hwndDlg); ! 266: VOID SizeToText(VOID); ! 267: VOID AlignControls(INT cmd); ! 268: VOID ArrangeSpacing(INT cmd); ! 269: VOID ArrangeSize(INT cmd); ! 270: VOID ArrangePushButtons(INT cmd); ! 271: ! 272: ! 273: /* ! 274: * status.c ! 275: */ ! 276: ! 277: DIALOGPROC StatusDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 278: BOOL StatusApplyChanges(VOID); ! 279: VOID StatusFillSymbolList(NPLABEL plHead); ! 280: VOID StatusSetCoords(PRECT prc); ! 281: VOID StatusUpdate(VOID); ! 282: VOID StatusSetEnable(VOID); ! 283: ! 284: ! 285: /* ! 286: * styles.c ! 287: */ ! 288: ! 289: VOID StylesDialog(VOID); ! 290: DIALOGPROC GenericStylesDlgProc(HWND hwnd, UINT msg, WPARAM wParam, ! 291: LPARAM lParam); ! 292: DIALOGPROC CheckBoxStylesDlgProc(HWND hwnd, UINT msg, WPARAM wParam, ! 293: LPARAM lParam); ! 294: DIALOGPROC RadioButtonStylesDlgProc(HWND hwnd, UINT msg, WPARAM wParam, ! 295: LPARAM lParam); ! 296: DIALOGPROC PushButtonStylesDlgProc(HWND hwnd, UINT msg, WPARAM wParam, ! 297: LPARAM lParam); ! 298: DIALOGPROC ComboBoxStylesDlgProc(HWND hwnd, UINT msg, WPARAM wParam, ! 299: LPARAM lParam); ! 300: DIALOGPROC EditStylesDlgProc(HWND hwnd, UINT msg, WPARAM wParam, ! 301: LPARAM lParam); ! 302: DIALOGPROC ListBoxStylesDlgProc(HWND hwnd, UINT msg, WPARAM wParam, ! 303: LPARAM lParam); ! 304: DIALOGPROC CustomStylesDlgProc(HWND hwnd, UINT msg, WPARAM wParam, ! 305: LPARAM lParam); ! 306: DIALOGPROC DialogStylesDlgProc(HWND hwnd, UINT msg, WPARAM wParam, ! 307: LPARAM lParam); ! 308: BOOL APIENTRY FontNameEnumFunc(LPLOGFONT lpLogFont, ! 309: LPTEXTMETRIC lpTextMetric, INT nFontType, LPVOID lpData); ! 310: BOOL APIENTRY PointSizeEnumFunc(LPLOGFONT lpLogFont, ! 311: LPTEXTMETRIC lpTextMetric, INT nFontType, LPVOID lpData); ! 312: ! 313: ! 314: /* ! 315: * toolbox.c ! 316: */ ! 317: ! 318: VOID ToolboxShow(BOOL fShow); ! 319: VOID ToolboxOnTop(VOID); ! 320: WINDOWPROC ToolboxWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 321: WINDOWPROC ToolBtnWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); ! 322: VOID ToolboxSelectTool(INT type, BOOL fLock); ! 323: ! 324: ! 325: /* ! 326: * util.c ! 327: */ ! 328: ! 329: VOID *MyAlloc(INT cbAlloc); ! 330: VOID *MyRealloc(VOID *npMem, INT cbNewAlloc); ! 331: VOID *MyFree(VOID *npMem); ! 332: BOOL IsValue(LPTSTR pszValue); ! 333: BOOL HasBlanks(LPTSTR psz); ! 334: INT valtoi(LPTSTR pszValue); ! 335: INT axtoi(LPTSTR pch); ! 336: VOID Myitoa(INT n, LPTSTR psz); ! 337: VOID itoax(INT n, LPTSTR pszBuff); ! 338: BOOL IsUniqueID(INT id); ! 339: INT NextID(INT idType, NPLABEL plHead, INT idExclude); ! 340: INT Message(INT idMsg, ...); ! 341: VOID ClientToScreenRect(HWND hwnd, PRECT prc); ! 342: VOID ScreenToClientRect(HWND hwnd, PRECT prc); ! 343: VOID DUToWinPoint(PPOINT ppt); ! 344: VOID WinToDUPoint(PPOINT ppt); ! 345: VOID DUToWinRect(PRECT prc); ! 346: VOID WinToDURect(PRECT prc); ! 347: VOID MapDlgClientPoint(PPOINT ppt, BOOL fFromClient); ! 348: VOID MapWindowPoint(HWND hwndFrom, HWND hwndTo, PPOINT ppt); ! 349: VOID MyMapWindowRect(HWND hwndFrom, HWND hwndTo, PRECT prc); ! 350: VOID GetChildRect(HWND hwndChild, PRECT prc); ! 351: VOID CenterWindow(HWND hwnd); ! 352: VOID FitRectToScreen(PRECT prc); ! 353: LPTSTR ids(UINT idString); ! 354: INT PixelsToPointSize(INT nPixels); ! 355: INT PointSizeToPixels(INT nPointSize); ! 356: ! 357: ! 358: ! 359: /* ! 360: * viewinc.c ! 361: */ ! 362: ! 363: VOID ViewInclude(VOID); ! 364: DIALOGPROC ViewIncludeDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.