[PATCH 0/3] MR3164: gdi32: Don't use DECLSPEC_HIDDEN.
From: Jacek Caban <jacek(a)codeweavers.com> --- dlls/gdi32/gdi_private.h | 389 ++++++++++++++++++--------------------- dlls/gdi32/text.c | 2 +- 2 files changed, 184 insertions(+), 207 deletions(-) diff --git a/dlls/gdi32/gdi_private.h b/dlls/gdi32/gdi_private.h index b78733103f8..f717181b252 100644 --- a/dlls/gdi32/gdi_private.h +++ b/dlls/gdi32/gdi_private.h @@ -29,13 +29,12 @@ #include "winbase.h" #include "ntgdi.h" -void set_gdi_client_ptr( HGDIOBJ handle, void *ptr ) DECLSPEC_HIDDEN; -void *get_gdi_client_ptr( HGDIOBJ handle, DWORD type ) DECLSPEC_HIDDEN; -DC_ATTR *get_dc_attr( HDC hdc ) DECLSPEC_HIDDEN; -HGDIOBJ get_full_gdi_handle( HGDIOBJ handle ) DECLSPEC_HIDDEN; -void GDI_hdc_using_object( HGDIOBJ obj, HDC hdc, - void (*delete)( HDC hdc, HGDIOBJ handle )) DECLSPEC_HIDDEN; -void GDI_hdc_not_using_object( HGDIOBJ obj, HDC hdc ) DECLSPEC_HIDDEN; +void set_gdi_client_ptr( HGDIOBJ handle, void *ptr ); +void *get_gdi_client_ptr( HGDIOBJ handle, DWORD type ); +DC_ATTR *get_dc_attr( HDC hdc ); +HGDIOBJ get_full_gdi_handle( HGDIOBJ handle ); +void GDI_hdc_using_object( HGDIOBJ obj, HDC hdc, void (*delete)( HDC hdc, HGDIOBJ handle )); +void GDI_hdc_not_using_object( HGDIOBJ obj, HDC hdc ); static inline DWORD gdi_handle_type( HGDIOBJ obj ) { @@ -77,85 +76,78 @@ static inline BOOL is_meta_dc( HDC hdc ) return gdi_handle_type( hdc ) == NTGDI_OBJ_METADC; } -extern BOOL METADC_Arc( HDC hdc, INT left, INT top, INT right, INT bottom, - INT xstart, INT ystart, INT xend, INT yend ) DECLSPEC_HIDDEN; -extern BOOL METADC_BitBlt( HDC hdc_dst, INT x_dst, INT y_dst, INT width, INT height, - HDC hdc_src, INT x_src, INT y_src, DWORD rop ); -extern BOOL METADC_Chord( HDC hdc, INT left, INT top, INT right, INT bottom, INT xstart, - INT ystart, INT xend, INT yend ) DECLSPEC_HIDDEN; -extern BOOL METADC_DeleteDC( HDC hdc ); -extern BOOL METADC_Ellipse( HDC hdc, INT left, INT top, INT right, INT bottom ) DECLSPEC_HIDDEN; -extern BOOL METADC_ExcludeClipRect( HDC hdc, INT left, INT top, INT right, - INT bottom ) DECLSPEC_HIDDEN; -extern BOOL METADC_ExtEscape( HDC hdc, INT escape, INT input_size, const void *input, - INT output_size, void *output ) DECLSPEC_HIDDEN; -extern BOOL METADC_ExtFloodFill( HDC hdc, INT x, INT y, COLORREF color, - UINT fill_type ) DECLSPEC_HIDDEN; -extern BOOL METADC_ExtSelectClipRgn( HDC hdc, HRGN hrgn, INT mode ) DECLSPEC_HIDDEN; -extern BOOL METADC_ExtTextOut( HDC hdc, INT x, INT y, UINT flags, const RECT *rect, - const WCHAR *str, UINT count, const INT *dx ) DECLSPEC_HIDDEN; -extern BOOL METADC_FillRgn( HDC hdc, HRGN hrgn, HBRUSH hbrush ) DECLSPEC_HIDDEN; -extern BOOL METADC_FrameRgn( HDC hdc, HRGN hrgn, HBRUSH hbrush, INT x, INT y ) DECLSPEC_HIDDEN; -extern INT METADC_GetDeviceCaps( HDC hdc, INT cap ); -extern BOOL METADC_IntersectClipRect( HDC hdc, INT left, INT top, INT right, - INT bottom ) DECLSPEC_HIDDEN; -extern BOOL METADC_InvertRgn( HDC hdc, HRGN hrgn ) DECLSPEC_HIDDEN; -extern BOOL METADC_LineTo( HDC hdc, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL METADC_MoveTo( HDC hdc, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL METADC_OffsetClipRgn( HDC hdc, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL METADC_OffsetViewportOrgEx( HDC hdc, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL METADC_OffsetWindowOrgEx( HDC hdc, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL METADC_PaintRgn( HDC hdc, HRGN hrgn ) DECLSPEC_HIDDEN; -extern BOOL METADC_PatBlt( HDC hdc, INT left, INT top, INT width, INT height, DWORD rop ); -extern BOOL METADC_Pie( HDC hdc, INT left, INT top, INT right, INT bottom, - INT xstart, INT ystart, INT xend, INT yend ) DECLSPEC_HIDDEN; -extern BOOL METADC_PolyPolygon( HDC hdc, const POINT *points, const INT *counts, - UINT polygons ) DECLSPEC_HIDDEN; -extern BOOL METADC_Polygon( HDC hdc, const POINT *points, INT count ) DECLSPEC_HIDDEN; -extern BOOL METADC_Polyline( HDC hdc, const POINT *points,INT count) DECLSPEC_HIDDEN; -extern BOOL METADC_RealizePalette( HDC hdc ) DECLSPEC_HIDDEN; -extern BOOL METADC_Rectangle( HDC hdc, INT left, INT top, INT right, INT bottom) DECLSPEC_HIDDEN; -extern BOOL METADC_RestoreDC( HDC hdc, INT level ) DECLSPEC_HIDDEN; -extern BOOL METADC_RoundRect( HDC hdc, INT left, INT top, INT right, INT bottom, - INT ell_width, INT ell_height ) DECLSPEC_HIDDEN; -extern BOOL METADC_SaveDC( HDC hdc ) DECLSPEC_HIDDEN; -extern BOOL METADC_ScaleViewportExtEx( HDC hdc, INT x_num, INT x_denom, INT y_num, - INT y_denom ) DECLSPEC_HIDDEN; -extern BOOL METADC_ScaleWindowExtEx( HDC hdc, INT x_num, INT x_denom, INT y_num, - INT y_denom ) DECLSPEC_HIDDEN; -extern HGDIOBJ METADC_SelectObject( HDC hdc, HGDIOBJ obj ) DECLSPEC_HIDDEN; -extern BOOL METADC_SelectPalette( HDC hdc, HPALETTE palette ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetBkColor( HDC hdc, COLORREF color ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetBkMode( HDC hdc, INT mode ) DECLSPEC_HIDDEN; -extern INT METADC_SetDIBitsToDevice( HDC hdc, INT x_dest, INT y_dest, DWORD width, DWORD height, - INT x_src, INT y_src, UINT startscan, UINT lines, - const void *bits, const BITMAPINFO *info, - UINT coloruse ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetLayout( HDC hdc, DWORD layout ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetTextCharacterExtra( HDC hdc, INT extra ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetMapMode( HDC hdc, INT mode ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetMapperFlags( HDC hdc, DWORD flags ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetPixel( HDC hdc, INT x, INT y, COLORREF color ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetPolyFillMode( HDC hdc, INT mode ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetRelAbs( HDC hdc, INT mode ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetROP2( HDC hdc, INT rop ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetStretchBltMode( HDC hdc, INT mode ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetTextAlign( HDC hdc, UINT align ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetTextColor( HDC hdc, COLORREF color ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetTextJustification( HDC hdc, INT extra, INT breaks ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetViewportExtEx( HDC hdc, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetViewportOrgEx( HDC hdc, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetWindowExtEx( HDC hdc, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL METADC_SetWindowOrgEx( HDC, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL METADC_StretchBlt( HDC hdc_dst, INT x_dst, INT y_dst, INT width_dst, INT height_dst, - HDC hdc_src, INT x_src, INT y_src, INT width_src, INT height_src, - DWORD rop ); -extern INT METADC_StretchDIBits( HDC hdc, INT x_dst, INT y_dst, INT width_dst, INT height_dst, - INT x_src, INT y_src, INT width_src, INT height_src, - const void *bits, const BITMAPINFO *info, UINT coloruse, - DWORD rop ) DECLSPEC_HIDDEN; +BOOL METADC_Arc( HDC hdc, INT left, INT top, INT right, INT bottom, + INT xstart, INT ystart, INT xend, INT yend ); +BOOL METADC_BitBlt( HDC hdc_dst, INT x_dst, INT y_dst, INT width, INT height, + HDC hdc_src, INT x_src, INT y_src, DWORD rop ); +BOOL METADC_Chord( HDC hdc, INT left, INT top, INT right, INT bottom, INT xstart, + INT ystart, INT xend, INT yend ); +BOOL METADC_DeleteDC( HDC hdc ); +BOOL METADC_Ellipse( HDC hdc, INT left, INT top, INT right, INT bottom ); +BOOL METADC_ExcludeClipRect( HDC hdc, INT left, INT top, INT right, INT bottom ); +BOOL METADC_ExtEscape( HDC hdc, INT escape, INT input_size, const void *input, + INT output_size, void *output ); +BOOL METADC_ExtFloodFill( HDC hdc, INT x, INT y, COLORREF color, UINT fill_type ); +BOOL METADC_ExtSelectClipRgn( HDC hdc, HRGN hrgn, INT mode ); +BOOL METADC_ExtTextOut( HDC hdc, INT x, INT y, UINT flags, const RECT *rect, + const WCHAR *str, UINT count, const INT *dx ); +BOOL METADC_FillRgn( HDC hdc, HRGN hrgn, HBRUSH hbrush ); +BOOL METADC_FrameRgn( HDC hdc, HRGN hrgn, HBRUSH hbrush, INT x, INT y ); +INT METADC_GetDeviceCaps( HDC hdc, INT cap ); +BOOL METADC_IntersectClipRect( HDC hdc, INT left, INT top, INT right, INT bottom ); +BOOL METADC_InvertRgn( HDC hdc, HRGN hrgn ); +BOOL METADC_LineTo( HDC hdc, INT x, INT y ); +BOOL METADC_MoveTo( HDC hdc, INT x, INT y ); +BOOL METADC_OffsetClipRgn( HDC hdc, INT x, INT y ); +BOOL METADC_OffsetViewportOrgEx( HDC hdc, INT x, INT y ); +BOOL METADC_OffsetWindowOrgEx( HDC hdc, INT x, INT y ); +BOOL METADC_PaintRgn( HDC hdc, HRGN hrgn ); +BOOL METADC_PatBlt( HDC hdc, INT left, INT top, INT width, INT height, DWORD rop ); +BOOL METADC_Pie( HDC hdc, INT left, INT top, INT right, INT bottom, + INT xstart, INT ystart, INT xend, INT yend ); +BOOL METADC_PolyPolygon( HDC hdc, const POINT *points, const INT *counts, UINT polygons ); +BOOL METADC_Polygon( HDC hdc, const POINT *points, INT count ); +BOOL METADC_Polyline( HDC hdc, const POINT *points,INT count); +BOOL METADC_RealizePalette( HDC hdc ); +BOOL METADC_Rectangle( HDC hdc, INT left, INT top, INT right, INT bottom); +BOOL METADC_RestoreDC( HDC hdc, INT level ); +BOOL METADC_RoundRect( HDC hdc, INT left, INT top, INT right, INT bottom, + INT ell_width, INT ell_height ); +BOOL METADC_SaveDC( HDC hdc ); +BOOL METADC_ScaleViewportExtEx( HDC hdc, INT x_num, INT x_denom, INT y_num, INT y_denom ); +BOOL METADC_ScaleWindowExtEx( HDC hdc, INT x_num, INT x_denom, INT y_num, INT y_denom ); +HGDIOBJ METADC_SelectObject( HDC hdc, HGDIOBJ obj ); +BOOL METADC_SelectPalette( HDC hdc, HPALETTE palette ); +BOOL METADC_SetBkColor( HDC hdc, COLORREF color ); +BOOL METADC_SetBkMode( HDC hdc, INT mode ); +INT METADC_SetDIBitsToDevice( HDC hdc, INT x_dest, INT y_dest, DWORD width, DWORD height, + INT x_src, INT y_src, UINT startscan, UINT lines, + const void *bits, const BITMAPINFO *info, UINT coloruse ); +BOOL METADC_SetLayout( HDC hdc, DWORD layout ); +BOOL METADC_SetTextCharacterExtra( HDC hdc, INT extra ); +BOOL METADC_SetMapMode( HDC hdc, INT mode ); +BOOL METADC_SetMapperFlags( HDC hdc, DWORD flags ); +BOOL METADC_SetPixel( HDC hdc, INT x, INT y, COLORREF color ); +BOOL METADC_SetPolyFillMode( HDC hdc, INT mode ); +BOOL METADC_SetRelAbs( HDC hdc, INT mode ); +BOOL METADC_SetROP2( HDC hdc, INT rop ); +BOOL METADC_SetStretchBltMode( HDC hdc, INT mode ); +BOOL METADC_SetTextAlign( HDC hdc, UINT align ); +BOOL METADC_SetTextColor( HDC hdc, COLORREF color ); +BOOL METADC_SetTextJustification( HDC hdc, INT extra, INT breaks ); +BOOL METADC_SetViewportExtEx( HDC hdc, INT x, INT y ); +BOOL METADC_SetViewportOrgEx( HDC hdc, INT x, INT y ); +BOOL METADC_SetWindowExtEx( HDC hdc, INT x, INT y ); +BOOL METADC_SetWindowOrgEx( HDC, INT x, INT y ); +BOOL METADC_StretchBlt( HDC hdc_dst, INT x_dst, INT y_dst, INT width_dst, INT height_dst, + HDC hdc_src, INT x_src, INT y_src, INT width_src, INT height_src, + DWORD rop ); +INT METADC_StretchDIBits( HDC hdc, INT x_dst, INT y_dst, INT width_dst, INT height_dst, + INT x_src, INT y_src, INT width_src, INT height_src, + const void *bits, const BITMAPINFO *info, UINT coloruse, + DWORD rop ); -extern HMETAFILE MF_Create_HMETAFILE(METAHEADER *mh) DECLSPEC_HIDDEN; +HMETAFILE MF_Create_HMETAFILE( METAHEADER *mh ); /* enhanced metafiles */ @@ -168,129 +160,114 @@ typedef struct INT nBreakCount; } EMRSETTEXTJUSTIFICATION, *PEMRSETTEXTJUSTIFICATION; -extern BOOL EMFDC_AbortPath( DC_ATTR *dc_attr ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_AlphaBlend( DC_ATTR *dc_attr, INT x_dst, INT y_dst, INT width_dst, INT height_dst, - HDC hdc_src, INT x_src, INT y_src, INT width_src, INT height_src, - BLENDFUNCTION blend_function ); -extern BOOL EMFDC_AngleArc( DC_ATTR *dc_attr, INT x, INT y, DWORD radius, FLOAT start, - FLOAT sweep ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_ArcChordPie( DC_ATTR *dc_attr, INT left, INT top, INT right, - INT bottom, INT xstart, INT ystart, INT xend, - INT yend, DWORD type ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_BeginPath( DC_ATTR *dc_attr ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_BitBlt( DC_ATTR *dc_attr, INT x_dst, INT y_dst, INT width, INT height, - HDC hdc_src, INT x_src, INT y_src, DWORD rop ); -extern BOOL EMFDC_CloseFigure( DC_ATTR *dc_attr ) DECLSPEC_HIDDEN; -extern void EMFDC_DeleteDC( DC_ATTR *dc_attr ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_Ellipse( DC_ATTR *dc_attr, INT left, INT top, INT right, - INT bottom ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_EndPath( DC_ATTR *dc_attr ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_ExcludeClipRect( DC_ATTR *dc_attr, INT left, INT top, INT right, - INT bottom ) DECLSPEC_HIDDEN; -extern INT EMFDC_ExtEscape( DC_ATTR *dc_attr, INT escape, INT input_size, const char *input, - INT output_size, char *output) DECLSPEC_HIDDEN; -extern BOOL EMFDC_ExtFloodFill( DC_ATTR *dc_attr, INT x, INT y, COLORREF color, - UINT fill_type ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_ExtSelectClipRgn( DC_ATTR *dc_attr, HRGN hrgn, INT mode ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_ExtTextOut( DC_ATTR *dc_attr, INT x, INT y, UINT flags, const RECT *rect, - const WCHAR *str, UINT count, const INT *dx ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_FillPath( DC_ATTR *dc_attr ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_FillRgn( DC_ATTR *dc_attr, HRGN hrgn, HBRUSH hbrush ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_FlattenPath( DC_ATTR *dc_attr ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_FrameRgn( DC_ATTR *dc_attr, HRGN hrgn, HBRUSH hbrush, INT width, - INT height ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_GradientFill( DC_ATTR *dc_attr, TRIVERTEX *vert_array, ULONG nvert, - void *grad_array, ULONG ngrad, ULONG mode ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_IntersectClipRect( DC_ATTR *dc_attr, INT left, INT top, INT right, - INT bottom ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_InvertRgn( DC_ATTR *dc_attr, HRGN hrgn ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_LineTo( DC_ATTR *dc_attr, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_MaskBlt( DC_ATTR *dc_attr, INT x_dst, INT y_dst, INT width_dst, INT height_dst, - HDC hdc_src, INT x_src, INT y_src, HBITMAP mask, - INT x_mask, INT y_mask, DWORD rop ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_ModifyWorldTransform( DC_ATTR *dc_attr, const XFORM *xform, - DWORD mode ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_MoveTo( DC_ATTR *dc_attr, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_OffsetClipRgn( DC_ATTR *dc_attr, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_PaintRgn( DC_ATTR *dc_attr, HRGN hrgn ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_PatBlt( DC_ATTR *dc_attr, INT left, INT top, INT width, INT height, DWORD rop ); -extern BOOL EMFDC_PlgBlt( DC_ATTR *dc_attr, const POINT *point, HDC hdc_src, INT x_src, INT y_src, - INT width, INT height, HBITMAP mask, INT x_mask, INT y_mask ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_PolyBezier( DC_ATTR *dc_attr, const POINT *points, DWORD count ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_PolyBezierTo( DC_ATTR *dc_attr, const POINT *points, DWORD count ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_PolyDraw( DC_ATTR *dc_attr, const POINT *points, const BYTE *types, - DWORD count ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_PolyPolyline( DC_ATTR *dc_attr, const POINT *points, const DWORD *counts, - DWORD polys ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_PolyPolygon( DC_ATTR *dc_attr, const POINT *points, const INT *counts, - UINT polys ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_Polygon( DC_ATTR *dc_attr, const POINT *points, INT count ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_Polyline( DC_ATTR *dc_attr, const POINT *points, INT count) DECLSPEC_HIDDEN; -extern BOOL EMFDC_PolylineTo( DC_ATTR *dc_attr, const POINT *points, INT count ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_RealizePalette( DC_ATTR *dc_attr ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_Rectangle( DC_ATTR *dc_attr, INT left, INT top, INT right, - INT bottom) DECLSPEC_HIDDEN; -extern BOOL EMFDC_RestoreDC( DC_ATTR *dc_attr, INT level ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_RoundRect( DC_ATTR *dc_attr, INT left, INT top, INT right, INT bottom, - INT ell_width, INT ell_height ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SaveDC( DC_ATTR *dc_attr ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_ScaleViewportExtEx( DC_ATTR *dc_attr, INT x_num, INT x_denom, INT y_num, - INT y_denom ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_ScaleWindowExtEx( DC_ATTR *dc_attr, INT x_num, INT x_denom, INT y_num, - INT y_denom ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SelectClipPath( DC_ATTR *dc_attr, INT mode ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SelectObject( DC_ATTR *dc_attr, HGDIOBJ obj ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SelectPalette( DC_ATTR *dc_attr, HPALETTE palette ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetArcDirection( DC_ATTR *dc_attr, INT dir ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetBkColor( DC_ATTR *dc_attr, COLORREF color ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetBkMode( DC_ATTR *dc_attr, INT mode ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetDCBrushColor( DC_ATTR *dc_attr, COLORREF color ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetDCPenColor( DC_ATTR *dc_attr, COLORREF color ) DECLSPEC_HIDDEN; -extern INT EMFDC_SetDIBitsToDevice( DC_ATTR *dc_attr, INT x_dest, INT y_dest, DWORD width, - DWORD height, INT x_src, INT y_src, UINT startscan, - UINT lines, const void *bits, const BITMAPINFO *info, - UINT coloruse ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetLayout( DC_ATTR *dc_attr, DWORD layout ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetMapMode( DC_ATTR *dc_attr, INT mode ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetMapperFlags( DC_ATTR *dc_attr, DWORD flags ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetPixel( DC_ATTR *dc_attr, INT x, INT y, COLORREF color ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetPolyFillMode( DC_ATTR *dc_attr, INT mode ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetROP2( DC_ATTR *dc_attr, INT rop ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetStretchBltMode( DC_ATTR *dc_attr, INT mode ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetTextAlign( DC_ATTR *dc_attr, UINT align ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetTextColor( DC_ATTR *dc_attr, COLORREF color ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetTextJustification( DC_ATTR *dc_attr, INT extra, INT breaks ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetViewportExtEx( DC_ATTR *dc_attr, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetViewportOrgEx( DC_ATTR *dc_attr, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetWindowExtEx( DC_ATTR *dc_attr, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetWindowOrgEx( DC_ATTR *dc_attr, INT x, INT y ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_SetWorldTransform( DC_ATTR *dc_attr, const XFORM *xform ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_StretchBlt( DC_ATTR *dc_attr, INT x_dst, INT y_dst, INT width_dst, INT height_dst, - HDC hdc_src, INT x_src, INT y_src, INT width_src, INT height_src, - DWORD rop ); -extern BOOL EMFDC_StretchDIBits( DC_ATTR *dc_attr, INT x_dst, INT y_dst, INT width_dst, - INT height_dst, INT x_src, INT y_src, INT width_src, - INT height_src, const void *bits, const BITMAPINFO *info, - UINT coloruse, DWORD rop ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_StrokeAndFillPath( DC_ATTR *dc_attr ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_StrokePath( DC_ATTR *dc_attr ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_TransparentBlt( DC_ATTR *dc_attr, int x_dst, int y_dst, int width_dst, - int height_dst, HDC hdc_src, int x_src, int y_src, int width_src, - int height_src, UINT color ) DECLSPEC_HIDDEN; -extern BOOL EMFDC_WidenPath( DC_ATTR *dc_attr ) DECLSPEC_HIDDEN; +BOOL EMFDC_AbortPath( DC_ATTR *dc_attr ); +BOOL EMFDC_AlphaBlend( DC_ATTR *dc_attr, INT x_dst, INT y_dst, INT width_dst, INT height_dst, + HDC hdc_src, INT x_src, INT y_src, INT width_src, INT height_src, + BLENDFUNCTION blend_function ); +BOOL EMFDC_AngleArc( DC_ATTR *dc_attr, INT x, INT y, DWORD radius, FLOAT start, FLOAT sweep ); +BOOL EMFDC_ArcChordPie( DC_ATTR *dc_attr, INT left, INT top, INT right, + INT bottom, INT xstart, INT ystart, INT xend, + INT yend, DWORD type ); +BOOL EMFDC_BeginPath( DC_ATTR *dc_attr ); +BOOL EMFDC_BitBlt( DC_ATTR *dc_attr, INT x_dst, INT y_dst, INT width, INT height, + HDC hdc_src, INT x_src, INT y_src, DWORD rop ); +BOOL EMFDC_CloseFigure( DC_ATTR *dc_attr ); +void EMFDC_DeleteDC( DC_ATTR *dc_attr ); +BOOL EMFDC_Ellipse( DC_ATTR *dc_attr, INT left, INT top, INT right, INT bottom ); +BOOL EMFDC_EndPath( DC_ATTR *dc_attr ); +BOOL EMFDC_ExcludeClipRect( DC_ATTR *dc_attr, INT left, INT top, INT right, INT bottom ); +INT EMFDC_ExtEscape( DC_ATTR *dc_attr, INT escape, INT input_size, const char *input, + INT output_size, char *output ); +BOOL EMFDC_ExtFloodFill( DC_ATTR *dc_attr, INT x, INT y, COLORREF color, UINT fill_type ); +BOOL EMFDC_ExtSelectClipRgn( DC_ATTR *dc_attr, HRGN hrgn, INT mode ); +BOOL EMFDC_ExtTextOut( DC_ATTR *dc_attr, INT x, INT y, UINT flags, const RECT *rect, + const WCHAR *str, UINT count, const INT *dx ); +BOOL EMFDC_FillPath( DC_ATTR *dc_attr ); +BOOL EMFDC_FillRgn( DC_ATTR *dc_attr, HRGN hrgn, HBRUSH hbrush ); +BOOL EMFDC_FlattenPath( DC_ATTR *dc_attr ); +BOOL EMFDC_FrameRgn( DC_ATTR *dc_attr, HRGN hrgn, HBRUSH hbrush, INT width, INT height ); +BOOL EMFDC_GradientFill( DC_ATTR *dc_attr, TRIVERTEX *vert_array, ULONG nvert, + void *grad_array, ULONG ngrad, ULONG mode ); +BOOL EMFDC_IntersectClipRect( DC_ATTR *dc_attr, INT left, INT top, INT right, INT bottom ); +BOOL EMFDC_InvertRgn( DC_ATTR *dc_attr, HRGN hrgn ); +BOOL EMFDC_LineTo( DC_ATTR *dc_attr, INT x, INT y ); +BOOL EMFDC_MaskBlt( DC_ATTR *dc_attr, INT x_dst, INT y_dst, INT width_dst, INT height_dst, + HDC hdc_src, INT x_src, INT y_src, HBITMAP mask, + INT x_mask, INT y_mask, DWORD rop ); +BOOL EMFDC_ModifyWorldTransform( DC_ATTR *dc_attr, const XFORM *xform, DWORD mode ); +BOOL EMFDC_MoveTo( DC_ATTR *dc_attr, INT x, INT y ); +BOOL EMFDC_OffsetClipRgn( DC_ATTR *dc_attr, INT x, INT y ); +BOOL EMFDC_PaintRgn( DC_ATTR *dc_attr, HRGN hrgn ); +BOOL EMFDC_PatBlt( DC_ATTR *dc_attr, INT left, INT top, INT width, INT height, DWORD rop ); +BOOL EMFDC_PlgBlt( DC_ATTR *dc_attr, const POINT *point, HDC hdc_src, INT x_src, INT y_src, + INT width, INT height, HBITMAP mask, INT x_mask, INT y_mask ); +BOOL EMFDC_PolyBezier( DC_ATTR *dc_attr, const POINT *points, DWORD count ); +BOOL EMFDC_PolyBezierTo( DC_ATTR *dc_attr, const POINT *points, DWORD count ); +BOOL EMFDC_PolyDraw( DC_ATTR *dc_attr, const POINT *points, const BYTE *types, DWORD count ); +BOOL EMFDC_PolyPolyline( DC_ATTR *dc_attr, const POINT *points, const DWORD *counts, DWORD polys ); +BOOL EMFDC_PolyPolygon( DC_ATTR *dc_attr, const POINT *points, const INT *counts, UINT polys ); +BOOL EMFDC_Polygon( DC_ATTR *dc_attr, const POINT *points, INT count ); +BOOL EMFDC_Polyline( DC_ATTR *dc_attr, const POINT *points, INT count); +BOOL EMFDC_PolylineTo( DC_ATTR *dc_attr, const POINT *points, INT count ); +BOOL EMFDC_RealizePalette( DC_ATTR *dc_attr ); +BOOL EMFDC_Rectangle( DC_ATTR *dc_attr, INT left, INT top, INT right, INT bottom); +BOOL EMFDC_RestoreDC( DC_ATTR *dc_attr, INT level ); +BOOL EMFDC_RoundRect( DC_ATTR *dc_attr, INT left, INT top, INT right, INT bottom, + INT ell_width, INT ell_height ); +BOOL EMFDC_SaveDC( DC_ATTR *dc_attr ); +BOOL EMFDC_ScaleViewportExtEx( DC_ATTR *dc_attr, INT x_num, INT x_denom, INT y_num, INT y_denom ); +BOOL EMFDC_ScaleWindowExtEx( DC_ATTR *dc_attr, INT x_num, INT x_denom, INT y_num, + INT y_denom ); +BOOL EMFDC_SelectClipPath( DC_ATTR *dc_attr, INT mode ); +BOOL EMFDC_SelectObject( DC_ATTR *dc_attr, HGDIOBJ obj ); +BOOL EMFDC_SelectPalette( DC_ATTR *dc_attr, HPALETTE palette ); +BOOL EMFDC_SetArcDirection( DC_ATTR *dc_attr, INT dir ); +BOOL EMFDC_SetBkColor( DC_ATTR *dc_attr, COLORREF color ); +BOOL EMFDC_SetBkMode( DC_ATTR *dc_attr, INT mode ); +BOOL EMFDC_SetDCBrushColor( DC_ATTR *dc_attr, COLORREF color ); +BOOL EMFDC_SetDCPenColor( DC_ATTR *dc_attr, COLORREF color ); +INT EMFDC_SetDIBitsToDevice( DC_ATTR *dc_attr, INT x_dest, INT y_dest, DWORD width, DWORD height, + INT x_src, INT y_src, UINT startscan, UINT lines, const void *bits, + const BITMAPINFO *info, UINT coloruse ); +BOOL EMFDC_SetLayout( DC_ATTR *dc_attr, DWORD layout ); +BOOL EMFDC_SetMapMode( DC_ATTR *dc_attr, INT mode ); +BOOL EMFDC_SetMapperFlags( DC_ATTR *dc_attr, DWORD flags ); +BOOL EMFDC_SetPixel( DC_ATTR *dc_attr, INT x, INT y, COLORREF color ); +BOOL EMFDC_SetPolyFillMode( DC_ATTR *dc_attr, INT mode ); +BOOL EMFDC_SetROP2( DC_ATTR *dc_attr, INT rop ); +BOOL EMFDC_SetStretchBltMode( DC_ATTR *dc_attr, INT mode ); +BOOL EMFDC_SetTextAlign( DC_ATTR *dc_attr, UINT align ); +BOOL EMFDC_SetTextColor( DC_ATTR *dc_attr, COLORREF color ); +BOOL EMFDC_SetTextJustification( DC_ATTR *dc_attr, INT extra, INT breaks ); +BOOL EMFDC_SetViewportExtEx( DC_ATTR *dc_attr, INT x, INT y ); +BOOL EMFDC_SetViewportOrgEx( DC_ATTR *dc_attr, INT x, INT y ); +BOOL EMFDC_SetWindowExtEx( DC_ATTR *dc_attr, INT x, INT y ); +BOOL EMFDC_SetWindowOrgEx( DC_ATTR *dc_attr, INT x, INT y ); +BOOL EMFDC_SetWorldTransform( DC_ATTR *dc_attr, const XFORM *xform ); +BOOL EMFDC_StretchBlt( DC_ATTR *dc_attr, INT x_dst, INT y_dst, INT width_dst, INT height_dst, + HDC hdc_src, INT x_src, INT y_src, INT width_src, INT height_src, + DWORD rop ); +BOOL EMFDC_StretchDIBits( DC_ATTR *dc_attr, INT x_dst, INT y_dst, INT width_dst, + INT height_dst, INT x_src, INT y_src, INT width_src, + INT height_src, const void *bits, const BITMAPINFO *info, + UINT coloruse, DWORD rop ); +BOOL EMFDC_StrokeAndFillPath( DC_ATTR *dc_attr ); +BOOL EMFDC_StrokePath( DC_ATTR *dc_attr ); +BOOL EMFDC_TransparentBlt( DC_ATTR *dc_attr, int x_dst, int y_dst, int width_dst, + int height_dst, HDC hdc_src, int x_src, int y_src, int width_src, + int height_src, UINT color ); +BOOL EMFDC_WidenPath( DC_ATTR *dc_attr ); -extern HENHMETAFILE EMF_Create_HENHMETAFILE( ENHMETAHEADER *emh, DWORD filesize, - BOOL on_disk ) DECLSPEC_HIDDEN; +HENHMETAFILE EMF_Create_HENHMETAFILE( ENHMETAHEADER *emh, DWORD filesize, BOOL on_disk ); -extern BOOL spool_start_doc( DC_ATTR *dc_attr, HANDLE hspool, - const DOCINFOW *doc_info ) DECLSPEC_HIDDEN; -extern int spool_start_page( DC_ATTR *dc_attr, HANDLE hspool ) DECLSPEC_HIDDEN; -extern int spool_end_page( DC_ATTR *dc_attr, HANDLE hspool, const DEVMODEW *devmode, - BOOL write_devmode ) DECLSPEC_HIDDEN; -extern int spool_end_doc( DC_ATTR *dc_attr, HANDLE hspool ) DECLSPEC_HIDDEN; -extern int spool_abort_doc( DC_ATTR *dc_attr, HANDLE hspool ) DECLSPEC_HIDDEN; +BOOL spool_start_doc( DC_ATTR *dc_attr, HANDLE hspool, const DOCINFOW *doc_info ); +int spool_start_page( DC_ATTR *dc_attr, HANDLE hspool ); +int spool_end_page( DC_ATTR *dc_attr, HANDLE hspool, const DEVMODEW *devmode, + BOOL write_devmode ); +int spool_end_doc( DC_ATTR *dc_attr, HANDLE hspool ); +int spool_abort_doc( DC_ATTR *dc_attr, HANDLE hspool ); -extern void print_call_start_page( DC_ATTR *dc_attr ) DECLSPEC_HIDDEN; +void print_call_start_page( DC_ATTR *dc_attr ); static inline int get_dib_stride( int width, int bpp ) { @@ -307,6 +284,6 @@ static inline int get_dib_info_size( const BITMAPINFO *info, UINT coloruse ) return FIELD_OFFSET( BITMAPINFO, bmiColors[info->bmiHeader.biClrUsed] ); } -extern HMODULE gdi32_module DECLSPEC_HIDDEN; +extern HMODULE gdi32_module; #endif /* __WINE_GDI_PRIVATE_H */ diff --git a/dlls/gdi32/text.c b/dlls/gdi32/text.c index 2ebfea586e4..155e798bafc 100644 --- a/dlls/gdi32/text.c +++ b/dlls/gdi32/text.c @@ -74,7 +74,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(bidi); #define odd(x) ((x) & 1) -extern const unsigned short bidi_direction_table[] DECLSPEC_HIDDEN; +extern const unsigned short bidi_direction_table[]; /*------------------------------------------------------------------------ Bidirectional Character Types -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/3164
From: Jacek Caban <jacek(a)codeweavers.com> --- dlls/dwrite/bracket.c | 2 +- dlls/dwrite/direction.c | 2 +- dlls/dwrite/linebreak.c | 2 +- dlls/dwrite/mirror.c | 2 +- dlls/dwrite/scripts.c | 2 +- dlls/dwrite/shapers/arabic_table.c | 2 +- dlls/gdi32/uniscribe/bracket.c | 2 +- dlls/gdi32/uniscribe/direction.c | 2 +- dlls/gdi32/uniscribe/indicsyllable.c | 2 +- dlls/gdi32/uniscribe/linebreak.c | 2 +- dlls/gdi32/uniscribe/mirror.c | 2 +- dlls/gdi32/uniscribe/shaping.c | 4 ++-- dlls/win32u/vertical.c | 2 +- dlls/wineps.drv/direction.c | 2 +- dlls/wineps.drv/vertical.c | 2 +- tools/make_unicode | 6 +++--- 16 files changed, 19 insertions(+), 19 deletions(-) diff --git a/dlls/dwrite/bracket.c b/dlls/dwrite/bracket.c index 4c74da996ec..2e513bf6560 100644 --- a/dlls/dwrite/bracket.c +++ b/dlls/dwrite/bracket.c @@ -4,7 +4,7 @@ #include "windef.h" -const unsigned short DECLSPEC_HIDDEN bidi_bracket_table[572] = +const unsigned short bidi_bracket_table[572] = { /* level 1 offsets */ 0x0100, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, diff --git a/dlls/dwrite/direction.c b/dlls/dwrite/direction.c index 721ffbe6281..12e62d01f4b 100644 --- a/dlls/dwrite/direction.c +++ b/dlls/dwrite/direction.c @@ -3,7 +3,7 @@ #include "windef.h" -const unsigned short DECLSPEC_HIDDEN bidi_direction_table[5631] = +const unsigned short bidi_direction_table[5631] = { /* level 1 offsets */ 0x0110, 0x0120, 0x0130, 0x0140, 0x0144, 0x0152, 0x0152, 0x0152, diff --git a/dlls/dwrite/linebreak.c b/dlls/dwrite/linebreak.c index 637dd7e5440..29707e4135b 100644 --- a/dlls/dwrite/linebreak.c +++ b/dlls/dwrite/linebreak.c @@ -4,7 +4,7 @@ #include "windef.h" -const unsigned short DECLSPEC_HIDDEN wine_linebreak_table[9976] = +const unsigned short wine_linebreak_table[9976] = { /* level 1 offsets */ 0x0110, 0x0120, 0x0130, 0x0140, 0x0143, 0x0151, 0x0151, 0x0151, diff --git a/dlls/dwrite/mirror.c b/dlls/dwrite/mirror.c index 42e1d794064..fb9b66fb563 100644 --- a/dlls/dwrite/mirror.c +++ b/dlls/dwrite/mirror.c @@ -4,7 +4,7 @@ #include "windef.h" -const unsigned short DECLSPEC_HIDDEN wine_mirror_map[1428] = +const unsigned short wine_mirror_map[1428] = { /* level 1 offsets */ 0x0100, 0x010c, 0x010c, 0x010c, 0x010c, 0x010c, 0x010c, 0x010c, diff --git a/dlls/dwrite/scripts.c b/dlls/dwrite/scripts.c index cc020f399a4..623a1cb76a3 100644 --- a/dlls/dwrite/scripts.c +++ b/dlls/dwrite/scripts.c @@ -4,7 +4,7 @@ #include "windef.h" -const unsigned short DECLSPEC_HIDDEN wine_scripts_table[10323] = +const unsigned short wine_scripts_table[10323] = { /* level 1 offsets */ 0x0110, 0x0120, 0x0130, 0x0140, 0x0144, 0x0152, 0x0152, 0x0152, diff --git a/dlls/dwrite/shapers/arabic_table.c b/dlls/dwrite/shapers/arabic_table.c index 4e65ff7c0ad..f266ccea0e3 100644 --- a/dlls/dwrite/shapers/arabic_table.c +++ b/dlls/dwrite/shapers/arabic_table.c @@ -4,7 +4,7 @@ #include "windef.h" -const unsigned short DECLSPEC_HIDDEN arabic_shaping_table[3547] = +const unsigned short arabic_shaping_table[3547] = { /* level 1 offsets */ 0x0110, 0x0120, 0x0130, 0x0140, 0x0141, 0x0141, 0x0141, 0x0141, diff --git a/dlls/gdi32/uniscribe/bracket.c b/dlls/gdi32/uniscribe/bracket.c index 4c74da996ec..2e513bf6560 100644 --- a/dlls/gdi32/uniscribe/bracket.c +++ b/dlls/gdi32/uniscribe/bracket.c @@ -4,7 +4,7 @@ #include "windef.h" -const unsigned short DECLSPEC_HIDDEN bidi_bracket_table[572] = +const unsigned short bidi_bracket_table[572] = { /* level 1 offsets */ 0x0100, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, diff --git a/dlls/gdi32/uniscribe/direction.c b/dlls/gdi32/uniscribe/direction.c index 721ffbe6281..12e62d01f4b 100644 --- a/dlls/gdi32/uniscribe/direction.c +++ b/dlls/gdi32/uniscribe/direction.c @@ -3,7 +3,7 @@ #include "windef.h" -const unsigned short DECLSPEC_HIDDEN bidi_direction_table[5631] = +const unsigned short bidi_direction_table[5631] = { /* level 1 offsets */ 0x0110, 0x0120, 0x0130, 0x0140, 0x0144, 0x0152, 0x0152, 0x0152, diff --git a/dlls/gdi32/uniscribe/indicsyllable.c b/dlls/gdi32/uniscribe/indicsyllable.c index 8924ed2b78d..62671f76df3 100644 --- a/dlls/gdi32/uniscribe/indicsyllable.c +++ b/dlls/gdi32/uniscribe/indicsyllable.c @@ -5,7 +5,7 @@ #include "windef.h" -const unsigned short DECLSPEC_HIDDEN indic_syllabic_table[3033] = +const unsigned short indic_syllabic_table[3033] = { /* level 1 offsets */ 0x0100, 0x010e, 0x010e, 0x010e, 0x010e, 0x010e, 0x010e, 0x010e, diff --git a/dlls/gdi32/uniscribe/linebreak.c b/dlls/gdi32/uniscribe/linebreak.c index 637dd7e5440..29707e4135b 100644 --- a/dlls/gdi32/uniscribe/linebreak.c +++ b/dlls/gdi32/uniscribe/linebreak.c @@ -4,7 +4,7 @@ #include "windef.h" -const unsigned short DECLSPEC_HIDDEN wine_linebreak_table[9976] = +const unsigned short wine_linebreak_table[9976] = { /* level 1 offsets */ 0x0110, 0x0120, 0x0130, 0x0140, 0x0143, 0x0151, 0x0151, 0x0151, diff --git a/dlls/gdi32/uniscribe/mirror.c b/dlls/gdi32/uniscribe/mirror.c index 42e1d794064..fb9b66fb563 100644 --- a/dlls/gdi32/uniscribe/mirror.c +++ b/dlls/gdi32/uniscribe/mirror.c @@ -4,7 +4,7 @@ #include "windef.h" -const unsigned short DECLSPEC_HIDDEN wine_mirror_map[1428] = +const unsigned short wine_mirror_map[1428] = { /* level 1 offsets */ 0x0100, 0x010c, 0x010c, 0x010c, 0x010c, 0x010c, 0x010c, 0x010c, diff --git a/dlls/gdi32/uniscribe/shaping.c b/dlls/gdi32/uniscribe/shaping.c index 8eed3d629f0..11dbd808edc 100644 --- a/dlls/gdi32/uniscribe/shaping.c +++ b/dlls/gdi32/uniscribe/shaping.c @@ -4,7 +4,7 @@ #include "windef.h" -const unsigned short DECLSPEC_HIDDEN wine_shaping_table[2114] = +const unsigned short wine_shaping_table[2114] = { /* level 1 offsets */ 0x0100, 0x010b, 0x010b, 0x011b, 0x0123, 0x012c, 0x013b, 0x014b, @@ -276,7 +276,7 @@ const unsigned short DECLSPEC_HIDDEN wine_shaping_table[2114] = 0x0006, 0x0000, 0x0000, 0x0000, 0x0000 }; -const unsigned short DECLSPEC_HIDDEN wine_shaping_forms[256][4] = +const unsigned short wine_shaping_forms[256][4] = { { 0x0600, 0x0600, 0x0600, 0x0600 }, { 0x0601, 0x0601, 0x0601, 0x0601 }, diff --git a/dlls/win32u/vertical.c b/dlls/win32u/vertical.c index a992d0364f6..c273f8e3f3d 100644 --- a/dlls/win32u/vertical.c +++ b/dlls/win32u/vertical.c @@ -8,7 +8,7 @@ #include "windef.h" -const unsigned short DECLSPEC_HIDDEN vertical_orientation_table[1248] = +const unsigned short vertical_orientation_table[1248] = { /* level 1 offsets */ 0x0100, 0x0110, 0x0112, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, diff --git a/dlls/wineps.drv/direction.c b/dlls/wineps.drv/direction.c index 721ffbe6281..12e62d01f4b 100644 --- a/dlls/wineps.drv/direction.c +++ b/dlls/wineps.drv/direction.c @@ -3,7 +3,7 @@ #include "windef.h" -const unsigned short DECLSPEC_HIDDEN bidi_direction_table[5631] = +const unsigned short bidi_direction_table[5631] = { /* level 1 offsets */ 0x0110, 0x0120, 0x0130, 0x0140, 0x0144, 0x0152, 0x0152, 0x0152, diff --git a/dlls/wineps.drv/vertical.c b/dlls/wineps.drv/vertical.c index 101511cde57..2a36d19c20a 100644 --- a/dlls/wineps.drv/vertical.c +++ b/dlls/wineps.drv/vertical.c @@ -4,7 +4,7 @@ #include "windef.h" -const unsigned short DECLSPEC_HIDDEN vertical_orientation_table[1248] = +const unsigned short vertical_orientation_table[1248] = { /* level 1 offsets */ 0x0100, 0x0110, 0x0112, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, diff --git a/tools/make_unicode b/tools/make_unicode index 69dce31df47..48d63773810 100755 --- a/tools/make_unicode +++ b/tools/make_unicode @@ -3115,7 +3115,7 @@ sub dump_shaping($) dump_two_level_mapping( "wine_shaping_table", 0, 16, @joining_table ); - print OUTPUT "\nconst unsigned short DECLSPEC_HIDDEN wine_shaping_forms[256][4] =\n{\n"; + print OUTPUT "\nconst unsigned short wine_shaping_forms[256][4] =\n{\n"; for (my $i = 0x600; $i <= 0x6ff; $i++) { printf OUTPUT " { 0x%04x, 0x%04x, 0x%04x, 0x%04x },\n", @@ -3283,7 +3283,7 @@ sub dump_two_level_mapping($$$@) for (my $i = 0; $i < @row_data; $i++) { $row_data[$i] += @row_data + 256 - 4096; } - printf OUTPUT "const %s DECLSPEC_HIDDEN %s[%d] =\n{\n", $type, $name, @array + @row_data + @data; + printf OUTPUT "const %s %s[%d] =\n{\n", $type, $name, @array + @row_data + @data; printf OUTPUT " /* level 1 offsets */\n%s,\n", dump_array( $size, 0, @array ); printf OUTPUT " /* level 2 offsets */\n%s,\n", dump_array( $size, 0, @row_data ); printf OUTPUT " /* values */\n%s\n};\n", dump_array( $size, 0, @data ); @@ -3307,7 +3307,7 @@ sub dump_three_level_mapping($$@) for (my $i = $level2; $i < @array2; $i++) { $array2[$i] += @array1 + @array2 - $level2 - $level3; } for (my $i = $level1; $i < @array1; $i++) { $array1[$i] += @array1 - $level2; } - printf OUTPUT "const %s DECLSPEC_HIDDEN %s[%u] =\n{\n", $type, $name, @array1 + (@array2 - $level2) + (@array3 - $level3); + printf OUTPUT "const %s %s[%u] =\n{\n", $type, $name, @array1 + (@array2 - $level2) + (@array3 - $level3); printf OUTPUT " /* level 1 offsets */\n%s,\n", dump_array( $size, 0, @array1[0..$level1-1] ); printf OUTPUT " /* level 2 offsets */\n%s,\n", dump_array( $size, 0, @array1[$level1..$#array1] ); printf OUTPUT " /* level 3 offsets */\n%s,\n", dump_array( $size, 0, @array2[$level2..$#array2] ); -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/3164
From: Jacek Caban <jacek(a)codeweavers.com> --- dlls/gdi32/uniscribe/bidi.c | 4 +- dlls/gdi32/uniscribe/breaking.c | 2 +- dlls/gdi32/uniscribe/shape.c | 6 +-- dlls/gdi32/uniscribe/usp10.c | 2 +- dlls/gdi32/uniscribe/usp10_internal.h | 77 +++++++++++++++++---------- 5 files changed, 56 insertions(+), 35 deletions(-) diff --git a/dlls/gdi32/uniscribe/bidi.c b/dlls/gdi32/uniscribe/bidi.c index ad384071d43..353d143334e 100644 --- a/dlls/gdi32/uniscribe/bidi.c +++ b/dlls/gdi32/uniscribe/bidi.c @@ -54,8 +54,8 @@ #include "usp10_internal.h" -extern const unsigned short bidi_bracket_table[] DECLSPEC_HIDDEN; -extern const unsigned short bidi_direction_table[] DECLSPEC_HIDDEN; +extern const unsigned short bidi_bracket_table[]; +extern const unsigned short bidi_direction_table[]; WINE_DEFAULT_DEBUG_CHANNEL(bidi); diff --git a/dlls/gdi32/uniscribe/breaking.c b/dlls/gdi32/uniscribe/breaking.c index d6fabdc168a..8d83eecb284 100644 --- a/dlls/gdi32/uniscribe/breaking.c +++ b/dlls/gdi32/uniscribe/breaking.c @@ -37,7 +37,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(uniscribe); -extern const unsigned short wine_linebreak_table[] DECLSPEC_HIDDEN; +extern const unsigned short wine_linebreak_table[]; enum breaking_types { b_BK=1, b_CR, b_LF, b_CM, b_SG, b_GL, b_CB, b_SP, b_ZW, b_NL, b_WJ, b_JL, b_JV, b_JT, b_H2, b_H3, b_XX, b_OP, b_CL, diff --git a/dlls/gdi32/uniscribe/shape.c b/dlls/gdi32/uniscribe/shape.c index 912d3e6965b..44b652cca6d 100644 --- a/dlls/gdi32/uniscribe/shape.c +++ b/dlls/gdi32/uniscribe/shape.c @@ -85,9 +85,9 @@ static void ShapeCharGlyphProp_Kannada( HDC hdc, ScriptCache *psc, SCRIPT_ANALYS static void ShapeCharGlyphProp_Malayalam( HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, const WCHAR* pwcChars, const INT cChars, const WORD* pwGlyphs, const INT cGlyphs, WORD *pwLogClust, SCRIPT_CHARPROP *pCharProp, SCRIPT_GLYPHPROP *pGlyphProp ); static void ShapeCharGlyphProp_Khmer( HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, const WCHAR* pwcChars, const INT cChars, const WORD* pwGlyphs, const INT cGlyphs, WORD *pwLogClust, SCRIPT_CHARPROP *pCharProp, SCRIPT_GLYPHPROP *pGlyphProp ); -extern const unsigned short indic_syllabic_table[] DECLSPEC_HIDDEN; -extern const unsigned short wine_shaping_table[] DECLSPEC_HIDDEN; -extern const unsigned short wine_shaping_forms[LAST_ARABIC_CHAR - FIRST_ARABIC_CHAR + 1][4] DECLSPEC_HIDDEN; +extern const unsigned short indic_syllabic_table[]; +extern const unsigned short wine_shaping_table[]; +extern const unsigned short wine_shaping_forms[LAST_ARABIC_CHAR - FIRST_ARABIC_CHAR + 1][4]; enum joining_types { diff --git a/dlls/gdi32/uniscribe/usp10.c b/dlls/gdi32/uniscribe/usp10.c index 75fc7b380a7..72e75224069 100644 --- a/dlls/gdi32/uniscribe/usp10.c +++ b/dlls/gdi32/uniscribe/usp10.c @@ -855,7 +855,7 @@ static HRESULT init_script_cache(const HDC hdc, SCRIPT_CACHE *psc) static WCHAR mirror_char( WCHAR ch ) { - extern const WCHAR wine_mirror_map[] DECLSPEC_HIDDEN; + extern const WCHAR wine_mirror_map[]; WCHAR mirror = get_table_entry_16( wine_mirror_map, ch ); return mirror ? mirror : ch; } diff --git a/dlls/gdi32/uniscribe/usp10_internal.h b/dlls/gdi32/uniscribe/usp10_internal.h index e329b5206dd..b8ae1fb1a57 100644 --- a/dlls/gdi32/uniscribe/usp10_internal.h +++ b/dlls/gdi32/uniscribe/usp10_internal.h @@ -251,40 +251,61 @@ typedef void (*reorder_function)(WCHAR *chars, IndicSyllable *syllable, lexical_ #define BIDI_WEAK 2 #define BIDI_NEUTRAL 0 -BOOL usp10_array_reserve(void **elements, SIZE_T *capacity, SIZE_T count, SIZE_T size) DECLSPEC_HIDDEN; -int USP10_FindGlyphInLogClust(const WORD* pwLogClust, int cChars, WORD target) DECLSPEC_HIDDEN; +BOOL usp10_array_reserve(void **elements, SIZE_T *capacity, SIZE_T count, SIZE_T size); +int USP10_FindGlyphInLogClust(const WORD* pwLogClust, int cChars, WORD target); BOOL BIDI_DetermineLevels(const WCHAR *string, unsigned int count, const SCRIPT_STATE *s, - const SCRIPT_CONTROL *c, WORD *levels, WORD *overrides) DECLSPEC_HIDDEN; + const SCRIPT_CONTROL *c, WORD *levels, WORD *overrides); BOOL BIDI_GetStrengths(const WCHAR *string, unsigned int count, - const SCRIPT_CONTROL *c, WORD *strength) DECLSPEC_HIDDEN; -INT BIDI_ReorderV2lLevel(int level, int *pIndices, const BYTE* plevel, int cch, BOOL fReverse) DECLSPEC_HIDDEN; -INT BIDI_ReorderL2vLevel(int level, int *pIndices, const BYTE* plevel, int cch, BOOL fReverse) DECLSPEC_HIDDEN; -void SHAPE_ContextualShaping(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, WCHAR* pwcChars, INT cChars, WORD* pwOutGlyphs, INT* pcGlyphs, INT cMaxGlyphs, WORD *pwLogClust) DECLSPEC_HIDDEN; -void SHAPE_ApplyDefaultOpentypeFeatures(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, WORD* pwOutGlyphs, INT* pcGlyphs, INT cMaxGlyphs, INT cChars, WORD *pwLogClust) DECLSPEC_HIDDEN; -void SHAPE_ApplyOpenTypePositions(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, const WORD* pwGlyphs, INT cGlyphs, int *piAdvance, GOFFSET *pGoffset ) DECLSPEC_HIDDEN; -HRESULT SHAPE_CheckFontForRequiredFeatures(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa) DECLSPEC_HIDDEN; -void SHAPE_CharGlyphProp(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, const WCHAR* pwcChars, const INT cChars, const WORD* pwGlyphs, const INT cGlyphs, WORD *pwLogClust, SCRIPT_CHARPROP *pCharProp, SCRIPT_GLYPHPROP *pGlyphProp) DECLSPEC_HIDDEN; -INT SHAPE_does_GSUB_feature_apply_to_chars(HDC hdc, SCRIPT_ANALYSIS *psa, ScriptCache* psc, const WCHAR *chars, INT write_dir, INT count, const char* feature) DECLSPEC_HIDDEN; -HRESULT SHAPE_GetFontScriptTags( HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, int cMaxTags, OPENTYPE_TAG *pScriptTags, int *pcTags) DECLSPEC_HIDDEN; -HRESULT SHAPE_GetFontLanguageTags( HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, OPENTYPE_TAG tagScript, int cMaxTags, OPENTYPE_TAG *pLangSysTags, int *pcTags) DECLSPEC_HIDDEN; -HRESULT SHAPE_GetFontFeatureTags( HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, OPENTYPE_TAG tagScript, OPENTYPE_TAG tagLangSys, int cMaxTags, OPENTYPE_TAG *pFeatureTags, int *pcTags) DECLSPEC_HIDDEN; + const SCRIPT_CONTROL *c, WORD *strength); +INT BIDI_ReorderV2lLevel(int level, int *pIndices, const BYTE* plevel, int cch, BOOL fReverse); +INT BIDI_ReorderL2vLevel(int level, int *pIndices, const BYTE* plevel, int cch, BOOL fReverse); +void SHAPE_ContextualShaping(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, WCHAR* pwcChars, + INT cChars, WORD* pwOutGlyphs, INT* pcGlyphs, INT cMaxGlyphs, + WORD *pwLogClust); +void SHAPE_ApplyDefaultOpentypeFeatures(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, + WORD *pwOutGlyphs, INT* pcGlyphs, INT cMaxGlyphs, + INT cChars, WORD *pwLogClust); +void SHAPE_ApplyOpenTypePositions(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, + const WORD *glyphs, INT cGlyphs, int *piAdvance, GOFFSET *goffset ); +HRESULT SHAPE_CheckFontForRequiredFeatures(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa); +void SHAPE_CharGlyphProp(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, const WCHAR *pwcChars, + const INT cChars, const WORD* pwGlyphs, const INT cGlyphs, WORD *pwLogClust, + SCRIPT_CHARPROP *pCharProp, SCRIPT_GLYPHPROP *pGlyphProp); +INT SHAPE_does_GSUB_feature_apply_to_chars(HDC hdc, SCRIPT_ANALYSIS *psa, ScriptCache *psc, + const WCHAR *chars, INT write_dir, INT count, + const char* feature); +HRESULT SHAPE_GetFontScriptTags(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, int cMaxTags, + OPENTYPE_TAG *pScriptTags, int *pcTags); +HRESULT SHAPE_GetFontLanguageTags(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, + OPENTYPE_TAG tagScript, int cMaxTags, + OPENTYPE_TAG *pLangSysTags, int *pcTags); +HRESULT SHAPE_GetFontFeatureTags(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, + OPENTYPE_TAG tagScript, OPENTYPE_TAG tagLangSys, + int cMaxTags, OPENTYPE_TAG *pFeatureTags, int *pcTags); -void Indic_ReorderCharacters(HDC hdc, SCRIPT_ANALYSIS *psa, ScriptCache *psc, WCHAR *input, unsigned int cChars, - IndicSyllable **syllables, int *syllable_count, lexical_function lexical_f, - reorder_function reorder_f, BOOL modern) DECLSPEC_HIDDEN; -void Indic_ParseSyllables(HDC hdc, SCRIPT_ANALYSIS *psa, ScriptCache* psc, const WCHAR *input, unsigned int cChar, - IndicSyllable **syllables, int *syllable_count, lexical_function lex, BOOL modern) DECLSPEC_HIDDEN; +void Indic_ReorderCharacters(HDC hdc, SCRIPT_ANALYSIS *psa, ScriptCache *psc, WCHAR *input, + unsigned int cChars, IndicSyllable **syllables, int *syllable_count, + lexical_function lexical_f, reorder_function reorder_f, BOOL modern); +void Indic_ParseSyllables(HDC hdc, SCRIPT_ANALYSIS *psa, ScriptCache *psc, const WCHAR *input, + unsigned int cChar, IndicSyllable **syllables, int *syllable_count, + lexical_function lex, BOOL modern); -void BREAK_line(const WCHAR *chars, int count, const SCRIPT_ANALYSIS *sa, SCRIPT_LOGATTR *la) DECLSPEC_HIDDEN; +void BREAK_line(const WCHAR *chars, int count, const SCRIPT_ANALYSIS *sa, SCRIPT_LOGATTR *la); -DWORD OpenType_CMAP_GetGlyphIndex(HDC hdc, ScriptCache *psc, DWORD utf32c, LPWORD pgi, DWORD flags) DECLSPEC_HIDDEN; -void OpenType_GDEF_UpdateGlyphProps(ScriptCache *psc, const WORD *pwGlyphs, const WORD cGlyphs, WORD* pwLogClust, const WORD cChars, SCRIPT_GLYPHPROP *pGlyphProp) DECLSPEC_HIDDEN; +DWORD OpenType_CMAP_GetGlyphIndex(HDC hdc, ScriptCache *psc, DWORD utf32c, LPWORD pgi, DWORD flags); +void OpenType_GDEF_UpdateGlyphProps(ScriptCache *psc, const WORD *pwGlyphs, const WORD cGlyphs, + WORD *pwLogClust, const WORD cChars, SCRIPT_GLYPHPROP *pGlyphProp); int OpenType_apply_GSUB_lookup(const void *table, unsigned int lookup_index, WORD *glyphs, - unsigned int glyph_index, int write_dir, int *glyph_count) DECLSPEC_HIDDEN; + unsigned int glyph_index, int write_dir, int *glyph_count); unsigned int OpenType_apply_GPOS_lookup(const ScriptCache *psc, const OUTLINETEXTMETRICW *otm, const LOGFONTW *logfont, const SCRIPT_ANALYSIS *analysis, int *advance, unsigned int lookup_index, - const WORD *glyphs, unsigned int glyph_index, unsigned int glyph_count, GOFFSET *goffset) DECLSPEC_HIDDEN; -HRESULT OpenType_GetFontScriptTags(ScriptCache *psc, OPENTYPE_TAG searchingFor, int cMaxTags, OPENTYPE_TAG *pScriptTags, int *pcTags) DECLSPEC_HIDDEN; -HRESULT OpenType_GetFontLanguageTags(ScriptCache *psc, OPENTYPE_TAG script_tag, OPENTYPE_TAG searchingFor, int cMaxTags, OPENTYPE_TAG *pLanguageTags, int *pcTags) DECLSPEC_HIDDEN; -HRESULT OpenType_GetFontFeatureTags(ScriptCache *psc, OPENTYPE_TAG script_tag, OPENTYPE_TAG language_tag, BOOL filtered, OPENTYPE_TAG searchingFor, char tableType, int cMaxTags, OPENTYPE_TAG *pFeatureTags, int *pcTags, LoadedFeature** feature) DECLSPEC_HIDDEN; + const WORD *glyphs, unsigned int glyph_index, unsigned int glyph_count, GOFFSET *goffset); +HRESULT OpenType_GetFontScriptTags(ScriptCache *psc, OPENTYPE_TAG searchingFor, int cMaxTags, + OPENTYPE_TAG *pScriptTags, int *pcTags); +HRESULT OpenType_GetFontLanguageTags(ScriptCache *psc, OPENTYPE_TAG script_tag, OPENTYPE_TAG searchingFor, + int cMaxTags, OPENTYPE_TAG *pLanguageTags, int *pcTags); +HRESULT OpenType_GetFontFeatureTags(ScriptCache *psc, OPENTYPE_TAG script_tag, OPENTYPE_TAG language_tag, + BOOL filtered, OPENTYPE_TAG searchingFor, char tableType, + int cMaxTags, OPENTYPE_TAG *pFeatureTags, int *pcTags, + LoadedFeature **feature); -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/3164
Hi, It looks like your patch introduced the new failures shown below. Please investigate and fix them before resubmitting your patch. If they are not new, fixing them anyway would help a lot. Otherwise please ask for the known failures list to be updated. The full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=134208 Your paranoid android. === debian11 (build log) === error: patch failed: dlls/gdi32/uniscribe/bidi.c:54 error: patch failed: dlls/gdi32/uniscribe/breaking.c:37 error: patch failed: dlls/gdi32/uniscribe/shape.c:85 error: patch failed: dlls/gdi32/uniscribe/usp10.c:855 error: patch failed: dlls/gdi32/uniscribe/usp10_internal.h:251 Task: Patch failed to apply === debian11b (build log) === error: patch failed: dlls/gdi32/uniscribe/bidi.c:54 error: patch failed: dlls/gdi32/uniscribe/breaking.c:37 error: patch failed: dlls/gdi32/uniscribe/shape.c:85 error: patch failed: dlls/gdi32/uniscribe/usp10.c:855 error: patch failed: dlls/gdi32/uniscribe/usp10_internal.h:251 Task: Patch failed to apply
For what it's worth, DECLSPEC_HIDDEN still has a small benefit when building with Clang's version of MinGW. See https://gitlab.winehq.org/wine/wine/-/merge_requests/3109#note_36667 -- https://gitlab.winehq.org/wine/wine/-/merge_requests/3164#note_36817
This merge request was approved by Huw Davies. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/3164
participants (5)
-
Alex Henrie (@alexhenrie) -
Huw Davies (@huw) -
Jacek Caban -
Jacek Caban (@jacek) -
Marvin