]> granicus.if.org Git - nethack/commitdiff
(from <Someone>)
authornethack.allison <nethack.allison>
Tue, 17 Sep 2002 03:32:07 +0000 (03:32 +0000)
committernethack.allison <nethack.allison>
Tue, 17 Sep 2002 03:32:07 +0000 (03:32 +0000)
win/win32/mhfont.c
win/win32/mhmap.c
win/win32/mswproc.c

index 003c562162467f8e0814ae237e1fa96d074ca527..b23e562114219b739686e3df2f6e9f8b66b8c5fe 100644 (file)
@@ -87,7 +87,7 @@ HGDIOBJ mswin_get_font(int win_type, int attr, HDC hdc, BOOL replace)
                lgfnt.lfItalic                  =       FALSE;                   // italic attribute option
                lgfnt.lfUnderline               =       FALSE;                       // underline attribute option
                lgfnt.lfStrikeOut               =       FALSE;                       // strikeout attribute option
-               lgfnt.lfCharSet                 =       OEM_CHARSET;     // character set identifier
+               lgfnt.lfCharSet                 =       iflags.IBMgraphics? OEM_CHARSET : ANSI_CHARSET;     // character set identifier
                lgfnt.lfOutPrecision    =       OUT_DEFAULT_PRECIS;  // output precision
                lgfnt.lfClipPrecision   =       CLIP_DEFAULT_PRECIS; // clipping precision
                lgfnt.lfQuality                 =       DEFAULT_QUALITY;     // output quality
@@ -109,7 +109,7 @@ HGDIOBJ mswin_get_font(int win_type, int attr, HDC hdc, BOOL replace)
                lgfnt.lfItalic                  =       (attr==ATR_BLINK)? TRUE: FALSE;              // italic attribute option
                lgfnt.lfUnderline               =       (attr==ATR_ULINE)? TRUE : FALSE;                 // underline attribute option
                lgfnt.lfStrikeOut               =       FALSE;                          // strikeout attribute option
-               lgfnt.lfCharSet                 =       OEM_CHARSET;     // character set identifier
+               lgfnt.lfCharSet                 =       iflags.IBMgraphics? OEM_CHARSET : ANSI_CHARSET;     // character set identifier
                lgfnt.lfOutPrecision    =       OUT_DEFAULT_PRECIS;  // output precision
                lgfnt.lfClipPrecision   =       CLIP_DEFAULT_PRECIS; // clipping precision
                lgfnt.lfQuality                 =       DEFAULT_QUALITY;     // output quality
@@ -132,7 +132,7 @@ HGDIOBJ mswin_get_font(int win_type, int attr, HDC hdc, BOOL replace)
                lgfnt.lfItalic                  =       (attr==ATR_BLINK)? TRUE: FALSE;              // italic attribute option
                lgfnt.lfUnderline               =       (attr==ATR_ULINE)? TRUE : FALSE;                 // underline attribute option
                lgfnt.lfStrikeOut               =       FALSE;                       // strikeout attribute option
-               lgfnt.lfCharSet                 =       OEM_CHARSET;     // character set identifier
+               lgfnt.lfCharSet                 =       iflags.IBMgraphics? OEM_CHARSET : ANSI_CHARSET;     // character set identifier
                lgfnt.lfOutPrecision    =       OUT_DEFAULT_PRECIS;  // output precision
                lgfnt.lfClipPrecision   =       CLIP_DEFAULT_PRECIS; // clipping precision
                lgfnt.lfQuality                 =       DEFAULT_QUALITY;     // output quality
@@ -154,7 +154,7 @@ HGDIOBJ mswin_get_font(int win_type, int attr, HDC hdc, BOOL replace)
                lgfnt.lfItalic                  =       (attr==ATR_BLINK)? TRUE: FALSE;              // italic attribute option
                lgfnt.lfUnderline               =       (attr==ATR_ULINE)? TRUE : FALSE;                 // underline attribute option
                lgfnt.lfStrikeOut               =       FALSE;                       // strikeout attribute option
-               lgfnt.lfCharSet                 =       OEM_CHARSET;     // character set identifier
+               lgfnt.lfCharSet                 =       iflags.IBMgraphics? OEM_CHARSET : ANSI_CHARSET;     // character set identifier
                lgfnt.lfOutPrecision    =       OUT_DEFAULT_PRECIS;  // output precision
                lgfnt.lfClipPrecision   =       CLIP_DEFAULT_PRECIS; // clipping precision
                lgfnt.lfQuality                 =       DEFAULT_QUALITY;     // output quality
index 7d7fb73ab0b59074cb76e1affaad03d81436dec4..b6dad27323e6c83d9548a84185a0cb158bb4cca0 100644 (file)
@@ -159,12 +159,18 @@ void mswin_map_stretch(HWND hWnd, LPSIZE lpsz, BOOL redraw)
        lgfnt.lfItalic                  =       FALSE;                           // italic attribute option
        lgfnt.lfUnderline               =       FALSE;                           // underline attribute option
        lgfnt.lfStrikeOut               =       FALSE;                       // strikeout attribute option
-       lgfnt.lfCharSet                 =       OEM_CHARSET;         // character set identifier
+       lgfnt.lfCharSet                 =       iflags.IBMgraphics? OEM_CHARSET : ANSI_CHARSET;     // character set identifier
        lgfnt.lfOutPrecision    =       OUT_DEFAULT_PRECIS;  // output precision
        lgfnt.lfClipPrecision   =       CLIP_DEFAULT_PRECIS; // clipping precision
        lgfnt.lfQuality                 =       DEFAULT_QUALITY;     // output quality
-       lgfnt.lfPitchAndFamily  =       FIXED_PITCH;             // pitch and family
-       _tcscpy(lgfnt.lfFaceName, NHMAP_FONT_NAME);
+       if( iflags.wc_font_map &&
+               *iflags.wc_font_map ) {
+               lgfnt.lfPitchAndFamily  = DEFAULT_PITCH;                 // pitch and family
+               NH_A2W(iflags.wc_font_map, lgfnt.lfFaceName, LF_FACESIZE);
+       } else {
+               lgfnt.lfPitchAndFamily  = FIXED_PITCH;           // pitch and family
+               NH_A2W(NHMAP_FONT_NAME, lgfnt.lfFaceName, LF_FACESIZE);
+       }
        data->hMapFont = CreateFontIndirect(&lgfnt);
 
        mswin_cliparound(data->xCur, data->yCur);
index 7a49ba57ddff5289efdca867f712071b6aa5745c..21be4f200f9f53a44ccac11b90516b483460f6e3 100644 (file)
@@ -66,7 +66,7 @@ struct window_procs mswin_procs = {
     "MSWIN",
     WC_COLOR|WC_HILITE_PET|WC_ALIGN_MESSAGE|WC_ALIGN_STATUS|
        WC_INVERSE|WC_SCROLL_AMOUNT|WC_SCROLL_MARGIN|WC_MAP_MODE|
-       WC_FONT_MESSAGE|WC_FONT_STATUS|WC_FONT_MENU|WC_FONT_TEXT|
+       WC_FONT_MESSAGE|WC_FONT_STATUS|WC_FONT_MENU|WC_FONT_TEXT|WC_FONT_MAP|
        WC_FONTSIZ_MESSAGE|WC_FONTSIZ_STATUS|WC_FONTSIZ_MENU|WC_FONTSIZ_TEXT|
        WC_TILE_WIDTH|WC_TILE_HEIGHT|WC_TILE_FILE|WC_VARY_MSGCOUNT|
        WC_WINDOWCOLORS|WC_PLAYER_SELECTION|WC_SPLASH_SCREEN|WC_POPUP_DIALOG,