ENH: config: add default_nozzle_volume_type in printer
1. also remove original nozzle_volume_type from printer and move into project config 2. support save nozzle_volume_type into appconfig and load from it at beginning or printer switch jira: no-jira Change-Id: I01fc82d142fc633fc59a238796a71b9f8d180efb (cherry picked from commit fe8b904e7551cde83b1ead75922e9b60278b50ad)
This commit is contained in:
@@ -41,6 +41,7 @@ static std::vector<std::string> s_project_options {
|
||||
"wipe_tower_rotation_angle",
|
||||
"curr_bed_type",
|
||||
"flush_multiplier",
|
||||
"nozzle_volume_type"
|
||||
};
|
||||
|
||||
//Orca: add custom as default
|
||||
@@ -1785,6 +1786,23 @@ void PresetBundle::load_selections(AppConfig &config, const PresetPreferences& p
|
||||
}
|
||||
}
|
||||
|
||||
const Preset& current_printer = printers.get_selected_preset();
|
||||
const Preset* base_printer = printers.get_preset_base(current_printer);
|
||||
bool use_default_nozzle_volume_type = true;
|
||||
if (base_printer) {
|
||||
std::string prev_nozzle_volume_type = config.get_nozzle_volume_types_from_config(base_printer->name);
|
||||
if (!prev_nozzle_volume_type.empty()) {
|
||||
ConfigOptionEnumsGeneric* nozzle_volume_type_option = project_config.option<ConfigOptionEnumsGeneric>("nozzle_volume_type");
|
||||
if (nozzle_volume_type_option->deserialize(prev_nozzle_volume_type)) {
|
||||
use_default_nozzle_volume_type = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (use_default_nozzle_volume_type) {
|
||||
project_config.option<ConfigOptionEnumsGeneric>("nozzle_volume_type")->values = current_printer.config.option<ConfigOptionEnumsGeneric>("default_nozzle_volume_type")->values;
|
||||
}
|
||||
|
||||
// Parse the initial physical printer name.
|
||||
std::string initial_physical_printer_name = remove_ini_suffix(config.get("presets", "physical_printer"));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user