1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
#include "binres.hpp"
#include <unordered_map>
// Embedded binary data (e.g: PGNs icons):
#include "binary_data.hpp"
wxBitmap LoadPNG(std::string icon, wxSize size) {
wxImage img = LoadPNG(icon).ConvertToImage();
return (wxBitmap(
img.Scale(size.GetWidth(), size.GetHeight(), wxIMAGE_QUALITY_HIGH)));
}
wxBitmap LoadPNG(std::string icon) {
std::unordered_map<std::string, wxBitmap> u = {
{"ui_zoom_in", wxBITMAP_PNG_FROM_DATA(ui_zoom_in)},
{"ui_zoom_out", wxBITMAP_PNG_FROM_DATA(ui_zoom_out)},
{"ui_coins_swap", wxBITMAP_PNG_FROM_DATA(ui_coins_swap)},
{"ui_eye_close", wxBITMAP_PNG_FROM_DATA(ui_eye_close)},
{"mat", wxBITMAP_PNG_FROM_DATA(mat)},
{"ochess", wxBITMAP_PNG_FROM_DATA(ochess)},
{"cburnett", wxBITMAP_PNG_FROM_DATA(cburnett)},
{"chesscom_8bits", wxBITMAP_PNG_FROM_DATA(chesscom_8bits)}
};
// Return png if exists
if(u.count(icon)){
return u[icon];
}
// Otherwise null bitmap
return (wxNullBitmap);
}
|