Removed files that were accidently added

This commit is contained in:
ExPikaPaka
2026-07-09 08:40:37 +02:00
parent 7f2598d0d6
commit 3514249197
5 changed files with 0 additions and 7731 deletions

View File

@@ -1,255 +0,0 @@
// ===== AUTO-GENERATED by tools/config_codegen.py =====
static const std::unordered_map<std::string, std::vector<PrintStep>> s_print_steps_map = {
{"accel_to_decel_enable", {psGCodeExport}},
{"accel_to_decel_factor", {psGCodeExport}},
{"activate_air_filtration", {psGCodeExport}},
{"activate_air_filtration_during_print", {psGCodeExport}},
{"activate_air_filtration_on_completion", {psGCodeExport}},
{"activate_chamber_temp_control", {psGCodeExport}},
{"additional_cooling_fan_speed", {psGCodeExport}},
{"bed_temperature_formula", {psGCodeExport}},
{"before_layer_change_gcode", {psGCodeExport}},
{"bridge_acceleration", {psGCodeExport}},
{"chamber_temperature", {psSkirtBrim, psWipeTower, psGCodeExport}},
{"change_filament_gcode", {psGCodeExport}},
{"close_fan_the_first_x_layers", {psGCodeExport}},
{"complete_print_exhaust_fan_speed", {psGCodeExport}},
{"cool_plate_temp", {psSkirtBrim, psWipeTower}},
{"cool_plate_temp_initial_layer", {psGCodeExport}},
{"curr_bed_type", {psGCodeExport}},
{"default_acceleration", {psGCodeExport}},
{"default_filament_colour", {psGCodeExport}},
{"deretraction_speed", {psGCodeExport}},
{"disable_m73", {psGCodeExport}},
{"dont_slow_down_outer_wall", {psGCodeExport}},
{"draft_shield", {psSkirtBrim}},
{"during_print_exhaust_fan_speed", {psGCodeExport}},
{"enable_arc_fitting", {psSkirtBrim}},
{"enable_filament_ramming", {psSkirtBrim, psWipeTower}},
{"enable_long_retraction_when_cut", {psGCodeExport}},
{"enable_overhang_bridge_fan", {psGCodeExport}},
{"enable_pressure_advance", {psGCodeExport}},
{"enable_prime_tower", {psSkirtBrim, psWipeTower}},
{"enable_tower_interface_features", {psSkirtBrim, psWipeTower}},
{"enable_wrapping_detection", {psSkirtBrim, psWipeTower}},
{"eng_plate_temp", {psSkirtBrim, psWipeTower}},
{"eng_plate_temp_initial_layer", {psGCodeExport}},
{"exclude_object", {psGCodeExport}},
{"extruder_ams_count", {psSkirtBrim, psWipeTower}},
{"extruder_clearance_height_to_lid", {psGCodeExport}},
{"extruder_clearance_height_to_rod", {psGCodeExport}},
{"extruder_clearance_radius", {psGCodeExport}},
{"extruder_colour", {psGCodeExport}},
{"extruder_offset", {psGCodeExport}},
{"extrusion_rate_smoothing_external_perimeter_only", {psGCodeExport}},
{"fan_cooling_layer_time", {psGCodeExport}},
{"fan_kickstart", {psGCodeExport}},
{"fan_max_speed", {psGCodeExport}},
{"fan_min_speed", {psGCodeExport}},
{"fan_speedup_overhangs", {psGCodeExport}},
{"fan_speedup_time", {psGCodeExport}},
{"filament_adaptive_volumetric_speed", {psSkirtBrim, psWipeTower}},
{"filament_adhesiveness_category", {psSkirtBrim, psWipeTower}},
{"filament_change_length", {psWipeTower}},
{"filament_colour", {psGCodeExport}},
{"filament_cooling_final_speed", {psSkirtBrim, psWipeTower}},
{"filament_cooling_initial_speed", {psSkirtBrim, psWipeTower}},
{"filament_cooling_moves", {psSkirtBrim, psWipeTower}},
{"filament_cost", {psGCodeExport}},
{"filament_density", {psGCodeExport}},
{"filament_diameter", {psGCodeExport}},
{"filament_end_gcode", {psGCodeExport}},
{"filament_flow_ratio", {psGCodeExport}},
{"filament_is_support", {psWipeTower}},
{"filament_loading_speed", {psSkirtBrim, psWipeTower}},
{"filament_loading_speed_start", {psSkirtBrim, psWipeTower}},
{"filament_map", {psSkirtBrim, psWipeTower}},
{"filament_map_mode", {psSkirtBrim, psWipeTower}},
{"filament_max_volumetric_speed", {psSkirtBrim, psWipeTower}},
{"filament_minimal_purge_on_wipe_tower", {psSkirtBrim, psWipeTower}},
{"filament_multitool_ramming", {psSkirtBrim, psWipeTower}},
{"filament_multitool_ramming_flow", {psSkirtBrim, psWipeTower}},
{"filament_multitool_ramming_volume", {psSkirtBrim, psWipeTower}},
{"filament_notes", {psGCodeExport}},
{"filament_printable", {psWipeTower}},
{"filament_ramming_parameters", {psSkirtBrim, psWipeTower}},
{"filament_soluble", {psWipeTower}},
{"filament_stamping_distance", {psSkirtBrim, psWipeTower}},
{"filament_stamping_loading_speed", {psSkirtBrim, psWipeTower}},
{"filament_start_gcode", {psGCodeExport}},
{"filament_toolchange_delay", {psSkirtBrim, psWipeTower}},
{"filament_tower_interface_pre_extrusion_dist", {psSkirtBrim, psWipeTower}},
{"filament_tower_interface_pre_extrusion_length", {psSkirtBrim, psWipeTower}},
{"filament_tower_interface_print_temp", {psSkirtBrim, psWipeTower}},
{"filament_tower_interface_purge_volume", {psSkirtBrim, psWipeTower}},
{"filament_tower_ironing_area", {psSkirtBrim, psWipeTower}},
{"filament_type", {psSkirtBrim, psWipeTower}},
{"filament_unloading_speed", {psSkirtBrim, psWipeTower}},
{"filament_unloading_speed_start", {psSkirtBrim, psWipeTower}},
{"filename_format", {psGCodeExport}},
{"first_layer_print_sequence", {psSkirtBrim, psWipeTower}},
{"flush_into_infill", {psSkirtBrim, psWipeTower}},
{"flush_into_support", {psSkirtBrim, psWipeTower}},
{"flush_volumes_matrix", {psSkirtBrim, psWipeTower}},
{"full_fan_speed_layer", {psGCodeExport}},
{"gcode_add_line_number", {psGCodeExport}},
{"gcode_comments", {psGCodeExport}},
{"gcode_flavor", {psSkirtBrim, psWipeTower}},
{"gcode_label_objects", {psGCodeExport}},
{"grab_length", {psGCodeExport}},
{"hot_plate_temp", {psSkirtBrim, psWipeTower}},
{"hot_plate_temp_initial_layer", {psGCodeExport}},
{"idle_temperature", {psSkirtBrim, psWipeTower}},
{"independent_support_layer_height", {psWipeTower}},
{"initial_layer_acceleration", {psGCodeExport}},
{"initial_layer_infill_speed", {psSkirtBrim, psWipeTower}},
{"initial_layer_line_width", {psSkirtBrim}},
{"initial_layer_speed", {psSkirtBrim, psWipeTower}},
{"initial_layer_travel_acceleration", {psSkirtBrim, psWipeTower}},
{"initial_layer_travel_jerk", {psSkirtBrim, psWipeTower}},
{"initial_layer_travel_speed", {psSkirtBrim, psWipeTower}},
{"inner_wall_acceleration", {psGCodeExport}},
{"internal_bridge_fan_speed", {psGCodeExport}},
{"internal_solid_infill_acceleration", {psGCodeExport}},
{"ironing_fan_speed", {psGCodeExport}},
{"is_infill_first", {psGCodeExport}},
{"layer_change_gcode", {psGCodeExport}},
{"long_retractions_when_cut", {psGCodeExport}},
{"machine_end_gcode", {psGCodeExport}},
{"machine_start_gcode", {psGCodeExport}},
{"manual_filament_change", {psGCodeExport}},
{"max_layer_height", {psSkirtBrim}},
{"max_travel_detour_distance", {psGCodeExport}},
{"max_volumetric_extrusion_rate_slope", {psGCodeExport}},
{"max_volumetric_extrusion_rate_slope_segment_length", {psGCodeExport}},
{"min_layer_height", {psSkirtBrim}},
{"min_skirt_length", {psSkirtBrim}},
{"nozzle_height", {psGCodeExport}},
{"nozzle_hrc", {psGCodeExport}},
{"nozzle_temperature", {psSkirtBrim, psWipeTower}},
{"nozzle_temperature_initial_layer", {psSkirtBrim, psWipeTower}},
{"nozzle_volume", {psGCodeExport}},
{"ooze_prevention", {psSkirtBrim}},
{"other_layers_print_sequence", {psSkirtBrim, psWipeTower}},
{"other_layers_print_sequence_nums", {psSkirtBrim, psWipeTower}},
{"outer_wall_acceleration", {psGCodeExport}},
{"overhang_fan_speed", {psGCodeExport}},
{"overhang_fan_threshold", {psGCodeExport}},
{"part_cooling_fan_min_pwm", {psGCodeExport}},
{"post_process", {psGCodeExport}},
{"preheat_steps", {psGCodeExport}},
{"preheat_time", {psGCodeExport}},
{"pressure_advance", {psGCodeExport}},
{"prime_tower_brim_width", {psSkirtBrim, psWipeTower}},
{"prime_tower_enable_framework", {psSkirtBrim, psWipeTower}},
{"prime_tower_flat_ironing", {psSkirtBrim, psWipeTower}},
{"prime_tower_skip_points", {psSkirtBrim, psWipeTower}},
{"prime_tower_width", {psSkirtBrim, psWipeTower}},
{"prime_volume", {psSkirtBrim, psWipeTower}},
{"print_order", {psSkirtBrim}},
{"print_sequence", {psSkirtBrim, psWipeTower}},
{"printer_notes", {psGCodeExport}},
{"printing_by_object_gcode", {psGCodeExport}},
{"purge_in_prime_tower", {psSkirtBrim, psWipeTower}},
{"reduce_crossing_wall", {psGCodeExport}},
{"reduce_fan_stop_start_freq", {psGCodeExport}},
{"reduce_infill_retraction", {psGCodeExport}},
{"required_nozzle_HRC", {psGCodeExport}},
{"resolution", {psSkirtBrim}},
{"retract_before_wipe", {psGCodeExport}},
{"retract_length_toolchange", {psGCodeExport}},
{"retract_lift_above", {psGCodeExport}},
{"retract_lift_below", {psGCodeExport}},
{"retract_lift_enforce", {psGCodeExport}},
{"retract_restart_extra", {psGCodeExport}},
{"retract_restart_extra_toolchange", {psGCodeExport}},
{"retract_when_changing_layer", {psGCodeExport}},
{"retraction_distances_when_cut", {psGCodeExport}},
{"retraction_length", {psGCodeExport}},
{"retraction_minimum_travel", {psGCodeExport}},
{"retraction_speed", {psGCodeExport}},
{"role_based_wipe_speed", {psGCodeExport}},
{"seam_gap", {psGCodeExport}},
{"single_extruder_multi_material", {psSkirtBrim, psWipeTower}},
{"single_extruder_multi_material_priming", {psGCodeExport}},
{"single_loop_draft_shield", {psSkirtBrim}},
{"skirt_distance", {psSkirtBrim}},
{"skirt_height", {psSkirtBrim}},
{"skirt_loops", {psSkirtBrim}},
{"skirt_speed", {psSkirtBrim}},
{"skirt_start_angle", {psSkirtBrim}},
{"skirt_type", {psSkirtBrim}},
{"slow_down_for_layer_cooling", {psGCodeExport}},
{"slow_down_layer_time", {psGCodeExport}},
{"slow_down_layers", {psSkirtBrim, psWipeTower}},
{"slow_down_min_speed", {psGCodeExport}},
{"sparse_infill_acceleration", {psGCodeExport}},
{"standby_temperature_delta", {psGCodeExport}},
{"supertack_plate_temp", {psSkirtBrim, psWipeTower}},
{"supertack_plate_temp_initial_layer", {psGCodeExport}},
{"support_material_interface_fan_speed", {psGCodeExport}},
{"support_multi_bed_types", {psSkirtBrim, psWipeTower}},
{"textured_cool_plate_temp", {psSkirtBrim, psWipeTower}},
{"textured_cool_plate_temp_initial_layer", {psGCodeExport}},
{"textured_plate_temp", {psSkirtBrim, psWipeTower}},
{"textured_plate_temp_initial_layer", {psGCodeExport}},
{"thumbnails", {psGCodeExport}},
{"thumbnails_format", {psGCodeExport}},
{"time_lapse_gcode", {psGCodeExport}},
{"tool_change_on_wipe_tower", {psSkirtBrim, psWipeTower}},
{"top_surface_acceleration", {psGCodeExport}},
{"travel_acceleration", {psGCodeExport}},
{"travel_slope", {psGCodeExport}},
{"travel_speed", {psSkirtBrim, psWipeTower}},
{"travel_speed_z", {psSkirtBrim, psWipeTower}},
{"upward_compatible_machine", {psGCodeExport}},
{"use_firmware_retraction", {psGCodeExport}},
{"use_relative_e_distances", {psGCodeExport}},
{"volumetric_speed_coefficients", {psGCodeExport}},
{"wall_sequence", {psSkirtBrim}},
{"wipe", {psGCodeExport}},
{"wipe_distance", {psGCodeExport}},
{"wipe_on_loops", {psGCodeExport}},
{"wipe_speed", {psGCodeExport}},
{"wipe_tower_bridging", {psSkirtBrim, psWipeTower}},
{"wipe_tower_cone_angle", {psSkirtBrim, psWipeTower}},
{"wipe_tower_extra_flow", {psSkirtBrim, psWipeTower}},
{"wipe_tower_extra_rib_length", {psSkirtBrim, psWipeTower}},
{"wipe_tower_extra_spacing", {psSkirtBrim, psWipeTower}},
{"wipe_tower_filament", {psSkirtBrim, psWipeTower}},
{"wipe_tower_fillet_wall", {psSkirtBrim, psWipeTower}},
{"wipe_tower_max_purge_speed", {psSkirtBrim, psWipeTower}},
{"wipe_tower_no_sparse_layers", {psSkirtBrim, psWipeTower}},
{"wipe_tower_rib_width", {psSkirtBrim, psWipeTower}},
{"wipe_tower_rotation_angle", {psSkirtBrim}},
{"wipe_tower_type", {psSkirtBrim, psWipeTower}},
{"wipe_tower_wall_type", {psSkirtBrim, psWipeTower}},
{"wipe_tower_x", {psSkirtBrim}},
{"wipe_tower_y", {psSkirtBrim}},
{"wiping_volumes_extruders", {psSkirtBrim, psWipeTower}},
{"wrapping_detection_gcode", {psGCodeExport}},
{"z_hop", {psGCodeExport}},
{"z_offset", {psSkirtBrim, psWipeTower}},
};
static const std::unordered_map<std::string, std::vector<PrintObjectStep>> s_object_steps_map = {
{"enable_arc_fitting", {posSupportMaterial, posInfill, posPerimeters}},
{"filament_change_length", {posSupportMaterial}},
{"filament_is_support", {posSupportMaterial}},
{"filament_printable", {posSupportMaterial}},
{"filament_shrink", {posSlice}},
{"filament_shrinkage_compensation_z", {posSlice}},
{"filament_soluble", {posSupportMaterial}},
{"independent_support_layer_height", {posSupportMaterial}},
{"initial_layer_line_width", {posSupportMaterial, posInfill, posPerimeters}},
{"initial_layer_print_height", {posSlice}},
{"max_layer_height", {posSupportMaterial, posInfill, posPerimeters}},
{"min_layer_height", {posSupportMaterial, posInfill, posPerimeters}},
{"nozzle_diameter", {posSlice}},
{"precise_z_height", {posSlice}},
{"print_order", {posSupportMaterial, posInfill, posPerimeters}},
{"resolution", {posSupportMaterial, posInfill, posPerimeters, posSlice}},
{"spiral_mode", {posSlice}},
{"wall_sequence", {posSupportMaterial, posInfill, posPerimeters}},
};

View File

@@ -1,61 +0,0 @@
// ===== AUTO-GENERATED by tools/config_codegen.py =====
static const std::vector<std::string> s_extruder_option_keys = {
"default_filament_profile",
"default_nozzle_volume_type",
"deretraction_speed",
"extruder_colour",
"extruder_offset",
"extruder_type",
"long_retractions_when_cut",
"max_layer_height",
"min_layer_height",
"nozzle_diameter",
"nozzle_flush_dataset",
"nozzle_type",
"nozzle_volume",
"retract_before_wipe",
"retract_length_toolchange",
"retract_lift_above",
"retract_lift_below",
"retract_lift_enforce",
"retract_restart_extra",
"retract_restart_extra_toolchange",
"retract_when_changing_layer",
"retraction_distances_when_cut",
"retraction_length",
"retraction_minimum_travel",
"retraction_speed",
"travel_slope",
"wipe",
"wipe_distance",
"z_hop",
"z_hop_types",
};
static const std::vector<std::string> s_filament_option_keys = {
"default_filament_profile",
"deretraction_speed",
"filament_colour",
"filament_diameter",
"long_retractions_when_cut",
"max_layer_height",
"min_layer_height",
"retract_before_wipe",
"retract_length_toolchange",
"retract_lift_above",
"retract_lift_below",
"retract_lift_enforce",
"retract_restart_extra",
"retract_restart_extra_toolchange",
"retract_when_changing_layer",
"retraction_distances_when_cut",
"retraction_length",
"retraction_minimum_travel",
"retraction_speed",
"volumetric_speed_coefficients",
"wipe",
"wipe_distance",
"z_hop",
"z_hop_types",
};

View File

@@ -1,726 +0,0 @@
// ===== AUTO-GENERATED by tools/config_codegen.py =====
static const std::vector<std::string> s_Preset_print_options = {
"accel_to_decel_enable",
"accel_to_decel_factor",
"adaptive_layer_height",
"align_infill_direction_to_model",
"alternate_extra_wall",
"bbl_calib_mark_logo",
"bed_temperature_formula",
"bottom_shell_layers",
"bottom_shell_thickness",
"bottom_solid_infill_flow_ratio",
"bottom_surface_density",
"bottom_surface_pattern",
"bridge_acceleration",
"bridge_angle",
"bridge_density",
"bridge_flow",
"bridge_no_support",
"bridge_speed",
"brim_ears",
"brim_ears_detection_length",
"brim_ears_max_angle",
"brim_flow_ratio",
"brim_object_gap",
"brim_type",
"brim_use_efc_outline",
"brim_width",
"calib_flowrate_topinfill_special_order",
"combine_brims",
"compatible_machine_expression_group",
"compatible_printers",
"compatible_printers_condition",
"compatible_prints",
"compatible_process_expression_group",
"cooling_tube_length",
"cooling_tube_retraction",
"counterbore_hole_bridging",
"curr_bed_type",
"default_acceleration",
"default_bed_type",
"default_filament_profile",
"default_jerk",
"default_junction_deviation",
"default_nozzle_volume_type",
"default_print_profile",
"deretraction_speed",
"detect_narrow_internal_solid_infill",
"detect_overhang_wall",
"detect_thin_wall",
"different_settings_to_system",
"dont_filter_internal_bridges",
"draft_shield",
"elefant_foot_compensation",
"elefant_foot_compensation_layers",
"elefant_foot_layers_density",
"emit_machine_limits_to_gcode",
"enable_arc_fitting",
"enable_extra_bridge_layer",
"enable_filament_dynamic_map",
"enable_filament_ramming",
"enable_long_retraction_when_cut",
"enable_overhang_speed",
"enable_prime_tower",
"enable_support",
"enable_tower_interface_cooldown_during_tower",
"enable_tower_interface_features",
"enable_wrapping_detection",
"enforce_support_layers",
"ensure_vertical_shell_thickness",
"exclude_object",
"extra_loading_move",
"extra_perimeters_on_overhangs",
"extra_solid_infills",
"extruder",
"extruder_ams_count",
"extruder_colour",
"extruder_offset",
"extruder_type",
"extruder_variant_list",
"extrusion_rate_smoothing_external_perimeter_only",
"filament_colour",
"filament_colour_type",
"filament_extruder_id",
"filament_flush_temp",
"filament_ids",
"filament_map",
"filament_map_mode",
"filament_multi_colour",
"filament_ramming_parameters",
"filament_self_index",
"filament_settings_id",
"filename_format",
"fill_multiline",
"filter_out_gap_fill",
"first_layer_flow_ratio",
"first_layer_print_sequence",
"first_layer_sequence_choice",
"flush_into_infill",
"flush_into_objects",
"flush_into_support",
"flush_multiplier",
"flush_volumes_matrix",
"flush_volumes_vector",
"fuzzy_skin",
"fuzzy_skin_first_layer",
"fuzzy_skin_layers_between_ripple_offset",
"fuzzy_skin_mode",
"fuzzy_skin_noise_type",
"fuzzy_skin_octaves",
"fuzzy_skin_persistence",
"fuzzy_skin_point_distance",
"fuzzy_skin_ripple_offset",
"fuzzy_skin_ripples_per_layer",
"fuzzy_skin_scale",
"fuzzy_skin_thickness",
"gap_fill_flow_ratio",
"gap_fill_target",
"gap_infill_speed",
"gcode_add_line_number",
"gcode_comments",
"gcode_label_objects",
"grab_length",
"gyroid_optimized",
"has_filament_switcher",
"has_scarf_joint_seam",
"head_wrap_detect_zone",
"high_current_on_filament_swap",
"hole_to_polyhole",
"hole_to_polyhole_threshold",
"hole_to_polyhole_twisted",
"host_type",
"independent_support_layer_height",
"infill_anchor",
"infill_anchor_max",
"infill_combination",
"infill_combination_max_layer_height",
"infill_direction",
"infill_jerk",
"infill_lock_depth",
"infill_overhang_angle",
"infill_shift_step",
"infill_wall_overlap",
"inherits",
"inherits_group",
"initial_layer_acceleration",
"initial_layer_infill_speed",
"initial_layer_jerk",
"initial_layer_line_width",
"initial_layer_min_bead_width",
"initial_layer_print_height",
"initial_layer_speed",
"initial_layer_travel_acceleration",
"initial_layer_travel_jerk",
"initial_layer_travel_speed",
"inner_wall_acceleration",
"inner_wall_flow_ratio",
"inner_wall_jerk",
"inner_wall_line_width",
"inner_wall_speed",
"input_shaping_damp_x",
"input_shaping_damp_y",
"input_shaping_emit",
"input_shaping_freq_x",
"input_shaping_freq_y",
"input_shaping_type",
"interface_shells",
"interlocking_beam",
"interlocking_beam_layer_count",
"interlocking_beam_width",
"interlocking_boundary_avoidance",
"interlocking_depth",
"interlocking_orientation",
"internal_bridge_angle",
"internal_bridge_density",
"internal_bridge_flow",
"internal_bridge_speed",
"internal_solid_infill_acceleration",
"internal_solid_infill_flow_ratio",
"internal_solid_infill_line_width",
"internal_solid_infill_pattern",
"internal_solid_infill_speed",
"ironing_angle",
"ironing_angle_fixed",
"ironing_expansion",
"ironing_flow",
"ironing_inset",
"ironing_pattern",
"ironing_spacing",
"ironing_speed",
"ironing_type",
"is_infill_first",
"lateral_lattice_angle_1",
"lateral_lattice_angle_2",
"layer_height",
"line_width",
"long_retractions_when_cut",
"machine_load_filament_time",
"machine_max_acceleration_e",
"machine_max_acceleration_extruding",
"machine_max_acceleration_retracting",
"machine_max_acceleration_travel",
"machine_max_acceleration_x",
"machine_max_acceleration_y",
"machine_max_acceleration_z",
"machine_max_jerk_e",
"machine_max_jerk_x",
"machine_max_jerk_y",
"machine_max_jerk_z",
"machine_max_junction_deviation",
"machine_max_speed_e",
"machine_max_speed_x",
"machine_max_speed_y",
"machine_max_speed_z",
"machine_min_extruding_rate",
"machine_min_travel_rate",
"machine_tool_change_time",
"machine_unload_filament_time",
"make_overhang_printable",
"make_overhang_printable_angle",
"make_overhang_printable_hole_size",
"manual_filament_change",
"master_extruder_id",
"max_bridge_length",
"max_layer_height",
"max_resonance_avoidance_speed",
"max_travel_detour_distance",
"max_volumetric_extrusion_rate_slope",
"max_volumetric_extrusion_rate_slope_segment_length",
"min_bead_width",
"min_feature_size",
"min_layer_height",
"min_length_factor",
"min_resonance_avoidance_speed",
"min_skirt_length",
"min_width_top_surface",
"minimum_sparse_infill_area",
"mmu_segmented_region_interlocking_depth",
"mmu_segmented_region_max_width",
"notes",
"nozzle_diameter",
"nozzle_flush_dataset",
"nozzle_height",
"nozzle_volume",
"nozzle_volume_type",
"only_one_wall_first_layer",
"only_one_wall_top",
"ooze_prevention",
"other_layers_print_sequence",
"other_layers_print_sequence_nums",
"other_layers_sequence_choice",
"outer_wall_acceleration",
"outer_wall_flow_ratio",
"outer_wall_jerk",
"outer_wall_line_width",
"outer_wall_speed",
"overhang_1_4_speed",
"overhang_2_4_speed",
"overhang_3_4_speed",
"overhang_4_4_speed",
"overhang_flow_ratio",
"overhang_reverse",
"overhang_reverse_internal_only",
"overhang_reverse_threshold",
"parking_pos_retraction",
"physical_extruder_map",
"post_process",
"precise_outer_wall",
"precise_z_height",
"preheat_steps",
"preheat_time",
"prime_tower_brim_width",
"prime_tower_enable_framework",
"prime_tower_flat_ironing",
"prime_tower_infill_gap",
"prime_tower_skip_points",
"prime_tower_width",
"prime_volume",
"print_compatible_printers",
"print_extruder_id",
"print_extruder_variant",
"print_flow_ratio",
"print_order",
"print_sequence",
"print_settings_id",
"printer_extruder_id",
"printer_extruder_variant",
"printer_model",
"printer_settings_id",
"printer_variant",
"process_change_extrusion_role_gcode",
"purge_in_prime_tower",
"raft_contact_distance",
"raft_expansion",
"raft_first_layer_density",
"raft_first_layer_expansion",
"raft_layers",
"reduce_crossing_wall",
"reduce_infill_retraction",
"resolution",
"resonance_avoidance",
"retract_before_wipe",
"retract_length_toolchange",
"retract_lift_above",
"retract_lift_below",
"retract_lift_enforce",
"retract_restart_extra",
"retract_restart_extra_toolchange",
"retract_when_changing_layer",
"retraction_distances_when_cut",
"retraction_length",
"retraction_minimum_travel",
"retraction_speed",
"role_based_wipe_speed",
"scarf_angle_threshold",
"scarf_joint_flow_ratio",
"scarf_joint_speed",
"scarf_overhang_threshold",
"seam_gap",
"seam_position",
"seam_slope_conditional",
"seam_slope_entire_loop",
"seam_slope_inner_walls",
"seam_slope_min_length",
"seam_slope_start_height",
"seam_slope_steps",
"seam_slope_type",
"set_other_flow_ratios",
"silent_mode",
"single_extruder_multi_material",
"single_extruder_multi_material_priming",
"single_loop_draft_shield",
"skeleton_infill_density",
"skeleton_infill_line_width",
"skin_infill_density",
"skin_infill_depth",
"skin_infill_line_width",
"skirt_distance",
"skirt_height",
"skirt_loops",
"skirt_speed",
"skirt_start_angle",
"skirt_type",
"slice_closing_radius",
"slicing_mode",
"slow_down_layers",
"slowdown_for_curled_perimeters",
"small_area_infill_flow_compensation",
"small_area_infill_flow_compensation_model",
"small_perimeter_speed",
"small_perimeter_threshold",
"solid_infill_direction",
"solid_infill_filament",
"solid_infill_rotate_template",
"spaghetti_detector",
"sparse_infill_acceleration",
"sparse_infill_density",
"sparse_infill_filament",
"sparse_infill_flow_ratio",
"sparse_infill_line_width",
"sparse_infill_pattern",
"sparse_infill_rotate_template",
"sparse_infill_speed",
"spiral_finishing_flow_ratio",
"spiral_mode",
"spiral_mode_max_xy_smoothing",
"spiral_mode_smooth",
"spiral_starting_flow_ratio",
"staggered_inner_seams",
"standby_temperature_delta",
"start_end_points",
"support_angle",
"support_base_pattern",
"support_base_pattern_spacing",
"support_bottom_interface_spacing",
"support_bottom_z_distance",
"support_critical_regions_only",
"support_expansion",
"support_filament",
"support_flow_ratio",
"support_interface_bottom_layers",
"support_interface_filament",
"support_interface_flow_ratio",
"support_interface_loop_pattern",
"support_interface_not_for_body",
"support_interface_pattern",
"support_interface_spacing",
"support_interface_speed",
"support_interface_top_layers",
"support_ironing",
"support_ironing_flow",
"support_ironing_pattern",
"support_ironing_spacing",
"support_line_width",
"support_object_first_layer_gap",
"support_object_skip_flush",
"support_object_xy_distance",
"support_on_build_plate_only",
"support_remove_small_overhang",
"support_speed",
"support_style",
"support_threshold_angle",
"support_threshold_overlap",
"support_top_z_distance",
"support_type",
"symmetric_infill_y_axis",
"thick_bridges",
"thick_internal_bridges",
"thumbnails_format",
"timelapse_type",
"tool_change_on_wipe_tower",
"top_bottom_infill_wall_overlap",
"top_shell_layers",
"top_shell_thickness",
"top_solid_infill_flow_ratio",
"top_surface_acceleration",
"top_surface_density",
"top_surface_jerk",
"top_surface_line_width",
"top_surface_pattern",
"top_surface_speed",
"travel_acceleration",
"travel_jerk",
"travel_slope",
"travel_speed",
"travel_speed_z",
"tree_support_angle_slow",
"tree_support_auto_brim",
"tree_support_branch_angle",
"tree_support_branch_angle_organic",
"tree_support_branch_diameter",
"tree_support_branch_diameter_angle",
"tree_support_branch_diameter_organic",
"tree_support_branch_distance",
"tree_support_branch_distance_organic",
"tree_support_brim_width",
"tree_support_tip_diameter",
"tree_support_top_rate",
"tree_support_wall_count",
"tree_support_with_infill",
"upward_compatible_machine",
"volumetric_speed_coefficients",
"wall_direction",
"wall_distribution_count",
"wall_filament",
"wall_generator",
"wall_loops",
"wall_maximum_deviation",
"wall_maximum_resolution",
"wall_sequence",
"wall_transition_angle",
"wall_transition_filter_deviation",
"wall_transition_length",
"wipe",
"wipe_before_external_loop",
"wipe_distance",
"wipe_on_loops",
"wipe_speed",
"wipe_tower_bridging",
"wipe_tower_cone_angle",
"wipe_tower_extra_flow",
"wipe_tower_extra_rib_length",
"wipe_tower_extra_spacing",
"wipe_tower_filament",
"wipe_tower_fillet_wall",
"wipe_tower_max_purge_speed",
"wipe_tower_no_sparse_layers",
"wipe_tower_rib_width",
"wipe_tower_rotation_angle",
"wipe_tower_type",
"wipe_tower_wall_type",
"wipe_tower_x",
"wipe_tower_y",
"wiping_volumes_extruders",
"wrapping_detection_layers",
"wrapping_exclude_area",
"xy_contour_compensation",
"xy_hole_compensation",
"z_hop",
"z_hop_types",
"zaa_dont_alternate_fill_direction",
"zaa_enabled",
"zaa_min_z",
"zaa_minimize_perimeter_height",
};
static const std::vector<std::string> s_Preset_filament_options = {
"activate_air_filtration",
"activate_air_filtration_during_print",
"activate_air_filtration_on_completion",
"activate_chamber_temp_control",
"adaptive_pressure_advance",
"adaptive_pressure_advance_bridges",
"adaptive_pressure_advance_model",
"adaptive_pressure_advance_overhangs",
"additional_cooling_fan_speed",
"additional_fan_full_speed_layer",
"chamber_temperature",
"close_additional_fan_first_x_layers",
"close_fan_the_first_x_layers",
"compatible_printers",
"compatible_printers_condition",
"compatible_prints",
"compatible_prints_condition",
"complete_print_exhaust_fan_speed",
"cool_plate_temp",
"cool_plate_temp_initial_layer",
"default_filament_colour",
"dont_slow_down_outer_wall",
"during_print_exhaust_fan_speed",
"enable_overhang_bridge_fan",
"enable_pressure_advance",
"eng_plate_temp",
"eng_plate_temp_initial_layer",
"fan_cooling_layer_time",
"fan_max_speed",
"fan_min_speed",
"filament_adaptive_volumetric_speed",
"filament_adhesiveness_category",
"filament_change_extrusion_role_gcode",
"filament_change_length",
"filament_colour",
"filament_cooling_before_tower",
"filament_cooling_final_speed",
"filament_cooling_initial_speed",
"filament_cooling_moves",
"filament_cost",
"filament_density",
"filament_deretraction_speed",
"filament_diameter",
"filament_end_gcode",
"filament_extruder_variant",
"filament_flow_ratio",
"filament_flush_temp",
"filament_flush_volumetric_speed",
"filament_ironing_flow",
"filament_ironing_inset",
"filament_ironing_spacing",
"filament_ironing_speed",
"filament_is_support",
"filament_loading_speed",
"filament_loading_speed_start",
"filament_long_retractions_when_cut",
"filament_max_volumetric_speed",
"filament_minimal_purge_on_wipe_tower",
"filament_multitool_ramming",
"filament_multitool_ramming_flow",
"filament_multitool_ramming_volume",
"filament_notes",
"filament_printable",
"filament_ramming_parameters",
"filament_retract_before_wipe",
"filament_retract_lift_above",
"filament_retract_lift_below",
"filament_retract_lift_enforce",
"filament_retract_restart_extra",
"filament_retract_when_changing_layer",
"filament_retraction_distances_when_cut",
"filament_retraction_length",
"filament_retraction_minimum_travel",
"filament_retraction_speed",
"filament_shrink",
"filament_shrinkage_compensation_z",
"filament_soluble",
"filament_stamping_distance",
"filament_stamping_loading_speed",
"filament_start_gcode",
"filament_toolchange_delay",
"filament_tower_interface_pre_extrusion_dist",
"filament_tower_interface_pre_extrusion_length",
"filament_tower_interface_print_temp",
"filament_tower_interface_purge_volume",
"filament_tower_ironing_area",
"filament_type",
"filament_unloading_speed",
"filament_unloading_speed_start",
"filament_vendor",
"filament_wipe",
"filament_wipe_distance",
"filament_z_hop",
"filament_z_hop_types",
"first_x_layer_fan_speed",
"full_fan_speed_layer",
"hot_plate_temp",
"hot_plate_temp_initial_layer",
"idle_temperature",
"inherits",
"internal_bridge_fan_speed",
"ironing_fan_speed",
"long_retractions_when_ec",
"nozzle_temperature",
"nozzle_temperature_initial_layer",
"nozzle_temperature_range_high",
"nozzle_temperature_range_low",
"overhang_fan_speed",
"overhang_fan_threshold",
"pellet_flow_coefficient",
"pressure_advance",
"reduce_fan_stop_start_freq",
"required_nozzle_HRC",
"retraction_distances_when_ec",
"slow_down_for_layer_cooling",
"slow_down_layer_time",
"slow_down_min_speed",
"supertack_plate_temp",
"supertack_plate_temp_initial_layer",
"support_material_interface_fan_speed",
"temperature_vitrification",
"textured_cool_plate_temp",
"textured_cool_plate_temp_initial_layer",
"textured_plate_temp",
"textured_plate_temp_initial_layer",
"volumetric_speed_coefficients",
};
static const std::vector<std::string> s_Preset_printer_options = {
"adaptive_bed_mesh_margin",
"auxiliary_fan",
"bbl_use_printhost",
"bed_custom_model",
"bed_custom_texture",
"bed_exclude_area",
"bed_mesh_max",
"bed_mesh_min",
"bed_mesh_probe_distance",
"bed_temperature_formula",
"before_layer_change_gcode",
"best_object_pos",
"change_extrusion_role_gcode",
"change_filament_gcode",
"cooling_tube_length",
"cooling_tube_retraction",
"default_bed_type",
"default_nozzle_volume_type",
"default_print_profile",
"disable_m73",
"emit_machine_limits_to_gcode",
"enable_filament_ramming",
"enable_long_retraction_when_cut",
"enable_power_loss_recovery",
"extra_loading_move",
"extruder_clearance_height_to_lid",
"extruder_clearance_height_to_rod",
"extruder_clearance_radius",
"extruder_printable_area",
"extruder_printable_height",
"extruder_type",
"extruder_variant_list",
"fan_kickstart",
"fan_speedup_overhangs",
"fan_speedup_time",
"file_start_gcode",
"gcode_flavor",
"grab_length",
"head_wrap_detect_zone",
"high_current_on_filament_swap",
"host_type",
"inherits",
"layer_change_gcode",
"long_retractions_when_cut",
"machine_end_gcode",
"machine_load_filament_time",
"machine_pause_gcode",
"machine_start_gcode",
"machine_tool_change_time",
"machine_unload_filament_time",
"manual_filament_change",
"master_extruder_id",
"nozzle_flush_dataset",
"nozzle_height",
"nozzle_hrc",
"nozzle_type",
"nozzle_volume",
"parking_pos_retraction",
"part_cooling_fan_min_pwm",
"pellet_modded_printer",
"physical_extruder_map",
"preferred_orientation",
"print_host",
"print_host_webui",
"printable_area",
"printable_height",
"printer_agent",
"printer_extruder_id",
"printer_extruder_variant",
"printer_model",
"printer_notes",
"printer_structure",
"printer_technology",
"printer_variant",
"printhost_apikey",
"printhost_authorization_type",
"printhost_cafile",
"printhost_password",
"printhost_port",
"printhost_ssl_ignore_revoke",
"printhost_user",
"printing_by_object_gcode",
"purge_in_prime_tower",
"retract_lift_enforce",
"retraction_distances_when_cut",
"scan_first_layer",
"silent_mode",
"single_extruder_multi_material",
"support_air_filtration",
"support_chamber_temp_control",
"support_multi_bed_types",
"support_object_skip_flush",
"template_custom_gcode",
"thumbnails",
"thumbnails_format",
"time_cost",
"time_lapse_gcode",
"tool_change_on_wipe_tower",
"travel_slope",
"upward_compatible_machine",
"use_firmware_retraction",
"use_relative_e_distances",
"wipe_tower_type",
"wrapping_detection_gcode",
"wrapping_detection_layers",
"wrapping_exclude_area",
"z_hop_types",
"z_offset",
};

File diff suppressed because it is too large Load Diff

View File

@@ -1,973 +0,0 @@
// ===== AUTO-GENERATED by tools/config_codegen.py from layout.yaml =====
// DO NOT EDIT MANUALLY. Edit layout.yaml and re-run: python tools/run_codegen.py
//
// Included inside namespace Slic3r::GUI in Tab.cpp after validate_custom_gcode_cb
// forward declaration. No namespace wrapper needed here.
namespace { constexpr int gcode_field_height = 15; }
namespace { constexpr int notes_field_height = 25; }
inline void TabPrint_build_quality_layout(TabPrint& tab)
{
PageShp page = tab.add_options_page(L("Quality"), "custom-gcode_quality");
{
auto optgroup = page->new_optgroup(L("Layer height"));
optgroup->append_single_option_line("layer_height");
optgroup->append_single_option_line("initial_layer_print_height");
}
{
auto optgroup = page->new_optgroup(L("Line width"));
optgroup->append_single_option_line("line_width");
optgroup->append_single_option_line("initial_layer_line_width");
optgroup->append_single_option_line("outer_wall_line_width");
optgroup->append_single_option_line("inner_wall_line_width");
optgroup->append_single_option_line("top_surface_line_width");
optgroup->append_single_option_line("sparse_infill_line_width");
optgroup->append_single_option_line("internal_solid_infill_line_width");
optgroup->append_single_option_line("support_line_width");
}
{
auto optgroup = page->new_optgroup(L("Seam"));
optgroup->append_single_option_line("seam_position");
optgroup->append_single_option_line("staggered_inner_seams");
optgroup->append_single_option_line("seam_gap");
optgroup->append_single_option_line("seam_slope_type");
optgroup->append_single_option_line("seam_slope_conditional");
optgroup->append_single_option_line("scarf_angle_threshold");
optgroup->append_single_option_line("scarf_overhang_threshold");
optgroup->append_single_option_line("scarf_joint_speed");
optgroup->append_single_option_line("seam_slope_start_height");
optgroup->append_single_option_line("seam_slope_entire_loop");
optgroup->append_single_option_line("seam_slope_min_length");
optgroup->append_single_option_line("seam_slope_steps");
optgroup->append_single_option_line("scarf_joint_flow_ratio");
optgroup->append_single_option_line("seam_slope_inner_walls");
optgroup->append_single_option_line("role_based_wipe_speed");
optgroup->append_single_option_line("wipe_speed");
optgroup->append_single_option_line("wipe_on_loops");
optgroup->append_single_option_line("wipe_before_external_loop");
}
{
auto optgroup = page->new_optgroup(L("Precision"));
optgroup->append_single_option_line("slice_closing_radius");
optgroup->append_single_option_line("resolution");
optgroup->append_single_option_line("enable_arc_fitting");
optgroup->append_single_option_line("xy_hole_compensation");
optgroup->append_single_option_line("xy_contour_compensation");
optgroup->append_single_option_line("elefant_foot_compensation");
optgroup->append_single_option_line("elefant_foot_layers_density");
optgroup->append_single_option_line("elefant_foot_compensation_layers");
optgroup->append_single_option_line("precise_outer_wall");
optgroup->append_single_option_line("precise_z_height");
optgroup->append_single_option_line("hole_to_polyhole");
optgroup->append_single_option_line("hole_to_polyhole_threshold");
optgroup->append_single_option_line("hole_to_polyhole_twisted");
}
{
auto optgroup = page->new_optgroup(L("Ironing"));
optgroup->append_single_option_line("ironing_type");
optgroup->append_single_option_line("ironing_pattern");
optgroup->append_single_option_line("ironing_flow");
optgroup->append_single_option_line("ironing_spacing");
optgroup->append_single_option_line("ironing_inset");
optgroup->append_single_option_line("ironing_angle");
optgroup->append_single_option_line("ironing_angle_fixed");
}
{
auto optgroup = page->new_optgroup(L("Wall generator"));
optgroup->append_single_option_line("wall_generator");
optgroup->append_single_option_line("wall_transition_angle");
optgroup->append_single_option_line("wall_transition_filter_deviation");
optgroup->append_single_option_line("wall_transition_length");
optgroup->append_single_option_line("wall_distribution_count");
optgroup->append_single_option_line("initial_layer_min_bead_width");
optgroup->append_single_option_line("min_bead_width");
optgroup->append_single_option_line("min_feature_size");
optgroup->append_single_option_line("min_length_factor");
optgroup->append_single_option_line("wall_maximum_resolution");
optgroup->append_single_option_line("wall_maximum_deviation");
}
{
auto optgroup = page->new_optgroup(L("Walls and surfaces"));
optgroup->append_single_option_line("wall_sequence");
optgroup->append_single_option_line("is_infill_first");
optgroup->append_single_option_line("wall_direction");
optgroup->append_single_option_line("print_flow_ratio");
optgroup->append_single_option_line("top_solid_infill_flow_ratio");
optgroup->append_single_option_line("bottom_solid_infill_flow_ratio");
optgroup->append_single_option_line("set_other_flow_ratios");
optgroup->append_single_option_line("first_layer_flow_ratio");
optgroup->append_single_option_line("outer_wall_flow_ratio");
optgroup->append_single_option_line("inner_wall_flow_ratio");
optgroup->append_single_option_line("overhang_flow_ratio");
optgroup->append_single_option_line("sparse_infill_flow_ratio");
optgroup->append_single_option_line("internal_solid_infill_flow_ratio");
optgroup->append_single_option_line("gap_fill_flow_ratio");
optgroup->append_single_option_line("support_flow_ratio");
optgroup->append_single_option_line("support_interface_flow_ratio");
optgroup->append_single_option_line("only_one_wall_first_layer");
optgroup->append_single_option_line("only_one_wall_top");
optgroup->append_single_option_line("min_width_top_surface");
optgroup->append_single_option_line("reduce_crossing_wall");
optgroup->append_single_option_line("max_travel_detour_distance");
optgroup->append_single_option_line("small_area_infill_flow_compensation");
optgroup->append_single_option_line("small_area_infill_flow_compensation_model");
}
{
auto optgroup = page->new_optgroup(L("Bridging"));
optgroup->append_single_option_line("bridge_flow");
optgroup->append_single_option_line("internal_bridge_flow");
optgroup->append_single_option_line("bridge_density");
optgroup->append_single_option_line("internal_bridge_density");
optgroup->append_single_option_line("thick_bridges");
optgroup->append_single_option_line("thick_internal_bridges");
optgroup->append_single_option_line("enable_extra_bridge_layer");
optgroup->append_single_option_line("dont_filter_internal_bridges");
optgroup->append_single_option_line("counterbore_hole_bridging");
}
{
auto optgroup = page->new_optgroup(L("Overhangs"));
optgroup->append_single_option_line("detect_overhang_wall");
optgroup->append_single_option_line("make_overhang_printable");
optgroup->append_single_option_line("make_overhang_printable_angle");
optgroup->append_single_option_line("make_overhang_printable_hole_size");
optgroup->append_single_option_line("extra_perimeters_on_overhangs");
optgroup->append_single_option_line("overhang_reverse");
optgroup->append_single_option_line("overhang_reverse_internal_only");
optgroup->append_single_option_line("overhang_reverse_threshold");
}
}
inline void TabPrint_build_strength_layout(TabPrint& tab)
{
PageShp page = tab.add_options_page(L("Strength"), "custom-gcode_strength");
{
auto optgroup = page->new_optgroup(L("Walls"));
optgroup->append_single_option_line("wall_loops");
optgroup->append_single_option_line("alternate_extra_wall");
optgroup->append_single_option_line("detect_thin_wall");
}
{
auto optgroup = page->new_optgroup(L("Top/bottom shells"));
optgroup->append_single_option_line("top_shell_layers");
optgroup->append_single_option_line("top_shell_thickness");
optgroup->append_single_option_line("top_surface_density");
optgroup->append_single_option_line("top_surface_pattern");
optgroup->append_single_option_line("bottom_shell_layers");
optgroup->append_single_option_line("bottom_shell_thickness");
optgroup->append_single_option_line("bottom_surface_density");
optgroup->append_single_option_line("bottom_surface_pattern");
optgroup->append_single_option_line("top_bottom_infill_wall_overlap");
}
{
auto optgroup = page->new_optgroup(L("Infill"));
optgroup->append_single_option_line("sparse_infill_density");
optgroup->append_single_option_line("fill_multiline");
optgroup->append_single_option_line("sparse_infill_pattern");
optgroup->append_single_option_line("infill_direction");
optgroup->append_single_option_line("sparse_infill_rotate_template");
optgroup->append_single_option_line("skin_infill_density");
optgroup->append_single_option_line("skeleton_infill_density");
optgroup->append_single_option_line("infill_lock_depth");
optgroup->append_single_option_line("skin_infill_depth");
optgroup->append_single_option_line("skin_infill_line_width");
optgroup->append_single_option_line("skeleton_infill_line_width");
optgroup->append_single_option_line("symmetric_infill_y_axis");
optgroup->append_single_option_line("infill_shift_step");
optgroup->append_single_option_line("lateral_lattice_angle_1");
optgroup->append_single_option_line("lateral_lattice_angle_2");
optgroup->append_single_option_line("infill_overhang_angle");
optgroup->append_single_option_line("infill_anchor_max");
optgroup->append_single_option_line("infill_anchor");
optgroup->append_single_option_line("internal_solid_infill_pattern");
optgroup->append_single_option_line("solid_infill_direction");
optgroup->append_single_option_line("solid_infill_rotate_template");
optgroup->append_single_option_line("gap_fill_target");
optgroup->append_single_option_line("filter_out_gap_fill");
optgroup->append_single_option_line("infill_wall_overlap");
}
{
auto optgroup = page->new_optgroup(L("Advanced"));
optgroup->append_single_option_line("align_infill_direction_to_model");
optgroup->append_single_option_line("extra_solid_infills");
optgroup->append_single_option_line("bridge_angle");
optgroup->append_single_option_line("internal_bridge_angle");
optgroup->append_single_option_line("minimum_sparse_infill_area");
optgroup->append_single_option_line("infill_combination");
optgroup->append_single_option_line("infill_combination_max_layer_height");
optgroup->append_single_option_line("detect_narrow_internal_solid_infill");
optgroup->append_single_option_line("ensure_vertical_shell_thickness");
}
}
inline void TabPrint_build_speed_layout(TabPrint& tab)
{
PageShp page = tab.add_options_page(L("Speed"), "custom-gcode_speed");
{
auto optgroup = page->new_optgroup(L("First layer speed"));
optgroup->append_single_option_line("initial_layer_speed");
optgroup->append_single_option_line("initial_layer_infill_speed");
optgroup->append_single_option_line("initial_layer_travel_speed");
optgroup->append_single_option_line("slow_down_layers");
}
{
auto optgroup = page->new_optgroup(L("Other layers speed"));
optgroup->append_single_option_line("outer_wall_speed");
optgroup->append_single_option_line("inner_wall_speed");
optgroup->append_single_option_line("small_perimeter_speed");
optgroup->append_single_option_line("small_perimeter_threshold");
optgroup->append_single_option_line("sparse_infill_speed");
optgroup->append_single_option_line("internal_solid_infill_speed");
optgroup->append_single_option_line("top_surface_speed");
optgroup->append_single_option_line("gap_infill_speed");
optgroup->append_single_option_line("ironing_speed");
optgroup->append_single_option_line("support_speed");
optgroup->append_single_option_line("support_interface_speed");
}
{
auto optgroup = page->new_optgroup(L("Overhang speed"));
optgroup->append_single_option_line("enable_overhang_speed");
optgroup->append_single_option_line("slowdown_for_curled_perimeters");
{
Line line_{optgroup->get_option("overhang_1_4_speed").opt.label, optgroup->get_option("overhang_1_4_speed").opt.tooltip};
line_.append_option(optgroup->get_option("overhang_1_4_speed"));
line_.append_option(optgroup->get_option("overhang_2_4_speed"));
line_.append_option(optgroup->get_option("overhang_3_4_speed"));
line_.append_option(optgroup->get_option("overhang_4_4_speed"));
optgroup->append_line(line_);
}
{
Line line_{optgroup->get_option("bridge_speed").opt.label, optgroup->get_option("bridge_speed").opt.tooltip};
line_.append_option(optgroup->get_option("bridge_speed"));
line_.append_option(optgroup->get_option("internal_bridge_speed"));
optgroup->append_line(line_);
}
}
{
auto optgroup = page->new_optgroup(L("Travel speed"));
optgroup->append_single_option_line("travel_speed");
}
{
auto optgroup = page->new_optgroup(L("Acceleration"));
optgroup->append_single_option_line("default_acceleration");
optgroup->append_single_option_line("outer_wall_acceleration");
optgroup->append_single_option_line("inner_wall_acceleration");
optgroup->append_single_option_line("bridge_acceleration");
optgroup->append_single_option_line("sparse_infill_acceleration");
optgroup->append_single_option_line("internal_solid_infill_acceleration");
optgroup->append_single_option_line("initial_layer_acceleration");
optgroup->append_single_option_line("initial_layer_travel_acceleration");
optgroup->append_single_option_line("top_surface_acceleration");
optgroup->append_single_option_line("travel_acceleration");
optgroup->append_single_option_line("accel_to_decel_enable");
optgroup->append_single_option_line("accel_to_decel_factor");
}
{
auto optgroup = page->new_optgroup(L("Jerk(XY)"));
optgroup->append_single_option_line("default_junction_deviation");
optgroup->append_single_option_line("default_jerk");
optgroup->append_single_option_line("outer_wall_jerk");
optgroup->append_single_option_line("inner_wall_jerk");
optgroup->append_single_option_line("infill_jerk");
optgroup->append_single_option_line("top_surface_jerk");
optgroup->append_single_option_line("initial_layer_jerk");
optgroup->append_single_option_line("initial_layer_travel_jerk");
optgroup->append_single_option_line("travel_jerk");
}
{
auto optgroup = page->new_optgroup(L("Advanced"));
optgroup->append_single_option_line("max_volumetric_extrusion_rate_slope");
optgroup->append_single_option_line("max_volumetric_extrusion_rate_slope_segment_length");
optgroup->append_single_option_line("extrusion_rate_smoothing_external_perimeter_only");
}
}
inline void TabPrint_build_support_layout(TabPrint& tab)
{
PageShp page = tab.add_options_page(L("Support"), "custom-gcode_support");
{
auto optgroup = page->new_optgroup(L("Support"));
optgroup->append_single_option_line("enable_support");
optgroup->append_single_option_line("support_type");
optgroup->append_single_option_line("support_style");
optgroup->append_single_option_line("support_threshold_angle");
optgroup->append_single_option_line("support_threshold_overlap");
optgroup->append_single_option_line("raft_first_layer_density");
optgroup->append_single_option_line("raft_first_layer_expansion");
optgroup->append_single_option_line("support_on_build_plate_only");
optgroup->append_single_option_line("support_critical_regions_only");
optgroup->append_single_option_line("support_remove_small_overhang");
}
{
auto optgroup = page->new_optgroup(L("Raft"));
optgroup->append_single_option_line("raft_layers");
optgroup->append_single_option_line("raft_contact_distance");
}
{
auto optgroup = page->new_optgroup(L("Support filament"));
optgroup->append_single_option_line("support_filament");
optgroup->append_single_option_line("support_interface_filament");
optgroup->append_single_option_line("support_interface_not_for_body");
}
{
auto optgroup = page->new_optgroup(L("Support ironing"));
optgroup->append_single_option_line("support_ironing");
optgroup->append_single_option_line("support_ironing_pattern");
optgroup->append_single_option_line("support_ironing_flow");
optgroup->append_single_option_line("support_ironing_spacing");
}
{
auto optgroup = page->new_optgroup(L("Advanced"));
optgroup->append_single_option_line("support_top_z_distance");
optgroup->append_single_option_line("support_bottom_z_distance");
optgroup->append_single_option_line("tree_support_wall_count");
optgroup->append_single_option_line("support_base_pattern");
optgroup->append_single_option_line("support_base_pattern_spacing");
optgroup->append_single_option_line("support_angle");
optgroup->append_single_option_line("support_interface_top_layers");
optgroup->append_single_option_line("support_interface_bottom_layers");
optgroup->append_single_option_line("support_interface_pattern");
optgroup->append_single_option_line("support_interface_spacing");
optgroup->append_single_option_line("support_bottom_interface_spacing");
optgroup->append_single_option_line("support_expansion");
optgroup->append_single_option_line("support_object_xy_distance");
optgroup->append_single_option_line("support_object_first_layer_gap");
optgroup->append_single_option_line("bridge_no_support");
optgroup->append_single_option_line("max_bridge_length");
optgroup->append_single_option_line("independent_support_layer_height");
}
{
auto optgroup = page->new_optgroup(L("Tree supports"));
optgroup->append_single_option_line("tree_support_tip_diameter");
optgroup->append_single_option_line("tree_support_branch_distance");
optgroup->append_single_option_line("tree_support_branch_distance_organic");
optgroup->append_single_option_line("tree_support_top_rate");
optgroup->append_single_option_line("tree_support_branch_diameter");
optgroup->append_single_option_line("tree_support_branch_diameter_organic");
optgroup->append_single_option_line("tree_support_branch_diameter_angle");
optgroup->append_single_option_line("tree_support_branch_angle");
optgroup->append_single_option_line("tree_support_branch_angle_organic");
optgroup->append_single_option_line("tree_support_angle_slow");
optgroup->append_single_option_line("tree_support_auto_brim");
optgroup->append_single_option_line("tree_support_brim_width");
}
}
inline void TabPrint_build_multimaterial_layout(TabPrint& tab)
{
PageShp page = tab.add_options_page(L("Multimaterial"), "custom-gcode_multi_material");
{
auto optgroup = page->new_optgroup(L("Prime tower"));
optgroup->append_single_option_line("enable_prime_tower");
optgroup->append_single_option_line("prime_tower_skip_points");
optgroup->append_single_option_line("enable_tower_interface_features");
optgroup->append_single_option_line("enable_tower_interface_cooldown_during_tower");
optgroup->append_single_option_line("prime_tower_enable_framework");
optgroup->append_single_option_line("prime_tower_width");
optgroup->append_single_option_line("prime_volume");
optgroup->append_single_option_line("prime_tower_brim_width");
optgroup->append_single_option_line("prime_tower_infill_gap");
optgroup->append_single_option_line("wipe_tower_rotation_angle");
optgroup->append_single_option_line("wipe_tower_bridging");
optgroup->append_single_option_line("wipe_tower_extra_spacing");
optgroup->append_single_option_line("wipe_tower_extra_flow");
optgroup->append_single_option_line("wipe_tower_max_purge_speed");
optgroup->append_single_option_line("wipe_tower_wall_type");
optgroup->append_single_option_line("wipe_tower_cone_angle");
optgroup->append_single_option_line("wipe_tower_extra_rib_length");
optgroup->append_single_option_line("wipe_tower_rib_width");
optgroup->append_single_option_line("wipe_tower_fillet_wall");
optgroup->append_single_option_line("wipe_tower_no_sparse_layers");
optgroup->append_single_option_line("single_extruder_multi_material_priming");
}
{
auto optgroup = page->new_optgroup(L("Filament for Features"));
optgroup->append_single_option_line("wall_filament");
optgroup->append_single_option_line("sparse_infill_filament");
optgroup->append_single_option_line("solid_infill_filament");
optgroup->append_single_option_line("wipe_tower_filament");
}
{
auto optgroup = page->new_optgroup(L("Ooze prevention"));
optgroup->append_single_option_line("ooze_prevention");
optgroup->append_single_option_line("standby_temperature_delta");
optgroup->append_single_option_line("preheat_time");
optgroup->append_single_option_line("preheat_steps");
}
{
auto optgroup = page->new_optgroup(L("Flush options"));
optgroup->append_single_option_line("flush_into_infill");
optgroup->append_single_option_line("flush_into_objects");
optgroup->append_single_option_line("flush_into_support");
}
{
auto optgroup = page->new_optgroup(L("Advanced"));
optgroup->append_single_option_line("interlocking_beam");
optgroup->append_single_option_line("interface_shells");
optgroup->append_single_option_line("mmu_segmented_region_max_width");
optgroup->append_single_option_line("mmu_segmented_region_interlocking_depth");
optgroup->append_single_option_line("interlocking_beam_width");
optgroup->append_single_option_line("interlocking_orientation");
optgroup->append_single_option_line("interlocking_beam_layer_count");
optgroup->append_single_option_line("interlocking_depth");
optgroup->append_single_option_line("interlocking_boundary_avoidance");
}
}
inline void TabPrint_build_others_layout(TabPrint& tab)
{
PageShp page = tab.add_options_page(L("Others"), "custom-gcode_other");
{
auto optgroup = page->new_optgroup(L("Skirt"));
optgroup->append_single_option_line("skirt_loops");
optgroup->append_single_option_line("skirt_type");
optgroup->append_single_option_line("min_skirt_length");
optgroup->append_single_option_line("skirt_distance");
optgroup->append_single_option_line("skirt_start_angle");
optgroup->append_single_option_line("skirt_speed");
optgroup->append_single_option_line("skirt_height");
optgroup->append_single_option_line("draft_shield");
optgroup->append_single_option_line("single_loop_draft_shield");
}
{
auto optgroup = page->new_optgroup(L("Brim"));
optgroup->append_single_option_line("brim_type");
optgroup->append_single_option_line("brim_width");
optgroup->append_single_option_line("brim_object_gap");
optgroup->append_single_option_line("brim_flow_ratio");
optgroup->append_single_option_line("brim_use_efc_outline");
optgroup->append_single_option_line("combine_brims");
optgroup->append_single_option_line("brim_ears_max_angle");
optgroup->append_single_option_line("brim_ears_detection_length");
}
{
auto optgroup = page->new_optgroup(L("Special mode"));
optgroup->append_single_option_line("slicing_mode");
optgroup->append_single_option_line("print_sequence");
optgroup->append_single_option_line("print_order");
optgroup->append_single_option_line("spiral_mode");
optgroup->append_single_option_line("spiral_mode_smooth");
optgroup->append_single_option_line("spiral_mode_max_xy_smoothing");
optgroup->append_single_option_line("spiral_starting_flow_ratio");
optgroup->append_single_option_line("spiral_finishing_flow_ratio");
optgroup->append_single_option_line("timelapse_type");
optgroup->append_single_option_line("enable_wrapping_detection");
}
{
auto optgroup = page->new_optgroup(L("Fuzzy Skin"));
optgroup->append_single_option_line("fuzzy_skin");
optgroup->append_single_option_line("fuzzy_skin_mode");
optgroup->append_single_option_line("fuzzy_skin_noise_type");
optgroup->append_single_option_line("fuzzy_skin_point_distance");
optgroup->append_single_option_line("fuzzy_skin_thickness");
optgroup->append_single_option_line("fuzzy_skin_scale");
optgroup->append_single_option_line("fuzzy_skin_octaves");
optgroup->append_single_option_line("fuzzy_skin_persistence");
optgroup->append_single_option_line("fuzzy_skin_first_layer");
}
{
auto optgroup = page->new_optgroup(L("G-code output"));
optgroup->append_single_option_line("reduce_infill_retraction");
optgroup->append_single_option_line("gcode_add_line_number");
optgroup->append_single_option_line("gcode_comments");
optgroup->append_single_option_line("gcode_label_objects");
optgroup->append_single_option_line("exclude_object");
optgroup->append_single_option_line("filename_format");
}
{
auto optgroup = page->new_optgroup(L("Change extrusion role G-code"));
optgroup->append_single_option_line("process_change_extrusion_role_gcode");
}
{
auto optgroup = page->new_optgroup(L("Post-processing Scripts"));
optgroup->append_single_option_line("post_process");
}
{
auto optgroup = page->new_optgroup(L("Notes"));
optgroup->append_single_option_line("notes");
}
}
inline void TabFilament_build_filament_layout(TabFilament& tab)
{
PageShp page = tab.add_options_page(L("Filament"), "custom-gcode_filament");
{
auto optgroup = page->new_optgroup(L("Basic information"));
optgroup->append_single_option_line("filament_type");
optgroup->append_single_option_line("filament_vendor");
optgroup->append_single_option_line("filament_soluble");
optgroup->append_single_option_line("filament_is_support");
optgroup->append_single_option_line("filament_change_length");
optgroup->append_single_option_line("required_nozzle_HRC");
optgroup->append_single_option_line("default_filament_colour");
optgroup->append_single_option_line("filament_diameter");
optgroup->append_single_option_line("filament_adhesiveness_category");
optgroup->append_single_option_line("filament_density");
optgroup->append_single_option_line("filament_shrink");
optgroup->append_single_option_line("filament_shrinkage_compensation_z");
optgroup->append_single_option_line("filament_cost");
optgroup->append_single_option_line("temperature_vitrification");
optgroup->append_single_option_line("idle_temperature");
{
Line line_{optgroup->get_option("nozzle_temperature_range_low").opt.label, optgroup->get_option("nozzle_temperature_range_low").opt.tooltip};
line_.append_option(optgroup->get_option("nozzle_temperature_range_low"));
line_.append_option(optgroup->get_option("nozzle_temperature_range_high"));
optgroup->append_line(line_);
}
}
{
auto optgroup = page->new_optgroup(L("Flow ratio and Pressure Advance"));
optgroup->append_single_option_line("pellet_flow_coefficient");
optgroup->append_single_option_line("filament_flow_ratio");
optgroup->append_single_option_line("enable_pressure_advance");
optgroup->append_single_option_line("pressure_advance");
optgroup->append_single_option_line("adaptive_pressure_advance");
optgroup->append_single_option_line("adaptive_pressure_advance_overhangs");
optgroup->append_single_option_line("adaptive_pressure_advance_bridges");
optgroup->append_single_option_line("adaptive_pressure_advance_model");
}
{
auto optgroup = page->new_optgroup(L("Print chamber temperature"));
optgroup->append_single_option_line("activate_chamber_temp_control");
optgroup->append_single_option_line("chamber_temperature");
}
{
auto optgroup = page->new_optgroup(L("Print temperature"));
{
Line line_{optgroup->get_option("nozzle_temperature_initial_layer").opt.label, optgroup->get_option("nozzle_temperature_initial_layer").opt.tooltip};
line_.append_option(optgroup->get_option("nozzle_temperature_initial_layer"));
line_.append_option(optgroup->get_option("nozzle_temperature"));
optgroup->append_line(line_);
}
}
{
auto optgroup = page->new_optgroup(L("Bed temperature"));
{
Line line_{optgroup->get_option("supertack_plate_temp_initial_layer").opt.label, optgroup->get_option("supertack_plate_temp_initial_layer").opt.tooltip};
line_.append_option(optgroup->get_option("supertack_plate_temp_initial_layer"));
line_.append_option(optgroup->get_option("supertack_plate_temp"));
optgroup->append_line(line_);
}
{
Line line_{optgroup->get_option("cool_plate_temp_initial_layer").opt.label, optgroup->get_option("cool_plate_temp_initial_layer").opt.tooltip};
line_.append_option(optgroup->get_option("cool_plate_temp_initial_layer"));
line_.append_option(optgroup->get_option("cool_plate_temp"));
optgroup->append_line(line_);
}
{
Line line_{optgroup->get_option("textured_cool_plate_temp_initial_layer").opt.label, optgroup->get_option("textured_cool_plate_temp_initial_layer").opt.tooltip};
line_.append_option(optgroup->get_option("textured_cool_plate_temp_initial_layer"));
line_.append_option(optgroup->get_option("textured_cool_plate_temp"));
optgroup->append_line(line_);
}
{
Line line_{optgroup->get_option("eng_plate_temp_initial_layer").opt.label, optgroup->get_option("eng_plate_temp_initial_layer").opt.tooltip};
line_.append_option(optgroup->get_option("eng_plate_temp_initial_layer"));
line_.append_option(optgroup->get_option("eng_plate_temp"));
optgroup->append_line(line_);
}
{
Line line_{optgroup->get_option("hot_plate_temp_initial_layer").opt.label, optgroup->get_option("hot_plate_temp_initial_layer").opt.tooltip};
line_.append_option(optgroup->get_option("hot_plate_temp_initial_layer"));
line_.append_option(optgroup->get_option("hot_plate_temp"));
optgroup->append_line(line_);
}
{
Line line_{optgroup->get_option("textured_plate_temp_initial_layer").opt.label, optgroup->get_option("textured_plate_temp_initial_layer").opt.tooltip};
line_.append_option(optgroup->get_option("textured_plate_temp_initial_layer"));
line_.append_option(optgroup->get_option("textured_plate_temp"));
optgroup->append_line(line_);
}
}
{
auto optgroup = page->new_optgroup(L("Volumetric speed limitation"));
optgroup->append_single_option_line("filament_adaptive_volumetric_speed");
optgroup->append_single_option_line("filament_max_volumetric_speed");
}
}
inline void TabFilament_build_cooling_layout(TabFilament& tab)
{
PageShp page = tab.add_options_page(L("Cooling"), "custom-gcode_cooling_fan");
{
auto optgroup = page->new_optgroup(L("Cooling for specific layer"));
optgroup->append_single_option_line("close_fan_the_first_x_layers");
optgroup->append_single_option_line("full_fan_speed_layer");
}
{
auto optgroup = page->new_optgroup(L("Part cooling fan"));
{
Line line_{optgroup->get_option("fan_min_speed").opt.label, optgroup->get_option("fan_min_speed").opt.tooltip};
line_.append_option(optgroup->get_option("fan_min_speed"));
line_.append_option(optgroup->get_option("fan_cooling_layer_time"));
optgroup->append_line(line_);
}
{
Line line_{optgroup->get_option("fan_max_speed").opt.label, optgroup->get_option("fan_max_speed").opt.tooltip};
line_.append_option(optgroup->get_option("fan_max_speed"));
line_.append_option(optgroup->get_option("slow_down_layer_time"));
optgroup->append_line(line_);
}
optgroup->append_single_option_line("reduce_fan_stop_start_freq");
optgroup->append_single_option_line("slow_down_for_layer_cooling");
optgroup->append_single_option_line("dont_slow_down_outer_wall");
optgroup->append_single_option_line("slow_down_min_speed");
optgroup->append_single_option_line("enable_overhang_bridge_fan");
optgroup->append_single_option_line("overhang_fan_threshold");
optgroup->append_single_option_line("overhang_fan_speed");
optgroup->append_single_option_line("internal_bridge_fan_speed");
optgroup->append_single_option_line("support_material_interface_fan_speed");
optgroup->append_single_option_line("ironing_fan_speed");
}
{
auto optgroup = page->new_optgroup(L("Auxiliary part cooling fan"));
optgroup->append_single_option_line("additional_cooling_fan_speed");
}
{
auto optgroup = page->new_optgroup(L("Exhaust fan"));
optgroup->append_single_option_line("activate_air_filtration");
{
Line line_{optgroup->get_option("activate_air_filtration_during_print").opt.label, optgroup->get_option("activate_air_filtration_during_print").opt.tooltip};
line_.append_option(optgroup->get_option("activate_air_filtration_during_print"));
line_.append_option(optgroup->get_option("during_print_exhaust_fan_speed"));
optgroup->append_line(line_);
}
{
Line line_{optgroup->get_option("activate_air_filtration_on_completion").opt.label, optgroup->get_option("activate_air_filtration_on_completion").opt.tooltip};
line_.append_option(optgroup->get_option("activate_air_filtration_on_completion"));
line_.append_option(optgroup->get_option("complete_print_exhaust_fan_speed"));
optgroup->append_line(line_);
}
}
}
inline void TabFilament_build_advanced_layout(TabFilament& tab)
{
PageShp page = tab.add_options_page(L("Advanced"), "custom-gcode_advanced");
{
auto optgroup = page->new_optgroup(L("Filament start G-code"));
optgroup->append_single_option_line("filament_start_gcode");
}
{
auto optgroup = page->new_optgroup(L("Change extrusion role G-code"));
optgroup->append_single_option_line("filament_change_extrusion_role_gcode");
}
{
auto optgroup = page->new_optgroup(L("Filament end G-code"));
optgroup->append_single_option_line("filament_end_gcode");
}
}
inline void TabFilament_build_multimaterial_layout(TabFilament& tab)
{
PageShp page = tab.add_options_page(L("Multimaterial"), "custom-gcode_multi_material");
{
auto optgroup = page->new_optgroup(L("Wipe tower parameters"));
optgroup->append_single_option_line("filament_minimal_purge_on_wipe_tower");
optgroup->append_single_option_line("filament_tower_interface_pre_extrusion_dist");
optgroup->append_single_option_line("filament_tower_interface_pre_extrusion_length");
optgroup->append_single_option_line("filament_tower_ironing_area");
optgroup->append_single_option_line("filament_tower_interface_purge_volume");
optgroup->append_single_option_line("filament_tower_interface_print_temp");
}
{
auto optgroup = page->new_optgroup(L("Multi Filament"));
optgroup->append_single_option_line("long_retractions_when_ec");
optgroup->append_single_option_line("retraction_distances_when_ec");
}
{
auto optgroup = page->new_optgroup(L("Tool change parameters with single extruder MM printers"));
optgroup->append_single_option_line("filament_loading_speed_start");
optgroup->append_single_option_line("filament_loading_speed");
optgroup->append_single_option_line("filament_unloading_speed_start");
optgroup->append_single_option_line("filament_unloading_speed");
optgroup->append_single_option_line("filament_toolchange_delay");
optgroup->append_single_option_line("filament_cooling_moves");
optgroup->append_single_option_line("filament_cooling_initial_speed");
optgroup->append_single_option_line("filament_cooling_final_speed");
optgroup->append_single_option_line("filament_stamping_loading_speed");
optgroup->append_single_option_line("filament_stamping_distance");
optgroup->append_single_option_line("filament_ramming_parameters");
}
{
auto optgroup = page->new_optgroup(L("Tool change parameters with multi extruder MM printers"));
optgroup->append_single_option_line("filament_multitool_ramming");
optgroup->append_single_option_line("filament_multitool_ramming_volume");
optgroup->append_single_option_line("filament_multitool_ramming_flow");
}
}
inline void TabFilament_build_dependencies_layout(TabFilament& tab)
{
PageShp page = tab.add_options_page(L("Dependencies"), "advanced");
{
auto optgroup = page->new_optgroup(L("Compatible printers"));
optgroup->append_single_option_line("compatible_printers");
optgroup->append_single_option_line("compatible_printers_condition");
}
{
auto optgroup = page->new_optgroup(L("Compatible process profiles"));
optgroup->append_single_option_line("compatible_prints");
optgroup->append_single_option_line("compatible_prints_condition");
}
}
inline void TabFilament_build_notes_layout(TabFilament& tab)
{
PageShp page = tab.add_options_page(L("Notes"), "custom-gcode_note");
{
auto optgroup = page->new_optgroup(L("Notes"));
optgroup->append_single_option_line("filament_notes");
}
}
inline void TabPrinter_build_basic_information_layout(TabPrinter& tab)
{
PageShp page = tab.add_options_page(L("Basic information"), "custom-gcode_object-info");
{
auto optgroup = page->new_optgroup(L("Printable space"), L"param_printable_space");
tab.layout_hook_printable_space(optgroup.get());
}
{
auto optgroup = page->new_optgroup(L("Advanced"), L"param_advanced");
tab.layout_hook_advanced(optgroup.get());
}
{
auto optgroup = page->new_optgroup(L("Cooling Fan"), L"param_cooling_fan");
tab.layout_hook_cooling_fan(optgroup.get());
}
{
auto optgroup = page->new_optgroup(L("Extruder Clearance"), L"param_extruder_clearance");
optgroup->append_single_option_line("extruder_clearance_radius", "printer_basic_information_extruder_clearance#radius");
optgroup->append_single_option_line("extruder_clearance_height_to_rod", "printer_basic_information_extruder_clearance#height-to-rod");
optgroup->append_single_option_line("extruder_clearance_height_to_lid", "printer_basic_information_extruder_clearance#height-to-lid");
}
{
auto optgroup = page->new_optgroup(L("Adaptive bed mesh"), L"param_adaptive_mesh");
optgroup->append_single_option_line("bed_mesh_min", "printer_basic_information_adaptive_bed_mesh#bed-mesh");
optgroup->append_single_option_line("bed_mesh_max", "printer_basic_information_adaptive_bed_mesh#bed-mesh");
optgroup->append_single_option_line("bed_mesh_probe_distance", "printer_basic_information_adaptive_bed_mesh#probe-point-distance");
optgroup->append_single_option_line("adaptive_bed_mesh_margin", "printer_basic_information_adaptive_bed_mesh#mesh-margin");
}
{
auto optgroup = page->new_optgroup(L("Accessory"), L"param_accessory");
optgroup->append_single_option_line("nozzle_type", "printer_basic_information_accessory#nozzle-type");
optgroup->append_single_option_line("nozzle_hrc", "printer_basic_information_accessory#nozzle-hrc");
optgroup->append_single_option_line("auxiliary_fan", "printer_basic_information_accessory#auxiliary-part-cooling-fan");
optgroup->append_single_option_line("support_chamber_temp_control", "printer_basic_information_accessory#support-controlling-chamber-temperature");
optgroup->append_single_option_line("support_air_filtration", "printer_basic_information_accessory#support-air-filtration");
}
}
inline void TabPrinter_build_machine_g_code_layout(TabPrinter& tab)
{
PageShp page = tab.add_options_page(L("Machine G-code"), "custom-gcode_gcode");
{
auto optgroup = page->new_optgroup(L("File header G-code"), L"param_gcode", 0);
optgroup->m_on_change = [&tab, &optgroup_title = optgroup->title](const t_config_option_key& opt_key, const boost::any& value) {
validate_custom_gcode_cb(&tab, optgroup_title, opt_key, value);
};
optgroup->edit_custom_gcode = [&tab](const t_config_option_key& opt_key) { tab.edit_custom_gcode(opt_key); };
{
Option option = optgroup->get_option("file_start_gcode");
option.opt.full_width = true;
option.opt.is_code = true;
option.opt.height = gcode_field_height;
optgroup->append_single_option_line(option);
}
}
{
auto optgroup = page->new_optgroup(L("Machine start G-code"), L"param_gcode", 0);
optgroup->m_on_change = [&tab, &optgroup_title = optgroup->title](const t_config_option_key& opt_key, const boost::any& value) {
validate_custom_gcode_cb(&tab, optgroup_title, opt_key, value);
};
optgroup->edit_custom_gcode = [&tab](const t_config_option_key& opt_key) { tab.edit_custom_gcode(opt_key); };
{
Option option = optgroup->get_option("machine_start_gcode");
option.opt.full_width = true;
option.opt.is_code = true;
option.opt.height = gcode_field_height;
optgroup->append_single_option_line(option, "printer_machine_gcode#machine-start-g-code");
}
}
{
auto optgroup = page->new_optgroup(L("Machine end G-code"), L"param_gcode", 0);
optgroup->m_on_change = [&tab, &optgroup_title = optgroup->title](const t_config_option_key& opt_key, const boost::any& value) {
validate_custom_gcode_cb(&tab, optgroup_title, opt_key, value);
};
optgroup->edit_custom_gcode = [&tab](const t_config_option_key& opt_key) { tab.edit_custom_gcode(opt_key); };
{
Option option = optgroup->get_option("machine_end_gcode");
option.opt.full_width = true;
option.opt.is_code = true;
option.opt.height = gcode_field_height;
optgroup->append_single_option_line(option, "printer_machine_gcode#machine-end-g-code");
}
}
{
auto optgroup = page->new_optgroup(L("Printing by object G-code"), L"param_gcode", 0);
optgroup->m_on_change = [&tab, &optgroup_title = optgroup->title](const t_config_option_key& opt_key, const boost::any& value) {
validate_custom_gcode_cb(&tab, optgroup_title, opt_key, value);
};
optgroup->edit_custom_gcode = [&tab](const t_config_option_key& opt_key) { tab.edit_custom_gcode(opt_key); };
{
Option option = optgroup->get_option("printing_by_object_gcode");
option.opt.full_width = true;
option.opt.is_code = true;
option.opt.height = gcode_field_height;
optgroup->append_single_option_line(option, "printer_machine_gcode#between-object-g-code");
}
}
{
auto optgroup = page->new_optgroup(L("Before layer change G-code"), L"param_gcode", 0);
optgroup->m_on_change = [&tab, &optgroup_title = optgroup->title](const t_config_option_key& opt_key, const boost::any& value) {
validate_custom_gcode_cb(&tab, optgroup_title, opt_key, value);
};
optgroup->edit_custom_gcode = [&tab](const t_config_option_key& opt_key) { tab.edit_custom_gcode(opt_key); };
{
Option option = optgroup->get_option("before_layer_change_gcode");
option.opt.full_width = true;
option.opt.is_code = true;
option.opt.height = gcode_field_height;
optgroup->append_single_option_line(option, "printer_machine_gcode#before-layer-change-g-code");
}
}
{
auto optgroup = page->new_optgroup(L("Layer change G-code"), L"param_gcode", 0);
optgroup->m_on_change = [&tab, &optgroup_title = optgroup->title](const t_config_option_key& opt_key, const boost::any& value) {
validate_custom_gcode_cb(&tab, optgroup_title, opt_key, value);
};
optgroup->edit_custom_gcode = [&tab](const t_config_option_key& opt_key) { tab.edit_custom_gcode(opt_key); };
{
Option option = optgroup->get_option("layer_change_gcode");
option.opt.full_width = true;
option.opt.is_code = true;
option.opt.height = gcode_field_height;
optgroup->append_single_option_line(option, "printer_machine_gcode#after-layer-change-g-code");
}
}
{
auto optgroup = page->new_optgroup(L("Timelapse G-code"), L"param_gcode", 0);
optgroup->m_on_change = [&tab, &optgroup_title = optgroup->title](const t_config_option_key& opt_key, const boost::any& value) {
validate_custom_gcode_cb(&tab, optgroup_title, opt_key, value);
};
optgroup->edit_custom_gcode = [&tab](const t_config_option_key& opt_key) { tab.edit_custom_gcode(opt_key); };
{
Option option = optgroup->get_option("time_lapse_gcode");
option.opt.full_width = true;
option.opt.is_code = true;
option.opt.height = gcode_field_height;
optgroup->append_single_option_line(option, "printer_machine_gcode#time-lapse-g-code");
}
}
{
auto optgroup = page->new_optgroup(L("Clumping Detection G-code"), L"param_gcode", 0);
optgroup->m_on_change = [&tab, &optgroup_title = optgroup->title](const t_config_option_key& opt_key, const boost::any& value) {
validate_custom_gcode_cb(&tab, optgroup_title, opt_key, value);
};
optgroup->edit_custom_gcode = [&tab](const t_config_option_key& opt_key) { tab.edit_custom_gcode(opt_key); };
{
Option option = optgroup->get_option("wrapping_detection_gcode");
option.opt.full_width = true;
option.opt.is_code = true;
option.opt.height = gcode_field_height;
optgroup->append_single_option_line(option, "printer_machine_gcode#clumping-detection-g-code");
}
}
{
auto optgroup = page->new_optgroup(L("Change filament G-code"), L"param_gcode", 0);
optgroup->m_on_change = [&tab, &optgroup_title = optgroup->title](const t_config_option_key& opt_key, const boost::any& value) {
validate_custom_gcode_cb(&tab, optgroup_title, opt_key, value);
};
optgroup->edit_custom_gcode = [&tab](const t_config_option_key& opt_key) { tab.edit_custom_gcode(opt_key); };
{
Option option = optgroup->get_option("change_filament_gcode");
option.opt.full_width = true;
option.opt.is_code = true;
option.opt.height = gcode_field_height;
optgroup->append_single_option_line(option, "printer_machine_gcode#change-filament-g-code");
}
}
{
auto optgroup = page->new_optgroup(L("Change extrusion role G-code"), L"param_gcode", 0);
optgroup->m_on_change = [&tab, &optgroup_title = optgroup->title](const t_config_option_key& opt_key, const boost::any& value) {
validate_custom_gcode_cb(&tab, optgroup_title, opt_key, value);
};
optgroup->edit_custom_gcode = [&tab](const t_config_option_key& opt_key) { tab.edit_custom_gcode(opt_key); };
{
Option option = optgroup->get_option("change_extrusion_role_gcode");
option.opt.full_width = true;
option.opt.is_code = true;
option.opt.height = gcode_field_height;
optgroup->append_single_option_line(option, "printer_machine_gcode#change-extrusion-role-g-code");
}
}
{
auto optgroup = page->new_optgroup(L("Pause G-code"), L"param_gcode", 0);
optgroup->m_on_change = [&tab, &optgroup_title = optgroup->title](const t_config_option_key& opt_key, const boost::any& value) {
validate_custom_gcode_cb(&tab, optgroup_title, opt_key, value);
};
optgroup->edit_custom_gcode = [&tab](const t_config_option_key& opt_key) { tab.edit_custom_gcode(opt_key); };
{
Option option = optgroup->get_option("machine_pause_gcode");
option.opt.full_width = true;
option.opt.is_code = true;
option.opt.height = gcode_field_height;
optgroup->append_single_option_line(option, "printer_machine_gcode#pause-g-code");
}
}
{
auto optgroup = page->new_optgroup(L("Template Custom G-code"), L"param_gcode", 0);
optgroup->m_on_change = [&tab, &optgroup_title = optgroup->title](const t_config_option_key& opt_key, const boost::any& value) {
validate_custom_gcode_cb(&tab, optgroup_title, opt_key, value);
};
optgroup->edit_custom_gcode = [&tab](const t_config_option_key& opt_key) { tab.edit_custom_gcode(opt_key); };
{
Option option = optgroup->get_option("template_custom_gcode");
option.opt.full_width = true;
option.opt.is_code = true;
option.opt.height = gcode_field_height;
optgroup->append_single_option_line(option, "printer_machine_gcode#template-custom-g-code");
}
}
}
inline void TabPrinter_build_notes_layout(TabPrinter& tab)
{
PageShp page = tab.add_options_page(L("Notes"), "custom-gcode_note");
{
auto optgroup = page->new_optgroup(L("Notes"), L"note");
optgroup->append_single_option_line("printer_notes");
}
}
// ── Aggregate wrappers (backward-compatible with Tab.cpp call sites) ──
inline void TabPrint_build_layout(TabPrint& tab)
{
TabPrint_build_quality_layout(tab);
TabPrint_build_strength_layout(tab);
TabPrint_build_speed_layout(tab);
TabPrint_build_support_layout(tab);
TabPrint_build_multimaterial_layout(tab);
TabPrint_build_others_layout(tab);
}
inline void TabFilament_build_main_layout(TabFilament& tab)
{
TabFilament_build_filament_layout(tab);
TabFilament_build_cooling_layout(tab);
TabFilament_build_multimaterial_layout(tab);
}
inline void TabPrinter_build_basic_info_layout(TabPrinter& tab)
{
TabPrinter_build_basic_information_layout(tab);
}
inline void TabPrinter_build_gcode_layout(TabPrinter& tab)
{
TabPrinter_build_machine_g_code_layout(tab);
TabPrinter_build_notes_layout(tab);
}