| 98 | |
| 99 | |
| 100 | std::shared_ptr<Svg> Svg::load(const std::string& filename) { |
| 101 | const auto& pair = svgCache.find(filename); |
| 102 | if (pair != svgCache.end()) |
| 103 | return pair->second; |
| 104 | |
| 105 | // Load svg |
| 106 | std::shared_ptr<Svg> svg; |
| 107 | try { |
| 108 | svg = std::make_shared<Svg>(); |
| 109 | svg->loadFile(filename); |
| 110 | } |
| 111 | catch (Exception& e) { |
| 112 | WARN("%s", e.what()); |
| 113 | svg = NULL; |
| 114 | } |
| 115 | svgCache[filename] = svg; |
| 116 | return svg; |
| 117 | } |
| 118 | |
| 119 | |
| 120 | static NVGcolor getNVGColor(uint32_t color) { |