The 8dfd480c52 merge stripped <<<<<<<, =======, >>>>>>> markers
from three files. Two of the resolutions ended up syntactically
broken:
* PrintHostDialogs.hpp: both sides of the conflict added a new class
declaration in the same spot. The common closing }; lived after
the >>>>>>> marker, so concatenating without re-adding a closing
brace between the two classes left CrealityPrintHostSendDialog
unclosed. Compiler caught it via "storage class specified for
EVT_PRINTHOST_PROGRESS" at the wxDECLARE_EVENT lines (the events
were being parsed inside the still-open class body).
* PhysicalPrinterDialog.cpp: upstream's BonjourDialog fallback was
inside an `else { }` block whose closing brace remained after I
replaced the else with explicit early-return branches. Result was
one extra `}` after the Bonjour block.
No public commits affected -- the broken merge commit is still
local-only on LXC 104. Catching this before the force-push.
Consolidates #13744 (CFS filament sync) into this PR per maintainer
request and resyncs with main. Conflicts resolved:
* src/slic3r/GUI/Plater.cpp -- parallel else-if added by both sides
(htCrealityPrint + flashforge_local_api branches); kept both.
* src/slic3r/GUI/PhysicalPrinterDialog.cpp -- both sides added a
host-specific Browse dialog (Creality DNS-SD + Flashforge); kept
both as early-return branches, fall through to BonjourDialog.
* src/slic3r/GUI/PrintHostDialogs.hpp -- parallel class declarations
(CrealityPrintHostSendDialog + FlashforgePrintHostSendDialog);
kept both.
* Add Flashforge AD5X local send dialog, IFS mapping, and LAN discovery
* Refine Flashforge AD5X IFS dialog behavior
* Refine Flashforge IFS slot selection dialog
* Fix Flashforge printer selection and print mapping
* Use 3MF for Flashforge local uploads
* Generalize Flashforge local API handling
* Handle Flashforge local API IFS support more robustly
* Use selected plate filament info for Flashforge IFS mapping
* Fix Flashforge current-plate mapping and widget sizing
* Improve Flashforge IFS contrast and color matching
* Fix Flashforge legacy plate export and upload naming
Resolve PLATE_CURRENT_IDX before the legacy send-to-printhost path calls send_gcode so single-plate Flashforge 3MF exports target the selected plate instead of leaking the sentinel into export_3mf.
Sanitize Flashforge upload names in one shared utility reused by both the dialog and the backend client. This keeps the UI-visible filename and the actual uploaded filename consistent and replaces printer-problematic characters such as '=' without scattering Flashforge-specific logic through the generic Plater flow.
* Keep Flashforge upload filename sanitization in the backend only
Drop the PrintHostSendDialog API changes and keep filename sanitization inside the Flashforge backend paths that actually talk to the printer. This keeps the generic send dialog flow untouched while still normalizing problematic upload names for both serial and local API uploads.
* Only use the Flashforge IFS dialog for local API uploads
* Use reported Flashforge IFS support without model fallback
* Remove unused Flashforge slot uniqueness tracking
* Include <array> for Flashforge discovery message
Query CFS material slots and show colored dropdowns to map gcode
filaments to physical printer slots. Color mapping is passed through
extended_info as colorMatch entries for the multi-color print protocol.
Signed-off-by: Igor Mammedov <niallain@gmail.com>
---
v4:
- Use gcode tool index (T1A, T1B, ...) as colorMatch id instead of
CFS slot tool_id — firmware expects the gcode filament identifier,
not the destination slot
Add enableSelfTest checkbox to CrealityPrintHostSendDialog that
persists across sessions via AppConfig. The checkbox state is
passed to the upload via extendedInfo().
Signed-off-by: Igor Mammedov <niallain@gmail.com>
Add CrealityPrintHostSendDialog scaffolding: an empty dialog class
that inherits from PrintHostSendDialog, and Plater wiring to use
it when the host type is CrealityPrint.
Signed-off-by: Igor Mammedov <niallain@gmail.com>
* Added Elegoolink connection
* Set Elegoo CC default bed to btPTE
* Friendly output of some error codes of PrintHost
* feat: Add elegoo centauri carbon profile
* fix: Fix the issue where the bed type in the printer configuration does not match the bed temperature settings when multiple bed types are not supported.
* feat: Modify the elegoo process parameters to disable slowdown_for_curled_perimeters.
* feat: Update comment to clarify plate visibility for multi bed support, BBL printer, and selected bed type.
* fix: Optimize ElegooLink upload; The code is clearer than before.
* feat: Format the ElegooPrintHostSendDialog code.
* fix: Remove the unnecessary instantiation attribute in the Elegoo process.
* fix: Flatpak compilation failed
---------
Co-authored-by: anjis <anjis.zhou@elegoo.com>
* Allow using BBL's device tab when 3rd party print host is used
* Add option to open SimplyPrint panel in device tab after uploading
* Fix default print host for prusa connect
* Do not set api key in device view when SimplyPrint is used
* Sending 3mf file to SimplyPrint when using BBL printers
* Fix file extension when uploading 3mf
* Prepare for large file uploading
* Implement chunk upload
* Fix file uploading exceeding content size
* Fix wrong field type
* Add `temp=true` to all chunk upload calls
* Add macro to enable test api
* Merge branch 'main' into dev/simplyprint-improve
* Fix another missing `temp=true`
* Add delete token
* Try fixing build error on *nix systems
* Merge branch 'main' into dev/simplyprint-improve
* Merge branch 'main' into dev/simplyprint-improve
* Merge remote-tracking branch 'remote/main' into dev/simplyprint-improve
# Conflicts:
# src/slic3r/GUI/BackgroundSlicingProcess.cpp
* Move the `bbl_use_print_host_webui` option to print host dialog. Also make it a derived option of `print_host_webui` instead.
* Merge branch 'main' into dev/simplyprint-improve
# Conflicts:
# src/slic3r/GUI/MainFrame.cpp
# src/slic3r/GUI/Plater.cpp
* Merge branch 'main' into dev/simplyprint-improve
# Conflicts:
# src/slic3r/GUI/Plater.cpp
* Use a more generic option instead of SimplyPrint specific
* Merge branch 'main' into dev/simplyprint-improve
* Merge branch 'main' into dev/simplyprint-improve
PrusaLink: Use PUT or POST based on information read during test connection (upload-by-put). If put - do additional GET for storage_list and let user to choose where to upload or show name if only 1 is possible. Allow PrusaLink for MK2.5 and MK2.5S.
PrusaConnect: New host type PrusaConnect inherited from PrusaLink class with filled host address, disabled http diggest. After upload read header information - status message and pass it to notification and Printhost upload dialog via events, this message can be shown as warning notification and is recieved in localized lang. Pass accept-language shortcut in upload header. 3 option to upload. (upload, to queue, to print)
Upload Notification: Showing status text, changes in text, not showing close button, Completed state on special call (not 100%) and other design changes.
Right panel: Open URL button.
* wip
* fix cmake warning
* add UI and config options for Moonraker connection
* wip: copy whole print host UI from PS
* add more needed options
* wip 2
* fix string issue on Mac
* wip3
* fix cmake warning
* working
need tweaks
* cleanup
* support thumbnail
* fix DNS resolving issue in Windows
* code clean up