diff --git a/src/slic3r/GUI/ObjectDataViewModel.cpp b/src/slic3r/GUI/ObjectDataViewModel.cpp index 722a1278e..d3fd9071a 100644 --- a/src/slic3r/GUI/ObjectDataViewModel.cpp +++ b/src/slic3r/GUI/ObjectDataViewModel.cpp @@ -1724,22 +1724,21 @@ wxBitmapBundle ObjectDataViewModel::GetVolumeIcon( { const std::vector& bitmaps = node.is_text_volume() ? m_text_volume_bmps : m_volume_bmps; if (warning_icon_name.empty()) - return *m_volume_bmps[static_cast(node.GetType())]; + return *bitmaps[static_cast(node.GetVolumeType())]; - std::string scaled_bitmap_name = warning_icon_name + std::to_string(node.GetType()); + std::string scaled_bitmap_name = warning_icon_name + + std::to_string(node.GetType()) + + (node.is_text_volume() ?"text": ""); scaled_bitmap_name += "-em" + std::to_string(wxGetApp().em_unit()) + (wxGetApp().dark_mode() ? "-dm" : "-lm"); - // TODO: usi text bitmap + // TODO: use scale cache wxBitmapBundle *bmp = m_bitmap_cache->find_bndl(scaled_bitmap_name); if (bmp == nullptr) { std::vector bmps; - bmps.emplace_back(&GetWarningBitmap(warning_icon_name)); - bmps.emplace_back(m_volume_bmps[static_cast(node.GetType())]); - + bmps.emplace_back(bitmaps[static_cast(node.GetVolumeType())]); bmp = m_bitmap_cache->insert_bndl(scaled_bitmap_name, bmps); } - return *bmp; } diff --git a/src/slic3r/GUI/ObjectDataViewModel.hpp b/src/slic3r/GUI/ObjectDataViewModel.hpp index 95eb7f95d..cd071c291 100644 --- a/src/slic3r/GUI/ObjectDataViewModel.hpp +++ b/src/slic3r/GUI/ObjectDataViewModel.hpp @@ -190,7 +190,7 @@ public: InfoItemType GetInfoItemType() const { return m_info_item_type; } void SetIdx(const int& idx); int GetIdx() const { return m_idx; } - ModelVolumeType GetVolumeType() { return m_volume_type; } + ModelVolumeType GetVolumeType() const { return m_volume_type; } t_layer_height_range GetLayerRange() const { return m_layer_range; } wxString GetExtruder() { return m_extruder; } PrintIndicator IsPrintable() const { return m_printable; } @@ -237,7 +237,6 @@ public: bool update_settings_digest(const std::vector& categories); int volume_type() const { return int(m_volume_type); } bool is_text_volume() const { return m_is_text_volume; } - void msw_rescale(); void sys_color_changed(); #ifndef NDEBUG