trunk/src/osd/sdl/sdlmain.c
| r31895 | r31896 | |
| 13 | 13 | #ifdef SDLMAME_UNIX |
| 14 | 14 | #if (!defined(SDLMAME_MACOSX)) && (!defined(SDLMAME_EMSCRIPTEN)) |
| 15 | 15 | #if (SDLMAME_SDL2) |
| 16 | | //#include <SDL2/SDL_ttf.h> |
| 16 | #include <SDL2/SDL_ttf.h> |
| 17 | 17 | #else |
| 18 | 18 | #include <SDL/SDL_ttf.h> |
| 19 | 19 | #endif |
| r31895 | r31896 | |
| 291 | 291 | #ifdef SDLMAME_UNIX |
| 292 | 292 | sdl_entered_debugger = 0; |
| 293 | 293 | #if (!defined(SDLMAME_MACOSX)) && (!defined(SDLMAME_HAIKU)) && (!defined(SDLMAME_EMSCRIPTEN)) |
| 294 | | #if !(SDLMAME_SDL2) |
| 295 | 294 | if (TTF_Init() == -1) |
| 296 | 295 | { |
| 297 | 296 | printf("SDL_ttf failed: %s\n", TTF_GetError()); |
| 298 | 297 | } |
| 299 | | #endif |
| 300 | 298 | FcInit(); |
| 301 | 299 | #endif |
| 302 | 300 | #endif |
| r31895 | r31896 | |
| 344 | 342 | |
| 345 | 343 | #ifdef SDLMAME_UNIX |
| 346 | 344 | #if (!defined(SDLMAME_MACOSX)) && (!defined(SDLMAME_HAIKU)) && (!defined(SDLMAME_EMSCRIPTEN)) |
| 347 | | #if !(SDLMAME_SDL2) |
| 348 | 345 | TTF_Quit(); |
| 349 | | #endif |
| 350 | 346 | if (!sdl_entered_debugger) |
| 351 | 347 | { |
| 352 | 348 | FcFini(); |
| r31895 | r31896 | |
| 854 | 850 | } |
| 855 | 851 | #else // UNIX but not OSX |
| 856 | 852 | |
| 857 | | #if !(SDLMAME_SDL2) |
| 858 | 853 | static TTF_Font * TTF_OpenFont_Magic(astring name, int fsize) |
| 859 | 854 | { |
| 860 | 855 | emu_file file(OPEN_FLAG_READ); |
| r31895 | r31896 | |
| 994 | 989 | return font; |
| 995 | 990 | } |
| 996 | 991 | #endif |
| 997 | | #endif |
| 998 | 992 | |
| 999 | 993 | //------------------------------------------------- |
| 1000 | 994 | // font_open - attempt to "open" a handle to the |
| r31895 | r31896 | |
| 1003 | 997 | |
| 1004 | 998 | osd_font sdl_osd_interface::font_open(const char *_name, int &height) |
| 1005 | 999 | { |
| 1006 | | #if !(SDLMAME_SDL2) |
| 1007 | 1000 | TTF_Font *font = (TTF_Font *)NULL; |
| 1008 | 1001 | bool bakedstyles = false; |
| 1009 | 1002 | int style = 0; |
| r31895 | r31896 | |
| 1075 | 1068 | height = TTF_FontLineSkip(font); |
| 1076 | 1069 | |
| 1077 | 1070 | return (osd_font)font; |
| 1078 | | #else |
| 1079 | | return (osd_font)NULL; |
| 1080 | | #endif |
| 1081 | 1071 | } |
| 1082 | 1072 | |
| 1083 | 1073 | //------------------------------------------------- |
| r31895 | r31896 | |
| 1087 | 1077 | |
| 1088 | 1078 | void sdl_osd_interface::font_close(osd_font font) |
| 1089 | 1079 | { |
| 1090 | | #if !(SDLMAME_SDL2) |
| 1091 | 1080 | TTF_Font *ttffont; |
| 1092 | 1081 | |
| 1093 | 1082 | ttffont = (TTF_Font *)font; |
| 1094 | 1083 | |
| 1095 | 1084 | TTF_CloseFont(ttffont); |
| 1096 | | #endif |
| 1097 | 1085 | } |
| 1098 | 1086 | |
| 1099 | 1087 | //------------------------------------------------- |
| r31895 | r31896 | |
| 1106 | 1094 | |
| 1107 | 1095 | bool sdl_osd_interface::font_get_bitmap(osd_font font, unicode_char chnum, bitmap_argb32 &bitmap, INT32 &width, INT32 &xoffs, INT32 &yoffs) |
| 1108 | 1096 | { |
| 1109 | | #if !(SDLMAME_SDL2) |
| 1110 | 1097 | TTF_Font *ttffont; |
| 1111 | 1098 | SDL_Surface *drawsurf; |
| 1112 | 1099 | SDL_Color fcol = { 0xff, 0xff, 0xff }; |
| r31895 | r31896 | |
| 1146 | 1133 | } |
| 1147 | 1134 | |
| 1148 | 1135 | return bitmap.valid(); |
| 1149 | | #else |
| 1150 | | return false; |
| 1151 | | #endif |
| 1152 | 1136 | } |
| 1153 | 1137 | #endif // not OSX |
| 1154 | 1138 | #else // not UNIX |