| 193 | } |
| 194 | |
| 195 | error_code cellFontOpenFontset(vm::ptr<CellFontLibrary> library, vm::ptr<CellFontType> fontType, vm::ptr<CellFont> font) |
| 196 | { |
| 197 | cellFont.warning("cellFontOpenFontset(library=*0x%x, fontType=*0x%x, font=*0x%x)", library, fontType, font); |
| 198 | |
| 199 | if (!font) |
| 200 | { |
| 201 | return CELL_FONT_ERROR_INVALID_PARAMETER; |
| 202 | } |
| 203 | |
| 204 | // TODO: reset some font fields here |
| 205 | |
| 206 | if (!library || !fontType) |
| 207 | { |
| 208 | return CELL_FONT_ERROR_INVALID_PARAMETER; |
| 209 | } |
| 210 | |
| 211 | if (false) // TODO |
| 212 | { |
| 213 | return CELL_FONT_ERROR_UNINITIALIZED; |
| 214 | } |
| 215 | |
| 216 | // TODO |
| 217 | |
| 218 | if (fontType->map != CELL_FONT_MAP_UNICODE) |
| 219 | { |
| 220 | cellFont.warning("cellFontOpenFontset: Only Unicode is supported"); |
| 221 | } |
| 222 | |
| 223 | std::string file; |
| 224 | switch (fontType->type) |
| 225 | { |
| 226 | case CELL_FONT_TYPE_RODIN_SANS_SERIF_LATIN: file = "/dev_flash/data/font/SCE-PS3-RD-R-LATIN.TTF"; break; |
| 227 | case CELL_FONT_TYPE_RODIN_SANS_SERIF_LIGHT_LATIN: file = "/dev_flash/data/font/SCE-PS3-RD-L-LATIN.TTF"; break; |
| 228 | case CELL_FONT_TYPE_RODIN_SANS_SERIF_BOLD_LATIN: file = "/dev_flash/data/font/SCE-PS3-RD-B-LATIN.TTF"; break; |
| 229 | case CELL_FONT_TYPE_RODIN_SANS_SERIF_LATIN2: file = "/dev_flash/data/font/SCE-PS3-RD-R-LATIN2.TTF"; break; |
| 230 | case CELL_FONT_TYPE_RODIN_SANS_SERIF_LIGHT_LATIN2: file = "/dev_flash/data/font/SCE-PS3-RD-L-LATIN2.TTF"; break; |
| 231 | case CELL_FONT_TYPE_RODIN_SANS_SERIF_BOLD_LATIN2: file = "/dev_flash/data/font/SCE-PS3-RD-B-LATIN2.TTF"; break; |
| 232 | case CELL_FONT_TYPE_MATISSE_SERIF_LATIN: file = "/dev_flash/data/font/SCE-PS3-MT-R-LATIN.TTF"; break; |
| 233 | case CELL_FONT_TYPE_NEWRODIN_GOTHIC_JAPANESE: file = "/dev_flash/data/font/SCE-PS3-NR-R-JPN.TTF"; break; |
| 234 | case CELL_FONT_TYPE_NEWRODIN_GOTHIC_LIGHT_JAPANESE: file = "/dev_flash/data/font/SCE-PS3-NR-L-JPN.TTF"; break; |
| 235 | case CELL_FONT_TYPE_NEWRODIN_GOTHIC_BOLD_JAPANESE: file = "/dev_flash/data/font/SCE-PS3-NR-B-JPN.TTF"; break; |
| 236 | case CELL_FONT_TYPE_YD_GOTHIC_KOREAN: file = "/dev_flash/data/font/SCE-PS3-YG-R-KOR.TTF"; break; |
| 237 | case CELL_FONT_TYPE_SEURAT_MARU_GOTHIC_LATIN: file = "/dev_flash/data/font/SCE-PS3-SR-R-LATIN.TTF"; break; |
| 238 | case CELL_FONT_TYPE_SEURAT_MARU_GOTHIC_LATIN2: file = "/dev_flash/data/font/SCE-PS3-SR-R-LATIN2.TTF"; break; |
| 239 | case CELL_FONT_TYPE_VAGR_SANS_SERIF_ROUND: file = "/dev_flash/data/font/SCE-PS3-VR-R-LATIN.TTF"; break; |
| 240 | case CELL_FONT_TYPE_VAGR_SANS_SERIF_ROUND_LATIN2: file = "/dev_flash/data/font/SCE-PS3-VR-R-LATIN2.TTF"; break; |
| 241 | case CELL_FONT_TYPE_SEURAT_MARU_GOTHIC_JAPANESE: file = "/dev_flash/data/font/SCE-PS3-SR-R-JPN.TTF"; break; |
| 242 | |
| 243 | case CELL_FONT_TYPE_NEWRODIN_GOTHIC_JP_SET: |
| 244 | case CELL_FONT_TYPE_NEWRODIN_GOTHIC_LATIN_SET: |
| 245 | case CELL_FONT_TYPE_NEWRODIN_GOTHIC_RODIN_SET: |
| 246 | case CELL_FONT_TYPE_NEWRODIN_GOTHIC_RODIN2_SET: |
| 247 | case CELL_FONT_TYPE_NEWRODIN_GOTHIC_YG_RODIN2_SET: |
| 248 | case CELL_FONT_TYPE_NEWRODIN_GOTHIC_YG_DFHEI5_SET: |
| 249 | case CELL_FONT_TYPE_NEWRODIN_GOTHIC_YG_DFHEI5_RODIN_SET: |
| 250 | case CELL_FONT_TYPE_NEWRODIN_GOTHIC_YG_DFHEI5_RODIN2_SET: |
| 251 | case CELL_FONT_TYPE_DFHEI5_GOTHIC_YG_NEWRODIN_TCH_SET: |
| 252 | case CELL_FONT_TYPE_DFHEI5_GOTHIC_YG_NEWRODIN_RODIN_TCH_SET: |
nothing calls this directly
no test coverage detected