More efficient utf-8 to tchar conversion
remove 'graph' from SetColor
This commit is contained in:
parent
3b0b944128
commit
ca2be5dd41
|
|
@ -694,10 +694,10 @@ int WIN_NewViewport(GRAPH *graph)
|
|||
0, 0, WinLineWidth, i * 2 - 22, NULL, NULL, hInst, NULL);
|
||||
#else
|
||||
/* UTF-8 support */
|
||||
const int n_byte_wide = 2 * (int)strlen(graph->plotname) + 1;
|
||||
wchar_t* const wtext = TMALLOC(wchar_t, n_byte_wide);
|
||||
const int n_byte_wide2 = 2 * (int)strlen(WindowName) + 1;
|
||||
wchar_t* const wtext2 = TMALLOC(wchar_t, n_byte_wide2);
|
||||
const int n_byte_wide = 2 * (int) strlen(graph->plotname) + 1;
|
||||
wchar_t * const wtext = TMALLOC(wchar_t, n_byte_wide);
|
||||
const int n_byte_wide2 = 2 * (int) strlen(WindowName) + 1;
|
||||
wchar_t * const wtext2 = TMALLOC(wchar_t, n_byte_wide2);
|
||||
/* translate UTF-8 to UTF-16 */
|
||||
MultiByteToWideChar(CP_UTF8, 0, graph->plotname, -1, wtext, n_byte_wide);
|
||||
MultiByteToWideChar(CP_UTF8, 0, WindowName, -1, wtext2, n_byte_wide2);
|
||||
|
|
@ -958,7 +958,7 @@ WIN_Text_old(char *text, int x, int y, int degrees)
|
|||
#endif
|
||||
|
||||
|
||||
int WIN_Text(char *text, int x, int y, int angle)
|
||||
int WIN_Text(const char *text, int x, int y, int angle)
|
||||
{
|
||||
tpWindowData wd;
|
||||
HFONT hfont;
|
||||
|
|
@ -1044,11 +1044,11 @@ int WIN_Text(char *text, int x, int y, int angle)
|
|||
#ifdef EXT_ASC
|
||||
TextOut(wd->hDC, x, wd->Area.bottom - y - currentgraph->fontheight, text, (int)strlen(text));
|
||||
#else
|
||||
const int n_byte_wide = 2 * (int)strlen(text) + 1;
|
||||
wchar_t* const wtext = TMALLOC(wchar_t, n_byte_wide);
|
||||
const int n_byte_wide = 2 * (int) strlen(text) + 1;
|
||||
wchar_t * const wtext = TMALLOC(wchar_t, n_byte_wide);
|
||||
MultiByteToWideChar(CP_UTF8, 0, text, -1, wtext, n_byte_wide);
|
||||
TextOutW(wd->hDC, x, wd->Area.bottom - y - currentgraph->fontheight,
|
||||
wtext, n_byte_wide);
|
||||
wtext, n_byte_wide);
|
||||
txfree(wtext);
|
||||
#endif
|
||||
DeleteObject(SelectObject(wd->hDC, hfont));
|
||||
|
|
@ -1082,9 +1082,8 @@ int WIN_SetLinestyle(int style)
|
|||
}
|
||||
|
||||
|
||||
int WIN_SetColor(int color, GRAPH *graph)
|
||||
int WIN_SetColor(int color)
|
||||
{
|
||||
NG_IGNORE(graph);
|
||||
tpWindowData wd;
|
||||
|
||||
if (!currentgraph)
|
||||
|
|
|
|||
|
|
@ -294,12 +294,12 @@ int WPRINT_NewViewport(GRAPH * graph)
|
|||
TextOut(PrinterDC, PrinterWidth - graph->fontwidth, 1, graph->plotname,
|
||||
(int)strlen(graph->plotname));
|
||||
#else
|
||||
const int n_byte_wide = 2 * (int)strlen(graph->plotname) + 1;
|
||||
wchar_t* const wtext = TMALLOC(wchar_t, n_byte_wide);
|
||||
const int n_byte_wide = 2 * (int) strlen(graph->plotname) + 1;
|
||||
wchar_t * const wtext = TMALLOC(wchar_t, n_byte_wide);
|
||||
MultiByteToWideChar(CP_UTF8, 0, graph->plotname, -1, wtext,
|
||||
n_byte_wide);
|
||||
n_byte_wide);
|
||||
TextOutW(PrinterDC, PrinterWidth - graph->fontwidth, 1, wtext,
|
||||
n_byte_wide);
|
||||
n_byte_wide);
|
||||
txfree(wtext);
|
||||
#endif
|
||||
SetTextAlign(PrinterDC, align);
|
||||
|
|
@ -433,11 +433,11 @@ int WPRINT_Text(char * text, int x, int y, int degrees)
|
|||
#ifdef EXT_ASC
|
||||
TextOut(PrinterDC, x, PrinterHeight - y - currentgraph->fontheight, text, (int)strlen(text));
|
||||
#else
|
||||
const int n_byte_wide = 2 * (int)strlen(text) + 1;
|
||||
wchar_t* const wtext = TMALLOC(wchar_t, n_byte_wide);
|
||||
const int n_byte_wide = 2 * (int) strlen(text) + 1;
|
||||
wchar_t * const wtext = TMALLOC(wchar_t, n_byte_wide);
|
||||
MultiByteToWideChar(CP_UTF8, 0, text, -1, wtext, n_byte_wide);
|
||||
TextOutW(PrinterDC, x, PrinterHeight - y - currentgraph->fontheight,
|
||||
wtext, n_byte_wide);
|
||||
wtext, n_byte_wide);
|
||||
txfree(wtext);
|
||||
#endif
|
||||
return (0);
|
||||
|
|
|
|||
Loading…
Reference in New Issue