From 7d95107793fa35f562a07b0d6c2a323452ea99bf Mon Sep 17 00:00:00 2001 From: supermerill Date: Thu, 9 Jan 2020 20:27:26 +0100 Subject: [PATCH] Move layout of ui settings to config files. --- resources/profiles/Basic.ini | 3 +- resources/ui_layout/Readme.md | 74 + resources/ui_layout/filament.ui | 94 + resources/ui_layout/print.ui | 255 ++ resources/ui_layout/print.ui.legacy | 236 ++ resources/ui_layout/printer_fff.ui | 49 + resources/ui_layout/printer_sla.ui | 46 + resources/ui_layout/sla_material.ui | 32 + resources/ui_layout/sla_print.ui | 63 + src/slic3r/GUI/OptionsGroup.cpp | 2 +- src/slic3r/GUI/Tab.cpp | 3859 +++++++++++++++------------ src/slic3r/GUI/Tab.hpp | 17 +- 12 files changed, 3024 insertions(+), 1706 deletions(-) create mode 100644 resources/ui_layout/Readme.md create mode 100644 resources/ui_layout/filament.ui create mode 100644 resources/ui_layout/print.ui create mode 100644 resources/ui_layout/print.ui.legacy create mode 100644 resources/ui_layout/printer_fff.ui create mode 100644 resources/ui_layout/printer_sla.ui create mode 100644 resources/ui_layout/sla_material.ui create mode 100644 resources/ui_layout/sla_print.ui diff --git a/resources/profiles/Basic.ini b/resources/profiles/Basic.ini index c8a1a9519..0cf0f0024 100644 --- a/resources/profiles/Basic.ini +++ b/resources/profiles/Basic.ini @@ -28,7 +28,7 @@ variants = 0.4; 0.15; 0.2; 0.25; 0.3; 0.35; 0.5; 0.6; 0.8; 1.0; 1.2; [printer:*common*] end_gcode = G1 E-4 F2100.00000\nG91\nG1 Z1 F7200.000\nG90\nG1 X195 Y1\nG1 X190 E4\nG1 F4000\nG1 X180 E2.7 \nG1 F4600\nG1 X110 E2.8\nG1 F5200\nG1 X40 E3 \nG1 E-15.0000 F5000\nG1 E-50.0000 F5400\nG1 E-15.0000 F3000\nG1 E-12.0000 F2000\nG1 F1600\nG1 X0 Y1 E3.0000\nG1 X50 Y1 E-5.0000\nG1 F2000\nG1 X0 Y1 E5.0000\nG1 X50 Y1 E-5.0000\nG1 F2400\nG1 X0 Y1 E5.0000\nG1 X50 Y1 E-5.0000\nG1 F2400\nG1 X0 Y1 E5.0000\nG1 X50 Y1 E-3.0000\nG4 S0\nM107 ; turn off fan\n{if layer_z < max_print_height}G1 Z{z_offset+min(layer_z+30, max_print_height)}{endif} ; Move print head up\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nG28 X0 ; home X axis\nM84 ; disable motors\n\n extruder_offset = 0x0 -gcode_flavor = reprap +gcode_flavor = marlin before_layer_gcode = ;BEFORE_LAYER_CHANGE\nG92 E0.0\n;[layer_z]\n\n layer_gcode = ;AFTER_LAYER_CHANGE\n;[layer_z] pressure_advance = 0 @@ -53,6 +53,7 @@ z_offset = 0 bed_shape = 0x0,200x0,200x200,0x200 max_print_height = 200 default_filament_profile = Basic PLA +silent_mode = 0 [printer:*0.15nozzle*] diff --git a/resources/ui_layout/Readme.md b/resources/ui_layout/Readme.md new file mode 100644 index 000000000..599e6a6a9 --- /dev/null +++ b/resources/ui_layout/Readme.md @@ -0,0 +1,74 @@ +# How to customize the setting UI + +## How it works +The software will search for each tab the needed ui files +* for fff printers: + * "print.ui" for the Print Settings tab + * "filament.ui" for the Filament Settings tab + * "printer.ui" for the Printer Settings tab +* for slaprinters: + * "sla_print.ui" for the Print Settings tab + * "sla_material.ui" for the Filament Settings tab + * "sla_printer.ui" for the Printer Settings tab +If a ui file isn't here, it will build the tab with the default (harcoded) layout. +## syntax +The tree is composed of page, group, lines and settings +A group has to be inside a page. +A line has to be inside a group. +A setting has to be inside a group or a line. +Each object has parameters +### syntax of each object +STR represent a label that can conatins any character but ':', leading and trailing space and tabs are removed. +INT represent an integer +parameters that are inside [] are optionals +each parameter is separated by ':' +* Page: + page:STR:STR + * first STR is for the label and the second for the icon, with or without the .svg / .png +* Group: + group[:nolabel][:label_width$INT][:EVENT]:STR + * EVENT can be extruders_count_event if the group contains extruders_count and is a printer tab ; silent_mode_event if the group contains silent_mode and is a printer tab ; material_density_event if the group contains material_density. + * label_width$INT is used to set the size of the left column, where labels are draw. + * nolabel is used to remove the left column, where labels are draw. +* Line: + line:STR +* setting: + setting[label$STR][:full_label][:full_width][:simple|advanced|expert][:width$INT][:width$INT][:id$INT]:STR + * STR, the last parameter: the id name of the setting. + * label$STR : to override the label by this new one + * full_label: to override the label by the "full one" + * full_width: to tell to create a field that span the full width + * simple|advanced|expert: add one of these to modify the mode in which this setting appear. If it's inside a lien, the first setting of the line decide for all the line. + * width$INT: change the width of the field. Don't works (yet) with every type of setting. + * height$INT: change the height of the field. Don't works (yet) with every type of setting. + * id $INT : for setting only a single value of a setting array. +* recommended_thin_wall_thickness_description: create a text widget to explain recommended thin wall thickness (only in a fff print tab) +* parent_preset_description: create a text widget to explain parent preset +* cooling_description: create a text widget to explain cooling (only in a filament tab) +* volumetric_speed_description: create a text widget to explain volumetric speed (only in a filament tab) +* filament_ramming_parameters: create a widget for filament ramming +* filament_overrides_page: create a page for overrides (only in a filament tab) +* unregular_pages: create needed special pages for a fff printer tab +* printhost: create printhost settings for the group (only in a printer tab) +* bed_shape: create bed shape widget (only in a printer tab) +* extruders_count: create extruders_count setting (only in a fff printer tab) +* logs: activated logs +### ui file syntax +trailing & leading tabs & spaces are removed, so you can indent as you want. +If the first character is '#', then this line is ignored +You can end page, group and line section by end_page, end_group but it's not mandatory as they do nothing. You have to use end_line because it indicates when the line end and you have to stop adding settings inside. Note that it's added automatically when line, group or page is called. + +exemple: + + page:my page:my icon name + group:my group name + setting:label$Choose your base layer height, if you dare:layer_height + line:perimeters + settings:label$count:perimeters + settings:label$only one is spiral:spiral_vase + end_line + end_group + end_page + +## notes +A print.ui.legacy is here with the prusaslicer tabs, just rename print.ui and remove the .legacy to switch from the slic3r++ print layout to prusaslicer print layout. diff --git a/resources/ui_layout/filament.ui b/resources/ui_layout/filament.ui new file mode 100644 index 000000000..1ecc35a90 --- /dev/null +++ b/resources/ui_layout/filament.ui @@ -0,0 +1,94 @@ + +page:Filament:spool +group:Filament + setting:filament_colour + setting:filament_diameter + setting:extrusion_multiplier + setting:filament_density + setting:filament_cost +group:Temperature °C + line:Extruder + setting:first_layer_temperature + setting:temperature + end_line + line:Bed + setting:first_layer_bed_temperature + setting:label:Other layers:bed_temperature + end_line + setting:chamber_temperature + +page:Cooling:time +group:Enable + setting:fan_always_on + setting:cooling + cooling_description +group:Fan settings + line:Fan speed + setting:min_fan_speed + setting:max_fan_speed + end_line + setting:bridge_fan_speed + setting:top_fan_speed + setting:disable_fan_first_layers +group:Cooling thresholds + setting:fan_below_layer_time + setting:slowdown_below_layer_time + setting:min_print_speed + +page:Advanced:wrench +group:Filament properties + setting:filament_type + setting:filament_soluble +group:Multimaterial toolchange temperature + setting:filament_enable_toolchange_temp + setting:filament_toolchange_temp + setting:filament_use_fast_skinnydip + setting:filament_enable_toolchange_part_fan + setting:filament_toolchange_part_fan_speed +group:Multimaterial toolchange string reduction + setting:filament_use_skinnydip + setting:filament_skinnydip_distance + setting:filament_melt_zone_pause + setting:filament_cooling_zone_pause + setting:filament_dip_insertion_speed + setting:filament_dip_extraction_speed +group:Print speed override + setting:filament_max_wipe_tower_speed + setting:filament_max_volumetric_speed + volumetric_speed_description +group:Wipe tower parameters + setting:filament_minimal_purge_on_wipe_tower +group:Toolchange parameters with single extruder MM printers + setting:filament_loading_speed_start + setting:filament_loading_speed + setting:filament_unloading_speed_start + setting:filament_unloading_speed + setting:filament_load_time + setting:filament_unload_time + setting:filament_toolchange_delay + setting:filament_cooling_moves + setting:filament_cooling_initial_speed + setting:filament_cooling_final_speed + setting:filament_wipe_advanced_pigment + filament_ramming_parameters + + +filament_overrides_page + +page:Custom G-code:cog +group:nolabel:Start G-code + setting:full_width:height$35:start_filament_gcode +group:nolabel:End G-code + setting:full_width:height$35:end_filament_gcode + +page:Notes:note.png +group:label_width$0:Notes + setting:full_width:height$25:filament_notes + +page:Dependencies:wrench.png + group:Profile dependencies + setting:compatible_printers + setting:full_width:color:compatible_printers_condition + setting:compatible_prints + setting:full_width:color:compatible_prints_condition + parent_preset_description diff --git a/resources/ui_layout/print.ui b/resources/ui_layout/print.ui new file mode 100644 index 000000000..42d558c0b --- /dev/null +++ b/resources/ui_layout/print.ui @@ -0,0 +1,255 @@ +#logs +page:Perimeters & Shell:shell +group:Vertical shells + setting:label$perimeters yeah!:width$5:perimeters + setting:spiral_vase + recommended_thin_wall_thickness_description +group:Horizontal shells + line:Solid layers + setting:top_solid_layers + setting:label$Bottom:bottom_solid_layers + end_line + setting:enforce_full_fill_volume +group:Quality (slower slicing) + line:Extra perimeters + setting:extra_perimeters + setting:extra_perimeters_odd_layers + end_line + setting:only_one_perimeter_top + setting:ensure_vertical_shell_thickness + setting:avoid_crossing_perimeters + setting:thin_perimeters + line:Thin walls + setting:thin_walls + setting:thin_walls_min_width + setting:thin_walls_overlap + end_line + line:Overhangs + setting:overhangs + setting:overhangs_width + end_line + setting:no_perimeter_unsupported_algo +group:Advanced + line:Gap Fill + setting:gap_fill + setting:gap_fill_min_area + end_line + line:Seam + setting:seam_position + setting:seam_travel + end_line + line:External Perimeter + setting:external_perimeters_first + setting:external_perimeters_vase + end_line + line:Looping perimeter + setting:perimeter_loop + setting:perimeter_loop_seam + end_line + +page:Slicing:layers +group:Layer height + setting:layer_height + setting:first_layer_height +group:Filtering + setting:resolution + setting:model_precision + setting:slice_closing_radius +group:Modifying slices + line:Curve smoothing + setting:curve_smoothing_precision + setting:curve_smoothing_angle_convex + setting:curve_smoothing_angle_concave + setting:curve_smoothing_cutoff_dist + end_line + line:XY compensation + setting:xy_size_compensation + setting:elefant_foot_compensation + setting:hole_size_compensation + end_line + setting:hole_to_polyhole +group:Other + setting:clip_multipart_objects + +page:Infill:infill +group:Infill + setting:fill_density + setting:fill_pattern + line:External patterns + setting:top_fill_pattern + setting:bottom_fill_pattern + end_line + setting:solid_fill_pattern + setting:infill_not_connected +group:Reducing printing time + setting:infill_every_layers + setting:infill_only_where_needed + line:Supporting dense layer + setting:infill_dense + setting:infill_dense_algo + end_line +group:Advanced + setting:solid_infill_every_layers + setting:solid_infill_below_area + line:Angle + setting:fill_angle + setting:bridge_angle + end_line + line:Anchor solid infill by X mm + setting:external_infill_margin + setting:bridged_infill_margin + end_line + setting:only_retract_when_crossing_perimeters + setting:infill_first +group:Advanced Infill + line:Ironing tuning + setting:fill_smooth_width + setting:fill_smooth_distribution + end_line + +page:Skirt & Brim:skirt+brim +group:Skirt + setting:skirts + setting:skirt_distance + setting:skirt_height + setting:min_skirt_length +group:Brim + setting:brim_width + setting:brim_inside_holes + setting:brim_width_interior + line:Brim ears + setting:brim_ears + setting:brim_ears_max_angle + end_line + +page:Support material:support +group:Support material + setting:support_material + setting:support_material_auto + setting:support_material_threshold + setting:support_material_enforce_layers +group:Raft + setting:support_material_solid_first_layer + setting:raft_layers +group:Options for support material and raft + line:Z-offset + setting:support_material_contact_distance_type + setting:support_material_contact_distance_top + setting:support_material_contact_distance_bottom + end_line + setting:support_material_pattern + setting:support_material_with_sheath + setting:support_material_spacing + setting:support_material_angle + setting:support_material_buildplate_only + setting:support_material_xy_spacing + setting:dont_support_bridges + setting:support_material_synchronize_layers +group:Options for support material interface + setting:support_material_interface_pattern + setting:support_material_interface_layers + setting:support_material_interface_spacing + setting:support_material_interface_contact_loops + +page:Speed:time +group:Speed for print moves + line:Perimeter speed + setting:perimeter_speed + setting:external_perimeter_speed + setting:small_perimeter_speed + end_line + line:Infill speed + setting:infill_speed + setting:solid_infill_speed + setting:top_solid_infill_speed + end_line + line:Support speed + setting:support_material_speed + setting:support_material_interface_speed + end_line + setting:bridge_speed + setting:gap_fill_speed +group:Speed for non-print moves + setting:travel_speed +group:Modifiers + line:First layer speed + setting:first_layer_speed + setting:first_layer_infill_speed + end_line +group:Acceleration control (advanced) + setting:perimeter_acceleration + setting:infill_acceleration + setting:bridge_acceleration + setting:first_layer_acceleration + setting:default_acceleration +group:Autospeed (advanced) + setting:max_print_speed + setting:max_volumetric_speed + +page:Width & Flow:width +group:Extrusion width + setting:extrusion_width + setting:first_layer_extrusion_width + setting:perimeter_extrusion_width + setting:external_perimeter_extrusion_width + setting:infill_extrusion_width + setting:solid_infill_extrusion_width + setting:top_infill_extrusion_width + setting:support_material_extrusion_width +group:Overlap + setting:infill_overlap + setting:bridge_overlap +group:Flow + line:Flow ratio + setting:bridge_flow_ratio + setting:over_bridge_flow_ratio + setting:fill_top_flow_ratio + end_line + +page:Multiple extruders:funnel +group:Extruders + setting:perimeter_extruder + setting:infill_extruder + setting:solid_infill_extruder + setting:support_material_extruder + setting:support_material_interface_extruder +group:Ooze prevention + setting:ooze_prevention + setting:standby_temperature_delta +group:Wipe tower + setting:wipe_tower + line:Wipe tower position + setting:wipe_tower_x + setting:wipe_tower_y + end_line + setting:wipe_tower_width + setting:wipe_tower_rotation_angle + setting:wipe_tower_bridging + setting:wipe_tower_no_sparse_layers + setting:single_extruder_multi_material_priming +group:Advanced + setting:interface_shells + +page:Output options:output+page_white +group:Sequential printing + setting:complete_objects + line:Extruder clearance (mm) + setting:width$6:extruder_clearance_radius + setting:width$6:extruder_clearance_height + end_line +group:Output file + setting:gcode_comments + setting:gcode_label_objects + setting:full_width:output_filename_format +group:Post-processing scripts + setting:full_width:height$5:post_process + +page:Notes:note +group:nolabel:Notes + setting:full_width:height$25:notes + +page:Dependencies:wrench +group:Profile dependencies + setting:compatible_printers + setting:full_width:color:compatible_printers_condition + parent_preset_description diff --git a/resources/ui_layout/print.ui.legacy b/resources/ui_layout/print.ui.legacy new file mode 100644 index 000000000..c6c7f0f3e --- /dev/null +++ b/resources/ui_layout/print.ui.legacy @@ -0,0 +1,236 @@ +#logs +page:Layers and perimeters:layers +group:Layer height + setting:layer_height + setting:first_layer_height +group:Vertical shells + setting:label$perimeters yeah!:width$5:perimeters + setting:spiral_vase + recommended_thin_wall_thickness_description +group:Horizontal shells + line:Solid layers + setting:top_solid_layers + setting:label$Bottom:bottom_solid_layers + end_line + setting:enforce_full_fill_volume +group:Quality (slower slicing) + setting:full_lablel:extra_perimeters + setting:full_lablel:extra_perimeters_odd_layers + setting:only_one_perimeter_top + setting:ensure_vertical_shell_thickness + setting:avoid_crossing_perimeters + setting:thin_perimeters + line:Thin walls + setting:thin_walls + setting:thin_walls_min_width + setting:thin_walls_overlap + end_line + line:Overhangs + setting:overhangs + setting:overhangs_width + end_line + setting:no_perimeter_unsupported_algo +group:Advanced + line:Gap Fill + setting:gap_fill + setting:gap_fill_min_area + end_line + line:Seam + setting:seam_position + setting:seam_travel + end_line + line:External Perimeter + setting:external_perimeters_first + setting:external_perimeters_vase + end_line + line:Looping perimeter + setting:perimeter_loop + setting:perimeter_loop_seam + end_line + +page:Infill:infill +group:Infill + setting:fill_density + setting:fill_pattern + setting:full_label:top_fill_pattern + setting:full_label:bottom_fill_pattern + setting:solid_fill_pattern + setting:infill_not_connected +group:Reducing printing time + setting:infill_every_layers + setting:infill_only_where_needed + line:Supporting dense layer + setting:infill_dense + setting:infill_dense_algo + end_line +group:Advanced + setting:solid_infill_every_layers + setting:solid_infill_below_area + setting:full_label:fill_angle + setting:full_label:bridge_angle + line:Anchor solid infill by X mm + setting:external_infill_margin + setting:bridged_infill_margin + end_line + setting:only_retract_when_crossing_perimeters + setting:infill_first +group:Advanced Infill + line:Ironing tuning + setting:fill_smooth_width + setting:fill_smooth_distribution + end_line + +page:Skirt and brim:skirt+brim +group:Skirt + setting:skirts + setting:skirt_distance + setting:skirt_height + setting:min_skirt_length +group:Brim + setting:brim_width + setting:brim_inside_holes + setting:brim_width_interior + line:Brim ears + setting:brim_ears + setting:brim_ears_max_angle + end_line + +page:Support Material:support +group:Support material + setting:support_material + setting:support_material_auto + setting:support_material_threshold + setting:support_material_enforce_layers +group:Raft + setting:support_material_solid_first_layer + setting:raft_layers +group:Options for support material and raft + line:Z-offset + setting:support_material_contact_distance_type + setting:support_material_contact_distance_top + setting:support_material_contact_distance_bottom + end_line + setting:support_material_pattern + setting:support_material_with_sheath + setting:support_material_spacing + setting:support_material_angle + setting:support_material_buildplate_only + setting:support_material_xy_spacing + setting:dont_support_bridges + setting:support_material_synchronize_layers +group:Options for support material interface + setting:support_material_interface_pattern + setting:support_material_interface_layers + setting:support_material_interface_spacing + setting:support_material_interface_contact_loops + +page:Speed:time +group:Speed for print moves + setting:full_label:perimeter_speed + setting:full_label:external_perimeter_speed + setting:full_label:small_perimeter_speed + setting:full_label:infill_speed + setting:full_label:solid_infill_speed + setting:full_label:top_solid_infill_speed + setting:full_label:support_material_speed + setting:full_label:support_material_interface_speed + setting:bridge_speed + setting:gap_fill_speed +group:Speed for non-print moves + setting:travel_speed +group:Modifiers + setting:full_label:first_layer_speed + setting:full_label:first_layer_infill_speed +group:Acceleration control (advanced) + setting:perimeter_acceleration + setting:infill_acceleration + setting:bridge_acceleration + setting:first_layer_acceleration + setting:default_acceleration +group:Autospeed (advanced) + setting:max_print_speed + setting:max_volumetric_speed + +page:Multiple Extruders:funnel +group:Extruders + setting:perimeter_extruder + setting:infill_extruder + setting:solid_infill_extruder + setting:support_material_extruder + setting:support_material_interface_extruder +group:Ooze prevention + setting:ooze_prevention + setting:standby_temperature_delta +group:Wipe tower + setting:wipe_tower + setting:full_label:wipe_tower_x + setting:full_label:wipe_tower_y + setting:wipe_tower_width + setting:wipe_tower_rotation_angle + setting:wipe_tower_bridging + setting:wipe_tower_no_sparse_layers + setting:single_extruder_multi_material_priming +group:Advanced + setting:interface_shells + + +page:Advanced:wrench +group:Extrusion width + setting:extrusion_width + setting:first_layer_extrusion_width + setting:perimeter_extrusion_width + setting:external_perimeter_extrusion_width + setting:infill_extrusion_width + setting:solid_infill_extrusion_width + setting:top_infill_extrusion_width + setting:support_material_extrusion_width +group:Overlap + setting:infill_overlap + setting:bridge_overlap +group:Flow + line:Flow ratio + setting:bridge_flow_ratio + setting:over_bridge_flow_ratio + setting:fill_top_flow_ratio + end_line +group:Filtering + setting:resolution + setting:model_precision + setting:slice_closing_radius +group:Modifying slices + line:Curve smoothing + setting:curve_smoothing_precision + setting:curve_smoothing_angle_convex + setting:curve_smoothing_angle_concave + setting:curve_smoothing_cutoff_dist + end_line + setting:full_label:xy_size_compensation + setting:full_label:elefant_foot_compensation + setting:full_label:hole_size_compensation + setting:hole_to_polyhole +group:Other + setting:clip_multipart_objects + +page:Output options:output+page_white +group:Sequential printing + setting:complete_objects + line:Extruder clearance (mm) + setting:width$6:extruder_clearance_radius + setting:width$6:extruder_clearance_height + end_line +group:Output file + setting:gcode_comments + setting:gcode_label_objects + setting:full_width:output_filename_format +group:Post-processing scripts + setting:full_width:height$5:post_process + +page:Notes:note +group:nolabel:Notes + setting:full_width:height$25:notes + +page:Dependencies:wrench +group:Profile dependencies + setting:compatible_printers + setting:full_width:color:compatible_printers_condition + parent_preset_description diff --git a/resources/ui_layout/printer_fff.ui b/resources/ui_layout/printer_fff.ui new file mode 100644 index 000000000..138cbc864 --- /dev/null +++ b/resources/ui_layout/printer_fff.ui @@ -0,0 +1,49 @@ + +page:General:printer +group:Size and coordinates + bed_shape + setting:max_print_height + setting:z_offset +group:extruders_count_event:Capabilities + extruders_count + setting:single_extruder_multi_material +group:Print Host upload + printhost +group:silent_mode_event:Firmware + setting:gcode_flavor + setting:silent_mode + setting:remaining_times + setting:fan_speedup_time +group:Advanced + setting:use_relative_e_distances + setting:use_firmware_retraction + setting:use_volumetric_e + setting:variable_layer_height + +page:Custom G-code:cog +height:15 +group:nolabel:Start G-code + setting:full_width:start_gcode +group:nolabel:End G-code + setting:full_width:end_gcode +group:nolabel:Before layer change G-code + setting:full_width:before_layer_gcode +group:nolabel:After layer change G-code + setting:full_width:layer_gcode +group:nolabel:Tool change G-code + setting:full_width:toolchange_gcode +group:nolabel:Between objects G-code (for sequential printing) + setting:full_width:between_objects_gcode +group:nolabel:Between extrusion role change G-code + setting:full_width:feature_gcode +height:0 + +page:Notes:note.png +group:nolabel:Notes + setting:full_width:height$25:printer_notes + +page:Dependencies:wrench.png + group:Profile dependencies + parent_preset_description + +unregular_pages diff --git a/resources/ui_layout/printer_sla.ui b/resources/ui_layout/printer_sla.ui new file mode 100644 index 000000000..4370bf1f7 --- /dev/null +++ b/resources/ui_layout/printer_sla.ui @@ -0,0 +1,46 @@ + +page:General:printer +group:Size and coordinates + bed_shape + setting:max_print_height +group:Display + setting:display_width + setting:display_height + line:Number of pixels in + setting:label$X:display_pixels_x + setting:label$Y:display_pixels_y + end_line + setting:display_orientation +# FIXME: This should be on one line in the UI + line:Display mirroring + setting:label$horizontal:display_mirror_x + setting:label$vertical:display_mirror_y + end_line +group:Tilt + line:Tilt time + setting:fast_tilt_time + setting:slow_tilt_time + end_line + setting:area_fill +group:Corrections + line:Printer scaling correction + setting:label$XY:id$0:relative_correction + setting:label$Z:id$1:relative_correction + end_line + setting:absolute_correction + setting:gamma_correction +group:Exposure + setting:min_exposure_time + setting:max_exposure_time + setting:min_initial_exposure_time + setting:max_initial_exposure_time +group:Print Host upload + build_printhost + +page:Notes:note.png +group:nolabel:Notes + setting:full_width:height$25:printer_notes + +page:Dependencies:wrench.png + group:Profile dependencies + parent_preset_description diff --git a/resources/ui_layout/sla_material.ui b/resources/ui_layout/sla_material.ui new file mode 100644 index 000000000..2322768f6 --- /dev/null +++ b/resources/ui_layout/sla_material.ui @@ -0,0 +1,32 @@ +#logs +page:Material:resin +group:material_density_event:Material + setting:bottle_cost + setting:bottle_volume + setting:bottle_weight + setting:material_density + +group:Layers + setting:initial_layer_height + +group:Exposure + setting:exposure_time + setting:initial_exposure_time + +group:label_width$19:Corrections + line:material_correction + setting:label$XY:id$0:width$6:material_correction + setting:label$Z:id$1:width$6:material_correction + end_line + +page:Notes:note +group:label_width$0:nolabel:Notes + setting:full_width:height$25:material_notes + +page:Dependencies:wrench +group:Profile dependencies + setting:color:compatible_printers + setting:full_width:compatible_printers_condition + setting:color:compatible_prints + setting:full_width:compatible_prints_condition + parent_preset_description diff --git a/resources/ui_layout/sla_print.ui b/resources/ui_layout/sla_print.ui new file mode 100644 index 000000000..5075a7611 --- /dev/null +++ b/resources/ui_layout/sla_print.ui @@ -0,0 +1,63 @@ + +page:Layers and perimeters:layers +group:Layers + setting:layer_height + setting:faded_layers + +page:Supports:support +group:Supports + setting:supports_enable +group:Support head + setting:support_head_front_diameter + setting:support_head_penetration + setting:support_head_width +group:Support pillar + setting:support_pillar_diameter + setting:support_pillar_connection_mode + setting:support_buildplate_only +# TODO: This parameter is not used at the moment. +# setting:support_pillar_widening_factor + setting:support_base_diameter + setting:support_base_height + setting:support_base_safety_distance +# Mirrored parameter from Pad page for toggling elevation on the same page + setting:pad_around_object + setting:support_object_elevation +group:Connection of the support sticks and junctions + setting:support_critical_angle + setting:support_max_bridge_length + setting:support_max_pillar_link_distance +group:Automatic generation + setting:support_points_density_relative + setting:support_points_minimal_distance + +page:Pad:pad +group:Pad + setting:pad_enable + setting:pad_wall_thickness + setting:pad_wall_height + setting:pad_brim_size + setting:pad_max_merge_distance +# TODO: Disabling this parameter for the beta release +# setting:pad_edge_radius + setting:pad_wall_slope + setting:pad_around_object + setting:pad_around_object_everywhere + setting:pad_object_gap + setting:pad_object_connector_stride + setting:pad_object_connector_width + setting:pad_object_connector_penetration + +page:Advanced:wrench +group:Slicing + setting:slice_closing_radius + +page:Output options:output+page_white +group:Output file + setting:full_width:output_filename_format + +page:Dependencies:wrench +group:Profile dependencies + setting:color:compatible_printers + setting:full_width:compatible_printers_condition + parent_preset_description diff --git a/src/slic3r/GUI/OptionsGroup.cpp b/src/slic3r/GUI/OptionsGroup.cpp index 4e874b1a1..f9b8aeb59 100644 --- a/src/slic3r/GUI/OptionsGroup.cpp +++ b/src/slic3r/GUI/OptionsGroup.cpp @@ -124,7 +124,7 @@ void OptionsGroup::append_line(const Line& line, wxStaticText** full_Label/* = n } } - auto option_set = line.get_options(); + const std::vector