NEW: Add tag for variable layer_height

jira: STUDIO-7412

Change-Id: I4b5c8e158b073b302db6faad77bb8ca0f70f766a
(cherry picked from commit ffc34acf783aa1f6ac23f24a96fff30be90880d0)
(cherry picked from commit 86a8e6c433799d931e441d5ea387702b03ff50f8)
This commit is contained in:
hang.xu
2024-08-15 20:05:40 +08:00
committed by Noisyfox
parent d6e3d5272e
commit b2f2e41b80
4 changed files with 105 additions and 3 deletions

View File

@@ -38,6 +38,7 @@ enum ItemType {
enum ColumnNumber
{
colName = 0, // item name
colHeight , // variable height
colPrint , // printable property
colFilament , // extruder selection
// BBS
@@ -55,6 +56,12 @@ enum PrintIndicator
piUnprintable , // unprintable
};
enum VaryHeightIndicator
{
hiUnVariable, // unvariable height
hiVariable, // variable height
};
enum class InfoItemType
{
Undef,
@@ -94,6 +101,9 @@ class ObjectDataViewModelNode
wxBitmap m_sinking_icon;
PrintIndicator m_printable {piUndef};
wxBitmap m_printable_icon;
VaryHeightIndicator m_variable_height{ hiUnVariable };
wxBitmap m_variable_height_icon;
std::string m_warning_icon_name{ "" };
bool m_has_lock{false}; // for cut object icon
@@ -244,6 +254,7 @@ public:
t_layer_height_range GetLayerRange() const { return m_layer_range; }
wxString GetExtruder() { return m_extruder; }
PrintIndicator IsPrintable() const { return m_printable; }
VaryHeightIndicator IsVaribaleHeight() const { return m_variable_height; }
// BBS
bool HasColorPainting() const { return m_color_enable; }
bool HasSupportPainting() const { return m_support_enable; }
@@ -285,6 +296,7 @@ public:
void set_extruder_icon();
// Set printable icon for node
void set_printable_icon(PrintIndicator printable);
void set_variable_height_icon(VaryHeightIndicator vari_height);
void set_action_icon(bool enable);
// BBS
void set_color_icon(bool enable);
@@ -479,12 +491,15 @@ public:
bool IsPrintable(const wxDataViewItem &item) const;
void UpdateObjectPrintable(wxDataViewItem parent_item);
void UpdateInstancesPrintable(wxDataViewItem parent_item);
bool IsVariableHeight(const wxDataViewItem& item) const;
void SetVolumeType(const wxDataViewItem &item, const Slic3r::ModelVolumeType type);
ModelVolumeType GetVolumeType(const wxDataViewItem &item);
wxDataViewItem SetPrintableState( PrintIndicator printable, int obj_idx,
int subobj_idx = -1,
ItemType subobj_type = itInstance);
wxDataViewItem SetObjectPrintableState(PrintIndicator printable, wxDataViewItem obj_item);
wxDataViewItem SetObjectVariableHeightState(VaryHeightIndicator vari_height, wxDataViewItem obj_item);
// BBS
bool IsColorPainted(wxDataViewItem& item) const;
bool IsSupportPainted(wxDataViewItem &item) const;