home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / sibdemo3.zip / SOURCE.DAT / SOURCE / WIN32 / COMMDLG.PAS < prev    next >
Pascal/Delphi Source File  |  1996-10-20  |  12KB  |  291 lines

  1. UNIT CommDlg;
  2.  
  3. INTERFACE
  4.  
  5. USES WinDef,WinNT,WinGDI,WinUser;
  6.  
  7. TYPE
  8.     LPOPENFILENAME=^OPENFILENAME;
  9.     OPENFILENAME=RECORD
  10.                        lStructSize:LONGWORD;
  11.                        hwndOwner:HWND;
  12.                        hInstance:HINSTANCE;
  13.                        lpstrFilter:PChar;
  14.                        lpstrCustomFilter:PChar;
  15.                        nMaxCustFilter:LONGWORD;
  16.                        nFilterIndex:LONGWORD;
  17.                        lpstrFile:PChar;
  18.                        nMaxFile:LONGWORD;
  19.                        lpstrFileTitle:PChar;
  20.                        nMaxFileTitle:LONGWORD;
  21.                        lpstrInitialDir:PChar;
  22.                        lpstrTitle:PChar;
  23.                        Flags:LONGWORD;
  24.                        nFileOffset:LONGWORD;
  25.                        nFileExtension:LONGWORD;
  26.                        lpstrDefExt:PChar;
  27.                        lCustData:LPARAM;
  28.                        lpfnHook:FUNCTION (ahwnd:HWND;msg:LONGWORD;
  29.                                           awParam:WPARAM;aLParam:LPARAM):LONGWORD;APIENTRY;
  30.                        lpTemplateName:PChar;
  31.     END;
  32.  
  33. CONST
  34.         OFN_READONLY               = $00000001;
  35.         OFN_OVERWRITEPROMPT        = $00000002;
  36.         OFN_HIDEREADONLY           = $00000004;
  37.         OFN_NOCHANGEDIR            = $00000008;
  38.         OFN_SHOWHELP               = $00000010;
  39.         OFN_ENABLEHOOK             = $00000020;
  40.         OFN_ENABLETEMPLATE         = $00000040;
  41.         OFN_ENABLETEMPLATEHANDLE   = $00000080;
  42.         OFN_NOVALIDATE             = $00000100;
  43.         OFN_ALLOWMULTISELECT       = $00000200;
  44.         OFN_EXTENSIONDIFFERENT     = $00000400;
  45.         OFN_PATHMUSTEXIST          = $00000800;
  46.         OFN_FILEMUSTEXIST          = $00001000;
  47.         OFN_CREATEPROMPT           = $00002000;
  48.         OFN_SHAREAWARE             = $00004000;
  49.         OFN_NOREADONLYRETURN       = $00008000;
  50.         OFN_NOTESTFILECREATE       = $00010000;
  51.  
  52.         OFN_SHAREFALLTHROUGH       = 2;
  53.         OFN_SHARENOWARN            = 1;
  54.         OFN_SHAREWARN              = 0;
  55.  
  56. TYPE
  57.     LPCHOOSECOLOR=^TCHOOSECOLOR;
  58.     TCHOOSECOLOR=RECORD
  59.                       lStructSize:LONGWORD;
  60.                       hwndOwner:HWND;
  61.                       hInstance:HWND;
  62.                       rgbResult:COLORREF;
  63.                       lpCustColors:^COLORREF;
  64.                       Flags:LONGWORD;
  65.                       lCustData:LPARAM;
  66.                       lpfnHook:FUNCTION(ahwnd:HWND;msg:LONGWORD;
  67.                                         aWParam:WPARAM;aLParam:LPARAM):LONGWORD;APIENTRY;
  68.                       lpTemplateName:PChar;
  69.     END;
  70.  
  71. CONST
  72.         CC_RGBINIT              = $00000001;
  73.         CC_FULLOPEN             = $00000002;
  74.         CC_PREVENTFULLOPEN      = $00000004;
  75.         CC_SHOWHELP             = $00000008;
  76.         CC_ENABLEHOOK           = $00000010;
  77.         CC_ENABLETEMPLATE       = $00000020;
  78.         CC_ENABLETEMPLATEHANDLE = $00000040;
  79.  
  80. TYPE
  81.     LPFINDREPLACE=^FINDREPLACE;
  82.     FINDREPLACE=RECORD
  83.                       lStructSize:LONGWORD;
  84.                       hwndOwner:HWND;
  85.                       hInstance:HINSTANCE;
  86.                       Flags:LONGWORD;
  87.                       lpstrFindWhat:PChar;
  88.                       lpstrReplaceWith:PChar;
  89.                       wFindWhatLen:LONGWORD;
  90.                       wReplaceWithLen:LONGWORD;
  91.                       lCustData:LPARAM;
  92.                       lpfnHook:FUNCTION(ahwnd:HWND;msg:LONGWORD;
  93.                                         aWParam:WPARAM;aLParam:LPARAM):LONGWORD;APIENTRY;
  94.                       lpTemplateName:PChar;
  95.     END;
  96.  
  97. CONST
  98.         FR_DOWN                       = $00000001;
  99.         FR_WHOLEWORD                  = $00000002;
  100.         FR_MATCHCASE                  = $00000004;
  101.         FR_FINDNEXT                   = $00000008;
  102.         FR_REPLACE                    = $00000010;
  103.         FR_REPLACEALL                 = $00000020;
  104.         FR_DIALOGTERM                 = $00000040;
  105.         FR_SHOWHELP                   = $00000080;
  106.         FR_ENABLEHOOK                 = $00000100;
  107.         FR_ENABLETEMPLATE             = $00000200;
  108.         FR_NOUPDOWN                   = $00000400;
  109.         FR_NOMATCHCASE                = $00000800;
  110.         FR_NOWHOLEWORD                = $00001000;
  111.         FR_ENABLETEMPLATEHANDLE       = $00002000;
  112.         FR_HIDEUPDOWN                 = $00004000;
  113.         FR_HIDEMATCHCASE              = $00008000;
  114.         FR_HIDEWHOLEWORD              = $00010000;
  115.  
  116. TYPE
  117.     LPCHOOSEFONT=^CHOOSEFONT;
  118.     CHOOSEFONT=RECORD
  119.                      lStructSize:LONGWORD;
  120.                      hwndOwner:HWND;
  121.                      hDC:HDC;
  122.                      lpLogFont:^LOGFONT;
  123.                      iPointSize:LONGINT;
  124.                      Flags:LONGWORD;
  125.                      rgbColors:COLORREF;
  126.                      lCustData:LPARAM;
  127.                      lpfnHook:FUNCTION(ahwnd:HWND;msg:LONGWORD;
  128.                                        aWParam:WPARAM;aLParam:LPARAM):LONGWORD;APIENTRY;
  129.                      lpTemplateName:PChar;
  130.                      hInstance:HINSTANCE;
  131.                      lpszStyle:PChar;
  132.                      nFontType:LONGWORD;
  133.                      nSizeMin:LONGINT;
  134.                      nSizeMax:LONGINT;
  135.      END;
  136.  
  137. CONST
  138.         CF_SCREENFONTS             = $00000001;
  139.         CF_PRINTERFONTS            = $00000002;
  140.         CF_BOTH                    = CF_SCREENFONTS OR CF_PRINTERFONTS;
  141.         CF_SHOWHELP                = $00000004;
  142.         CF_ENABLEHOOK              = $00000008;
  143.         CF_ENABLETEMPLATE          = $00000010;
  144.         CF_ENABLETEMPLATEHANDLE    = $00000020;
  145.         CF_INITTOLOGFONTSTRUCT     = $00000040;
  146.         CF_USESTYLE                = $00000080;
  147.         CF_EFFECTS                 = $00000100;
  148.         CF_APPLY                   = $00000200;
  149.         CF_ANSIONLY                = $00000400;
  150.         CF_NOVECTORFONTS           = $00000800;
  151.         CF_NOOEMFONTS              = CF_NOVECTORFONTS;
  152.         CF_NOSIMULATIONS           = $00001000;
  153.         CF_LIMITSIZE               = $00002000;
  154.         CF_FIXEDPITCHONLY          = $00004000;
  155.         CF_WYSIWYG                 = $00008000;
  156.         CF_FORCEFONTEXIST          = $00010000;
  157.         CF_SCALABLEONLY            = $00020000;
  158.         CF_TTONLY                  = $00040000;
  159.         CF_NOFACESEL               = $00080000;
  160.         CF_NOSTYLESEL              = $00100000;
  161.         CF_NOSIZESEL               = $00200000;
  162.  
  163.         SIMULATED_FONTTYPE    = $8000;
  164.         PRINTER_FONTTYPE      = $4000;
  165.         SCREEN_FONTTYPE       = $2000;
  166.         BOLD_FONTTYPE         = $0100;
  167.         ITALIC_FONTTYPE       = $0200;
  168.         REGULAR_FONTTYPE      = $0400;
  169.  
  170.         WM_CHOOSEFONT_GETLOGFONT      = WM_USER + 1;
  171.  
  172.         LBSELCHSTRING  ='commdlg_LBSelChangedNotify';
  173.         SHAREVISTRING  ='commdlg_ShareViolation';
  174.         FILEOKSTRING   ='commdlg_FileNameOK';
  175.         COLOROKSTRING  ='commdlg_ColorOK';
  176.         SETRGBSTRING   ='commdlg_SetRGBColor';
  177.         FINDMSGSTRING  ='commdlg_FindReplace';
  178.         HELPMSGSTRING  ='commdlg_help';
  179.  
  180.         CD_LBSELNOITEMS =-1;
  181.         CD_LBSELCHANGE  = 0;
  182.         CD_LBSELSUB     = 1;
  183.         CD_LBSELADD     = 2;
  184.  
  185. TYPE
  186.     LPPRINTDLG=^TPRINTDLG;
  187.     TPRINTDLG=RECORD
  188.                    lStructSize:LONGWORD;
  189.                    hwndOwner:HWND;
  190.                    hDevMode:HGLOBAL;
  191.                    hDevNames:HGLOBAL;
  192.                    hDC:HDC;
  193.                    Flags:LONGWORD;
  194.                    nFromPage:LONGWORD;
  195.                    nToPage:LONGWORD;
  196.                    nMinPage:LONGWORD;
  197.                    nMaxPage:LONGWORD;
  198.                    nCopies:LONGWORD;
  199.                    hInstance:HINSTANCE;
  200.                    lCustData:LPARAM;
  201.                    lpfnPrintHook:FUNCTION(ahwnd:HWND;msg:LONGWORD;
  202.                                           aWParam:WPARAM;aLParam:LPARAM):LONGWORD;APIENTRY;
  203.                    lpfnSetupHook:FUNCTION(ahwnd:HWND;msg:LONGWORD;
  204.                                           aWParam:WPARAM;aLParam:LPARAM):LONGWORD;APIENTRY;
  205.                    lpPrintTemplateName:PChar;
  206.                    lpSetupTemplateName:PChar;
  207.                    hPrintTemplate:HGLOBAL;
  208.                    hSetupTemplate:HGLOBAL;
  209.     END;
  210.  
  211. CONST
  212.         PD_ALLPAGES               =  $00000000;
  213.         PD_SELECTION              =  $00000001;
  214.         PD_PAGENUMS               =  $00000002;
  215.         PD_NOSELECTION            =  $00000004;
  216.         PD_NOPAGENUMS             =  $00000008;
  217.         PD_COLLATE                =  $00000010;
  218.         PD_PRINTTOFILE            =  $00000020;
  219.         PD_PRINTSETUP             =  $00000040;
  220.         PD_NOWARNING              =  $00000080;
  221.         PD_RETURNDC               =  $00000100;
  222.         PD_RETURNIC               =  $00000200;
  223.         PD_RETURNDEFAULT          =  $00000400;
  224.         PD_SHOWHELP               =  $00000800;
  225.         PD_ENABLEPRINTHOOK        =  $00001000;
  226.         PD_ENABLESETUPHOOK        =  $00002000;
  227.         PD_ENABLEPRINTTEMPLATE    =  $00004000;
  228.         PD_ENABLESETUPTEMPLATE    =  $00008000;
  229.         PD_ENABLEPRINTTEMPLATEHANDLE=$00010000;
  230.         PD_ENABLESETUPTEMPLATEHANDLE=$00020000;
  231.         PD_USEDEVMODECOPIES       =  $00040000;
  232.         PD_DISABLEPRINTTOFILE     =  $00080000;
  233.         PD_HIDEPRINTTOFILE        =  $00100000;
  234.  
  235. TYPE
  236.     LPDEVNAMES=^DEVNAMES;
  237.     DEVNAMES=RECORD
  238.                    wDriverOffset:LONGWORD;
  239.                    wDeviceOffset:LONGWORD;
  240.                    wOutputOffset:LONGWORD;
  241.                    wDefault:LONGWORD;
  242.     END;
  243.  
  244. CONST
  245.         DN_DEFAULTPRN      =$0001;
  246.  
  247.  
  248. IMPORTS
  249.        {$IFDEF Win95}
  250.        FUNCTION GetOpenFileName(VAR o:OPENFILENAME):BOOL;
  251.                          APIENTRY;  'COMDLG32' name 'GetOpenFileNameA';
  252.        FUNCTION GetSaveFileName(VAR o:OPENFILENAME):BOOL;
  253.                          APIENTRY;  'COMDLG32' name 'GetSaveFileNameA';
  254.        FUNCTION GetFileTitle(CONST c:CSTRING;VAR c1:CSTRING;l:LONGWORD):LONGINT;
  255.                          APIENTRY;  'COMDLG32' name 'GetFileTitleA';
  256.        FUNCTION ChooseColor(VAR c:TCHOOSECOLOR):BOOL;
  257.                          APIENTRY;  'COMDLG32' name 'ChooseColorA';
  258.        FUNCTION FindText(VAR f:FINDREPLACE):HWND;
  259.                          APIENTRY;  'COMDLG32' name 'FindTextA';
  260.        FUNCTION ReplaceText(VAR f:FINDREPLACE):HWND;
  261.                          APIENTRY;  'COMDLG32' name 'ReplaceTextA';
  262.        FUNCTION PrintDlg(VAR p:TPRINTDLG):BOOL;
  263.                          APIENTRY;  'COMDLG32' name 'PrintDlgA';
  264.        FUNCTION CommDlgExtendedError:LONGWORD;
  265.                          APIENTRY;  'COMDLG32' name 'CommDlgExtendedError';
  266.        {$ENDIF}
  267.        {$IFDEF OS2}
  268.        FUNCTION GetOpenFileName(VAR o:OPENFILENAME):BOOL;
  269.                          APIENTRY;  'PMWINX' index 329;
  270.        FUNCTION GetSaveFileName(VAR o:OPENFILENAME):BOOL;
  271.                          APIENTRY;  'PMWINX' index 350;
  272.        FUNCTION GetFileTitle(CONST c:CSTRING;VAR c1:CSTRING;l:LONGWORD):LONGINT;
  273.                          APIENTRY;  'PMWINX' index 288;
  274.        FUNCTION ChooseColor(VAR c:TCHOOSECOLOR):BOOL;
  275.                          APIENTRY;  'PMWINX' index 36;
  276.        FUNCTION FindText(VAR f:FINDREPLACE):HWND;
  277.                          APIENTRY;  'PMWINX' index 214;
  278.        FUNCTION ReplaceText(VAR f:FINDREPLACE):HWND;
  279.                          APIENTRY;  'PMWINX' index 567;
  280.        FUNCTION PrintDlg(VAR p:TPRINTDLG):BOOL;
  281.                          APIENTRY;  'PMWINX' index 530;
  282.        FUNCTION CommDlgExtendedError:LONGWORD;
  283.                          APIENTRY;  'PMWINX' index 48;
  284.        {$ENDIF}
  285. END;
  286.  
  287. IMPLEMENTATION
  288.  
  289. BEGIN
  290. END.
  291.