3#include "MRMesh/MRphmap.h"
4#include "MRViewerFwd.h"
32 MRVIEWER_API
static void load();
34 MRVIEWER_API
static void free();
47 std::unique_ptr<ImGuiImage>
white;
59 using SizedIcons = std::array<Icons, size_t( Sizes::Count )>;
61 static const char* sizeSubFolder_( Sizes sz );
63 const ImGuiImage* findRequiredSize_(
const SizedIcons& icons,
float width, ColorType colorType, IconType iconType )
const;
65 void load_( IconType type );
76 std::filesystem::path pathDirectory;
78 std::pair<Sizes, Sizes> minMaxSizes;
80 HashMap<std::
string, SizedIcons> map;
83 std::array<IconTypeData,
size_t(
IconType::Count )> data_;
#define MR_MAKE_FLAG_OPERATORS_IN_CLASS(T)
Generates operators for a enum (at class scope).
Definition MRFlagOperators.h:9
Definition MRImGuiImage.h:18
this class holds icons for ribbon items
Definition MRRibbonIcons.h:16
IconType
Definition MRRibbonIcons.h:24
std::unique_ptr< ImGuiImage > white
Definition MRRibbonIcons.h:47
static MRVIEWER_API const ImGuiImage * findByName(const std::string &name, float width, ColorType colorType, IconType iconType)
finds icon with best fitting size, if there is no returns nullptr
AvailableColor
Definition MRRibbonIcons.h:70
static MRVIEWER_API void load()
this should be called once on start of program (called in RibbonMenu::init)
ColorType
Definition MRRibbonIcons.h:19
std::unique_ptr< ImGuiImage > colored
Definition MRRibbonIcons.h:46
static MRVIEWER_API void free()
this should be called once before program stops (called in RibbonMenu::shutdown)
only for bindings generation
Definition MRCameraOrientationPlugin.h:8