mirror of
https://github.com/WerWolv/ImHex.git
synced 2026-04-02 13:37:42 -05:00
impr: Nicer font registering API
This commit is contained in:
@@ -5,17 +5,29 @@
|
||||
|
||||
namespace hex::fonts {
|
||||
|
||||
static auto s_defaultFont = ImHexApi::Fonts::Font("hex.fonts.font.default");
|
||||
const ImHexApi::Fonts::Font& Default() { return s_defaultFont; }
|
||||
static auto s_hexEditorFont = ImHexApi::Fonts::Font("hex.fonts.font.hex_editor");
|
||||
const ImHexApi::Fonts::Font& HexEditor() { return s_hexEditorFont; }
|
||||
static auto s_codeEditorFont = ImHexApi::Fonts::Font("hex.fonts.font.code_editor");
|
||||
const ImHexApi::Fonts::Font& CodeEditor() { return s_codeEditorFont; }
|
||||
const ImHexApi::Fonts::Font& Default() {
|
||||
static auto font = ImHexApi::Fonts::Font("hex.fonts.font.default");
|
||||
return font;
|
||||
}
|
||||
const ImHexApi::Fonts::Font& HexEditor() {
|
||||
static auto font = ImHexApi::Fonts::Font("hex.fonts.font.hex_editor");
|
||||
return font;
|
||||
}
|
||||
const ImHexApi::Fonts::Font& CodeEditor() {
|
||||
static auto font = ImHexApi::Fonts::Font("hex.fonts.font.code_editor");
|
||||
return font;
|
||||
}
|
||||
|
||||
void registerFonts() {
|
||||
ImHexApi::Fonts::loadFont("Blender Icons", romfs::get("fonts/blendericons.ttf").span<u8>(), { -1, -1 });
|
||||
ImHexApi::Fonts::loadFont("VS Codicons", romfs::get("fonts/codicons.ttf").span<u8>(), { 0, -2 });
|
||||
ImHexApi::Fonts::loadFont("Unifont", romfs::get("fonts/unifont.otf").span<u8>(), { 0, 0 }, 10);
|
||||
void registerUIFonts() {
|
||||
ImHexApi::Fonts::registerFont(Default());
|
||||
ImHexApi::Fonts::registerFont(HexEditor());
|
||||
ImHexApi::Fonts::registerFont(CodeEditor());
|
||||
}
|
||||
|
||||
void registerMergeFonts() {
|
||||
ImHexApi::Fonts::registerMergeFont("Blender Icons", romfs::get("fonts/blendericons.ttf").span<u8>(), { -1, -1 });
|
||||
ImHexApi::Fonts::registerMergeFont("VS Codicons", romfs::get("fonts/codicons.ttf").span<u8>(), { 0, -2 });
|
||||
ImHexApi::Fonts::registerMergeFont("Unifont", romfs::get("fonts/unifont.otf").span<u8>(), { 0, 0 }, 10);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -12,7 +12,8 @@
|
||||
|
||||
namespace hex::fonts {
|
||||
|
||||
void registerFonts();
|
||||
void registerUIFonts();
|
||||
void registerMergeFonts();
|
||||
|
||||
namespace loader {
|
||||
bool loadFonts();
|
||||
@@ -26,11 +27,8 @@ IMHEX_LIBRARY_SETUP("Fonts") {
|
||||
for (auto &path : romfs::list("lang"))
|
||||
hex::ContentRegistry::Language::addLocalization(nlohmann::json::parse(romfs::get(path).string()));
|
||||
|
||||
hex::ImHexApi::Fonts::registerFont("hex.fonts.font.default");
|
||||
hex::ImHexApi::Fonts::registerFont("hex.fonts.font.hex_editor");
|
||||
hex::ImHexApi::Fonts::registerFont("hex.fonts.font.code_editor");
|
||||
|
||||
hex::fonts::registerFonts();
|
||||
hex::fonts::registerUIFonts();
|
||||
hex::fonts::registerMergeFonts();
|
||||
|
||||
hex::EventImHexStartupFinished::subscribe([] {
|
||||
hex::fonts::loader::loadFonts();
|
||||
|
||||
Reference in New Issue
Block a user