mirror of
https://github.com/QIDITECH/QIDISlicer.git
synced 2026-02-02 17:08:42 +03:00
PRUSA 2.7.0
This commit is contained in:
@@ -75,6 +75,7 @@ ObjectDataViewModelNode::ObjectDataViewModelNode(ObjectDataViewModelNode* pare
|
||||
const wxString& sub_obj_name,
|
||||
Slic3r::ModelVolumeType type,
|
||||
const bool is_text_volume,
|
||||
const bool is_svg_volume,
|
||||
const wxString& extruder,
|
||||
const int idx/* = -1*/) :
|
||||
m_parent(parent),
|
||||
@@ -82,6 +83,7 @@ ObjectDataViewModelNode::ObjectDataViewModelNode(ObjectDataViewModelNode* pare
|
||||
m_type(itVolume),
|
||||
m_volume_type(type),
|
||||
m_is_text_volume(is_text_volume),
|
||||
m_is_svg_volume(is_svg_volume),
|
||||
m_idx(idx),
|
||||
m_extruder(type == Slic3r::ModelVolumeType::MODEL_PART || type == Slic3r::ModelVolumeType::PARAMETER_MODIFIER ? extruder : "")
|
||||
{
|
||||
@@ -333,6 +335,7 @@ ObjectDataViewModel::ObjectDataViewModel()
|
||||
{
|
||||
m_volume_bmps = MenuFactory::get_volume_bitmaps();
|
||||
m_text_volume_bmps = MenuFactory::get_text_volume_bitmaps();
|
||||
m_svg_volume_bmps = MenuFactory::get_svg_volume_bitmaps();
|
||||
m_warning_bmp = *get_bmp_bundle(WarningIcon);
|
||||
m_warning_manifold_bmp = *get_bmp_bundle(WarningManifoldIcon);
|
||||
m_lock_bmp = *get_bmp_bundle(LockIcon);
|
||||
@@ -355,7 +358,10 @@ void ObjectDataViewModel::UpdateBitmapForNode(ObjectDataViewModelNode* node)
|
||||
bool is_volume_node = vol_type >= 0;
|
||||
|
||||
if (!node->has_warning_icon() && !node->has_lock()) {
|
||||
node->SetBitmap(is_volume_node ? (node->is_text_volume() ? *m_text_volume_bmps.at(vol_type) : *m_volume_bmps.at(vol_type)) : m_empty_bmp);
|
||||
node->SetBitmap(is_volume_node ? (
|
||||
node->is_text_volume() ? *m_text_volume_bmps.at(vol_type) :
|
||||
node->is_svg_volume() ? *m_svg_volume_bmps.at(vol_type) :
|
||||
*m_volume_bmps.at(vol_type)) : m_empty_bmp);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -376,7 +382,10 @@ void ObjectDataViewModel::UpdateBitmapForNode(ObjectDataViewModelNode* node)
|
||||
if (node->has_lock())
|
||||
bmps.emplace_back(&m_lock_bmp);
|
||||
if (is_volume_node)
|
||||
bmps.emplace_back(node->is_text_volume() ? m_text_volume_bmps[vol_type] : m_volume_bmps[vol_type]);
|
||||
bmps.emplace_back(
|
||||
node->is_text_volume() ? m_text_volume_bmps[vol_type] :
|
||||
node->is_svg_volume() ? m_svg_volume_bmps[vol_type] :
|
||||
m_volume_bmps[vol_type]);
|
||||
bmp = m_bitmap_cache->insert_bndl(scaled_bitmap_name, bmps);
|
||||
}
|
||||
|
||||
@@ -413,6 +422,7 @@ wxDataViewItem ObjectDataViewModel::AddVolumeChild( const wxDataViewItem &parent
|
||||
const int volume_idx,
|
||||
const Slic3r::ModelVolumeType volume_type,
|
||||
const bool is_text_volume,
|
||||
const bool is_svg_volume,
|
||||
const std::string& warning_icon_name,
|
||||
const wxString& extruder)
|
||||
{
|
||||
@@ -424,7 +434,7 @@ wxDataViewItem ObjectDataViewModel::AddVolumeChild( const wxDataViewItem &parent
|
||||
if (insert_position < 0)
|
||||
insert_position = get_root_idx(root, itInstanceRoot);
|
||||
|
||||
const auto node = new ObjectDataViewModelNode(root, name, volume_type, is_text_volume, extruder, volume_idx);
|
||||
const auto node = new ObjectDataViewModelNode(root, name, volume_type, is_text_volume, is_svg_volume, extruder, volume_idx);
|
||||
UpdateBitmapForNode(node, warning_icon_name, root->has_lock() && volume_type < ModelVolumeType::PARAMETER_MODIFIER);
|
||||
insert_position < 0 ? root->Append(node) : root->Insert(node, insert_position);
|
||||
|
||||
@@ -1683,6 +1693,7 @@ void ObjectDataViewModel::UpdateBitmaps()
|
||||
{
|
||||
m_volume_bmps = MenuFactory::get_volume_bitmaps();
|
||||
m_text_volume_bmps = MenuFactory::get_text_volume_bitmaps();
|
||||
m_svg_volume_bmps = MenuFactory::get_svg_volume_bitmaps();
|
||||
m_warning_bmp = *get_bmp_bundle(WarningIcon);
|
||||
m_warning_manifold_bmp = *get_bmp_bundle(WarningManifoldIcon);
|
||||
m_lock_bmp = *get_bmp_bundle(LockIcon);
|
||||
|
||||
Reference in New Issue
Block a user