1
0
mirror of synced 2024-11-14 19:17:42 +01:00
ImHex/plugins/builtin/include/content/views/view_constants.hpp

47 lines
917 B
C++
Raw Normal View History

2021-06-26 01:18:33 +02:00
#pragma once
#include <hex/ui/view.hpp>
2021-06-26 01:18:33 +02:00
#include <cstdio>
#include <string>
2021-12-07 22:47:41 +01:00
namespace hex::plugin::builtin {
2021-06-26 01:18:33 +02:00
enum class ConstantType
{
2021-06-26 01:18:33 +02:00
Int10,
Int16BigEndian,
Int16LittleEndian
};
struct Constant {
std::string name, description;
std::string category;
ConstantType type;
std::string value;
};
class ViewConstants : public View {
public:
explicit ViewConstants();
~ViewConstants() override = default;
2021-06-26 01:18:33 +02:00
void drawContent() override;
ImVec2 getMinSize() const override {
return scaled(ImVec2(300, 400));
}
ImVec2 getMaxSize() const override {
return { FLT_MAX, 800_scaled };
}
2021-06-26 01:18:33 +02:00
private:
void reloadConstants();
std::vector<Constant> m_constants;
std::vector<size_t> m_filterIndices;
std::string m_filter;
2021-06-26 01:18:33 +02:00
};
}