//[c] import "windows" public [name="c", call="__stdcall"] //[c] //[c] //[c]Open Filename Dialog Box //[c] //[of]: Structures //[c] typedef LPOFNHOOKPROC = {HWND, UINT, WPARAM, LPARAM} UINT //[c] struct OPENFILENAMEA lStructSize: DWORD hwndOwner: HWND hInstance: HINSTANCE lpstrFilter: LPCSTR lpstrCustomFilter: LPSTR nMaxCustFilter: DWORD nFilterIndex: DWORD lpstrFile: LPSTR nMaxFile: DWORD lpstrFileTitle: LPSTR nMaxFileTitle: DWORD lpstrInitialDir: LPCSTR lpstrTitle: LPCSTR Flags: DWORD nFileOffset: WORD nFileExtension: WORD lpstrDefExt: LPCSTR lCustData: LPARAM lpfnHook: LPOFNHOOKPROC lpTemplateName: LPCSTR end //[c] typedef OPENFILENAME = OPENFILENAMEA //[cf] //[of]: Functions //[c] import func GetOpenFileNameA (OPENFILENAMEA): BOOL import func GetSaveFileNameA (OPENFILENAMEA): BOOL import func GetFileTitleA (LPCSTR,LPSTR,WORD): short //[cf] //[of]: Flags //[c] equ OFN_READONLY = 0x00000001 equ OFN_OVERWRITEPROMPT = 0x00000002 equ OFN_HIDEREADONLY = 0x00000004 equ OFN_NOCHANGEDIR = 0x00000008 equ OFN_SHOWHELP = 0x00000010 equ OFN_ENABLEHOOK = 0x00000020 equ OFN_ENABLETEMPLATE = 0x00000040 equ OFN_ENABLETEMPLATEHANDLE = 0x00000080 equ OFN_NOVALIDATE = 0x00000100 equ OFN_ALLOWMULTISELECT = 0x00000200 equ OFN_EXTENSIONDIFFERENT = 0x00000400 equ OFN_PATHMUSTEXIST = 0x00000800 equ OFN_FILEMUSTEXIST = 0x00001000 equ OFN_CREATEPROMPT = 0x00002000 equ OFN_SHAREAWARE = 0x00004000 equ OFN_NOREADONLYRETURN = 0x00008000 equ OFN_NOTESTFILECREATE = 0x00010000 equ OFN_NONETWORKBUTTON = 0x00020000 equ OFN_NOLONGNAMES = 0x00040000 equ OFN_EXPLORER = 0x00080000 equ OFN_NODEREFERENCELINKS = 0x00100000 equ OFN_LONGNAMES = 0x00200000 equ OFN_ENABLEINCLUDENOTIFY = 0x00400000 equ OFN_ENABLESIZING = 0x00800000 equ OFN_SHAREFALLTHROUGH = 2 equ OFN_SHARENOWARN = 1 equ OFN_SHAREWARN = 0 //[cf] //[c] //[c]Choose Font Dialog Box //[c] //[of]: Structures //[c] typedef LPCFHOOKPROC = {HWND, UINT, WPARAM, LPARAM} UINT //[c] struct LPCHOOSEFONTA lStructSize : DWORD hwndOwner : HWND hDC : HDC lpLogFont : LPLOGFONTA iPointSize : INT Flags : DWORD rgbColors : DWORD lCustData : LPARAM lpfnHook : LPCFHOOKPROC lpTemplateName : LPCSTR hInstance : HINSTANCE lpszStyle : LPSTR nFontType : WORD ___MISSING_ALIGNMENT__ : WORD nSizeMin : INT nSizeMax : INT end //[c] typedef CHOOSEFONTA = local LPCHOOSEFONTA //[c] typedef CHOOSEFONT = CHOOSEFONTA typedef LPCHOOSEFONT = LPCHOOSEFONTA //[cf] //[of]: Functions //[c] import func ChooseFontA (LPCHOOSEFONTA) : BOOL //[cf] //[of]: Flags //[c] equ CF_SCREENFONTS = 1 equ CF_PRINTERFONTS = 2 equ CF_BOTH = 3 equ CF_SHOWHELP = 4 equ CF_ENABLEHOOK = 8 equ CF_ENABLETEMPLATE = 16 equ CF_ENABLETEMPLATEHANDLE = 32 equ CF_INITTOLOGFONTSTRUCT = 64 equ CF_USESTYLE = 128 equ CF_EFFECTS = 256 equ CF_APPLY = 512 equ CF_ANSIONLY = 1024 equ CF_SCRIPTSONLY = CF_ANSIONLY equ CF_NOVECTORFONTS = 2048 equ CF_NOOEMFONTS = 2048 equ CF_NOSIMULATIONS = 4096 equ CF_LIMITSIZE = 8192 equ CF_FIXEDPITCHONLY = 16384 equ CF_WYSIWYG = 32768 equ CF_FORCEFONTEXIST = 65536 equ CF_SCALABLEONLY = 131072 equ CF_TTONLY = 262144 equ CF_NOFACESEL = 524288 equ CF_NOSTYLESEL = 1048576 equ CF_NOSIZESEL = 2097152 equ CF_SELECTSCRIPT = 4194304 equ CF_NOSCRIPTSEL = 8388608 equ CF_NOVERTFONTS = 0x1000000 //[c] equ SIMULATED_FONTTYPE = 0x8000 equ PRINTER_FONTTYPE = 0x4000 equ SCREEN_FONTTYPE = 0x2000 equ BOLD_FONTTYPE = 0x0100 equ ITALIC_FONTTYPE = 0x0200 equ REGULAR_FONTTYPE = 0x0400 //[c] equ OPENTYPE_FONTTYPE = 0x10000 equ TYPE1_FONTTYPE = 0x20000 equ DSIG_FONTTYPE = 0x40000 //[c] equ WM_CHOOSEFONT_GETLOGFONT = WM_USER + 1 equ WM_CHOOSEFONT_SETLOGFONT = WM_USER + 101 equ WM_CHOOSEFONT_SETFLAGS = WM_USER + 102 //[cf] //[c] //[c] end