@@ -2406,7 +2406,7 @@ void TabPrint::build()
page = add_options_page ( L ( " Strength " ) , " custom-gcode_strength " ) ; // ORCA: icon only visible on placeholders
page = add_options_page ( L ( " Strength " ) , " custom-gcode_strength " ) ; // ORCA: icon only visible on placeholders
optgroup = page - > new_optgroup ( L ( " Walls " ) , L " param_wall " ) ;
optgroup = page - > new_optgroup ( L ( " Walls " ) , L " param_wall " ) ;
optgroup - > append_single_option_line ( " wall_loops " , " strength_settings_walls#wall-loops " ) ;
optgroup - > append_single_option_line ( " wall_loops " , " strength_settings_walls#wall-loops " ) ;
optgroup - > append_single_option_line ( " alternate_extra_wall " , " strength_settings_walls#alternate-extra-wall " ) ;
optgroup - > append_single_option_line ( " alternate_extra_wall " , " strength_settings_walls#alternate-extra-wall " ) ;
optgroup - > append_single_option_line ( " detect_thin_wall " , " strength_settings_walls#detect-thin-wall " ) ;
optgroup - > append_single_option_line ( " detect_thin_wall " , " strength_settings_walls#detect-thin-wall " ) ;
@@ -2461,7 +2461,7 @@ void TabPrint::build()
page = add_options_page ( L ( " Speed " ) , " custom-gcode_speed " ) ; // ORCA: icon only visible on placeholders
page = add_options_page ( L ( " Speed " ) , " custom-gcode_speed " ) ; // ORCA: icon only visible on placeholders
optgroup = page - > new_optgroup ( L ( " Initial layer speed " ) , L " param_speed_first " , 15 ) ;
optgroup = page - > new_optgroup ( L ( " Initial layer speed " ) , L " param_speed_first " , 15 ) ;
optgroup - > append_single_option_line ( " initial_layer_speed " , " speed_settings_initial_layer_speed#initial-layer " ) ;
optgroup - > append_single_option_line ( " initial_layer_speed " , " speed_settings_initial_layer_speed#initial-layer " ) ;
optgroup - > append_single_option_line ( " initial_layer_infill_speed " , " speed_settings_initial_layer_speed#initial-layer-infill " ) ;
optgroup - > append_single_option_line ( " initial_layer_infill_speed " , " speed_settings_initial_layer_speed#initial-layer-infill " ) ;
optgroup - > append_single_option_line ( " initial_layer_travel_speed " , " speed_settings_initial_layer_speed#initial-layer-travel-speed " ) ;
optgroup - > append_single_option_line ( " initial_layer_travel_speed " , " speed_settings_initial_layer_speed#initial-layer-travel-speed " ) ;
optgroup - > append_single_option_line ( " slow_down_layers " , " speed_settings_initial_layer_speed#number-of-slow-layers " ) ;
optgroup - > append_single_option_line ( " slow_down_layers " , " speed_settings_initial_layer_speed#number-of-slow-layers " ) ;
@@ -2527,7 +2527,7 @@ void TabPrint::build()
page = add_options_page ( L ( " Support " ) , " custom-gcode_support " ) ; // ORCA: icon only visible on placeholders
page = add_options_page ( L ( " Support " ) , " custom-gcode_support " ) ; // ORCA: icon only visible on placeholders
optgroup = page - > new_optgroup ( L ( " Support " ) , L " param_support " ) ;
optgroup = page - > new_optgroup ( L ( " Support " ) , L " param_support " ) ;
optgroup - > append_single_option_line ( " enable_support " , " support_settings_support " ) ;
optgroup - > append_single_option_line ( " enable_support " , " support_settings_support " ) ;
optgroup - > append_single_option_line ( " support_type " , " support_settings_support#type " ) ;
optgroup - > append_single_option_line ( " support_type " , " support_settings_support#type " ) ;
optgroup - > append_single_option_line ( " support_style " , " support_settings_support#style " ) ;
optgroup - > append_single_option_line ( " support_style " , " support_settings_support#style " ) ;
optgroup - > append_single_option_line ( " support_threshold_angle " , " support_settings_support#threshold-angle " ) ;
optgroup - > append_single_option_line ( " support_threshold_angle " , " support_settings_support#threshold-angle " ) ;
@@ -2641,9 +2641,9 @@ void TabPrint::build()
optgroup - > append_single_option_line ( " interlocking_depth " , " multimaterial_settings_advanced#interlocking-depth " ) ;
optgroup - > append_single_option_line ( " interlocking_depth " , " multimaterial_settings_advanced#interlocking-depth " ) ;
optgroup - > append_single_option_line ( " interlocking_boundary_avoidance " , " multimaterial_settings_advanced#interlocking-boundary-avoidance " ) ;
optgroup - > append_single_option_line ( " interlocking_boundary_avoidance " , " multimaterial_settings_advanced#interlocking-boundary-avoidance " ) ;
page = add_options_page ( L ( " Others " ) , " custom-gcode_other " ) ; // ORCA: icon only visible on placeholders
page = add_options_page ( L ( " Others " ) , " custom-gcode_other " ) ; // ORCA: icon only visible on placeholders
optgroup = page - > new_optgroup ( L ( " Skirt " ) , L " param_skirt " ) ;
optgroup = page - > new_optgroup ( L ( " Skirt " ) , L " param_skirt " ) ;
optgroup - > append_single_option_line ( " skirt_loops " , " others_settings_skirt#loops " ) ;
optgroup - > append_single_option_line ( " skirt_loops " , " others_settings_skirt#loops " ) ;
optgroup - > append_single_option_line ( " skirt_type " , " others_settings_skirt#type " ) ;
optgroup - > append_single_option_line ( " skirt_type " , " others_settings_skirt#type " ) ;
optgroup - > append_single_option_line ( " min_skirt_length " , " others_settings_skirt#minimum-extrusion-length " ) ;
optgroup - > append_single_option_line ( " min_skirt_length " , " others_settings_skirt#minimum-extrusion-length " ) ;
optgroup - > append_single_option_line ( " skirt_distance " , " others_settings_skirt#distance " ) ;
optgroup - > append_single_option_line ( " skirt_distance " , " others_settings_skirt#distance " ) ;
@@ -3821,26 +3821,26 @@ void TabFilament::build()
auto page = add_options_page ( L ( " Filament " ) , " custom-gcode_filament " ) ; // ORCA: icon only visible on placeholders
auto page = add_options_page ( L ( " Filament " ) , " custom-gcode_filament " ) ; // ORCA: icon only visible on placeholders
//BBS
//BBS
auto optgroup = page - > new_optgroup ( L ( " Basic information " ) , L " param_information " ) ;
auto optgroup = page - > new_optgroup ( L ( " Basic information " ) , L " param_information " ) ;
optgroup - > append_single_option_line ( " filament_type " ) ; // ORCA use same width with other elements
optgroup - > append_single_option_line ( " filament_type " , " material_basic_information#type " ); // ORCA use same width with other elements
optgroup - > append_single_option_line ( " filament_vendor " ) ;
optgroup - > append_single_option_line ( " filament_vendor " , " material_basic_information#vendor " );
optgroup - > append_single_option_line ( " filament_soluble " ) ;
optgroup - > append_single_option_line ( " filament_soluble " , " material_basic_information#soluble-material " );
// BBS
// BBS
optgroup - > append_single_option_line ( " filament_is_support " ) ;
optgroup - > append_single_option_line ( " filament_is_support " , " material_basic_information#support-material " );
optgroup - > append_single_option_line ( " filament_change_length " ) ;
optgroup - > append_single_option_line ( " filament_change_length " , " material_basic_information#filament-ramming-length " );
//optgroup->append_single_option_line("filament_colour");
//optgroup->append_single_option_line("filament_colour");
optgroup - > append_single_option_line ( " required_nozzle_HRC " ) ;
optgroup - > append_single_option_line ( " required_nozzle_HRC " , " material_basic_information#required-nozzle-hrc " );
optgroup - > append_single_option_line ( " default_filament_colour " ) ;
optgroup - > append_single_option_line ( " default_filament_colour " , " material_basic_information#default-color " );
optgroup - > append_single_option_line ( " filament_diameter " ) ;
optgroup - > append_single_option_line ( " filament_diameter " , " material_basic_information#diameter " );
optgroup - > append_single_option_line ( " filament_adhesiveness_category " ) ;
optgroup - > append_single_option_line ( " filament_adhesiveness_category " , " material_basic_information#adhesiveness-category " );
optgroup - > append_single_option_line ( " filament_density " ) ;
optgroup - > append_single_option_line ( " filament_density " , " material_basic_information#density " );
optgroup - > append_single_option_line ( " filament_shrink " ) ;
optgroup - > append_single_option_line ( " filament_shrink " , " material_basic_information#shrinkage-xy " );
optgroup - > append_single_option_line ( " filament_shrinkage_compensation_z " ) ;
optgroup - > append_single_option_line ( " filament_shrinkage_compensation_z " , " material_basic_information#shrinkage-z " );
optgroup - > append_single_option_line ( " filament_cost " ) ;
optgroup - > append_single_option_line ( " filament_cost " , " material_basic_information#price " );
//BBS
//BBS
optgroup - > append_single_option_line ( " temperature_vitrification " ) ;
optgroup - > append_single_option_line ( " temperature_vitrification " , " material_basic_information#softening-temperature " );
optgroup - > append_single_option_line ( " idle_temperature " ) ;
optgroup - > append_single_option_line ( " idle_temperature " , " material_basic_information#idle-temperature " );
Line line = { L ( " Recommended nozzle temperature " ) , L ( " Recommended nozzle temperature range of this filament. 0 means no set " ) } ;
Line line = { L ( " Recommended nozzle temperature " ) , L ( " Recommended nozzle temperature range of this filament. 0 means no set " ) } ;
line . append_option ( optgroup - > get_option ( " nozzle_temperature_range_low " ) ) ;
line . append_option ( optgroup - > get_option ( " nozzle_temperature_range_low " ) ) ;
line . append_option ( optgroup - > get_option ( " nozzle_temperature_range_high " ) ) ;
line . append_option ( optgroup - > get_option ( " nozzle_temperature_range_high " ) ) ;
@@ -3858,16 +3858,16 @@ void TabFilament::build()
// Orca: New section to focus on flow rate and PA to declutter general section
// Orca: New section to focus on flow rate and PA to declutter general section
optgroup = page - > new_optgroup ( L ( " Flow ratio and Pressure Advance " ) , L " param_flow_ratio_and_pressure_advance " ) ;
optgroup = page - > new_optgroup ( L ( " Flow ratio and Pressure Advance " ) , L " param_flow_ratio_and_pressure_advance " ) ;
optgroup - > append_single_option_line ( " pellet_flow_coefficient " , " pellet-flow-coefficient " ) ;
optgroup - > append_single_option_line ( " pellet_flow_coefficient " , " printer_basic_information_advanced#pellet-modded-printer " ) ;
optgroup - > append_single_option_line ( " filament_flow_ratio " , " " , 0 ) ;
optgroup - > append_single_option_line ( " filament_flow_ratio " , " material_flow_ratio_and_pressure_advance#flow-ratio ", 0 ) ;
optgroup - > append_single_option_line ( " enable_pressure_advance " , " pressure- advance-calib " ) ;
optgroup - > append_single_option_line ( " enable_pressure_advance " , " material_flow_ratio_and_ pressure_ advance#pressure-advance " ) ;
optgroup - > append_single_option_line ( " pressure_advance " , " pressure- advance-calib " ) ;
optgroup - > append_single_option_line ( " pressure_advance " , " material_flow_ratio_and_ pressure_ advance#pressure-advance " ) ;
// Orca: adaptive pressure advance and calibration model
// Orca: adaptive pressure advance and calibration model
optgroup - > append_single_option_line ( " adaptive_pressure_advance " , " adaptive-pressure-advance-calib " ) ;
optgroup - > append_single_option_line ( " adaptive_pressure_advance " , " material_flow_ratio_and_pressure_advance#enable- adaptive-pressure-advance-beta " ) ;
optgroup - > append_single_option_line ( " adaptive_pressure_advance_overhangs " , " adaptive-pressure-advance-calib " ) ;
optgroup - > append_single_option_line ( " adaptive_pressure_advance_overhangs " , " material_flow_ratio_and_pressure_advance##enable- adaptive-pressure-advance-for-overhangs-beta " ) ;
optgroup - > append_single_option_line ( " adaptive_pressure_advance_bridges " , " adaptive- pressure-advance-calib " ) ;
optgroup - > append_single_option_line ( " adaptive_pressure_advance_bridges " , " material_flow_ratio_and_pressure_advance# pressure-advance-for-bridges " ) ;
Option option = optgroup - > get_option ( " adaptive_pressure_advance_model " ) ;
Option option = optgroup - > get_option ( " adaptive_pressure_advance_model " ) ;
option . opt . full_width = true ;
option . opt . full_width = true ;
@@ -3877,11 +3877,12 @@ void TabFilament::build()
//
//
optgroup = page - > new_optgroup ( L ( " Print chamber temperature " ) , L " param_chamber_temp " ) ;
optgroup = page - > new_optgroup ( L ( " Print chamber temperature " ) , L " param_chamber_temp " ) ;
optgroup - > append_single_option_line ( " chamber_temperature " , " chamber-temperature " ) ;
optgroup - > append_single_option_line ( " chamber_temperature " , " material_temperatures#print- chamber-temperature" ) ;
optgroup - > append_single_option_line ( " activate_chamber_temp_control " , " chamber-temperature " ) ;
optgroup - > append_single_option_line ( " activate_chamber_temp_control " , " material_temperatures#print- chamber-temperature" ) ;
optgroup = page - > new_optgroup ( L ( " Print temperature " ) , L " param_extruder_temp " ) ;
optgroup = page - > new_optgroup ( L ( " Print temperature " ) , L " param_extruder_temp " ) ;
line = { L ( " Nozzle " ) , L ( " Nozzle temperature when printing " ) } ;
line = { L ( " Nozzle " ) , L ( " Nozzle temperature when printing " ) } ;
line . label_path = " material_temperatures#nozzle " ;
line . append_option ( optgroup - > get_option ( " nozzle_temperature_initial_layer " ) ) ;
line . append_option ( optgroup - > get_option ( " nozzle_temperature_initial_layer " ) ) ;
line . append_option ( optgroup - > get_option ( " nozzle_temperature " ) ) ;
line . append_option ( optgroup - > get_option ( " nozzle_temperature " ) ) ;
optgroup - > append_line ( line ) ;
optgroup - > append_line ( line ) ;
@@ -3889,36 +3890,42 @@ void TabFilament::build()
optgroup = page - > new_optgroup ( L ( " Bed temperature " ) , L " param_bed_temp " ) ;
optgroup = page - > new_optgroup ( L ( " Bed temperature " ) , L " param_bed_temp " ) ;
line = { L ( " Cool Plate (SuperTack) " ) ,
line = { L ( " Cool Plate (SuperTack) " ) ,
L ( " Bed temperature when the Cool Plate SuperTack is installed. A value of 0 means the filament does not support printing on the Cool Plate SuperTack. " ) } ;
L ( " Bed temperature when the Cool Plate SuperTack is installed. A value of 0 means the filament does not support printing on the Cool Plate SuperTack. " ) } ;
line . label_path = " material_temperatures#bed " ;
line . append_option ( optgroup - > get_option ( " supertack_plate_temp_initial_layer " ) ) ;
line . append_option ( optgroup - > get_option ( " supertack_plate_temp_initial_layer " ) ) ;
line . append_option ( optgroup - > get_option ( " supertack_plate_temp " ) ) ;
line . append_option ( optgroup - > get_option ( " supertack_plate_temp " ) ) ;
optgroup - > append_line ( line ) ;
optgroup - > append_line ( line ) ;
line = { L ( " Cool Plate " ) ,
line = { L ( " Cool Plate " ) ,
L ( " Bed temperature when the Cool Plate is installed. A value of 0 means the filament does not support printing on the Cool Plate. " ) } ;
L ( " Bed temperature when the Cool Plate is installed. A value of 0 means the filament does not support printing on the Cool Plate. " ) } ;
line . label_path = " material_temperatures#bed " ;
line . append_option ( optgroup - > get_option ( " cool_plate_temp_initial_layer " ) ) ;
line . append_option ( optgroup - > get_option ( " cool_plate_temp_initial_layer " ) ) ;
line . append_option ( optgroup - > get_option ( " cool_plate_temp " ) ) ;
line . append_option ( optgroup - > get_option ( " cool_plate_temp " ) ) ;
optgroup - > append_line ( line ) ;
optgroup - > append_line ( line ) ;
line = { L ( " Textured Cool Plate " ) ,
line = { L ( " Textured Cool Plate " ) ,
L ( " Bed temperature when the Textured Cool Plate is installed. A value of 0 means the filament does not support printing on the Textured Cool Plate. " ) } ;
L ( " Bed temperature when the Textured Cool Plate is installed. A value of 0 means the filament does not support printing on the Textured Cool Plate. " ) } ;
line . label_path = " material_temperatures#bed " ;
line . append_option ( optgroup - > get_option ( " textured_cool_plate_temp_initial_layer " ) ) ;
line . append_option ( optgroup - > get_option ( " textured_cool_plate_temp_initial_layer " ) ) ;
line . append_option ( optgroup - > get_option ( " textured_cool_plate_temp " ) ) ;
line . append_option ( optgroup - > get_option ( " textured_cool_plate_temp " ) ) ;
optgroup - > append_line ( line ) ;
optgroup - > append_line ( line ) ;
line = { L ( " Engineering Plate " ) ,
line = { L ( " Engineering Plate " ) ,
L ( " Bed temperature when the Engineering Plate is installed. A value of 0 means the filament does not support printing on the Engineering Plate. " ) } ;
L ( " Bed temperature when the Engineering Plate is installed. A value of 0 means the filament does not support printing on the Engineering Plate. " ) } ;
line . label_path = " material_temperatures#bed " ;
line . append_option ( optgroup - > get_option ( " eng_plate_temp_initial_layer " ) ) ;
line . append_option ( optgroup - > get_option ( " eng_plate_temp_initial_layer " ) ) ;
line . append_option ( optgroup - > get_option ( " eng_plate_temp " ) ) ;
line . append_option ( optgroup - > get_option ( " eng_plate_temp " ) ) ;
optgroup - > append_line ( line ) ;
optgroup - > append_line ( line ) ;
line = { L ( " Smooth PEI Plate / High Temp Plate " ) ,
line = { L ( " Smooth PEI Plate / High Temp Plate " ) ,
L ( " Bed temperature when the Smooth PEI Plate/High Temperature Plate is installed. A value of 0 means the filament does not support printing on the Smooth PEI Plate/High Temp Plate. " ) } ;
L ( " Bed temperature when the Smooth PEI Plate/High Temperature Plate is installed. A value of 0 means the filament does not support printing on the Smooth PEI Plate/High Temp Plate. " ) } ;
line . label_path = " material_temperatures#bed " ;
line . append_option ( optgroup - > get_option ( " hot_plate_temp_initial_layer " ) ) ;
line . append_option ( optgroup - > get_option ( " hot_plate_temp_initial_layer " ) ) ;
line . append_option ( optgroup - > get_option ( " hot_plate_temp " ) ) ;
line . append_option ( optgroup - > get_option ( " hot_plate_temp " ) ) ;
optgroup - > append_line ( line ) ;
optgroup - > append_line ( line ) ;
line = { L ( " Textured PEI Plate " ) ,
line = { L ( " Textured PEI Plate " ) ,
L ( " Bed temperature when the Textured PEI Plate is installed. A value of 0 means the filament does not support printing on the Textured PEI Plate. " ) } ;
L ( " Bed temperature when the Textured PEI Plate is installed. A value of 0 means the filament does not support printing on the Textured PEI Plate. " ) } ;
line . label_path = " material_temperatures#bed " ;
line . append_option ( optgroup - > get_option ( " textured_plate_temp_initial_layer " ) ) ;
line . append_option ( optgroup - > get_option ( " textured_plate_temp_initial_layer " ) ) ;
line . append_option ( optgroup - > get_option ( " textured_plate_temp " ) ) ;
line . append_option ( optgroup - > get_option ( " textured_plate_temp " ) ) ;
optgroup - > append_line ( line ) ;
optgroup - > append_line ( line ) ;
@@ -3955,8 +3962,8 @@ void TabFilament::build()
//BBS
//BBS
optgroup = page - > new_optgroup ( L ( " Volumetric speed limitation " ) , L " param_volumetric_speed " ) ;
optgroup = page - > new_optgroup ( L ( " Volumetric speed limitation " ) , L " param_volumetric_speed " ) ;
optgroup - > append_single_option_line ( " filament_adaptive_volumetric_speed " , " " , 0 ) ;
optgroup - > append_single_option_line ( " filament_adaptive_volumetric_speed " , " material_volumetric_speed_limitation#adaptive-volumetric-speed ", 0 ) ;
optgroup - > append_single_option_line ( " filament_max_volumetric_speed " ) ;
optgroup - > append_single_option_line ( " filament_max_volumetric_speed " , " material_volumetric_speed_limitation#max-volumetric-speed " );
//line = { "", "" };
//line = { "", "" };
//line.full_width = 1;
//line.full_width = 1;
@@ -3974,46 +3981,48 @@ void TabFilament::build()
//};
//};
//optgroup->append_line(line);
//optgroup->append_line(line);
optgroup = page - > new_optgroup ( L ( " Cooling for specific layer " ) , L " param_cooling_specific_layer " ) ;
optgroup = page - > new_optgroup ( L ( " Cooling for specific layer " ) , L " param_cooling_specific_layer " ) ;
optgroup - > append_single_option_line ( " close_fan_the_first_x_layers " ) ;
optgroup - > append_single_option_line ( " close_fan_the_first_x_layers " , " material_cooling#no-cooling-for-the-first " );
optgroup - > append_single_option_line ( " full_fan_speed_layer " ) ;
optgroup - > append_single_option_line ( " full_fan_speed_layer " , " material_cooling#full-fan-speed-at-layer " );
optgroup = page - > new_optgroup ( L ( " Part cooling fan " ) , L " param_cooling_part_fan " ) ;
optgroup = page - > new_optgroup ( L ( " Part cooling fan " ) , L " param_cooling_part_fan " ) ;
line = { L ( " Min fan speed threshold " ) , L ( " Part cooling fan speed will start to run at min speed when the estimated layer time is no longer than the layer time in setting. When layer time is shorter than threshold, fan speed is interpolated between the minimum and maximum fan speed according to layer printing time " ) } ;
line = { L ( " Min fan speed threshold " ) , L ( " Part cooling fan speed will start to run at min speed when the estimated layer time is no longer than the layer time in setting. When layer time is shorter than threshold, fan speed is interpolated between the minimum and maximum fan speed according to layer printing time " ) } ;
line . label_path = " auto -cooling" ;
line . label_path = " material_cooling#material-part -cooling-fan " ;
line . append_option ( optgroup - > get_option ( " fan_min_speed " ) ) ;
line . append_option ( optgroup - > get_option ( " fan_min_speed " ) ) ;
line . append_option ( optgroup - > get_option ( " fan_cooling_layer_time " ) ) ;
line . append_option ( optgroup - > get_option ( " fan_cooling_layer_time " ) ) ;
optgroup - > append_line ( line ) ;
optgroup - > append_line ( line ) ;
line = { L ( " Max fan speed threshold " ) , L ( " Part cooling fan speed will be max when the estimated layer time is shorter than the setting value " ) } ;
line = { L ( " Max fan speed threshold " ) , L ( " Part cooling fan speed will be max when the estimated layer time is shorter than the setting value " ) } ;
line . label_path = " auto -cooling" ;
line . label_path = " material_cooling#material-part -cooling-fan " ;
line . append_option ( optgroup - > get_option ( " fan_max_speed " ) ) ;
line . append_option ( optgroup - > get_option ( " fan_max_speed " ) ) ;
line . append_option ( optgroup - > get_option ( " slow_down_layer_time " ) ) ;
line . append_option ( optgroup - > get_option ( " slow_down_layer_time " ) ) ;
optgroup - > append_line ( line ) ;
optgroup - > append_line ( line ) ;
optgroup - > append_single_option_line ( " reduce_fan_stop_start_freq " ) ;
optgroup - > append_single_option_line ( " reduce_fan_stop_start_freq " , " material_cooling#keep-fan-always-on " );
optgroup - > append_single_option_line ( " slow_down_for_layer_cooling " ) ;
optgroup - > append_single_option_line ( " slow_down_for_layer_cooling " , " material_cooling#slow-printing-down-for-better-layer-cooling " );
optgroup - > append_single_option_line ( " dont_slow_down_outer_wall " ) ;
optgroup - > append_single_option_line ( " dont_slow_down_outer_wall " , " material_cooling#dont-slow-down-outer-walls " );
optgroup - > append_single_option_line ( " slow_down_min_speed " ) ;
optgroup - > append_single_option_line ( " slow_down_min_speed " , " material_cooling#min-print-speed " );
optgroup - > append_single_option_line ( " enable_overhang_bridge_fan " ) ;
optgroup - > append_single_option_line ( " enable_overhang_bridge_fan " , " material_cooling#force-cooling-for-overhangs-and-bridges " );
optgroup - > append_single_option_line ( " overhang_fan_threshold " ) ;
optgroup - > append_single_option_line ( " overhang_fan_threshold " , " material_cooling#overhang-cooling-activation-threshold " );
optgroup - > append_single_option_line ( " overhang_fan_speed " ) ;
optgroup - > append_single_option_line ( " overhang_fan_speed " , " material_cooling#overhangs-and-external-bridges-fan-speed " );
optgroup - > append_single_option_line ( " internal_bridge_fan_speed " ) ; // ORCA: Add support for separate internal bridge fan speed control
optgroup - > append_single_option_line ( " internal_bridge_fan_speed " , " material_cooling#internal-bridges-fan-speed " ); // ORCA: Add support for separate internal bridge fan speed control
optgroup - > append_single_option_line ( " support_material_interface_fan_speed " ) ;
optgroup - > append_single_option_line ( " support_material_interface_fan_speed " , " material_cooling#support-interface-fan-speed " );
optgroup - > append_single_option_line ( " ironing_fan_speed " ) ; // ORCA: Add support for ironing fan speed control
optgroup - > append_single_option_line ( " ironing_fan_speed " , " material_cooling#ironing-fan-speed " ); // ORCA: Add support for ironing fan speed control
optgroup = page - > new_optgroup ( L ( " Auxiliary part cooling fan " ) , L " param_cooling_aux_fan " ) ;
optgroup = page - > new_optgroup ( L ( " Auxiliary part cooling fan " ) , L " param_cooling_aux_fan " ) ;
optgroup - > append_single_option_line ( " additional_cooling_fan_speed " , " auxiliary -fan" ) ;
optgroup - > append_single_option_line ( " additional_cooling_fan_speed " , " material_cooling#auxiliary-part-cooling -fan" ) ;
optgroup = page - > new_optgroup ( L ( " Exhaust fan " ) , L " param_cooling_exhaust " ) ;
optgroup = page - > new_optgroup ( L ( " Exhaust fan " ) , L " param_cooling_exhaust " ) ;
optgroup - > append_single_option_line ( " activate_air_filtration " , " air-filtration " ) ;
optgroup - > append_single_option_line ( " activate_air_filtration " , " material_cooling#activate- air-filtration" ) ;
line = { L ( " During print " ) , " " } ;
line = { L ( " During print " ) , " " } ;
line . append_option ( optgroup - > get_option ( " during_print_exhaust_fan_speed " ) ) ;
line . append_option ( optgroup - > get_option ( " during_print_exhaust_fan_speed " ) ) ;
line . label_path = " material_cooling#during-print " ;
optgroup - > append_line ( line ) ;
optgroup - > append_line ( line ) ;
line = { L ( " Complete print " ) , " " } ;
line = { L ( " Complete print " ) , " " } ;
line . append_option ( optgroup - > get_option ( " complete_print_exhaust_fan_speed " ) ) ;
line . append_option ( optgroup - > get_option ( " complete_print_exhaust_fan_speed " ) ) ;
line . label_path = " material_cooling#complete-print " ;
optgroup - > append_line ( line ) ;
optgroup - > append_line ( line ) ;
//BBS
//BBS
add_filament_overrides_page ( ) ;
add_filament_overrides_page ( ) ;
@@ -4047,26 +4056,26 @@ void TabFilament::build()
page = add_options_page ( L ( " Multimaterial " ) , " custom-gcode_multi_material " ) ; // ORCA: icon only visible on placeholders
page = add_options_page ( L ( " Multimaterial " ) , " custom-gcode_multi_material " ) ; // ORCA: icon only visible on placeholders
optgroup = page - > new_optgroup ( L ( " Wipe tower parameters " ) , " param_tower " ) ;
optgroup = page - > new_optgroup ( L ( " Wipe tower parameters " ) , " param_tower " ) ;
optgroup - > append_single_option_line ( " filament_minimal_purge_on_wipe_tower " ) ;
optgroup - > append_single_option_line ( " filament_minimal_purge_on_wipe_tower " , " material_multimaterial#multimaterial-wipe-tower-parameters " );
optgroup = page - > new_optgroup ( L ( " Multi Filament " ) ) ;
optgroup = page - > new_optgroup ( L ( " Multi Filament " ) ) ;
// optgroup->append_single_option_line("filament_flush_temp", "", 0);
// optgroup->append_single_option_line("filament_flush_temp", "", 0);
// optgroup->append_single_option_line("filament_flush_volumetric_speed", "", 0);
// optgroup->append_single_option_line("filament_flush_volumetric_speed", "", 0);
optgroup - > append_single_option_line ( " long_retractions_when_ec " , " " , 0 ) ;
optgroup - > append_single_option_line ( " long_retractions_when_ec " , " material_multimaterial#multi-filament " , 0 ) ;
optgroup - > append_single_option_line ( " retraction_distances_when_ec " , " " , 0 ) ;
optgroup - > append_single_option_line ( " retraction_distances_when_ec " , " material_multimaterial#multi-filament " , 0 ) ;
optgroup = page - > new_optgroup ( L ( " Tool change parameters with single extruder MM printers " ) , " param_toolchange " ) ;
optgroup = page - > new_optgroup ( L ( " Tool change parameters with single extruder MM printers " ) , " param_toolchange " ) ;
optgroup - > append_single_option_line ( " filament_loading_speed_start " , " semm " ) ;
optgroup - > append_single_option_line ( " filament_loading_speed_start " , " material_multimaterial#loading-speed-at-the-start " ) ;
optgroup - > append_single_option_line ( " filament_loading_speed " , " semm " ) ;
optgroup - > append_single_option_line ( " filament_loading_speed " , " material_multimaterial#loading-speed " ) ;
optgroup - > append_single_option_line ( " filament_unloading_speed_start " , " semm " ) ;
optgroup - > append_single_option_line ( " filament_unloading_speed_start " , " material_multimaterial#unloading-speed-at-the-start " ) ;
optgroup - > append_single_option_line ( " filament_unloading_speed " , " semm " ) ;
optgroup - > append_single_option_line ( " filament_unloading_speed " , " material_multimaterial#unloading-speed " ) ;
optgroup - > append_single_option_line ( " filament_toolchange_delay " , " semm " ) ;
optgroup - > append_single_option_line ( " filament_toolchange_delay " , " material_multimaterial#delay-after-unloading " ) ;
optgroup - > append_single_option_line ( " filament_cooling_moves " , " semm " ) ;
optgroup - > append_single_option_line ( " filament_cooling_moves " , " material_multimaterial#number-of-cooling-moves " ) ;
optgroup - > append_single_option_line ( " filament_cooling_initial_speed " , " semm " ) ;
optgroup - > append_single_option_line ( " filament_cooling_initial_speed " , " material_multimaterial#speed-of-the-first-cooling-move " ) ;
optgroup - > append_single_option_line ( " filament_cooling_final_speed " , " semm " ) ;
optgroup - > append_single_option_line ( " filament_cooling_final_speed " , " material_multimaterial#speed-of-the-last-cooling-move " ) ;
optgroup - > append_single_option_line ( " filament_stamping_loading_speed " ) ;
optgroup - > append_single_option_line ( " filament_stamping_loading_speed " , " material_multimaterial#stamping-loading-speed " );
optgroup - > append_single_option_line ( " filament_stamping_distance " ) ;
optgroup - > append_single_option_line ( " filament_stamping_distance " , " material_multimaterial#stamping-distance " );
create_line_with_widget ( optgroup . get ( ) , " filament_ramming_parameters " , " " , [ this ] ( wxWindow * parent ) {
create_line_with_widget ( optgroup . get ( ) , " filament_ramming_parameters " , " material_multimaterial#ramming-parameters ", [ this ] ( wxWindow * parent ) {
// ORCA modernize button style
// ORCA modernize button style
Button * btn = new Button ( parent , _ ( L ( " Set " ) ) + " " + dots ) ;
Button * btn = new Button ( parent , _ ( L ( " Set " ) ) + " " + dots ) ;
@@ -4086,9 +4095,9 @@ void TabFilament::build()
} ) ;
} ) ;
optgroup = page - > new_optgroup ( L ( " Tool change parameters with multi extruder MM printers " ) , " param_toolchange_multi_extruder " ) ;
optgroup = page - > new_optgroup ( L ( " Tool change parameters with multi extruder MM printers " ) , " param_toolchange_multi_extruder " ) ;
optgroup - > append_single_option_line ( " filament_multitool_ramming " ) ;
optgroup - > append_single_option_line ( " filament_multitool_ramming " , " material_multimaterial#tool-change-parameters-with-multi-extruder " );
optgroup - > append_single_option_line ( " filament_multitool_ramming_volume " ) ;
optgroup - > append_single_option_line ( " filament_multitool_ramming_volume " , " material_multimaterial#multi-tool-ramming-volume " );
optgroup - > append_single_option_line ( " filament_multitool_ramming_flow " ) ;
optgroup - > append_single_option_line ( " filament_multitool_ramming_flow " , " material_multimaterial#multi-tool-ramming-flow " );
page = add_options_page ( L ( " Dependencies " ) , " advanced " ) ;
page = add_options_page ( L ( " Dependencies " ) , " advanced " ) ;
optgroup = page - > new_optgroup ( L ( " Compatible printers " ) , " param_dependencies_printers " ) ;
optgroup = page - > new_optgroup ( L ( " Compatible printers " ) , " param_dependencies_printers " ) ;
@@ -4098,7 +4107,7 @@ void TabFilament::build()
option = optgroup - > get_option ( " compatible_printers_condition " ) ;
option = optgroup - > get_option ( " compatible_printers_condition " ) ;
option . opt . full_width = true ;
option . opt . full_width = true ;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " material_dependencies#compatible-printers " );
optgroup = page - > new_optgroup ( L ( " Compatible process profiles " ) , " param_dependencies_presets " ) ;
optgroup = page - > new_optgroup ( L ( " Compatible process profiles " ) , " param_dependencies_presets " ) ;
create_line_with_widget ( optgroup . get ( ) , " compatible_prints " , " " , [ this ] ( wxWindow * parent ) {
create_line_with_widget ( optgroup . get ( ) , " compatible_prints " , " " , [ this ] ( wxWindow * parent ) {
@@ -4107,7 +4116,7 @@ void TabFilament::build()
option = optgroup - > get_option ( " compatible_prints_condition " ) ;
option = optgroup - > get_option ( " compatible_prints_condition " ) ;
option . opt . full_width = true ;
option . opt . full_width = true ;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " material_dependencies#compatible-process-profiles " );
page = add_options_page ( L ( " Notes " ) , " custom-gcode_note " ) ; // ORCA: icon only visible on placeholders
page = add_options_page ( L ( " Notes " ) , " custom-gcode_note " ) ; // ORCA: icon only visible on placeholders
optgroup = page - > new_optgroup ( L ( " Notes " ) , " note " , 0 ) ;
optgroup = page - > new_optgroup ( L ( " Notes " ) , " note " , 0 ) ;
@@ -4341,28 +4350,28 @@ void TabPrinter::build_fff()
} ) ;
} ) ;
Option option = optgroup - > get_option ( " bed_exclude_area " ) ;
Option option = optgroup - > get_option ( " bed_exclude_area " ) ;
option . opt . full_width = true ;
option . opt . full_width = true ;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " printer_basic_information_printable_space#excluded-bed-area " );
// optgroup->append_single_option_line("printable_area");
// optgroup->append_single_option_line("printable_area");
optgroup - > append_single_option_line ( " printable_height " ) ;
optgroup - > append_single_option_line ( " printable_height " , " printer_basic_information_printable_space#printable-height " );
optgroup - > append_single_option_line ( " support_multi_bed_types " , " bed-types " ) ;
optgroup - > append_single_option_line ( " support_multi_bed_types " , " printer_basic_information_printable_space#support-multi- bed-types" ) ;
optgroup - > append_single_option_line ( " best_object_pos " ) ;
optgroup - > append_single_option_line ( " best_object_pos " , " printer_basic_information_printable_space#best-object-position " );
// todo: for multi_extruder test
// todo: for multi_extruder test
optgroup - > append_single_option_line ( " z_offset " ) ;
optgroup - > append_single_option_line ( " z_offset " , " printer_basic_information_printable_space#z-offset " );
optgroup - > append_single_option_line ( " preferred_orientation " ) ;
optgroup - > append_single_option_line ( " preferred_orientation " , " printer_basic_information_printable_space#preferred-orientation " );
optgroup = page - > new_optgroup ( L ( " Advanced " ) , L " param_advanced " ) ;
optgroup = page - > new_optgroup ( L ( " Advanced " ) , L " param_advanced " ) ;
optgroup - > append_single_option_line ( " printer_structure " ) ;
optgroup - > append_single_option_line ( " printer_structure " , " printer_basic_information_advanced#printer-structure " );
optgroup - > append_single_option_line ( " gcode_flavor " ) ;
optgroup - > append_single_option_line ( " gcode_flavor " , " printer_basic_information_advanced#g-code-flavor " );
optgroup - > append_single_option_line ( " pellet_modded_printer " , " pellet-flow-coefficient " ) ;
optgroup - > append_single_option_line ( " pellet_modded_printer " , " printer_basic_information_advanced#pellet-modded-printer " ) ;
optgroup - > append_single_option_line ( " bbl_use_printhost " ) ;
optgroup - > append_single_option_line ( " bbl_use_printhost " , " printer_basic_information_advanced#use-3rd-party-print-host " );
optgroup - > append_single_option_line ( " scan_first_layer " ) ;
optgroup - > append_single_option_line ( " scan_first_layer " , " printer_basic_information_advanced#scan-first-layer " ) ;
//option = optgroup->get_option("wrapping_exclude_area");
//option = optgroup->get_option("wrapping_exclude_area");
//option.opt.full_width = true;
//option.opt.full_width = true;
//optgroup->append_single_option_line(option);
//optgroup->append_single_option_line(option);
optgroup - > append_single_option_line ( " disable_m73 " ) ;
optgroup - > append_single_option_line ( " disable_m73 " , " printer_basic_information_advanced#disable-set-remaining-print-time " );
option = optgroup - > get_option ( " thumbnails " ) ;
option = optgroup - > get_option ( " thumbnails " ) ;
option . opt . full_width = true ;
option . opt . full_width = true ;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " printer_basic_information_advanced#g-code-thumbnails " );
// optgroup->append_single_option_line("thumbnails_format");
// optgroup->append_single_option_line("thumbnails_format");
optgroup - > m_on_change = [ this ] ( t_config_option_key opt_key , boost : : any value ) {
optgroup - > m_on_change = [ this ] ( t_config_option_key opt_key , boost : : any value ) {
wxTheApp - > CallAfter ( [ this , opt_key , value ] ( ) {
wxTheApp - > CallAfter ( [ this , opt_key , value ] ( ) {
@@ -4400,36 +4409,37 @@ void TabPrinter::build_fff()
} ) ;
} ) ;
} ;
} ;
optgroup - > append_single_option_line ( " use_relative_e_distances " ) ;
optgroup - > append_single_option_line ( " use_relative_e_distances " , " printer_basic_information_advanced#use-relative-e-distances " );
optgroup - > append_single_option_line ( " use_firmware_retraction " ) ;
optgroup - > append_single_option_line ( " use_firmware_retraction " , " printer_basic_information_advanced#use-firmware-retraction " );
optgroup - > append_single_option_line ( " bed_temperature_formula " ) ;
optgroup - > append_single_option_line ( " bed_temperature_formula " , " printer_basic_information_advanced#bed-temperature-type " );
// optgroup->append_single_option_line("spaghetti_detector");
// optgroup->append_single_option_line("spaghetti_detector");
optgroup - > append_single_option_line ( " time_cost " ) ;
optgroup - > append_single_option_line ( " time_cost " , " printer_basic_information_advanced#time-cost " );
optgroup = page - > new_optgroup ( L ( " Cooling Fan " ) , " param_cooling_fan " ) ;
optgroup = page - > new_optgroup ( L ( " Cooling Fan " ) , " param_cooling_fan " ) ;
Line line = Line { L ( " Fan speed-up time " ) , optgroup - > get_option ( " fan_speedup_time " ) . opt . tooltip } ;
Line line = Line { L ( " Fan speed-up time " ) , optgroup - > get_option ( " fan_speedup_time " ) . opt . tooltip } ;
line . label_path = " printer_basic_information_cooling_fan#fan-speed-up-time " ;
line . append_option ( optgroup - > get_option ( " fan_speedup_time " ) ) ;
line . append_option ( optgroup - > get_option ( " fan_speedup_time " ) ) ;
line . append_option ( optgroup - > get_option ( " fan_speedup_overhangs " ) ) ;
line . append_option ( optgroup - > get_option ( " fan_speedup_overhangs " ) ) ;
optgroup - > append_line ( line ) ;
optgroup - > append_line ( line ) ;
optgroup - > append_single_option_line ( " fan_kickstart " ) ;
optgroup - > append_single_option_line ( " fan_kickstart " , " printer_basic_information_cooling_fan#fan-kick-start-time " );
optgroup = page - > new_optgroup ( L ( " Extruder Clearance " ) , " param_extruder_clearance " ) ;
optgroup = page - > new_optgroup ( L ( " Extruder Clearance " ) , " param_extruder_clearance " ) ;
optgroup - > append_single_option_line ( " extruder_clearance_radius " ) ;
optgroup - > append_single_option_line ( " extruder_clearance_radius " , " printer_basic_information_extruder_clearance#radius " );
optgroup - > append_single_option_line ( " extruder_clearance_height_to_rod " ) ;
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 " ) ;
optgroup - > append_single_option_line ( " extruder_clearance_height_to_lid " , " printer_basic_information_extruder_clearance#height-to-lid " );
optgroup = page - > new_optgroup ( L ( " Adaptive bed mesh " ) , " param_adaptive_mesh " ) ;
optgroup = page - > new_optgroup ( L ( " Adaptive bed mesh " ) , " param_adaptive_mesh " ) ;
optgroup - > append_single_option_line ( " bed_mesh_min " , " adaptive- bed-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 " , " adaptive- 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 " , " adaptive- 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 " , " adaptive- bed-mesh " ) ;
optgroup - > append_single_option_line ( " adaptive_bed_mesh_margin " , " printer_basic_information_ adaptive_ bed_mesh#mesh-margin " ) ;
optgroup = page - > new_optgroup ( L ( " Accessory " ) , " param_accessory " ) ;
optgroup = page - > new_optgroup ( L ( " Accessory " ) , " param_accessory " ) ;
optgroup - > append_single_option_line ( " nozzle_type " ) ;
optgroup - > append_single_option_line ( " nozzle_type " , " printer_basic_information_accessory#nozzle-type " );
optgroup - > append_single_option_line ( " nozzle_hrc " ) ;
optgroup - > append_single_option_line ( " nozzle_hrc " , " printer_basic_information_accessory#nozzle-hrc " );
optgroup - > append_single_option_line ( " auxiliary_fan " , " auxiliary -fan" ) ;
optgroup - > append_single_option_line ( " auxiliary_fan " , " printer_basic_information_accessory#auxiliary-part-cooling -fan" ) ;
optgroup - > append_single_option_line ( " support_chamber_temp_control " , " chamber-temperature " ) ;
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 " , " air-filtration " ) ;
optgroup - > append_single_option_line ( " support_air_filtration " , " printer_basic_information_accessory#support- air-filtration" ) ;
auto edit_custom_gcode_fn = [ this ] ( const t_config_option_key & opt_key ) { edit_custom_gcode ( opt_key ) ; } ;
auto edit_custom_gcode_fn = [ this ] ( const t_config_option_key & opt_key ) { edit_custom_gcode ( opt_key ) ; } ;
@@ -4445,7 +4455,7 @@ void TabPrinter::build_fff()
option . opt . full_width = true ;
option . opt . full_width = true ;
option . opt . is_code = true ;
option . opt . is_code = true ;
option . opt . height = gcode_field_height ; //150;
option . opt . height = gcode_field_height ; //150;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " printer_machine_gcode#machine-start-g-code " );
optgroup = page - > new_optgroup ( L ( " Machine end G-code " ) , L " param_gcode " , 0 ) ;
optgroup = page - > new_optgroup ( L ( " Machine end G-code " ) , L " param_gcode " , 0 ) ;
optgroup - > m_on_change = [ this , & optgroup_title = optgroup - > title ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
optgroup - > m_on_change = [ this , & optgroup_title = optgroup - > title ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
@@ -4456,7 +4466,7 @@ void TabPrinter::build_fff()
option . opt . full_width = true ;
option . opt . full_width = true ;
option . opt . is_code = true ;
option . opt . is_code = true ;
option . opt . height = gcode_field_height ; //150;
option . opt . height = gcode_field_height ; //150;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " printer_machine_gcode#machine-end-g-code " );
optgroup = page - > new_optgroup ( L ( " Printing by object G-code " ) , L " param_gcode " , 0 ) ;
optgroup = page - > new_optgroup ( L ( " Printing by object G-code " ) , L " param_gcode " , 0 ) ;
optgroup - > m_on_change = [ this , optgroup ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
optgroup - > m_on_change = [ this , optgroup ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
@@ -4467,7 +4477,7 @@ void TabPrinter::build_fff()
option . opt . full_width = true ;
option . opt . full_width = true ;
option . opt . is_code = true ;
option . opt . is_code = true ;
option . opt . height = gcode_field_height ; // 150;
option . opt . height = gcode_field_height ; // 150;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " printer_machine_gcode#printing-by-object-g-code " );
optgroup = page - > new_optgroup ( L ( " Before layer change G-code " ) , " param_gcode " , 0 ) ;
optgroup = page - > new_optgroup ( L ( " Before layer change G-code " ) , " param_gcode " , 0 ) ;
@@ -4479,7 +4489,7 @@ void TabPrinter::build_fff()
option . opt . full_width = true ;
option . opt . full_width = true ;
option . opt . is_code = true ;
option . opt . is_code = true ;
option . opt . height = gcode_field_height ; //150;
option . opt . height = gcode_field_height ; //150;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " printer_machine_gcode#before-layer-change-g-code " );
optgroup = page - > new_optgroup ( L ( " Layer change G-code " ) , L " param_gcode " , 0 ) ;
optgroup = page - > new_optgroup ( L ( " Layer change G-code " ) , L " param_gcode " , 0 ) ;
optgroup - > m_on_change = [ this , & optgroup_title = optgroup - > title ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
optgroup - > m_on_change = [ this , & optgroup_title = optgroup - > title ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
@@ -4490,7 +4500,7 @@ void TabPrinter::build_fff()
option . opt . full_width = true ;
option . opt . full_width = true ;
option . opt . is_code = true ;
option . opt . is_code = true ;
option . opt . height = gcode_field_height ; //150;
option . opt . height = gcode_field_height ; //150;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " printer_machine_gcode#layer-change-g-code " );
optgroup = page - > new_optgroup ( L ( " Timelapse G-code " ) , L " param_gcode " , 0 ) ;
optgroup = page - > new_optgroup ( L ( " Timelapse G-code " ) , L " param_gcode " , 0 ) ;
optgroup - > m_on_change = [ this , & optgroup_title = optgroup - > title ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
optgroup - > m_on_change = [ this , & optgroup_title = optgroup - > title ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
@@ -4501,7 +4511,7 @@ void TabPrinter::build_fff()
option . opt . full_width = true ;
option . opt . full_width = true ;
option . opt . is_code = true ;
option . opt . is_code = true ;
option . opt . height = gcode_field_height ; //150;
option . opt . height = gcode_field_height ; //150;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " printer_machine_gcode#timelapse-g-code " );
optgroup = page - > new_optgroup ( L ( " Clumping Detection G-code " ) , L " param_gcode " , 0 ) ;
optgroup = page - > new_optgroup ( L ( " Clumping Detection G-code " ) , L " param_gcode " , 0 ) ;
optgroup - > m_on_change = [ this , optgroup ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
optgroup - > m_on_change = [ this , optgroup ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
@@ -4512,7 +4522,7 @@ void TabPrinter::build_fff()
option . opt . full_width = true ;
option . opt . full_width = true ;
option . opt . is_code = true ;
option . opt . is_code = true ;
option . opt . height = gcode_field_height ; // 150;
option . opt . height = gcode_field_height ; // 150;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " printer_machine_gcode#clumping-detection-g-code " );
optgroup = page - > new_optgroup ( L ( " Change filament G-code " ) , L " param_gcode " , 0 ) ;
optgroup = page - > new_optgroup ( L ( " Change filament G-code " ) , L " param_gcode " , 0 ) ;
optgroup - > m_on_change = [ this , & optgroup_title = optgroup - > title ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
optgroup - > m_on_change = [ this , & optgroup_title = optgroup - > title ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
@@ -4523,7 +4533,7 @@ void TabPrinter::build_fff()
option . opt . full_width = true ;
option . opt . full_width = true ;
option . opt . is_code = true ;
option . opt . is_code = true ;
option . opt . height = gcode_field_height ; //150;
option . opt . height = gcode_field_height ; //150;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " printer_machine_gcode#change-filament-g-code " );
optgroup = page - > new_optgroup ( L ( " Change extrusion role G-code " ) , L " param_gcode " , 0 ) ;
optgroup = page - > new_optgroup ( L ( " Change extrusion role G-code " ) , L " param_gcode " , 0 ) ;
optgroup - > m_on_change = [ this , & optgroup_title = optgroup - > title ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
optgroup - > m_on_change = [ this , & optgroup_title = optgroup - > title ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
@@ -4534,7 +4544,7 @@ void TabPrinter::build_fff()
option . opt . full_width = true ;
option . opt . full_width = true ;
option . opt . is_code = true ;
option . opt . is_code = true ;
option . opt . height = gcode_field_height ; //150;
option . opt . height = gcode_field_height ; //150;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " printer_machine_gcode#change-extrusion-role-g-code " );
optgroup = page - > new_optgroup ( L ( " Pause G-code " ) , L " param_gcode " , 0 ) ;
optgroup = page - > new_optgroup ( L ( " Pause G-code " ) , L " param_gcode " , 0 ) ;
optgroup - > m_on_change = [ this , & optgroup_title = optgroup - > title ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
optgroup - > m_on_change = [ this , & optgroup_title = optgroup - > title ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
@@ -4544,7 +4554,7 @@ void TabPrinter::build_fff()
option = optgroup - > get_option ( " machine_pause_gcode " ) ;
option = optgroup - > get_option ( " machine_pause_gcode " ) ;
option . opt . is_code = true ;
option . opt . is_code = true ;
option . opt . height = gcode_field_height ; //150;
option . opt . height = gcode_field_height ; //150;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " printer_machine_gcode#pause-g-code " );
optgroup = page - > new_optgroup ( L ( " Template Custom G-code " ) , L " param_gcode " , 0 ) ;
optgroup = page - > new_optgroup ( L ( " Template Custom G-code " ) , L " param_gcode " , 0 ) ;
optgroup - > m_on_change = [ this , & optgroup_title = optgroup - > title ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
optgroup - > m_on_change = [ this , & optgroup_title = optgroup - > title ] ( const t_config_option_key & opt_key , const boost : : any & value ) {
@@ -4554,7 +4564,7 @@ void TabPrinter::build_fff()
option = optgroup - > get_option ( " template_custom_gcode " ) ;
option = optgroup - > get_option ( " template_custom_gcode " ) ;
option . opt . is_code = true ;
option . opt . is_code = true ;
option . opt . height = gcode_field_height ; //150;
option . opt . height = gcode_field_height ; //150;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " printer_machine_gcode#template-custom-g-code " );
page = add_options_page ( L ( " Notes " ) , " custom-gcode_note " ) ; // ORCA: icon only visible on placeholders
page = add_options_page ( L ( " Notes " ) , " custom-gcode_note " ) ; // ORCA: icon only visible on placeholders
optgroup = page - > new_optgroup ( L ( " Notes " ) , " note " , 0 ) ;
optgroup = page - > new_optgroup ( L ( " Notes " ) , " note " , 0 ) ;
@@ -4657,10 +4667,11 @@ void TabPrinter::extruders_count_changed(size_t extruders_count)
}
}
}
}
void TabPrinter : : append_option_line ( ConfigOptionsGroupShp optgroup , const std : : string opt_key )
void TabPrinter : : append_option_line ( ConfigOptionsGroupShp optgroup , const std : : string opt_key , const std : : string & label_path )
{
{
auto option = optgroup - > get_option ( opt_key , 0 ) ;
auto option = optgroup - > get_option ( opt_key , 0 ) ;
auto line = Line { option . opt . full_label , " " } ;
auto line = Line { option . opt . full_label , " " } ;
line . label_path = label_path ;
line . append_option ( option ) ;
line . append_option ( option ) ;
if ( m_use_silent_mode
if ( m_use_silent_mode
| | m_printer_technology = = ptSLA // just for first build, if SLA printer preset is selected
| | m_printer_technology = = ptSLA // just for first build, if SLA printer preset is selected
@@ -4697,14 +4708,15 @@ PageShp TabPrinter::build_kinematics_page()
optgroup - > append_line ( line ) ;
optgroup - > append_line ( line ) ;
}
}
auto optgroup = page - > new_optgroup ( L ( " Advanced " ) , " param_advanced " ) ;
auto optgroup = page - > new_optgroup ( L ( " Advanced " ) , " param_advanced " ) ;
optgroup - > append_single_option_line ( " emit_machine_limits_to_gcode " ) ;
optgroup - > append_single_option_line ( " emit_machine_limits_to_gcode " , " printer_motion_ability#emit-limits-to-g-code " );
// resonance avoidance ported over from qidi slicer
// resonance avoidance ported over from qidi slicer
optgroup = page - > new_optgroup ( L ( " Resonance Avoidance " ) , " param_resonance_avoidance " ) ;
optgroup = page - > new_optgroup ( L ( " Resonance Avoidance " ) , " param_resonance_avoidance " ) ;
optgroup - > append_single_option_line ( " resonance_avoidance " ) ;
optgroup - > append_single_option_line ( " resonance_avoidance " , " printer_motion_ability_resonance_avoidance#resonance-avoidance " );
// Resonance‑ avoidance speed inputs
// Resonance‑ avoidance speed inputs
{
{
Line resonance_line = { L ( " Resonance Avoidance Speed " ) , L " " } ;
Line resonance_line = { L ( " Resonance Avoidance Speed " ) , L " " } ;
resonance_line . label_path = " printer_motion_ability_resonance_avoidance#resonance-avoidance-speed " ;
resonance_line . append_option ( optgroup - > get_option ( " min_resonance_avoidance_speed " ) ) ;
resonance_line . append_option ( optgroup - > get_option ( " min_resonance_avoidance_speed " ) ) ;
resonance_line . append_option ( optgroup - > get_option ( " max_resonance_avoidance_speed " ) ) ;
resonance_line . append_option ( optgroup - > get_option ( " max_resonance_avoidance_speed " ) ) ;
optgroup - > append_line ( resonance_line ) ;
optgroup - > append_line ( resonance_line ) ;
@@ -4718,23 +4730,23 @@ PageShp TabPrinter::build_kinematics_page()
} ;
} ;
optgroup = page - > new_optgroup ( L ( " Speed limitation " ) , " param_speed " ) ;
optgroup = page - > new_optgroup ( L ( " Speed limitation " ) , " param_speed " ) ;
for ( const std : : string & speed_axis : speed_axes ) {
for ( const std : : string & speed_axis : speed_axes ) {
append_option_line ( optgroup , speed_axis ) ;
append_option_line ( optgroup , speed_axis , " printer_motion_ability#speed-limitation " );
}
}
const std : : vector < std : : string > axes { " x " , " y " , " z " , " e " } ;
const std : : vector < std : : string > axes { " x " , " y " , " z " , " e " } ;
optgroup = page - > new_optgroup ( L ( " Acceleration limitation " ) , " param_acceleration " ) ;
optgroup = page - > new_optgroup ( L ( " Acceleration limitation " ) , " param_acceleration " ) ;
for ( const std : : string & axis : axes ) {
for ( const std : : string & axis : axes ) {
append_option_line ( optgroup , " machine_max_acceleration_ " + axis ) ;
append_option_line ( optgroup , " machine_max_acceleration_ " + axis , " printer_motion_ability#acceleration-limitation " );
}
}
append_option_line ( optgroup , " machine_max_acceleration_extruding " ) ;
append_option_line ( optgroup , " machine_max_acceleration_extruding " , " printer_motion_ability#acceleration-limitation " );
append_option_line ( optgroup , " machine_max_acceleration_retracting " ) ;
append_option_line ( optgroup , " machine_max_acceleration_retracting " , " printer_motion_ability#acceleration-limitation " );
append_option_line ( optgroup , " machine_max_acceleration_travel " ) ;
append_option_line ( optgroup , " machine_max_acceleration_travel " , " printer_motion_ability#acceleration-limitation " );
optgroup = page - > new_optgroup ( L ( " Jerk limitation " ) , " param_jerk " ) ;
optgroup = page - > new_optgroup ( L ( " Jerk limitation " ) , " param_jerk " ) ;
// machine max junction deviation
// machine max junction deviation
append_option_line ( optgroup , " machine_max_junction_deviation " ) ;
append_option_line ( optgroup , " machine_max_junction_deviation " , " printer_motion_ability#maximum-junction-deviation " );
for ( const std : : string & axis : axes ) {
for ( const std : : string & axis : axes ) {
append_option_line ( optgroup , " machine_max_jerk_ " + axis ) ;
append_option_line ( optgroup , " machine_max_jerk_ " + axis , " printer_motion_ability#maximum-jerk " );
}
}
//optgroup = page->new_optgroup(L("Minimum feedrates"));
//optgroup = page->new_optgroup(L("Minimum feedrates"));
@@ -4789,7 +4801,7 @@ if (is_marlin_flavor)
// create a page, but pretend it's an extruder page, so we can add it to m_pages ourselves
// create a page, but pretend it's an extruder page, so we can add it to m_pages ourselves
auto page = add_options_page ( L ( " Multimaterial " ) , " custom-gcode_multi_material " , true ) ; // ORCA: icon only visible on placeholders
auto page = add_options_page ( L ( " Multimaterial " ) , " custom-gcode_multi_material " , true ) ; // ORCA: icon only visible on placeholders
auto optgroup = page - > new_optgroup ( L ( " Single extruder multi-material setup " ) , " param_multi_material " ) ;
auto optgroup = page - > new_optgroup ( L ( " Single extruder multi-material setup " ) , " param_multi_material " ) ;
optgroup - > append_single_option_line ( " single_extruder_multi_material " , " semm " ) ;
optgroup - > append_single_option_line ( " single_extruder_multi_material " , " printer_multimaterial_setup#single-extruder-multi-material " ) ;
ConfigOptionDef def ;
ConfigOptionDef def ;
def . type = coInt , def . set_default_value ( new ConfigOptionInt ( ( int ) m_extruders_count ) ) ;
def . type = coInt , def . set_default_value ( new ConfigOptionInt ( ( int ) m_extruders_count ) ) ;
def . label = L ( " Extruders " ) ;
def . label = L ( " Extruders " ) ;
@@ -4798,7 +4810,7 @@ if (is_marlin_flavor)
def . max = MAXIMUM_EXTRUDER_NUMBER ;
def . max = MAXIMUM_EXTRUDER_NUMBER ;
def . mode = comAdvanced ;
def . mode = comAdvanced ;
Option option ( def , " extruders_count " ) ;
Option option ( def , " extruders_count " ) ;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " printer_multimaterial_setup#extruders " );
// Orca: rebuild missed extruder pages
// Orca: rebuild missed extruder pages
optgroup - > m_on_change = [ this , optgroup_wk = ConfigOptionsGroupWkp ( optgroup ) ] ( t_config_option_key opt_key , boost : : any value ) {
optgroup - > m_on_change = [ this , optgroup_wk = ConfigOptionsGroupWkp ( optgroup ) ] ( t_config_option_key opt_key , boost : : any value ) {
@@ -4872,24 +4884,24 @@ if (is_marlin_flavor)
}
}
} ) ;
} ) ;
} ;
} ;
optgroup - > append_single_option_line ( " manual_filament_change " , " semm #manual-filament-change" ) ;
optgroup - > append_single_option_line ( " manual_filament_change " , " printer_multimaterial_setup #manual-filament-change" ) ;
optgroup = page - > new_optgroup ( L ( " Wipe tower " ) , " param_tower " ) ;
optgroup = page - > new_optgroup ( L ( " Wipe tower " ) , " param_tower " ) ;
optgroup - > append_single_option_line ( " purge_in_prime_tower " , " semm " ) ;
optgroup - > append_single_option_line ( " purge_in_prime_tower " , " printer_multimaterial_wipe_tower#purge-in-prime-tower " ) ;
optgroup - > append_single_option_line ( " enable_filament_ramming " , " semm " ) ;
optgroup - > append_single_option_line ( " enable_filament_ramming " , " printer_multimaterial_wipe_tower#enable-filament-ramming " ) ;
optgroup = page - > new_optgroup ( L ( " Single extruder multi-material parameters " ) , " param_settings " ) ;
optgroup = page - > new_optgroup ( L ( " Single extruder multi-material parameters " ) , " param_settings " ) ;
optgroup - > append_single_option_line ( " cooling_tube_retraction " , " semm " ) ;
optgroup - > append_single_option_line ( " cooling_tube_retraction " , " printer_multimaterial_semm_parameters#cooling-tube-position " ) ;
optgroup - > append_single_option_line ( " cooling_tube_length " , " semm " ) ;
optgroup - > append_single_option_line ( " cooling_tube_length " , " printer_multimaterial_semm_parameters#cooling-tube-length " ) ;
optgroup - > append_single_option_line ( " parking_pos_retraction " , " semm " ) ;
optgroup - > append_single_option_line ( " parking_pos_retraction " , " printer_multimaterial_semm_parameters#filament-parking-positions " ) ;
optgroup - > append_single_option_line ( " extra_loading_move " , " semm " ) ;
optgroup - > append_single_option_line ( " extra_loading_move " , " printer_multimaterial_semm_parameters#extra-loading-distance " ) ;
optgroup - > append_single_option_line ( " high_current_on_filament_swap " , " semm " ) ;
optgroup - > append_single_option_line ( " high_current_on_filament_swap " , " printer_multimaterial_semm_parameters#high-extruder-current-on-filament-swap " ) ;
optgroup = page - > new_optgroup ( L ( " Advanced " ) , L " param_advanced " ) ;
optgroup = page - > new_optgroup ( L ( " Advanced " ) , L " param_advanced " ) ;
optgroup - > append_single_option_line ( " machine_load_filament_time " ) ;
optgroup - > append_single_option_line ( " machine_load_filament_time " , " printer_multimaterial_advanced#filament-load-time " );
optgroup - > append_single_option_line ( " machine_unload_filament_time " ) ;
optgroup - > append_single_option_line ( " machine_unload_filament_time " , " printer_multimaterial_advanced#filament-unload-time " );
optgroup - > append_single_option_line ( " machine_tool_change_time " ) ;
optgroup - > append_single_option_line ( " machine_tool_change_time " , " printer_multimaterial_advanced#tool-change-time " );
m_pages . insert ( m_pages . end ( ) - n_after_single_extruder_MM , page ) ;
m_pages . insert ( m_pages . end ( ) - n_after_single_extruder_MM , page ) ;
}
}
@@ -4903,14 +4915,14 @@ if (is_marlin_flavor)
m_pages . insert ( m_pages . begin ( ) + n_before_extruders + extruder_idx , page ) ;
m_pages . insert ( m_pages . begin ( ) + n_before_extruders + extruder_idx , page ) ;
auto optgroup = page - > new_optgroup ( L ( " Basic information " ) , L " param_information " , - 1 , true ) ;
auto optgroup = page - > new_optgroup ( L ( " Basic information " ) , L " param_information " , - 1 , true ) ;
optgroup - > append_single_option_line ( " nozzle_diameter " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " nozzle_diameter " , " printer_extruder_basic_information#nozzle-diameter ", extruder_idx ) ;
//optgroup->append_single_option_line("nozzle_volume_type", "", extruder_idx);
//optgroup->append_single_option_line("nozzle_volume_type", "", extruder_idx);
optgroup - > append_single_option_line ( " nozzle_volume " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " nozzle_volume " , " printer_extruder_basic_information#nozzle-volume ", extruder_idx ) ;
optgroup - > append_single_option_line ( " extruder_printable_height " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " extruder_printable_height " , " printer_extruder_basic_information#extruder-layer-height-limits ", extruder_idx ) ;
Option option = optgroup - > get_option ( " extruder_printable_area " , extruder_idx ) ;
Option option = optgroup - > get_option ( " extruder_printable_area " , extruder_idx ) ;
option . opt . full_width = true ;
option . opt . full_width = true ;
optgroup - > append_single_option_line ( option ) ;
optgroup - > append_single_option_line ( option , " printer_extruder_basic_information#extruder-offset-position " );
optgroup - > m_on_change = [ this , extruder_idx ] ( const t_config_option_key & opt_key , boost : : any value )
optgroup - > m_on_change = [ this , extruder_idx ] ( const t_config_option_key & opt_key , boost : : any value )
{
{
@@ -4951,38 +4963,38 @@ if (is_marlin_flavor)
} ;
} ;
optgroup = page - > new_optgroup ( L ( " Layer height limits " ) , L " param_layer_height " ) ;
optgroup = page - > new_optgroup ( L ( " Layer height limits " ) , L " param_layer_height " ) ;
optgroup - > append_single_option_line ( " min_layer_height " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " min_layer_height " , " printer_extruder_basic_information#extruder-layer-height-limits ", extruder_idx ) ;
optgroup - > append_single_option_line ( " max_layer_height " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " max_layer_height " , " printer_extruder_basic_information#extruder-layer-height-limits ", extruder_idx ) ;
optgroup = page - > new_optgroup ( L ( " Position " ) , L " param_position " ) ;
optgroup = page - > new_optgroup ( L ( " Position " ) , L " param_position " ) ;
optgroup - > append_single_option_line ( " extruder_offset " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " extruder_offset " , " printer_extruder_basic_information#extruder-offset-position ", extruder_idx ) ;
//BBS: don't show retract related config menu in machine page
//BBS: don't show retract related config menu in machine page
optgroup = page - > new_optgroup ( L ( " Retraction " ) , L " param_retraction " ) ;
optgroup = page - > new_optgroup ( L ( " Retraction " ) , L " param_retraction " ) ;
optgroup - > append_single_option_line ( " retraction_length " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " retraction_length " , " printer_extruder_retraction#length ", extruder_idx ) ;
optgroup - > append_single_option_line ( " retract_restart_extra " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " retract_restart_extra " , " printer_extruder_retraction#extra-length-on-restart ", extruder_idx ) ;
optgroup - > append_single_option_line ( " retraction_speed " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " retraction_speed " , " printer_extruder_retraction#retraction-speed ", extruder_idx ) ;
optgroup - > append_single_option_line ( " deretraction_speed " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " deretraction_speed " , " printer_extruder_retraction#deretraction-speed ", extruder_idx ) ;
optgroup - > append_single_option_line ( " retraction_minimum_travel " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " retraction_minimum_travel " , " printer_extruder_retraction#travel-distance-threshold ", extruder_idx ) ;
optgroup - > append_single_option_line ( " retract_when_changing_layer " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " retract_when_changing_layer " , " printer_extruder_retraction#retract-on-layer-change ", extruder_idx ) ;
optgroup - > append_single_option_line ( " wipe " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " wipe " , " printer_extruder_retraction#wipe-while-retracting ", extruder_idx ) ;
optgroup - > append_single_option_line ( " wipe_distance " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " wipe_distance " , " printer_extruder_retraction#wipe-distance ", extruder_idx ) ;
optgroup - > append_single_option_line ( " retract_before_wipe " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " retract_before_wipe " , " printer_extruder_retraction#retract-amount-before-wipe ", extruder_idx ) ;
optgroup = page - > new_optgroup ( L ( " Z-Hop " ) , L " param_extruder_lift_enforcement " ) ;
optgroup = page - > new_optgroup ( L ( " Z-Hop " ) , L " param_extruder_lift_enforcement " ) ;
optgroup - > append_single_option_line ( " retract_lift_enforce " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " retract_lift_enforce " , " printer_extruder_z_hop#on-surfaces ", extruder_idx ) ;
optgroup - > append_single_option_line ( " z_hop_types " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " z_hop_types " , " printer_extruder_z_hop#z-hop-type ", extruder_idx ) ;
optgroup - > append_single_option_line ( " z_hop " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " z_hop " , " printer_extruder_z_hop#z-hop-height ", extruder_idx ) ;
optgroup - > append_single_option_line ( " travel_slope " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " travel_slope " , " printer_extruder_z_hop#traveling-angle ", extruder_idx ) ;
optgroup - > append_single_option_line ( " retract_lift_above " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " retract_lift_above " , " printer_extruder_z_hop#only-lift-z-above ", extruder_idx ) ;
optgroup - > append_single_option_line ( " retract_lift_below " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " retract_lift_below " , " printer_extruder_z_hop#only-lift-z-below ", extruder_idx ) ;
optgroup = page - > new_optgroup ( L ( " Retraction when switching material " ) , L " param_retraction_material_change " ) ;
optgroup = page - > new_optgroup ( L ( " Retraction when switching material " ) , L " param_retraction_material_change " ) ;
optgroup - > append_single_option_line ( " retract_length_toolchange " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " retract_length_toolchange " , " printer_extruder_retraction#retraction-when-switching-materials ", extruder_idx ) ;
optgroup - > append_single_option_line ( " retract_restart_extra_toolchange " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " retract_restart_extra_toolchange " , " printer_extruder_retraction#retraction-when-switching-materials ", extruder_idx ) ;
// do not display this params now
// do not display this params now
optgroup - > append_single_option_line ( " long_retractions_when_cut " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " long_retractions_when_cut " , " printer_extruder_retraction#long-retraction-when-cut-beta ", extruder_idx ) ;
optgroup - > append_single_option_line ( " retraction_distances_when_cut " , " " , extruder_idx ) ;
optgroup - > append_single_option_line ( " retraction_distances_when_cut " , " printer_extruder_retraction#long-retraction-when-cut-beta ", extruder_idx ) ;
#if 0
#if 0
//optgroup = page->new_optgroup(L("Preview"), -1, true);
//optgroup = page->new_optgroup(L("Preview"), -1, true);