Commit Graph
45 Commits
Author SHA1 Message Date
Kris Austin 0f5891f25d build: clear 107 warnings - dead private fields (#15574) 2026-09-08 18:36:48 -03:00
Kris Austin fcf6f0a3a5 build: clear 54 warnings - dead private fields (#15423)
build: clear 54 dead private fields

54 of the 161 -Wunused-private-field warnings, across 31 files. These are
the ones needing no judgment. Each member is declared once and appears
nowhere else in src/, counting the .mm and .c sources as well as .cpp and
.hpp, so nothing writes them and nothing reads them. Every removal is a
whole line, and no declaration shares a line with another member.

The remaining 107 are left alone. Those members are mentioned elsewhere,
usually assigned and never read, where the fix might be deleting the
member or might be restoring a read that went missing.
2026-08-31 16:36:52 -03:00
Kris Austin 56f9edc572 build: mark missing overrides and drop unused lambda captures (1,156 clang warnings) (#15334)
* chore: mark every declaration that overrides a base virtual

clang-cl reports 42 member functions across 28 files that override a
base virtual without being marked `override`, inside classes that
already mark their other overrides. That is every occurrence of
-Winconsistent-missing-override in the tree, so the category drops to
zero and -Werror=inconsistent-missing-override becomes available as a
guard against it coming back.

Behaviour is unchanged. Each keyword goes only where clang had already
resolved the declaration to a base virtual, so it records what the
compiler already worked out and cannot affect overload resolution or
dispatch. If any of these signatures had not really overridden a base
method, the build would have failed rather than warned.

Where a declaration already carried `virtual` it is left alone and the
keyword appended, matching the surrounding declarations. Plain
`override` is used rather than the wxWidgets `wxOVERRIDE` macro, which
wx/defs.h defines as `override` beneath a comment marking it obsolete,
and which the rest of src/slic3r already avoids by 1742 occurrences to
113.

A full clang-cl build takes -Winconsistent-missing-override from 1,146
warning lines to 0. Those 42 declarations produce that many lines
because a header is re-diagnosed in every translation unit that
includes it. CalibrationWizardStartPage.hpp alone accounts for 336 of
them from 4 declarations.

* chore: drop unused lambda captures in GUI/Widgets

clang-cl reports 10 lambda captures in src/slic3r/GUI/Widgets that are
never read. Removing them changes nothing at runtime.

Every capture removed is `this` or a raw pointer. clang does not report
a capture whose type has a non-trivial destructor, since such a capture
can be held purely for its effect on an object's lifetime, so nothing
that owns or extends a lifetime is touched. The std::weak_ptr captured
beside the removed `this` in MultiNozzleSync.cpp stays.

This clears the category in GUI/Widgets only. A full clang-cl build
takes -Wunused-lambda-capture from 312 warning lines to 302, leaving
235 sites in other directories for a follow-up.
2026-08-25 08:18:48 -03:00
SoftFever 40a875800d Resync the AMS and device dialogs 2026-07-17 06:48:15 +08:00
SoftFever 5cf7e27c23 Show combined nozzle mapping when a filament switch is installed 2026-07-16 16:35:11 +08:00
04aa26da9a Fix nozzle diameter guards for printers that don't report nozzle info (#13255)
Fix nozzle diameter guards for printers that don't report nozzle info (#13236)

PR #12814 changed DevNozzle::m_diameter default from 0.4f to 0.0f to
mean "unknown" when firmware doesn't push nozzle info, and guarded two
call sites in SelectMachine.cpp. PR #13330 introduced
DevExtderSystem::NozzleDiameterMatchesOrUnknown() and adopted it in
get_printer_preset / CalibUtils / CalibrationWizardPresetPage. A few
reachable sites were still left out and now report "mismatch" / fail
silently for every non-BBL printer (Klipper/Moonraker, RRF, Marlin,
etc.) that doesn't push BBL nozzle data.

The most visible symptom: the "Sync filament colors from AMS" button on
Moonraker printers with AMS/AFC silently does nothing, because
get_printer_preset() couldn't find a matching system preset (fixed in
#13330, but the lookup-string sites below kept the bug visible
elsewhere).

Apply NozzleDiameterMatchesOrUnknown at the two remaining comparison
sites:

  src/slic3r/GUI/Plater.cpp
    - file-load printer-mismatch dialog — don't prompt on every load
    - on_select_preset sync_extruder_list gate — skip 0.0 extruders

For the three filament-lookup string-builder sites, fall back to the
currently-selected printer preset's nozzle diameter so the dropdown
isn't empty when firmware hasn't reported a diameter:

  src/slic3r/GUI/AMSMaterialsSetting.cpp (Popup + on_select_filament)
  src/slic3r/GUI/CaliHistoryDialog.cpp (get_all_filaments)

Also remove the dead SyncAmsInfoDialog::is_same_nozzle_diameters method
surfaced while auditing the affected sites — it was introduced
2024-12-30 in commit ad79ed6d93 ("ENH:add SyncAmsInfoDialog",
cherry-picked from Bambu's internal branch) but a caller was never
wired up on the OrcaSlicer side. Dead since introduction.

Fixes #13236
Refs #12814 #13330

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2026-05-27 20:41:15 +08:00
Noisyfox 754e602b53 Fix color & position of device info sync dialogs 2025-10-08 18:03:20 +08:00
xin.zhang 4a787f6ff8 ENH: clean codes about device
JIRA: [STUDIO-13609]
Change-Id: I591de7033360b9570600006cfbce2148a8d031d5
(cherry picked from commit e9c774be8f4c89b8dafa14ef56913612fb68bd0c)
2025-10-02 09:30:48 +08:00
tao wang 0317e0dd88 ENH:auto switch to using local broker for data transmission
jira:[STUDIO-11616]

Change-Id: I91066a629684dcff4efc73f310c2e0a7843954f4
(cherry picked from commit ac805e7d9150f56d40ec261fd2ed4007e1413b8e)
2025-09-23 09:20:15 +08:00
zhou.xu d408db2fde ENH:change wxStaticText to label in linux to solve darkmode problem
jira: STUDIO-11419
Change-Id: If7373deb03962ffd860a02acbf47b66f4dd68539
(cherry picked from commit c4325ade348731764afe3e645768387e402f8332)
(cherry picked from commit 02fcbc785efae3c96a134a7ae77920693c95dc08)
2025-09-21 18:03:25 +08:00
tao wang dc56608d13 NEW:add pre print checker
jira:[none]

Change-Id: Ic1469d30dff30e1eba92d8bfacf58d0f0b789157
(cherry picked from commit 8cfa735c6cac432a2b97dea7703e810f8eef6d04)
2025-09-21 13:48:03 +08:00
xin.zhang 472a48acc6 ENH: add nozzle type ntTungstenCarbide
jira: [STUDIO-11597]
Change-Id: Ibec41549042d253aeb85ba81e93e7c26a4a56ed2
(cherry picked from commit 1352cff31427eadd2c85ce4c9602ab3379a5ae9e)
2025-09-21 13:48:01 +08:00
zhou.xu d367136341 FIX:Missed an unmatched processing and add update_final_thumbnail_data
jira: STUDIO-11528
Change-Id: Ibc5b8423731d5028c8f3d2fb14518cfd26293a21
(cherry picked from commit d66d18529a874de5314748ee0cfded6b459eceb8)
2025-09-21 13:47:58 +08:00
zhou.xu 2d3d68c922 ENH:When the AMS option is turned on or off, update the correct thumbnail
jira: none
Change-Id: Ia001e4baa7de72ab077cf0fb76c45d4cb8bac088
(cherry picked from commit 89aa62f8b4cd11fa10a898956f1c57ae1ef64a70)
2025-09-21 13:47:50 +08:00
zhou.xu 06a86289cc FIX:Optimize button and checkbox resolution adaptation
jira: STUDIO-11003
Change-Id: Ia6325e3069a09cef45643442ad6f6ee929958446
(cherry picked from commit 7901e9fbaaa65e4746a16a89791a4a835db0e71e)
2025-09-18 16:20:19 +08:00
zhou.xu d434c743f3 ENH:add "reset all" function
jira: none
Change-Id: Iac2c267e95ca0589bf2e6d6d536d70d3b3e4a70c
(cherry picked from commit 7239f7bfaad2e1dc488118188addda3fb015793a)
2025-09-18 10:18:18 +08:00
zhou.xu 587e524302 ENH:Optimize the case with only external components
jira: STUDIO-9989
Change-Id: I7be626e8c86f684029a4c34fc8b800b880fe1fcd
(cherry picked from commit 1ea13f9846e5b66b0304cd4b6bcbfbb21d8919d8)
2025-09-17 23:08:16 +08:00
zhou.xu ef07246879 ENH:delete no use code and add log
jira: STUDIO-10644
Change-Id: Ia12ea45553e2856d0c8784c2a87a1e86adece003
(cherry picked from commit 38f1f265cfb9f79030b48137d2949de9f25e782f)
2025-09-17 17:56:31 +08:00
zhou.xu 06375250e6 ENH:add 'reset' button in AmsMapingPopup
jira: STUDIO-10009
Change-Id: Ia924ae9cbe0bec33f1b37af12633a9cb64836182
(cherry picked from commit 3b8aa5993d93598173e412766a938af17ebb2da5)
2025-09-17 17:56:25 +08:00
tao wang 18ffc5497b NEW:added inspection of pla-glow material
jira:[none]

Change-Id: I1a62992e24665b83f54981e59edc1ba1fcda9a8a
(cherry picked from commit fa2fc22f3e648c0f0f485d1a7e701658693da457)
2025-09-17 11:16:10 +08:00
zhou.xu 9f6c75a2f1 ENH:Handling pages with failed matching
jira: none
Change-Id: I6193c7be08e73760d00120a87bde93503bf716fe
(cherry picked from commit 2ab417f331c89d3dfdba43768786102ab9498bce)
2025-09-17 11:13:23 +08:00
zhou.xu ddfc8a6e31 FIX:Cancel incorrect references
jira: none
Change-Id: I3cd97f7521f6ac19158ddb9592758e39161fe6f8
(cherry picked from commit 3e55bddcee0c5c33511133571e51ea01c07118d3)
2025-09-17 11:02:28 +08:00
zhou.xu 80f92e4640 ENH:add scroll for SyncAmsDialog
jira: none
Change-Id: Id1a6ea1107b8672182f86e16f2093b661d8f8966
(cherry picked from commit fceb5ec5aa0248787abc362bdb8f2bf2b9c135c0)
2025-09-17 10:44:26 +08:00
zhou.xu c9f7aa1ee0 FIX:update "is_nozzle_type_match" api from SelectMachineDialog
jira: none
Change-Id: Ib767c4e64089296336a8c1e53634ef166853930e
(cherry picked from commit 93862fd666a3c1435ca36e5dba55554c28609d3b)
2025-09-17 10:21:15 +08:00
zhou.xu cbfa3fcdf2 FIX:reset direct_sync when init SyncAms dialog
jira: none
Change-Id: I38aa498a69dd60da2f7485da37e2f09f78694c1c
(cherry picked from commit 22d2db008b0700e614feae74473191e613dfa832)
2025-09-17 10:03:11 +08:00
zhou.xu b683661a45 ENH:Optimize interface display in "sync ams" dialog
jira: none
Change-Id: I51e8a55491112653e8e55eed0d6c93c6a37dcbe0
(cherry picked from commit a7ad6dfac4fdd013193680a728a90775e6bdf7a3)
2025-09-17 09:48:41 +08:00
zhou.xu 5f93b01ef3 FIX:add "check_empty_project" api
jira: none
Change-Id: Ic0b0b558c8786749b1ac036b87dc08519002b17f
(cherry picked from commit 93d0c59ed0692b7cfa3a7684e5d18f3157d6f0e7)
2025-09-17 09:29:59 +08:00
zhou.xu 25a195d1f4 ENH:Fix the issues discovered in the demo
jira: STUDIO-10384 STUDIO-10385 STUDIO-10387
Change-Id: I68f3099b9fbb6d6996373cae07b2e62930ce614c
(cherry picked from commit 91df890100199a3e26ef3792a1f8650d2dab8577)
2025-09-17 09:08:48 +08:00
zhou.xu 552c674483 NEW:Display AMS mapping relationship in override mode
jira: none
Change-Id: Iac0b3563df2f76710a5bc461adab6dd8335ee62d
(cherry picked from commit 69f28a711f7680a938a46209da61289787f1d8fa)
2025-09-16 15:53:28 +08:00
zhou.xu 34eac964aa FIX:fix bug for the base color of the color modification
after matching the untreated material
jira:STUDIO-10062

Change-Id: I699fd843600182bc87b224eee488e752b64ca0b4
(cherry picked from commit 29b0be89eb5190bd83d783bf173f14950aef738d)
2025-09-13 18:50:28 +08:00
zhou.xu 65c3a6330a FIX:fix dark mode bug of SyncAmsInfoDialog
jira: STUDIO-10012
Change-Id: I6b27b8908f04995814af97baabcee6f77643c125
(cherry picked from commit a87bdf0d543e2d55e11098a6713fc9965f67a150)
2025-09-12 17:43:15 +08:00
zhou.xu 3b69225bc8 NEW:add "Fade out" effect for BaseTransparentDPIFrame
jira: none
Change-Id: Ied2fd3a07c213c3518183865169728a87a7d5b1a
(cherry picked from commit c5406570bc8647d243011e330f4bd618bcceec85)
2025-09-12 17:39:25 +08:00
zhou.xu 45a3224539 NEW:add BaseTransparentDPIFrame and timed disappearance
jira: none
Change-Id: I8fcf56ead20aba640c59406c0dad3b6ad67f18a6
(cherry picked from commit d34a8cb2ee1cf0d29c2ca5187a4c168b775269f8)
2025-09-12 17:37:14 +08:00
zhou.xu 996ca9752e FIX:All plates share the current mapping
jira: STUDIO-10008
Change-Id: I5d04c95dea7bd6b56c97258863a190f0f0c3b4e6
(cherry picked from commit a1de92523fffd3558bf7a30fa98fa3958737c1a6)
2025-09-10 16:30:09 +08:00
zhou.xu 49743635f5 ENH:translate text
jira: none
Change-Id: I0bbacfc198b93f663d1e844664440e45cf39617d
(cherry picked from commit 248f6daf96591010654263d57c14bf45fef2a53b)
2025-09-10 16:26:15 +08:00
zhou.xu a90639130a ENH:add "only_external_material" logic
jira: STUDIO-9985
Change-Id: Iac15989bea39d1571eab66199737472381832017
(cherry picked from commit d317055f421ba2037f983ad1d99cd0e268b7274b)
2025-09-10 16:20:49 +08:00
zhou.xu 2456729002 FIX:fix bug of SyncAmsInfoDialog
jira: STUDIO-9948 STUDIO-9950
Change-Id: Ic97dfb7787c9e27386003b2dc3f88f1003456245
(cherry picked from commit 081df8f5809dc023487b239dc1419b20eacc7a40)
2025-09-10 16:14:02 +08:00
zhou.xu c2b8f7ecae FIX:update SyncAmsInfoDialog
jira: STUDIO-9928 STUDIO-9934
Change-Id: Ica81cb037ff0b99cc53a762b280a666e8c832ab3
(cherry picked from commit eeb474d2cee9187961db1941be952f806ff6c76d)
2025-09-10 15:29:28 +08:00
zhou.xu 8a6eddb7c2 NEW:add SyncNozzleAndAmsDialog
jira: none
Change-Id: Ib2e8d645a1b9a280da5c91b6de2fee313075bc17
(cherry picked from commit 4845e4c585cf2d57e028dd6e9ebc221b66dea324)
2025-09-10 15:06:02 +08:00
zhou.xu 80cd896896 ENH:update SyncAmsInfoDialog
jira: none
Change-Id: Icdfaa85500a0f448b9959923b863e6fbf72b397f
(cherry picked from commit baa2282dede7886720cdb564ef4de22710c5528c)
2025-09-10 15:00:55 +08:00
zhou.xu ee12c32b11 ENH:update SyncAmsInfoDialog
jira: none
Change-Id: I7549dd3334fd9bcc4eba5d3b41786516fd879f38
(cherry picked from commit 9b1717fa56b1d5baacc3801f23d1586050970574)
2025-09-10 11:17:47 +08:00
zhou.xu 2e8a5ecd87 FIX:update SyncAmsInfoDialog
jira: none
Change-Id: I8c34d47e799c56e2b1887794dc8a7bfaf8904d77
(cherry picked from commit e06aed7cbf144cdd77f9b7caa160c1c7f7941794)
2025-09-10 09:47:00 +08:00
zhou.xu e2d86888b5 FIX:add mode for syscAMsInfoDialog
jira: none
Change-Id: Iabfc9953f86cd08a2357a9197d6e1afe8d781d9f
(cherry picked from commit eaeac42b19b322f56b501c0d2ce99c4a6b2fd050)
2025-09-09 15:35:19 +08:00
zhou.xu e9cd160ae7 FIX:plate number corresponds to plate number in 3D
jira: none
Change-Id: I632e3e3330bddcc7744de8ebc69900feb57e1b41
(cherry picked from commit 5d30cb58834a0b9839f557644bb6c6a9689e12b4)
2025-09-07 23:27:40 +08:00
zhou.xu ad79ed6d93 ENH:add "SyncAmsInfoDialog"
JIRA: none

Change-Id: I8e26178f6da816e102a40b429c565696924c58ea
(cherry picked from commit 2a46460d5a65279cbb42c8aef2474172b1e1ae30)
(cherry picked from commit f7995d5a9f682107bd629841e2f903b0e6a0e7f2)
2025-09-07 20:55:54 +08:00