feat: Added Minimap to Hex Editor

This commit is contained in:
WerWolv
2024-01-28 15:28:55 +01:00
parent 17f769c40d
commit 069544eb93
9 changed files with 221 additions and 34 deletions

View File

@@ -985,11 +985,19 @@ namespace hex {
u16 m_maxCharsPerCell;
};
struct MiniMapVisualizer {
using Callback = std::function<ImColor(const std::vector<u8>&)>;
UnlocalizedString unlocalizedName;
Callback callback;
};
namespace impl {
void addDataVisualizer(std::shared_ptr<DataVisualizer> &&visualizer);
std::vector<std::shared_ptr<DataVisualizer>> &getVisualizers();
std::vector<std::shared_ptr<MiniMapVisualizer>> &getMiniMapVisualizers();
}
@@ -1010,6 +1018,13 @@ namespace hex {
*/
std::shared_ptr<DataVisualizer> getVisualizerByName(const UnlocalizedString &unlocalizedName);
/**
* @brief Adds a new minimap visualizer
* @param unlocalizedName Unlocalized name of the minimap visualizer
* @param callback The callback that will be called to get the color of a line
*/
void addMiniMapVisualizer(UnlocalizedString unlocalizedName, MiniMapVisualizer::Callback callback);
}
/* Diffing Registry. Allows adding new diffing algorithms */