Revert r20367 and r20368 since they crash the GUI in second boot by hitting a assert...
[reactos.git] / reactos / include / win32k / text.h
diff --git a/reactos/include/win32k/text.h b/reactos/include/win32k/text.h
new file mode 100644 (file)
index 0000000..8af356a
--- /dev/null
@@ -0,0 +1,233 @@
+
+#ifndef __WIN32K_TEXT_H
+#define __WIN32K_TEXT_H
+
+/* GDI logical font object */
+typedef struct
+{
+   LOGFONTW   logfont;
+   FONTOBJ    *Font;
+   BOOLEAN Initialized; /* Don't reinitialize for each DC */
+} TEXTOBJ, *PTEXTOBJ;
+
+/*  Internal interface  */
+
+#define  TEXTOBJ_AllocText() \
+  ((HFONT) GDIOBJ_AllocObj (GDI_OBJECT_TYPE_FONT))
+#define  TEXTOBJ_FreeText(hBMObj)  GDIOBJ_FreeObj((HGDIOBJ) hBMObj, GDI_OBJECT_TYPE_FONT)
+#define  TEXTOBJ_LockText(hBMObj) ((PTEXTOBJ) GDIOBJ_LockObj ((HGDIOBJ) hBMObj, GDI_OBJECT_TYPE_FONT))
+#define  TEXTOBJ_UnlockText(pBMObj) GDIOBJ_UnlockObjByPtr (pBMObj)
+
+NTSTATUS FASTCALL TextIntRealizeFont(HFONT FontHandle);
+NTSTATUS FASTCALL TextIntCreateFontIndirect(CONST LPLOGFONTW lf, HFONT *NewFont);
+
+int
+STDCALL
+NtGdiAddFontResource(PUNICODE_STRING Filename,
+                                        DWORD fl);
+
+HFONT
+STDCALL
+NtGdiCreateFont(int  Height,
+                      int  Width,
+                      int  Escapement,
+                      int  Orientation,
+                      int  Weight,
+                      DWORD  Italic,
+                      DWORD  Underline,
+                      DWORD  StrikeOut,
+                      DWORD  CharSet,
+                      DWORD  OutputPrecision,
+                      DWORD  ClipPrecision,
+                      DWORD  Quality,
+                      DWORD  PitchAndFamily,
+                      LPCWSTR  Face);
+
+HFONT
+STDCALL
+NtGdiCreateFontIndirect(CONST LPLOGFONTW lf);
+
+BOOL
+STDCALL
+NtGdiCreateScalableFontResource(DWORD  Hidden,
+                                     LPCWSTR  FontRes,
+                                     LPCWSTR  FontFile,
+                                     LPCWSTR  CurrentPath);
+
+int
+STDCALL
+NtGdiEnumFonts(HDC  hDC,
+                   LPCWSTR FaceName,
+                   FONTENUMPROCW  FontFunc,
+                   LPARAM  lParam);
+
+BOOL
+STDCALL
+NtGdiExtTextOut(HDC  hdc,
+                     int  X,
+                     int  Y,
+                     UINT  fuOptions,
+                     CONST RECT  *lprc,
+                     LPCWSTR  lpString,
+                     UINT  cbCount,
+                     CONST INT  *lpDx);
+
+BOOL
+STDCALL
+NtGdiGetAspectRatioFilterEx(HDC  hDC,
+                                 LPSIZE  AspectRatio);
+
+BOOL
+STDCALL
+NtGdiGetCharABCWidths(HDC  hDC,
+                           UINT  FirstChar,
+                           UINT  LastChar,
+                           LPABC  abc);
+
+BOOL
+STDCALL
+NtGdiGetCharABCWidthsFloat(HDC  hDC,
+                                UINT  FirstChar,
+                                UINT  LastChar,
+                                LPABCFLOAT  abcF);
+
+DWORD
+STDCALL
+NtGdiGetCharacterPlacement(HDC  hDC,
+                                 LPCWSTR  String,
+                                 int  Count,
+                                 int  MaxExtent,
+                                 LPGCP_RESULTSW Results,
+                                 DWORD  Flags);
+
+BOOL
+STDCALL
+NtGdiGetCharWidth32(HDC  hDC,
+                         UINT  FirstChar,
+                         UINT  LastChar,
+                         LPINT  Buffer);
+
+BOOL
+STDCALL
+NtGdiGetCharWidthFloat(HDC  hDC,
+                            UINT  FirstChar,
+                            UINT  LastChar,
+                            PFLOAT  Buffer);
+
+DWORD
+STDCALL
+NtGdiGetFontLanguageInfo(HDC  hDC);
+
+DWORD
+STDCALL
+NtGdiGetGlyphOutline(HDC  hDC,
+                           UINT  Char,
+                           UINT  Format,
+                           LPGLYPHMETRICS  gm,
+                           DWORD  Bufsize,
+                           LPVOID  Buffer,
+                           CONST LPMAT2 mat2);
+
+DWORD
+STDCALL
+NtGdiGetKerningPairs(HDC  hDC,
+                           DWORD  NumPairs,
+                           LPKERNINGPAIR  krnpair);
+
+UINT
+STDCALL
+NtGdiGetOutlineTextMetrics(HDC  hDC,
+                                UINT  Data,
+                                LPOUTLINETEXTMETRICW otm);
+
+BOOL
+STDCALL
+NtGdiGetRasterizerCaps(LPRASTERIZER_STATUS  rs,
+                            UINT  Size);
+
+UINT
+STDCALL
+NtGdiGetTextCharset(HDC  hDC);
+
+UINT
+STDCALL
+NtGdiGetTextCharsetInfo(HDC  hDC,
+                             LPFONTSIGNATURE  Sig,
+                             DWORD  Flags);
+
+BOOL
+STDCALL
+NtGdiGetTextExtentExPoint(HDC  hDC,
+                               LPCWSTR String,
+                               int  Count,
+                               int  MaxExtent,
+                               LPINT  Fit,
+                               LPINT  Dx,
+                               LPSIZE  Size);
+
+BOOL
+STDCALL
+NtGdiGetTextExtentPoint(HDC  hDC,
+                             LPCWSTR  String,
+                             int  Count,
+                             LPSIZE  Size);
+
+BOOL
+STDCALL
+NtGdiGetTextExtentPoint32(HDC  hDC,
+                               LPCWSTR  String,
+                               int  Count,
+                               LPSIZE  Size);
+
+int
+STDCALL
+NtGdiGetTextFace(HDC  hDC,
+                     int  Count,
+                     LPWSTR  FaceName);
+
+BOOL
+STDCALL
+NtGdiGetTextMetrics(HDC  hDC,
+                         LPTEXTMETRICW  tm);
+
+BOOL
+STDCALL
+NtGdiPolyTextOut(HDC  hDC,
+                      CONST LPPOLYTEXTW txt,
+                      int  Count);
+
+BOOL
+STDCALL
+NtGdiRemoveFontResource(LPCWSTR  FileName);
+
+DWORD
+STDCALL
+NtGdiSetMapperFlags(HDC  hDC,
+                          DWORD  Flag);
+
+UINT
+STDCALL
+NtGdiSetTextAlign(HDC  hDC,
+                       UINT  Mode);
+
+COLORREF
+STDCALL
+NtGdiSetTextColor(HDC  hDC,
+                           COLORREF  Color);
+
+BOOL
+STDCALL
+NtGdiSetTextJustification(HDC  hDC,
+                               int  BreakExtra,
+                               int  BreakCount);
+
+BOOL
+STDCALL
+NtGdiTextOut(HDC  hDC,
+                  int  XStart,
+                  int  YStart,
+                  LPCWSTR  String,
+                  int  Count);
+
+#endif
+