supermerill e68de2cf4f #260: better text & layout for filament cooling 4 лет назад
..
Readme.md 5fbc891707 Slic3r++ to SuperSlicer renamed in all files. 4 лет назад
extruder.ui 3404430ef7 milling settings (wip) 4 лет назад
filament.ui e68de2cf4f #260: better text & layout for filament cooling 4 лет назад
milling.ui 9b60be0c1a Initial working prototype for the milling post-process 4 лет назад
print.ui 9b60be0c1a Initial working prototype for the milling post-process 4 лет назад
print.ui.legacy cc96564321 Update to wizzard: add a thumbnail parameter ; don't auto-select prusa mini if no printer installed 4 лет назад
printer_fff.ui 3404430ef7 milling settings (wip) 4 лет назад
printer_sla.ui cc96564321 Update to wizzard: add a thumbnail parameter ; don't auto-select prusa mini if no printer installed 4 лет назад
sla_material.ui 7d95107793 Move layout of ui settings to config files. 5 лет назад
sla_print.ui 7d95107793 Move layout of ui settings to config files. 5 лет назад

Readme.md

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[:idx]:STR:STR

    • first STR is for the label and the second for the icon, with or without the .svg / .png
    • idx : append the index of the page (for extruder ui) to the name
  • Group: group[:nolabel][:title_width$INT][:label_width$INT][:sidetext_width$INT][:EVENT][:id$INT][:idx]: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.
    • title_width$INT is used to set the size of the left column, where labels are draw.
    • label_width$INT is used to set the size of the labels on lines.
    • sidetext_width$INT is used to set the size of the suffix label (see sidetext in setting).
    • EVENT can be extruders_count_event (TabPrinter only), silent_mode_event (TabPrinter only), material_density_event.
    • nolabel is used to remove the left column, where labels are draw.
  • Line: line:STR

  • setting: setting[label$STR][label_width$INT][:full_label][:full_width][:sidetext$STR][sidetext_width$INT][:simple|advanced|expert][:width$INT][:height$INT][:id$INT]:STR

    • STR, the last parameter: the id name of the setting.
    • label$STR : to override the label by this new one (if it ends with '_' it won't have a ':' ; if empty it won't have a length).
    • label_width$INT: change the width of the label. Only works if it's in a line. Override the group one. 0 for auto.
    • full_label: to override the label by the "full one".
    • full_width: to tell to create a field that span the full width.
    • sidetext$STR: the suffix at the right of the widget (like 'mm').
    • sidetext_width$INT: the suffix label length (override the group one). 0 for auto.
    • simple|advanced|expert: add one of these to modify the mode in which this setting appear.
    • width$INT: change the width of the field. Shouod work on most type of settings.
    • height$INT: change the height of the field. Don't works with every type of setting.
    • id $INT : for setting only a single value of a setting array.
    • idx : for setting only a single value of a setting array, with the index of the page (for extruder ui page)
  • 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 SuperSlicer print layout to prusaslicer print layout.