mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2026-02-14 20:49:28 -07:00
FIX: Support raft interface lost when filament removed
Jira: STUDIO-13777 Change-Id: I500bfb558e6739a79c679afad10e8be121a49ec2 (cherry picked from commit c9cf0843d2ecb3d2c549e2282a922b8fa4ae9ddc)
This commit is contained in:
parent
0581fac6e6
commit
bb4944e955
2 changed files with 16 additions and 4 deletions
|
|
@ -457,7 +457,12 @@ void ConfigManipulation::update_print_fff_config(DynamicPrintConfig* config, con
|
|||
if (opt != nullptr) {
|
||||
if (opt->getInt() > filament_cnt) {
|
||||
DynamicPrintConfig new_conf = *config;
|
||||
new_conf.set_key_value(key, new ConfigOptionInt(0));
|
||||
const DynamicPrintConfig *conf_temp = wxGetApp().plater()->config();
|
||||
int new_value = 0;
|
||||
if (conf_temp != nullptr && conf_temp->has(key)) {
|
||||
new_value = conf_temp->opt_int(key);
|
||||
}
|
||||
new_conf.set_key_value(key, new ConfigOptionInt(new_value));
|
||||
apply(config, &new_conf);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -752,14 +752,21 @@ struct DynamicFilamentList : DynamicList
|
|||
if (items.empty())
|
||||
update(true);
|
||||
auto cb = dynamic_cast<ComboBox *>(c->window);
|
||||
auto n = cb->GetSelection();
|
||||
wxString old_selection = cb->GetStringSelection();
|
||||
int old_index = cb->GetSelection();
|
||||
cb->Clear();
|
||||
cb->Append(_L("Default"));
|
||||
for (auto i : items) {
|
||||
cb->Append(i.first, i.second ? *i.second : wxNullBitmap);
|
||||
}
|
||||
if ((unsigned int)n < cb->GetCount())
|
||||
cb->SetSelection(n);
|
||||
int new_index = cb->FindString(old_selection);
|
||||
if (new_index != wxNOT_FOUND) {
|
||||
cb->SetSelection(new_index);
|
||||
} else if ((unsigned int) old_index < cb->GetCount()) {
|
||||
cb->SetSelection(old_index);
|
||||
} else {
|
||||
cb->SetSelection(0);
|
||||
}
|
||||
}
|
||||
wxString get_value(int index) override
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue