mirror of
https://github.com/reactos/wine.git
synced 2024-11-25 20:59:54 +00:00
670cdc45be
Sat Aug 23 00:05:23 1997 Andreas Mohr <100.30936@germany.net> * [if1632/kernel.spec] [if1632/mmsystem.spec] Added some stubs. * [include/neexe.h] [loader/module.c] Added warning for OS/2 executables. * [multimedia/midi.c] Shortened MIDIOUT driver version string to be less than 31 chars. * [objects/gdiobj.c] Fixed DeleteObject32() to react properly when called with stock object. Fri Aug 22 18:03:26 1997 Dimitrie O. Paun <dimi@cs.toronto.edu> * [controls/updown.c] [include/updown.h] First attempt at implementiong the UpDown class. * [controls/widgets.c] Added the UpDown class to be initialized by InitCommonControls(). Wed Aug 20 18:01:33 1997 Doug Ridgway <ridgway@routh.UCSD.EDU> * [graphics/*] [objects/*] [include/gdi.h] Made all GDI objects (except DCs) moveable. Mon Aug 18 03:25:30 1997 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [windows/event.c] [misc/winsock.c] [misc/winsock_dns.c] Removed IPC communication to speed up winsock services (tested only with 16-bit netscape 3.03). * [graphics/x11drv/xfont.c] [documentation/fonts] Miscellaneous improvements. Updated docs. Sun Aug 17 20:39:55 1997 Ingo Schneider <schneidi@informatik.tu-muenchen.de> * [misc/comm.c] A couple of bug fixes. Sun Aug 17 19:29:22 1997 Alexandre Julliard <julliard@lrc.epfl.ch> * [debugger/dbg.y] Display next instruction after stepi/nexti. * [if1632/relay.c] [include/callback.h] [tools/build.c] Replaced CallTo32_LargeStack with the CALL_LARGE_STACK macro for better Winelib support. * [include/sigcontext.h] Renamed to sig_context.h to avoid conflicts with libc. * [*/*] All API functions are now prefixed with WINAPI in prevision of future Winelib integration. * [loader/signal.c] [memory/ldt.c] Fixed assembly code to be -fPIC compatible. Thu Aug 14 14:38:15 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [if1632/crtdll.spec][win32/except.c] _global_unwind, _local_unwind stub added. * [objects/dib.c] Don't read memory you don't even need for the target bitmap (fixes one 'lazy' program). * [if1632/relay.c][if1632/thunk.c][if1632/kernel32.spec] [win32/ordinals.c][memory/selector.c][memory/global.c] [include/callback.h] Added/moved some more win95 ordinal stuff. Implemented QT_Thunk (not 100% correct yet) and some friends. * [loader/pe_image.c] Add possibility to break at the DLL entrypoint. * [controls/static.c][misc/commdlg.c][scheduler/thread.c] Misc bugfixes and additions. * [misc/registry.c] The registry seems to be case-preserving but case-insensitive. * [memory/global.c] Adapted to new /proc/meminfo format. * [objects/font.c][graphics/x11drv/xfont.c] FONT_SelectObject and GetTextMetrics* get passed ranges in logical and not device points (thanks to Marion Reyzl for pointing this out). * [windows/caret.c] Use the windows own DC if present (The caret coordinates are logical coordinates based on it). Fixes another AMIPRO problem. Wed Aug 6 18:22:22 1997 Morten Welinder <terra@diku.dk> * [controls/menu.c] General clean-up and Win32 work: split item_flags into fType and fState; split item_id into wID and hSubMenu. Improved debug-printing. Implemented InsertMenuItem32[AW], SetMenuDefaultItem32, and SetMenuItemInfo32[AW]. Fixed GetMenuItemInfo32[AW]. * [if1632/user32.spec] Define above new functions. * [include/windows.h] Define MF_DEFAULT and MF_RIGHTJUSTIFY. Prototype above functions. * [include/menu.h] Don't prototype now-static MENU_InitSysMenuPopup. * [include/comm.h] Reduce MAX_PORTS to 9 (which the profile code can handle). Tue Aug 5 20:16:22 1997 Victor Schneider <vischne@ibm.net> * [library/winestub.c] [libtest/expand.c] These patches let people porting Windows apps compile them using the same conventions regarding global _argc and _argv as those on Windows C/C++ compilers.
180 lines
4.2 KiB
C
180 lines
4.2 KiB
C
/*
|
|
* X11 physical font definitions
|
|
*
|
|
* Copyright 1997 Alex Korobka
|
|
*/
|
|
|
|
#ifndef __WINE_X11FONT_H
|
|
#define __WINE_X11FONT_H
|
|
|
|
#include "gdi.h"
|
|
|
|
#pragma pack(1)
|
|
|
|
/* this is a part of the font resource header, should
|
|
* make it easier to implement dynamic softfont loading */
|
|
|
|
typedef struct
|
|
{
|
|
INT16 dfType;
|
|
INT16 dfPoints;
|
|
INT16 dfVertRes;
|
|
INT16 dfHorizRes;
|
|
INT16 dfAscent;
|
|
INT16 dfInternalLeading;
|
|
INT16 dfExternalLeading;
|
|
CHAR dfItalic;
|
|
CHAR dfUnderline;
|
|
CHAR dfStrikeOut;
|
|
INT16 dfWeight;
|
|
CHAR dfCharSet;
|
|
INT16 dfPixWidth;
|
|
INT16 dfPixHeight;
|
|
CHAR dfPitchAndFamily;
|
|
INT16 dfAvgWidth;
|
|
INT16 dfMaxWidth;
|
|
CHAR dfFirstChar;
|
|
CHAR dfLastChar;
|
|
CHAR dfDefaultChar;
|
|
CHAR dfBreakChar;
|
|
INT16 dfWidthBytes;
|
|
LPCSTR dfDevice;
|
|
LPCSTR dfFace;
|
|
} IFONTINFO16, *LPIFONTINFO16;
|
|
|
|
#pragma pack(4)
|
|
|
|
/* internal flags */
|
|
|
|
#define FI_POLYWEIGHT 0x0001
|
|
#define FI_POLYSLANT 0x0002
|
|
#define FI_OBLIQUE 0x0004
|
|
#define FI_SCALABLE 0x0008
|
|
#define FI_FW_BOOK 0x0010
|
|
#define FI_FW_DEMI 0x0020
|
|
#define FI_VARIABLEPITCH 0x0040
|
|
#define FI_FIXEDPITCH 0x0080
|
|
|
|
#define FI_ENC_ISO8859 0x0100 /* iso8859-* */
|
|
#define FI_ENC_ISO646 0x0200 /* iso646* */
|
|
#define FI_ENC_ANSI 0x0400 /* ansi-0 */
|
|
#define FI_ENC_MSCODEPAGE 0x0800 /* cp125-* */
|
|
|
|
#define FI_FIXEDEX 0x1000
|
|
#define FI_NORMAL 0x2000
|
|
#define FI_SUBSET 0x4000
|
|
#define FI_TRUETYPE 0x8000
|
|
|
|
typedef struct tagFontInfo
|
|
{
|
|
struct tagFontInfo* next;
|
|
UINT16 fi_flags;
|
|
|
|
/* LFD parameters can be quite different from the actual metrics */
|
|
|
|
UINT16 lfd_height;
|
|
UINT16 lfd_width;
|
|
UINT16 lfd_decipoints;
|
|
UINT16 lfd_resolution;
|
|
|
|
IFONTINFO16 df;
|
|
} fontInfo;
|
|
|
|
/* Font resource list for EnumFont() purposes */
|
|
|
|
#define FR_SOFTFONT 0x1000 /* - .FON or .FOT file */
|
|
#define FR_SOFTRESOURCE 0x2000 /* - resource handle */
|
|
#define FR_REMOVED 0x4000 /* delayed remove */
|
|
#define FR_NAMESET 0x8000
|
|
|
|
typedef struct tagFontResource
|
|
{
|
|
struct tagFontResource* next;
|
|
UINT16 fr_flags;
|
|
UINT16 count;
|
|
fontInfo* fi;
|
|
char* resource;
|
|
CHAR lfFaceName[LF_FACESIZE];
|
|
} fontResource;
|
|
|
|
#define FO_RESOURCE_MASK 0x000F
|
|
#define FO_SYSTEM 0x0001 /* resident in cache */
|
|
#define FO_SOFTFONT 0x0002 /* installed at runtime */
|
|
#define FO_SHARED 0x0004 /* MITSHM */
|
|
#define FO_REMOVED 0x0008 /* remove when count falls to 0 */
|
|
|
|
#define FO_MATCH_MASK 0x00F0
|
|
#define FO_MATCH_NORASTER 0x0010
|
|
#define FO_MATCH_PAF 0x0020
|
|
#define FO_MATCH_XYINDEP 0x0040
|
|
|
|
#define FO_SYNTH_MASK 0xFF00
|
|
#define FO_SYNTH_HEIGHT 0x2000
|
|
#define FO_SYNTH_WIDTH 0x4000
|
|
#define FO_SYNTH_ROTATE 0x8000
|
|
#define FO_SYNTH_BOLD 0x0100
|
|
#define FO_SYNTH_ITALIC 0x0200
|
|
#define FO_SYNTH_UNDERLINE 0x0400
|
|
#define FO_SYNTH_STRIKEOUT 0x0800
|
|
|
|
/* Realized screen font */
|
|
|
|
typedef struct
|
|
{
|
|
XFontStruct* fs; /* text metrics */
|
|
fontResource* fr; /* font family */
|
|
fontInfo* fi; /* font instance info */
|
|
LPMAT2* lpXForm; /* optional transformation matrix */
|
|
Pixmap* lpPixmap; /* optional character bitmasks for synth fonts */
|
|
|
|
INT16 foInternalLeading;
|
|
INT16 foAvgCharWidth;
|
|
UINT16 fo_flags;
|
|
|
|
/* font cache housekeeping */
|
|
|
|
UINT16 count;
|
|
UINT16 lru;
|
|
UINT16 lfchecksum;
|
|
LOGFONT16 lf;
|
|
} fontObject;
|
|
|
|
typedef struct
|
|
{
|
|
fontResource* pfr;
|
|
fontInfo* pfi;
|
|
UINT16 height;
|
|
UINT16 flags;
|
|
LPLOGFONT16 plf;
|
|
} fontMatch;
|
|
|
|
typedef struct
|
|
{
|
|
LPLOGFONT16 lpLogFontParam;
|
|
FONTENUMPROC16 lpEnumFunc;
|
|
LPARAM lpData;
|
|
|
|
LPNEWTEXTMETRICEX16 lpTextMetric;
|
|
LPENUMLOGFONTEX16 lpLogFont;
|
|
SEGPTR segTextMetric;
|
|
SEGPTR segLogFont;
|
|
} fontEnum16;
|
|
|
|
typedef struct
|
|
{
|
|
LPLOGFONT32W lpLogFontParam;
|
|
FONTENUMPROC32W lpEnumFunc;
|
|
LPARAM lpData;
|
|
|
|
LPNEWTEXTMETRICEX32W lpTextMetric;
|
|
LPENUMLOGFONTEX32W lpLogFont;
|
|
DWORD dwFlags;
|
|
} fontEnum32;
|
|
|
|
extern fontObject* XFONT_GetFontObject( X_PHYSFONT pFont );
|
|
extern XFontStruct* XFONT_GetFontStruct( X_PHYSFONT pFont );
|
|
extern LPIFONTINFO16 XFONT_GetFontInfo( X_PHYSFONT pFont );
|
|
|
|
#endif __WINE_X11FONT_H
|
|
|