Mercurial > vim
view src/gui_dwrite.h @ 15271:a6319aca721b v8.1.0644
patch 8.1.0644: finding next sign ID is inefficient
commit https://github.com/vim/vim/commit/6436cd83f90a0efc326798792e49e8ff96a43dce
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Dec 27 00:28:33 2018 +0100
patch 8.1.0644: finding next sign ID is inefficient
Problem: Finding next sign ID is inefficient.
Solution: Add next_sign_id. (Yegappan Lakshmanan, closes https://github.com/vim/vim/issues/3717)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 27 Dec 2018 00:30:06 +0100 |
parents | 808625d4b71b |
children |
line wrap: on
line source
/* vi:set ts=8 sts=4 sw=4 noet: */ /* * Author: MURAOKA Taro <koron.kaoriya@gmail.com> * * Contributors: * - Ken Takata * - Yasuhiro Matsumoto * * Copyright (C) 2013 MURAOKA Taro <koron.kaoriya@gmail.com> * THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE. */ #ifndef GUI_DWRITE_H #define GUI_DWRITE_H #ifdef __cplusplus extern "C" { #endif typedef struct DWriteContext DWriteContext; typedef struct DWriteRenderingParams { float gamma; float enhancedContrast; float clearTypeLevel; /* * pixelGeometry: * 0 - DWRITE_PIXEL_GEOMETRY_FLAT * 1 - DWRITE_PIXEL_GEOMETRY_RGB * 2 - DWRITE_PIXEL_GEOMETRY_BGR */ int pixelGeometry; /* * renderingMode: * 0 - DWRITE_RENDERING_MODE_DEFAULT * 1 - DWRITE_RENDERING_MODE_ALIASED * 2 - DWRITE_RENDERING_MODE_CLEARTYPE_GDI_CLASSIC * 3 - DWRITE_RENDERING_MODE_CLEARTYPE_GDI_NATURAL * 4 - DWRITE_RENDERING_MODE_CLEARTYPE_NATURAL * 5 - DWRITE_RENDERING_MODE_CLEARTYPE_NATURAL_SYMMETRIC * 6 - DWRITE_RENDERING_MODE_OUTLINE */ int renderingMode; /* * antialiasMode: * 0 - D2D1_TEXT_ANTIALIAS_MODE_DEFAULT * 1 - D2D1_TEXT_ANTIALIAS_MODE_CLEARTYPE * 2 - D2D1_TEXT_ANTIALIAS_MODE_GRAYSCALE * 3 - D2D1_TEXT_ANTIALIAS_MODE_ALIASED */ int textAntialiasMode; } DWriteRenderingParams; void DWrite_Init(void); void DWrite_Final(void); DWriteContext *DWriteContext_Open(void); void DWriteContext_BindDC(DWriteContext *ctx, HDC hdc, const RECT *rect); void DWriteContext_SetFont(DWriteContext *ctx, HFONT hFont); void DWriteContext_DrawText( DWriteContext *ctx, const WCHAR *text, int len, int x, int y, int w, int h, int cellWidth, COLORREF color, UINT fuOptions, const RECT *lprc, const INT *lpDx); void DWriteContext_FillRect(DWriteContext *ctx, const RECT *rc, COLORREF color); void DWriteContext_DrawLine(DWriteContext *ctx, int x1, int y1, int x2, int y2, COLORREF color); void DWriteContext_SetPixel(DWriteContext *ctx, int x, int y, COLORREF color); void DWriteContext_Scroll(DWriteContext *ctx, int x, int y, const RECT *rc); void DWriteContext_Flush(DWriteContext *ctx); void DWriteContext_Close(DWriteContext *ctx); void DWriteContext_SetRenderingParams( DWriteContext *ctx, const DWriteRenderingParams *params); DWriteRenderingParams *DWriteContext_GetRenderingParams( DWriteContext *ctx, DWriteRenderingParams *params); #ifdef __cplusplus } #endif #endif/*GUI_DWRITE_H*/