- The last of the major Win16/32 split for commdlg (for real this

time).
- Moved most of the 16bit stuff to cdlg16.h.
- A few small cleanups.
This commit is contained in:
Steven Edwards 2003-12-12 06:09:13 +00:00 committed by Alexandre Julliard
parent 54b951a480
commit c49064a838
14 changed files with 258 additions and 281 deletions

View file

@ -17,7 +17,6 @@ C_SRCS = \
finddlg32.c \
filetitle.c \
fontdlg.c \
generic.c \
printdlg.c
C_SRCS16 = \
@ -25,6 +24,7 @@ C_SRCS16 = \
filedlg16.c \
finddlg.c \
fontdlg16.c \
generic.c \
printdlg16.c
RC_SRCS = rsrc.rc

View file

@ -23,7 +23,6 @@
#define COM_NO_WINDOWS_H
#include "dlgs.h"
#include "wine/windef16.h"
#include "wownt32.h"
/* Common dialogs implementation globals */
@ -172,126 +171,53 @@ extern BOOL (WINAPI *COMDLG32_SHGetFolderPathW)(HWND,int,HANDLE,DWORD,LPWSTR);
extern BOOL WINAPI GetFileDialog95A(LPOPENFILENAMEA ofn,UINT iDlgType);
extern BOOL WINAPI GetFileDialog95W(LPOPENFILENAMEW ofn,UINT iDlgType);
/* 16 bit api */
/*
* Internal Functions
* Do NOT Export to other programs and dlls
*/
#include "pshpack1.h"
BOOL CC_HookCallChk( LPCHOOSECOLORW lpcc );
int CC_MouseCheckResultWindow( HWND hDlg, LPARAM lParam );
LRESULT CC_WMLButtonDown( HWND hDlg, WPARAM wParam, LPARAM lParam );
LRESULT CC_WMLButtonUp( HWND hDlg, WPARAM wParam, LPARAM lParam );
LRESULT CC_WMCommand( HWND hDlg, WPARAM wParam, LPARAM lParam, WORD
notifyCode, HWND hwndCtl );
LRESULT CC_WMMouseMove( HWND hDlg, LPARAM lParam );
LRESULT CC_WMPaint( HWND hDlg, WPARAM wParam, LPARAM lParam );
void CC_SwitchToFullSize( HWND hDlg, COLORREF result, LPRECT lprect );
void CC_PaintSelectedColor( HWND hDlg, COLORREF cr );
int CC_RGBtoHSL(char c, int r, int g, int b);
void CC_PaintCross( HWND hDlg, int x, int y);
void CC_PaintTriangle( HWND hDlg, int y);
int CC_CheckDigitsInEdit( HWND hwnd, int maxval );
void CC_EditSetHSL( HWND hDlg, int h, int s, int l );
int CC_HSLtoRGB(char c, int hue, int sat, int lum);
void CC_EditSetRGB( HWND hDlg, COLORREF cr );
void CC_PaintUserColorArray( HWND hDlg, int rows, int cols, COLORREF* lpcr );
typedef UINT16 (CALLBACK *LPOFNHOOKPROC16)(HWND16,UINT16,WPARAM16,LPARAM);
typedef struct {
DWORD lStructSize;
HWND16 hwndOwner;
HINSTANCE16 hInstance;
SEGPTR lpstrFilter;
SEGPTR lpstrCustomFilter;
DWORD nMaxCustFilter;
DWORD nFilterIndex;
SEGPTR lpstrFile;
DWORD nMaxFile;
SEGPTR lpstrFileTitle;
DWORD nMaxFileTitle;
SEGPTR lpstrInitialDir;
SEGPTR lpstrTitle;
DWORD Flags;
UINT16 nFileOffset;
UINT16 nFileExtension;
SEGPTR lpstrDefExt;
LPARAM lCustData;
LPOFNHOOKPROC16 lpfnHook;
SEGPTR lpTemplateName;
} OPENFILENAME16,*LPOPENFILENAME16;
typedef UINT16 (CALLBACK *LPCCHOOKPROC16) (HWND16, UINT16, WPARAM16, LPARAM);
typedef struct {
DWORD lStructSize;
HWND16 hwndOwner;
HWND16 hInstance;
COLORREF rgbResult;
SEGPTR lpCustColors;
DWORD Flags;
LPARAM lCustData;
LPCCHOOKPROC16 lpfnHook;
SEGPTR lpTemplateName;
} CHOOSECOLOR16;
typedef CHOOSECOLOR16 *LPCHOOSECOLOR16;
typedef UINT16 (CALLBACK *LPFRHOOKPROC16)(HWND16,UINT16,WPARAM16,LPARAM);
typedef struct {
DWORD lStructSize; /* size of this struct 0x20 */
HWND16 hwndOwner; /* handle to owner's window */
HINSTANCE16 hInstance; /* instance handle of.EXE that */
/* contains cust. dlg. template */
DWORD Flags; /* one or more of the FR_?? */
SEGPTR lpstrFindWhat; /* ptr. to search string */
SEGPTR lpstrReplaceWith; /* ptr. to replace string */
UINT16 wFindWhatLen; /* size of find buffer */
UINT16 wReplaceWithLen; /* size of replace buffer */
LPARAM lCustData; /* data passed to hook fn. */
LPFRHOOKPROC16 lpfnHook;
SEGPTR lpTemplateName; /* custom template name */
} FINDREPLACE16, *LPFINDREPLACE16;
typedef UINT16 (CALLBACK *LPCFHOOKPROC16)(HWND16,UINT16,WPARAM16,LPARAM);
typedef struct
{
DWORD lStructSize;
HWND16 hwndOwner; /* caller's window handle */
HDC16 hDC; /* printer DC/IC or NULL */
SEGPTR lpLogFont; /* ptr. to a LOGFONT struct */
short iPointSize; /* 10 * size in points of selected font */
DWORD Flags; /* enum. type flags */
COLORREF rgbColors; /* returned text color */
LPARAM lCustData; /* data passed to hook fn. */
LPCFHOOKPROC16 lpfnHook;
SEGPTR lpTemplateName; /* custom template name */
HINSTANCE16 hInstance; /* instance handle of.EXE that */
/* contains cust. dlg. template */
SEGPTR lpszStyle; /* return the style field here */
/* must be LF_FACESIZE or bigger */
UINT16 nFontType; /* same value reported to the */
/* EnumFonts callback with the */
/* extra FONTTYPE_ bits added */
short nSizeMin; /* minimum pt size allowed & */
short nSizeMax; /* max pt size allowed if */
/* CF_LIMITSIZE is used */
} CHOOSEFONT16, *LPCHOOSEFONT16;
HWND hWnd1;
HWND hWnd2;
LPCHOOSEFONTA lpcf32a;
int added;
} CFn_ENUMSTRUCT, *LPCFn_ENUMSTRUCT;
INT AddFontFamily(const LOGFONTA *lplf, UINT nFontType, LPCHOOSEFONTA lpcf,
HWND hwnd, LPCFn_ENUMSTRUCT e);
INT AddFontStyle(const ENUMLOGFONTEXA *lpElfex, const TEXTMETRICA *metrics,
UINT nFontType, LPCHOOSEFONTA lpcf, HWND hcmb2, HWND hcmb3,
HWND hDlg, BOOL iswin16);
void _dump_cf_flags(DWORD cflags);
typedef UINT16 (CALLBACK *LPPRINTHOOKPROC16) (HWND16, UINT16, WPARAM16, LPARAM);
typedef UINT16 (CALLBACK *LPSETUPHOOKPROC16) (HWND16, UINT16, WPARAM16, LPARAM);
typedef struct
{
DWORD lStructSize;
HWND16 hwndOwner;
HGLOBAL16 hDevMode;
HGLOBAL16 hDevNames;
HDC16 hDC;
DWORD Flags;
WORD nFromPage;
WORD nToPage;
WORD nMinPage;
WORD nMaxPage;
WORD nCopies;
HINSTANCE16 hInstance;
LPARAM lCustData;
LPPRINTHOOKPROC16 lpfnPrintHook;
LPSETUPHOOKPROC16 lpfnSetupHook;
SEGPTR lpPrintTemplateName;
SEGPTR lpSetupTemplateName;
HGLOBAL16 hPrintTemplate;
HGLOBAL16 hSetupTemplate;
} PRINTDLG16, *LPPRINTDLG16;
BOOL16 WINAPI ChooseColor16(LPCHOOSECOLOR16 lpChCol);
HWND16 WINAPI FindText16( SEGPTR find);
INT16 WINAPI GetFileTitle16(LPCSTR lpFile, LPSTR lpTitle, UINT16 cbBuf);
BOOL16 WINAPI GetOpenFileName16(SEGPTR ofn);
BOOL16 WINAPI GetSaveFileName16(SEGPTR ofn);
BOOL16 WINAPI PrintDlg16( LPPRINTDLG16 print);
HWND16 WINAPI ReplaceText16( SEGPTR find);
BOOL16 WINAPI ChooseFont16(LPCHOOSEFONT16);
#include "poppack.h"
LRESULT CFn_WMInitDialog(HWND hDlg, WPARAM wParam, LPARAM lParam,
LPCHOOSEFONTA lpcf);
LRESULT CFn_WMMeasureItem(HWND hDlg, WPARAM wParam, LPARAM lParam);
LRESULT CFn_WMDrawItem(HWND hDlg, WPARAM wParam, LPARAM lParam);
LRESULT CFn_WMCommand(HWND hDlg, WPARAM wParam, LPARAM lParam,
LPCHOOSEFONTA lpcf);
LRESULT CFn_WMPaint(HWND hDlg, WPARAM wParam, LPARAM lParam,
LPCHOOSEFONTA lpcf);
LRESULT CFn_WMDestroy(HWND hwnd, WPARAM wParam, LPARAM lParam);
#endif /* _WINE_DLL_CDLG_H */

155
dlls/commdlg/cdlg16.h Normal file
View file

@ -0,0 +1,155 @@
/*
* Common Dialog Boxes interface (16 bit implementation)
*
* Copyright 1994 Martin Ayotte
* Copyright 1996 Albrecht Kleine
* Copyright 1998 Bertho A. Stultiens
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef _WINE_DLL_CDLG16_H
#define _WINE_DLL_CDLG16_H
#define COM_NO_WINDOWS_H
#include "dlgs.h"
#include "wine/windef16.h"
#include "wine/winbase16.h"
#include "wine/winuser16.h"
#include "wownt32.h"
/* 16 bit api */
#include "pshpack1.h"
typedef UINT16 (CALLBACK *LPOFNHOOKPROC16)(HWND16,UINT16,WPARAM16,LPARAM);
typedef struct {
DWORD lStructSize;
HWND16 hwndOwner;
HINSTANCE16 hInstance;
SEGPTR lpstrFilter;
SEGPTR lpstrCustomFilter;
DWORD nMaxCustFilter;
DWORD nFilterIndex;
SEGPTR lpstrFile;
DWORD nMaxFile;
SEGPTR lpstrFileTitle;
DWORD nMaxFileTitle;
SEGPTR lpstrInitialDir;
SEGPTR lpstrTitle;
DWORD Flags;
UINT16 nFileOffset;
UINT16 nFileExtension;
SEGPTR lpstrDefExt;
LPARAM lCustData;
LPOFNHOOKPROC16 lpfnHook;
SEGPTR lpTemplateName;
} OPENFILENAME16,*LPOPENFILENAME16;
typedef UINT16 (CALLBACK *LPCCHOOKPROC16) (HWND16, UINT16, WPARAM16, LPARAM);
typedef struct {
DWORD lStructSize;
HWND16 hwndOwner;
HWND16 hInstance;
COLORREF rgbResult;
SEGPTR lpCustColors;
DWORD Flags;
LPARAM lCustData;
LPCCHOOKPROC16 lpfnHook;
SEGPTR lpTemplateName;
} CHOOSECOLOR16;
typedef CHOOSECOLOR16 *LPCHOOSECOLOR16;
typedef UINT16 (CALLBACK *LPFRHOOKPROC16)(HWND16,UINT16,WPARAM16,LPARAM);
typedef struct {
DWORD lStructSize; /* size of this struct 0x20 */
HWND16 hwndOwner; /* handle to owner's window */
HINSTANCE16 hInstance; /* instance handle of.EXE that */
/* contains cust. dlg. template */
DWORD Flags; /* one or more of the FR_?? */
SEGPTR lpstrFindWhat; /* ptr. to search string */
SEGPTR lpstrReplaceWith; /* ptr. to replace string */
UINT16 wFindWhatLen; /* size of find buffer */
UINT16 wReplaceWithLen; /* size of replace buffer */
LPARAM lCustData; /* data passed to hook fn. */
LPFRHOOKPROC16 lpfnHook;
SEGPTR lpTemplateName; /* custom template name */
} FINDREPLACE16, *LPFINDREPLACE16;
typedef UINT16 (CALLBACK *LPCFHOOKPROC16)(HWND16,UINT16,WPARAM16,LPARAM);
typedef struct
{
DWORD lStructSize;
HWND16 hwndOwner; /* caller's window handle */
HDC16 hDC; /* printer DC/IC or NULL */
SEGPTR lpLogFont; /* ptr. to a LOGFONT struct */
short iPointSize; /* 10 * size in points of selected font */
DWORD Flags; /* enum. type flags */
COLORREF rgbColors; /* returned text color */
LPARAM lCustData; /* data passed to hook fn. */
LPCFHOOKPROC16 lpfnHook;
SEGPTR lpTemplateName; /* custom template name */
HINSTANCE16 hInstance; /* instance handle of.EXE that */
/* contains cust. dlg. template */
SEGPTR lpszStyle; /* return the style field here */
/* must be LF_FACESIZE or bigger */
UINT16 nFontType; /* same value reported to the */
/* EnumFonts callback with the */
/* extra FONTTYPE_ bits added */
short nSizeMin; /* minimum pt size allowed & */
short nSizeMax; /* max pt size allowed if */
/* CF_LIMITSIZE is used */
} CHOOSEFONT16, *LPCHOOSEFONT16;
typedef UINT16 (CALLBACK *LPPRINTHOOKPROC16) (HWND16, UINT16, WPARAM16, LPARAM);
typedef UINT16 (CALLBACK *LPSETUPHOOKPROC16) (HWND16, UINT16, WPARAM16, LPARAM);
typedef struct
{
DWORD lStructSize;
HWND16 hwndOwner;
HGLOBAL16 hDevMode;
HGLOBAL16 hDevNames;
HDC16 hDC;
DWORD Flags;
WORD nFromPage;
WORD nToPage;
WORD nMinPage;
WORD nMaxPage;
WORD nCopies;
HINSTANCE16 hInstance;
LPARAM lCustData;
LPPRINTHOOKPROC16 lpfnPrintHook;
LPSETUPHOOKPROC16 lpfnSetupHook;
SEGPTR lpPrintTemplateName;
SEGPTR lpSetupTemplateName;
HGLOBAL16 hPrintTemplate;
HGLOBAL16 hSetupTemplate;
} PRINTDLG16, *LPPRINTDLG16;
BOOL16 WINAPI ChooseColor16(LPCHOOSECOLOR16 lpChCol);
HWND16 WINAPI FindText16( SEGPTR find);
INT16 WINAPI GetFileTitle16(LPCSTR lpFile, LPSTR lpTitle, UINT16 cbBuf);
BOOL16 WINAPI GetOpenFileName16(SEGPTR ofn);
BOOL16 WINAPI GetSaveFileName16(SEGPTR ofn);
BOOL16 WINAPI PrintDlg16( LPPRINTDLG16 print);
HWND16 WINAPI ReplaceText16( SEGPTR find);
BOOL16 WINAPI ChooseFont16(LPCHOOSEFONT16);
#include "poppack.h"
#endif /* _WINE_DLL_CDLG16_H */

View file

@ -31,19 +31,15 @@
#include "windef.h"
#include "winbase.h"
#include "wingdi.h"
#include "wine/winbase16.h"
#include "wine/winuser16.h"
#include "winuser.h"
#include "commdlg.h"
#include "dlgs.h"
#include "wine/debug.h"
#include "cderr.h"
#include "cdlg.h"
WINE_DEFAULT_DEBUG_CHANNEL(commdlg);
#include "cdlg.h"
#include "colordlg.h"
static INT_PTR CALLBACK ColorDlgProc( HWND hWnd, UINT wMsg, WPARAM wParam, LPARAM lParam );
#define CONV_LPARAMTOPOINT(lp,p) do { (p)->x = (short)LOWORD(lp); (p)->y = (short)HIWORD(lp); } while(0)
@ -66,6 +62,31 @@ static const COLORREF predefcolors[6][8]=
0x00808040L, 0x00C0C0C0L, 0x00400040L, 0x00FFFFFFL },
};
/* Chose Color PRIVATE Structure:
*
* This structure is duplicated in the 16 bit code with
* a extra member
*/
typedef struct CCPRIVATE
{
LPCHOOSECOLORW lpcc; /* points to public known data structure */
int nextuserdef; /* next free place in user defined color array */
HDC hdcMem; /* color graph used for BitBlt() */
HBITMAP hbmMem; /* color graph bitmap */
RECT fullsize; /* original dialog window size */
UINT msetrgb; /* # of SETRGBSTRING message (today not used) */
RECT old3angle; /* last position of l-marker */
RECT oldcross; /* last position of color/satuation marker */
BOOL updating; /* to prevent recursive WM_COMMAND/EN_UPDATE processing */
int h;
int s;
int l; /* for temporary storing of hue,sat,lum */
int capturedGraph; /* control mouse captured */
RECT focusRect; /* rectangle last focused item */
HWND hwndFocus; /* handle last focused item */
} *LCCPRIV;
/***********************************************************************
* CC_HSLtoRGB [internal]
*/

View file

@ -1,91 +0,0 @@
/*
* COMMDLG - Color Dialog
*
* Copyright 1994 Martin Ayotte
* Copyright 1996 Albrecht Kleine
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
/* BUGS : still seems to not refresh correctly
sometimes, especially when 2 instances of the
dialog are loaded at the same time */
#ifndef _WINE_COLORDLG_H
#define _WINE_COLORDLG_H
#include <ctype.h>
#include <stdarg.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "windef.h"
#include "winbase.h"
#include "wingdi.h"
#include "wine/winbase16.h"
#include "wine/winuser16.h"
#include "winuser.h"
#include "commdlg.h"
#include "dlgs.h"
#include "wine/debug.h"
#include "cderr.h"
#include "cdlg.h"
typedef struct CCPRIVATE
{
LPCHOOSECOLORW lpcc; /* points to public known data structure */
LPCHOOSECOLOR16 lpcc16; /* save the 16 bits pointer */
int nextuserdef; /* next free place in user defined color array */
HDC hdcMem; /* color graph used for BitBlt() */
HBITMAP hbmMem; /* color graph bitmap */
RECT fullsize; /* original dialog window size */
UINT msetrgb; /* # of SETRGBSTRING message (today not used) */
RECT old3angle; /* last position of l-marker */
RECT oldcross; /* last position of color/satuation marker */
BOOL updating; /* to prevent recursive WM_COMMAND/EN_UPDATE processing */
int h;
int s;
int l; /* for temporary storing of hue,sat,lum */
int capturedGraph; /* control mouse captured */
RECT focusRect; /* rectangle last focused item */
HWND hwndFocus; /* handle last focused item */
} *LCCPRIV;
/*
* Internal Functions
* Do NOT Export to other programs and dlls
*/
BOOL CC_HookCallChk( LPCHOOSECOLORW lpcc );
int CC_MouseCheckResultWindow( HWND hDlg, LPARAM lParam );
LRESULT CC_WMLButtonDown( HWND hDlg, WPARAM wParam, LPARAM lParam );
LRESULT CC_WMLButtonUp( HWND hDlg, WPARAM wParam, LPARAM lParam );
LRESULT CC_WMCommand( HWND hDlg, WPARAM wParam, LPARAM lParam, WORD
notifyCode, HWND hwndCtl );
LRESULT CC_WMMouseMove( HWND hDlg, LPARAM lParam );
LRESULT CC_WMPaint( HWND hDlg, WPARAM wParam, LPARAM lParam );
void CC_SwitchToFullSize( HWND hDlg, COLORREF result, LPRECT lprect );
void CC_PaintSelectedColor( HWND hDlg, COLORREF cr );
int CC_RGBtoHSL(char c, int r, int g, int b);
void CC_PaintCross( HWND hDlg, int x, int y);
void CC_PaintTriangle( HWND hDlg, int y);
int CC_CheckDigitsInEdit( HWND hwnd, int maxval );
void CC_EditSetHSL( HWND hDlg, int h, int s, int l );
int CC_HSLtoRGB(char c, int hue, int sat, int lum);
void CC_EditSetRGB( HWND hDlg, COLORREF cr );
void CC_PaintUserColorArray( HWND hDlg, int rows, int cols, COLORREF* lpcr );
#endif /* _WINE_COLORDLG_H */

View file

@ -39,10 +39,35 @@
#include "wine/debug.h"
#include "cderr.h"
#include "cdlg.h"
#include "colordlg.h"
#include "cdlg16.h"
WINE_DEFAULT_DEBUG_CHANNEL(commdlg);
/* Chose Color PRIVATE Structure:
*
* This is a duplicate of the 32bit code with
* a extra member
*/
typedef struct CCPRIVATE
{
LPCHOOSECOLORW lpcc; /* points to public known data structure */
LPCHOOSECOLOR16 lpcc16; /* save the 16 bits pointer */
int nextuserdef; /* next free place in user defined color array */
HDC hdcMem; /* color graph used for BitBlt() */
HBITMAP hbmMem; /* color graph bitmap */
RECT fullsize; /* original dialog window size */
UINT msetrgb; /* # of SETRGBSTRING message (today not used) */
RECT old3angle; /* last position of l-marker */
RECT oldcross; /* last position of color/satuation marker */
BOOL updating; /* to prevent recursive WM_COMMAND/EN_UPDATE processing */
int h;
int s;
int l; /* for temporary storing of hue,sat,lum */
int capturedGraph; /* control mouse captured */
RECT focusRect; /* rectangle last focused item */
HWND hwndFocus; /* handle last focused item */
} *LCCPRIV;
/***********************************************************************
* CC_WMInitDialog16 [internal]
*/

View file

@ -44,6 +44,7 @@
WINE_DEFAULT_DEBUG_CHANNEL(commdlg);
#include "cdlg.h"
#include "cdlg16.h"
#define BUFFILE 512
#define BUFFILEALLOC 512 * sizeof(WCHAR)

View file

@ -36,6 +36,7 @@
WINE_DEFAULT_DEBUG_CHANNEL(commdlg);
#include "cdlg.h"
#include "cdlg16.h"
struct FRPRIVATE
{

View file

@ -40,7 +40,6 @@
WINE_DEFAULT_DEBUG_CHANNEL(commdlg);
#include "cdlg.h"
#include "fontdlg.h"
static HBITMAP hBitmapTT = 0;
@ -49,8 +48,6 @@ INT_PTR CALLBACK FormatCharDlgProcA(HWND hDlg, UINT uMsg, WPARAM wParam,
LPARAM lParam);
INT_PTR CALLBACK FormatCharDlgProcW(HWND hDlg, UINT uMsg, WPARAM wParam,
LPARAM lParam);
BOOL16 CALLBACK FormatCharDlgProc16(HWND16 hDlg, UINT16 message, WPARAM16 wParam,
LPARAM lParam);
/* There is a table here of all charsets, and the sample text for each.
* There is a second table that translates a charset into an index into

View file

@ -1,63 +0,0 @@
/*
* COMMDLG - Font Dialog
*
* Copyright 1994 Martin Ayotte
* Copyright 1996 Albrecht Kleine
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* DO NOT EXPORT TO APPLICATIONS -
* This file only defines the internal functions that are shared to
* implement the Win16 and Win32 font dialog support.
*
*/
#ifndef _WINE_FONTDLG_H
#define _WINE_FONTDLG_H
#include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "wingdi.h"
#include "winuser.h"
#include "commdlg.h"
typedef struct
{
HWND hWnd1;
HWND hWnd2;
LPCHOOSEFONTA lpcf32a;
int added;
} CFn_ENUMSTRUCT, *LPCFn_ENUMSTRUCT;
INT AddFontFamily(const LOGFONTA *lplf, UINT nFontType, LPCHOOSEFONTA lpcf,
HWND hwnd, LPCFn_ENUMSTRUCT e);
INT AddFontStyle(const ENUMLOGFONTEXA *lpElfex, const TEXTMETRICA *metrics,
UINT nFontType, LPCHOOSEFONTA lpcf, HWND hcmb2, HWND hcmb3,
HWND hDlg, BOOL iswin16);
void _dump_cf_flags(DWORD cflags);
LRESULT CFn_WMInitDialog(HWND hDlg, WPARAM wParam, LPARAM lParam,
LPCHOOSEFONTA lpcf);
LRESULT CFn_WMMeasureItem(HWND hDlg, WPARAM wParam, LPARAM lParam);
LRESULT CFn_WMDrawItem(HWND hDlg, WPARAM wParam, LPARAM lParam);
LRESULT CFn_WMCommand(HWND hDlg, WPARAM wParam, LPARAM lParam,
LPCHOOSEFONTA lpcf);
LRESULT CFn_WMPaint(HWND hDlg, WPARAM wParam, LPARAM lParam,
LPCHOOSEFONTA lpcf);
LRESULT CFn_WMDestroy(HWND hwnd, WPARAM wParam, LPARAM lParam);
#endif /* _WINE_FONTDLG_H */

View file

@ -39,7 +39,7 @@
WINE_DEFAULT_DEBUG_CHANNEL(commdlg);
#include "cdlg.h"
#include "fontdlg.h"
#include "cdlg16.h"
static void FONT_LogFont16To32A( const LPLOGFONT16 font16, LPLOGFONTA font32 )
{

View file

@ -33,6 +33,7 @@
WINE_DEFAULT_DEBUG_CHANNEL(commdlg);
#include "cdlg.h"
#include "cdlg16.h"
/***********************************************************************
* DllEntryPoint [COMMDLG.32]

View file

@ -24,6 +24,9 @@
#ifndef _WINE_PRINTDLG_H
#define _WINE_PRINTDLG_H
#include "cdlg.h"
#include "cdlg16.h"
/* This PRINTDLGA internal structure stores
* pointers to several throughout useful structures.
*

View file

@ -45,6 +45,7 @@
WINE_DEFAULT_DEBUG_CHANNEL(commdlg);
#include "cdlg.h"
#include "cdlg16.h"
#include "printdlg.h"
static BOOL PRINTDLG_CreateDevNames16(HGLOBAL16 *hmem, char* DeviceDriverName,