Commit graph

14 commits

Author SHA1 Message Date
Vojtech Bubnik
e42e25c933 1) Storing the physical_printer_settings_id into the 3MF, AMF, GCode.
2) Activating the physical_printer_settings_id when loading from 3MF, AMF, GCode.
   The physical printer is only activated if it references the printer_settings_id
   loaded from the same file.
3) When loading the presets from 3MF, AMF, GCode, the "external" profiles
   are no more created for profiles which differ from the local profiles
   the loaded profiles reference. Instead, the referenced profile is activated
   and modified with the loaded preset. If the referenced profile does not
   exist, but the profile refers to a system profile with the "inherits"
   fileds, the system profile is loaded and modified instead.
   This works for all profiles with the exception of multi-extruder
   printer with multiple filament profiles modified. In that case
   the first modified filament profile will be loaded as modified,
   while the other modified profiles will be loaded as "external".

This should fix
Physical printer + 3mf file, wrong preset used to generate gcode #5178
and possibly
https://github.com/prusa3d/PrusaSlicer/issues/5272
2020-12-04 10:48:51 +01:00
Vojtech Bubnik
7c571c1d9d Merge of pull request Add support for RepetierServer #4384 by @docbobo
with the following refactorings:

1) Removed the "printhost_slug" config from the Printer config
   and from all the Printer config related spots.
2) "printhost_slug" renamed to "printhost_port". Slug sounds nasty.
3) Improved error reporting of RepetierHost class.
4) Refactored for the new "Physical Printers"

Following refactorings were done independently of the Repetier pull request:
1) Removed PrintHost static print config.
2) Clean-up after conversion of print host configuration
   from Printer config to Physical Printer config.
3) Fixed some issues, where the Printer config was still queried for
   host configuration. Vojtech believes that this should not happen
   after the host configuration is converted to physical printers.

Vojtech still feels that more refactoring is needed in regard to porting
the host configuration from Printer profile to the new Physical Printer
profile.
2020-10-28 09:51:05 +01:00
Vojtech Bubnik
06c16b085d Snapshots extended to capture and restore sla_print, sla_material,
physical_printers.
Updated the snapshots dialog to display sla_print and sla_material.
Updated the snapshots dialog to display physical_printer instead of
printer if the physical_printer key is nonempty.
The "physical_printer" key was moved from [extras] to [presets] section
of PrusaSlicer.ini
2020-10-27 12:48:31 +01:00
Vojtech Bubnik
86ee8e7687 Improved matching of Print and Filament profiles after switching the Printer
profile. The matching has the following priority:

1) Compatible Print profile with the same logical name aka alias.
2) Prefered Print profile with the same layer height.
3) Compatible Print profile with the same layer height.
4) Prefered Print profile.
5) Any compatible profile.

The same logic applies to the selection of Filament profile, only
a filament_type is compared, not the layer height.
2020-10-16 16:03:31 +02:00
Vojtech Bubnik
d49a98f154 When switching Printer profiles, a profile with the same logical name
aka alias is searched for first before activating the default
print / filament profile as configured in the printer settings.
2020-10-16 14:45:54 +02:00
YuSanka
2bba0e3131 Physical printers: Implemented import/export to/from the ConfigBundle.
+ fixed a bug : Case sensitivity of printer's name wasn't check during the adding of a new printer,
as a result in printers list was appeared both of printers (ex. "YuSanka" and "yusanka"), but related file was just one.
2020-10-01 22:48:57 +02:00
Vojtech Bubnik
067cde85f1 WIP Refactoring of exceptions:
1) All slicer's exceptions are now derived from Slic3r::Exception.
2) New exceptions are defined for slicing errors.
3) Exceptions are propagated to the Plater to show.
It remains to modify the slicing back-end to throw the new SlicingError
exceptions instead of std::runtime_error and to show the other exceptions
by a message dialog instead of a notification.
2020-09-14 18:03:22 +02:00
YuSanka
618f04717f Unsaved Changes : improvement for the GUI_App::check_unsaved_changes()
Added use of UnsavedChangesDialog
2020-08-14 18:17:16 +02:00
YuSanka
a4c12b90f1 PhysicalPrinterCollection: Use select_preset() instead of select_preset_by_name()
+ changed signature for select_preset()
2020-07-23 12:17:18 +02:00
YuSanka
6d28d68e4a PhysicalPrinter : Implemented synchronizations from user printer profiles with "Print Host upload" information to the new physical printers 2020-07-22 09:24:12 +02:00
YuSanka
3d990a9189 First try to convert a user printer profiles to the physical printers 2020-07-20 16:27:39 +02:00
YuSanka
5eac36a310 Update for PresetComboBoxes
All "Printer-PresetName" pairs are like a separated items now

+ some code refactoring for PresetComboBoxes::update()
2020-07-17 14:32:38 +02:00
YuSanka
02624689ce Physical Printers.
- save/load printers
 - consistency between selection on Tab and Plater
2020-06-24 08:50:01 +02:00
YuSanka
19c4f32604 Preset and PresetBundle are moved to the _libslic3r_ folder 2020-06-16 17:03:06 +02:00
Renamed from src/slic3r/GUI/PresetBundle.cpp (Browse further)