mirror of
https://github.com/WerWolv/ImHex.git
synced 2026-03-28 07:47:03 -05:00
impr: Optimize frame times
This commit is contained in:
@@ -416,6 +416,7 @@ namespace hex::plugin::builtin {
|
||||
|
||||
// Toolbar items
|
||||
ContentRegistry::Interface::addToolbarItem([] {
|
||||
// TODO: Optimize this
|
||||
std::set<const ContentRegistry::Interface::impl::MenuItem*, MenuItemSorter> menuItems;
|
||||
|
||||
for (const auto &[priority, menuItem] : ContentRegistry::Interface::impl::getMenuItems()) {
|
||||
|
||||
@@ -279,18 +279,17 @@ namespace hex::plugin::builtin {
|
||||
toolbarIndex
|
||||
] = menuItem;
|
||||
|
||||
createNestedMenu(unlocalizedNames, icon.glyph.c_str(), *shortcut, callback, enabledCallback, selectedCallack);
|
||||
createNestedMenu(unlocalizedNames | std::views::drop(1), icon.glyph.c_str(), *shortcut, callback, enabledCallback, selectedCallack);
|
||||
}
|
||||
}
|
||||
|
||||
void defineMenu(const UnlocalizedString &menuName) {
|
||||
ImGui::GetStyle().TouchExtraPadding = scaled(ImVec2(0, 2));
|
||||
if (ImGui::BeginMenu(Lang(menuName))) {
|
||||
populateMenu(menuName);
|
||||
ImGui::EndMenu();
|
||||
}
|
||||
ImGui::GetStyle().TouchExtraPadding = ImVec2(0, 0);
|
||||
|
||||
populateMenu(menuName);
|
||||
}
|
||||
|
||||
void drawMenu() {
|
||||
|
||||
@@ -24,9 +24,11 @@ namespace hex::ui {
|
||||
hex::unused(address, upperCase);
|
||||
|
||||
if (size == 1) {
|
||||
const u8 c = data[0];
|
||||
if (std::isprint(c) != 0)
|
||||
ImGui::Text("%c", c);
|
||||
const char c = char(data[0]);
|
||||
if (std::isprint(c) != 0) {
|
||||
const std::array<char, 2> string = { c, 0x00 };
|
||||
ImGui::TextUnformatted(string.data());
|
||||
}
|
||||
else
|
||||
ImGui::TextDisabled(".");
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user