FIX: Correct virtual tray loading and multi-color material display
- Fixed incorrect is_array() check on vtray["cols"], causing virtual tray init failure. - Rewrote AMS grouping logic using iterators and set<int> for cleaner and safer traversal. jira: STUDIO-12955 Change-Id: I09a68e259b56864260abb6c59ff9b1bf7ec2823c (cherry picked from commit 60c47473047a3fba20d59cd974179537c116524d)
This commit is contained in:
@@ -2922,9 +2922,9 @@ std::map<int, DynamicPrintConfig> Sidebar::build_filament_ams_list(MachineObject
|
||||
tray_config.set_key_value("filament_type", new ConfigOptionStrings{tray.type});
|
||||
tray_config.set_key_value("tray_name", new ConfigOptionStrings{ name });
|
||||
tray_config.set_key_value("filament_colour", new ConfigOptionStrings{into_u8(wxColour("#" + tray.color).GetAsString(wxC2S_HTML_SYNTAX))});
|
||||
tray_config.set_key_value("filament_exist", new ConfigOptionBools{tray.is_exists});
|
||||
tray_config.set_key_value("filament_multi_colour", new ConfigOptionStrings{});
|
||||
tray_config.set_key_value("filament_colour_type", new ConfigOptionStrings{std::to_string(tray.ctype)});
|
||||
tray_config.set_key_value("filament_exist", new ConfigOptionBools{tray.is_exists});
|
||||
std::optional<FilamentBaseInfo> info;
|
||||
if (wxGetApp().preset_bundle) {
|
||||
info = wxGetApp().preset_bundle->get_filament_by_filament_id(tray.setting_id);
|
||||
|
||||
Reference in New Issue
Block a user