Commit Graph

105 Commits

Author SHA1 Message Date
SoftFever
c86ca771de Introducing Orca Cloud: https://cloud.orcaslicer.com (#13414)
* Add OrcaCloud sync platform and preset bundle sharing system

  Introduce OrcaCloud, a cloud sync platform for user presets, alongside
  a preset bundle system that enables sharing printer/filament/process
  profiles as local exportable bundles or subscribed cloud bundles.

  OrcaCloud platform:
  - Auth to Orca Cloud
  - Encrypted token storage (file-based or system keychain)
  - User preset sync with
  - Profile migration from default/bambu folders on first login
  - Homepage integration with entrance to cloud.orcaslicer.com

  Preset bundles:
  - Local bundle import/export with bundle_structure.json metadata
  - Subscribed cloud bundles with version-based update checking
  - Thread-safe concurrent bundle access with read-write mutex
  - Canonical bundle preset naming (_local/<id>/... and _subscribed/<id>/...)
  - Bundle presets are read-only; grouped under subheaders in combo boxes
  - PresetBundleDialog with auto-sync toggle, refresh, update notifications
  - Hyperlinked bundle names to cloud bundle pages

  Co-authored-by: Sabriel Koh <sabrielkcr@gmail.com>
  Co-authored-by: Derrick <derrick992110@gmail.com>
  Co-authored-by: Mykola Nahirnyi <mnahirnyi@amcbridge.com>
  Co-authored-by: Ian Chua <iancrb00@gmail.com>
  Co-authored-by: Draginraptor <draginraptor@gmail.com>
  Co-authored-by: ExPikaPaka <112851715+ExPikaPaka@users.noreply.github.com>
  Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
  Co-authored-by: Ocraftyone <Ocraftyone@users.noreply.github.com>
  Co-authored-by: yw4z <ywsyildiz@gmail.com>
  Co-authored-by: peterm-m <101202951+peterm-m@users.noreply.github.com>

* Fixed an issue on Windows it failed to login Orca Cloud with Google account
2026-05-01 18:01:29 +08:00
SoftFever
fa67bc87f6 Fix non-ASCII path corruption on Windows using from_path() helper (#13036) 2026-03-30 14:51:45 +08:00
Alexandre Folle de Menezes
e71252977b Fix GUI strings that should start with uppercase (#12499) 2026-02-27 11:19:22 -03:00
SoftFever
e39aa183b3 refactor 2026-01-26 19:34:14 +08:00
yw4z
18b133fd7d Hyperlink class (#9947)
### FIXES
• 3mf file version check dialog opens bambu releases page instead Orca

### CODE COMPARISON

<img width="112" height="36" alt="Screenshot-20251128125737" src="https://github.com/user-attachments/assets/73718a18-8159-43d5-bb80-0eb90d59a8f6" />

**wxHyperlinkCtrl**
• System decides what colors to use. so blue color is visible even with colors set
• No need to use SetCursor()
```
auto wiki_url = "https://github.com/OrcaSlicer/OrcaSlicer/wiki/Built-in-placeholders-variables";
wxHyperlinkCtrl* wiki = new wxHyperlinkCtrl(this, wxID_ANY, _L("Wiki Guide"), wiki_url);
wiki->SetToolTip(wiki_url); // required to showing navigation point to user
wiki->SetFont(Label::Body_14); // not works properly
wiki->SetVisitedColour(wxColour("#009687")); // not works properly
wiki->SetHoverColour(  wxColour("#26A69A")); // not works properly
wiki->SetNormalColour( wxColour("#009687")); // not works properly
```

<img width="132" height="39" alt="Screenshot-20251128125847" src="https://github.com/user-attachments/assets/f6818dc0-5078-498a-bf09-1fd36e81ebe5" />

**wxStaticText**
• Works reliably on colors and fonts
• All event has to defined manually
```
wxStaticText* wiki = new wxStaticText(this, wxID_ANY, _L("Wiki Guide"));
auto wiki_url = "https://github.com/OrcaSlicer/OrcaSlicer/wiki/Built-in-placeholders-variables";
wiki->SetToolTip(wiki_url); // required to showing navigation point to user
wiki->SetForegroundColour(wxColour("#009687"));
wiki->SetCursor(wxCURSOR_HAND);
wxFont font = Label::Body_14;
font.SetUnderlined(true);
wiki->SetFont(font);
wiki->Bind(wxEVT_LEFT_DOWN   ,[this, wiki_url](wxMouseEvent e) {wxLaunchDefaultBrowser(wiki_url);});
wiki->Bind(wxEVT_ENTER_WINDOW,[this, wiki    ](wxMouseEvent e) {SetForegroundColour(wxColour("#26A69A"));});
wiki->Bind(wxEVT_LEAVE_WINDOW,[this, wiki    ](wxMouseEvent e) {SetForegroundColour(wxColour("#009687"));});
```

<img width="132" height="39" alt="Screenshot-20251128125847" src="https://github.com/user-attachments/assets/f6818dc0-5078-498a-bf09-1fd36e81ebe5" />

**HyperLink**
• Fully automated and single line solution
• Colors can be controllable from one place
• Works reliably on colors and fonts
• Reduces duplicate code
```
HyperLink* wiki = new HyperLink(this, _L("Wiki Guide"), "https://github.com/OrcaSlicer/OrcaSlicer/wiki/Built-in-placeholders-variables");
wiki->SetFont(Label::Body_14) // OPTIONAL default is Label::Body_14;
```


### CHANGES
• Unifies all hyperlinks with same style and makes them controllable from one place
• Replaces all wxHyperlink with simple custom class. Problem with wxHyperlink it mostly rendered as blue even color set
• Reduces duplicate code
• Adds wiki links for calibration dialogs
• Probably will add "Wiki Guide" to more dialogs overtime

<img width="349" height="238" alt="Screenshot-20251127212007" src="https://github.com/user-attachments/assets/69da2732-ea35-44de-8ebc-97a01f86328f" />

<img width="355" height="459" alt="Screenshot-20251127212021" src="https://github.com/user-attachments/assets/c0df40f8-c15d-47fa-b31a-cf8d8b337472" />

<img width="442" height="382" alt="Screenshot-20251127212046" src="https://github.com/user-attachments/assets/5d94242b-6364-4b0a-8b2f-a1f482199bd1" />

<img width="225" height="241" alt="Screenshot-20250824171339" src="https://github.com/user-attachments/assets/39ca6af3-6f8a-42ee-bf1d-c13d0f54bb63" />

<img width="442" height="639" alt="Screenshot-20251127212403" src="https://github.com/user-attachments/assets/c1c580f8-3e1b-42f0-aa8e-bac41c2ff76b" />

<img width="476" height="286" alt="Screenshot-20251127212515" src="https://github.com/user-attachments/assets/28b130ce-c7c0-4ada-9842-ff7154c00c21" />

<img width="1460" height="245" alt="Screenshot-20251127212541" src="https://github.com/user-attachments/assets/3fca2649-9cd3-4aea-9153-b2f508fdfefe" />

<img width="401" height="291" alt="Screenshot-20251127213243" src="https://github.com/user-attachments/assets/82b4ec1f-6074-4018-9efa-a1b6b819ae28" />
2026-01-03 23:06:57 +08:00
yw4z
464c42444e Match button styles on whole UI and fixes for button class (#11233)
* init

* web buttons

* Bind Dialog & Fix states

* update

* update

* Update common.css

* objcolordialog

* privacy update dialog

* Update CaliHistoryDialog.cpp

* Update MultiMachineManagerPage.cpp

* Update AMSControl.cpp

* TipsDialog

* Update AMSMaterialsSetting.cpp

* extrusion calibration

* Update UpdateDialogs.cpp

* recenterdialog

* update

* Update Calibration.cpp

* update

* update

* update

* fix

* update

* ReleaseNote

* update

* update

* fix remember checkbox position

* add comments
2025-12-18 12:14:56 +00:00
Noisyfox
dc889e387d Merge remote-tracking branch 'upstream/main' into dev/p2s-pr
# Conflicts:
#	src/slic3r/GUI/Plater.cpp
#	src/slic3r/GUI/PrePrintChecker.cpp
#	src/slic3r/GUI/StatusPanel.cpp
2025-11-18 09:17:13 +08:00
Alexandre Folle de Menezes
42d063fc8d Fix spacing and punctuation issues (#11244) 2025-11-17 09:35:53 +00:00
Noisyfox
11ac4d071b Merge branch 'main' into dev/p2s-pr
# Conflicts:
#	src/slic3r/GUI/Jobs/PrintJob.cpp
#	src/slic3r/GUI/SelectMachine.cpp
#	src/slic3r/GUI/SendToPrinter.cpp
#	src/slic3r/Utils/CalibUtils.cpp
2025-10-29 21:03:22 +08:00
Seref
99c4c050ab Add setting to enable uploads to abnormal Storage; improve sd_card_state error reporting (#10981)
* Add option to allow upload to SD-Cards marked as abnormal, also add better error description

+ Adds the options under the Network Settings to allow upload to abnormal SD-Card.
+ If not enabled user will now see why the upload is stuck at 10% depending on the sd_card_state (Readonly/Abnormal)

* Merging with current branch, and updateing "sd-card" to "storage"

* Generate localization and also change remaining sd_card_abnormal states to _storage_abnormal

* Fix issues from merge, and other bugfixes.

* Regenerate localization files.

* Improve Missing Storage Message, Add skip for abnormal storage in printer select dialog
2025-10-29 20:32:38 +08:00
haolin.tian
a75ca58d30 FIX: Prevent refresh during connection
jira: none
Change-Id: I84fda87d4b62d6cf2b22614336336aae5229feca
(cherry picked from commit 920bb3da0160c63cee66958a7b59d3ae5314ca88)
2025-10-28 15:30:04 +08:00
milk
03c6371878 FIX:change dark mode color of send page
jira:[none]

Change-Id: I21e4d76628315944f55e3df17b40208aa63fd9ec
(cherry picked from commit f66994b1bb1bc95739b1a9b8952f82d62abf0a36)
2025-10-28 15:30:02 +08:00
milk
4dbd3c8e40 FIX:change interface for send
jira:[none]

Change-Id: Ia59bb1bb606399541aa191991ff0fb3f106d75d1
(cherry picked from commit b22af6cfe0a589ae5fa2e95a01ebe47f6742ee99)
2025-10-28 15:30:02 +08:00
milk
e9e00f3e4c ENH:change send mode(master three patchs merged in this)
jira:[STUDIO-14427]

Change-Id: I1081e5252be3d932b2ffa29f70cbf93fee57eef9
(cherry picked from commit 662b7fdac8a999e54942cc9be0e5e2c2b8a90f06)
2025-10-28 15:30:01 +08:00
milk
53bfcbf1e2 FIX:add log for send thumbnail
jira:[STUDIO-13865]

Change-Id: Icf0823a83b028af7d0c87b1bccfea335fd27989e
(cherry picked from commit a911c30ab1996b261fae1cdb69d407c464ad287b)
2025-10-28 15:29:54 +08:00
xin.zhang
aae50ecd58 ENH: clean codes about device
JIRA: [STUDIO-13609]
Change-Id: I591de7033360b9570600006cfbce2148a8d031d5
(cherry picked from commit e9c774be8f4c89b8dafa14ef56913612fb68bd0c)
2025-10-02 09:30:48 +08:00
haolin.tian
d022bac5e3 FIX: remove legacy MQTT optimizations; disconnect previous printer on switch
jira: STUDIO-13455

Change-Id: I88f48801f443b3830fbd2bccbc53577f615e6d96
(cherry picked from commit 562ac1a3e7e75e1cab5e42ab09cec719bf698184)
(cherry picked from commit 5143086c5efb4d974e27ba4f55bd82752ded0a93)
2025-10-01 23:32:08 +08:00
milk
b53e43b70d FIX:change filename from 3mf to gcode.3mf
jira:[STUDIO-12827]

Change-Id: I0070f1e450b8b9d09507062c62efc75f1f361e6d
(cherry picked from commit d4a9ad1fdc57c93f3a51354908c29258f8c665fd)
2025-09-28 15:02:10 +08:00
xun.zhang
862f862a53 FIX: unable to send file to sd card if plate > 1
1. Should set plate index before send file

jira:STUDIO-12431

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id7828069a81f5671b0a6b90d7b0c9b703b10a9cc
(cherry picked from commit fd1e17f818c5c8e38d207e1e829dc5c5749e6f65)
2025-09-24 11:41:56 +08:00
milk
f16b8e45ad ENH:Avoid null pointer dereference
jira:[STUDIO-12113]

Change-Id: I992f2559f01e200697e6c7f105d94a81a445bcfd
(cherry picked from commit 849bfff512a9edad8d635fbc2bb7c10fd5f836df)
2025-09-24 11:39:57 +08:00
milk
6d0a8d8c0c ENH:The warning will not be displayed while the file is still being sent
jira:[STUDIO-12371]

Change-Id: I429a8a5af080dfd869b3a72d050e3019b9560665
(cherry picked from commit 95d43cb1aaf2f0dabcf4449c885039d7f9cb62ef)
2025-09-24 11:39:48 +08:00
milk
b3d009ee57 ENH:Modify the sending decision logic for FTP/TCP/TUTK
jira:[STUDIO-12330]

Change-Id: Iba7360dc9dbcce86985db64c16becf24f7a4c6db
(cherry picked from commit 0a0e76ec952bcc20f5e2823c489d0c27f7e93037)
2025-09-24 10:00:39 +08:00
milk
ec5ac2ef62 ENH:Add a network disconnection state to the sending module
jira:[STUDIO-11839]

Change-Id: I87d68f87a2fcb87110c20faa589b863c6cc34ce5
(cherry picked from commit d5be32428a3107e311a76edd254972a04b2061cb)
2025-09-24 10:00:20 +08:00
milk
0ecff8fae4 ENH:Edit the link copy and add a translation
jira:[none]

Change-Id: I33276e517b118d69762124ed50ee90e0a70f1c7b
(cherry picked from commit 7e8db714d42db28a1e69af04c0ab57f34da80e7c)
2025-09-24 09:39:27 +08:00
milk
ff9a75d763 ENH:Modify the sending logic to ensure that in public network mode, the fallback route is FTP
jira:[none]

Change-Id: I88c3f89960dfc9492e305f7cff0692590078f62c
(cherry picked from commit fe5814e81f7d0248a101fada0b03ecb039bbb88b)
2025-09-24 09:39:19 +08:00
xin.zhang
084b0019b7 FIX: do not disable the dialog
jira: [STUDIO-12070]
Change-Id: Ifea317deaab5e8cc9630930315104570966dc59a
(cherry picked from commit 3cb919424720bc09d1d3ed39096f9b08517d3fd3)
2025-09-23 17:20:03 +08:00
milk
2c21cf50d4 ENH:Add logging to the send function and optimize the connection process
jira: [STUDIO-11777]

Change-Id: Idac7b7835f13ec1805442a8c8aefbb35786c36ef
(cherry picked from commit 6c07f1b9a2858a9ab0c52330f78224a03ffb6f0c)
2025-09-23 17:11:37 +08:00
milk
03cd5c57ef ENH:After re-importing the multi-plate Gcode.3mf file, sending all plates to the printer results in information loss
jira: [STUDIO-11531]

Change-Id: Icfbf56ac1f6610f70c3ed192f765e3381ad8ddb6
(cherry picked from commit fcb4ca7a412dfc7c0897b96a3b4c528e6936c297)
2025-09-23 09:22:53 +08:00
milk
b51747173c ENH:Modification to Optimization of File Transfer System
jira: [STUDIO-11777]

Change-Id: Ica33b4a8177691590c07c3941b738939845d1e55
(cherry picked from commit 2100066a4acb3fd5ec987606c6efc978f9e0a392)
2025-09-21 16:28:22 +08:00
milk
d42f429e49 ENH:Optimization of File Transfer System Part2
jira: [STUDIO-11777]

Change-Id: I12744db7d2e3b53425454d632533768c54524677
(cherry picked from commit 4358e9ce351c5784e392a75d1ffcf2f54e1916ec)
2025-09-21 13:48:03 +08:00
milk
267a2e8ab4 ENH: Optimization of File Transfer System Part1
jira: [STUDIO-11777]

Change-Id: I733fd3532caa19546763ab8a72eb7667d5ffec53
(cherry picked from commit aa52c99076a78e2c8fd8d4e4b0b64de0bc761469)
2025-09-21 13:48:03 +08:00
Kunlong Ma
52acde360c FIX: fix some issue in sending files to external storage through cloud
JIRA: STUDIO-9372 STUDIO-9374 STUDIO-9368
If the printer version does not support uploading, the original protocol
will be used

Change-Id: I3d47ac2567c2c6709a5b983ff1ad552d9a8606d4
(cherry picked from commit b8dde8ae7f4f5883fc163c57bb607a08ecdabf2b)
2025-09-21 13:48:03 +08:00
tao wang
19372977d1 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
48621974eb ENH: fix the shown text
jira: [STUDIO-11407]
Change-Id: Ic1286621d4d85e2ab18b5b61c7ed2f055576c5b3
(cherry picked from commit 65868cf6037b8c29e5d0b0af9a9457a1e066472c)
2025-09-21 13:47:56 +08:00
xin.zhang
4fa56b61a8 ENH: move some level
jira: [none]
Change-Id: Ibd0d380b16b30f63144d38a0c34972d8b7c4153f
(cherry picked from commit 2da69efd9b0db6c2be6a1b3985bbafb7afc5d3be)
2025-09-21 13:47:50 +08:00
xin.zhang
051f8b1737 FIX: move network hold to MainFrame
jira: [STUDIO-10994]
Change-Id: I2c30ba3b0f17d52079332634a9a2dd138859e083
(cherry picked from commit 506e82cb02a79d97a30effde53fe85c7d278858c)
2025-09-18 16:22:57 +08:00
tao wang
747a6ec5a5 ENH:optimize the logic of the IP input window
jira:[STUDIO-10375 STUDIO-10534]

Change-Id: I75ff12403dbf8f59fa95c938fa97ec2497f0ed67
(cherry picked from commit b62efed65f26b1ea4390c2d1e8681169e63fff99)
2025-09-17 21:23:22 +08:00
Kunlong Ma
27c2cec556 FIX: Incorrect use of BBL_RELEASE_TO_PUBLIC
JIRA: STUDIO-9672 STUDIO-9770 STUDIO-9886

Change-Id: Ia4892f0c34964956be9246432a0797085558088b
(cherry picked from commit df295edc0fcea57d23239ed9756fc956383c8eb3)
2025-09-10 16:20:03 +08:00
tao wang
bdeea4d71f ENH:some UI optimizations
Change-Id: I3395ab87552d6beb3481bf2049bfd1096933f36d
(cherry picked from commit 66a783d126e55360cbbc35503c03f0366aacdf68)
2025-09-10 15:26:13 +08:00
Kunlong Ma
647a87fdaa FIX: fix send sd card with cloud issue
JIRA: STUDIO-9376 STUDIO-9419
1. Cancel sending during sending and then  resend failed
2. Optimization of prompt language after sending failure

Change-Id: I60bc4525b41cd4f803b811f0d1971bfed5cda0c5
(cherry picked from commit 92bd0cd18e4ea79b8b29f147e5ea09663837f7c0)
2025-09-09 11:09:31 +08:00
tao wang
3bfcb9ada3 ENH:fet the correct Agora status
jira:[none]

Change-Id: Ic779e41f0b652212aa8e4ce016cfe1ef2aba3608
(cherry picked from commit 1c1b366d0035298b387fbeb3a7ee69ef4afb8e2d)
2025-09-09 11:07:10 +08:00
Kunlong Ma
c5a2dcfca4 FIX: fix can't send file with cloud
JIRA: STUDIO-9195

Change-Id: I688b93032a99827a8a75febd33b45a2ba260acde
(cherry picked from commit 820b3fe4f6a0cb7db873d11c89399033f827091f)
2025-09-06 22:22:28 +08:00
tao wang
562b07946a ENH:change SD card to external storage
jira:[none ]

Change-Id: Ia8fb38151f75433344a085196728752d2fe6f159
(cherry picked from commit 6c7b61fcd8aefd9ad9da56da8b55e0c06865a677)
2025-09-05 19:48:50 +08:00
Kunlong Ma
536893b370 ENH: Do not display unavailable storage when sent to SD card
JIRA: STUDIO-9079
1. emmc for printer is unavailable
2. When the printer is not inserted with an SD card, it cannot send
   either

Change-Id: I59d2429ec2d13a5300e8bda46cb15f241fde614c
(cherry picked from commit d2096efe52704465f649c5b1846b3442ade8f078)
2025-08-28 14:10:49 +08:00
Kunlong Ma
7d13d2347f NEW: support send to sd card with cloud
JIRA: STUDIO-7378

Change-Id: I95fee50db29825e508d276d52c7a3e85e1347ebd
(cherry picked from commit 13db95ceb4f18b8cbce1e67447eeaa6ee36cc8ad)
2025-08-26 19:48:52 +08:00
Noisyfox
4acda7d003 Do not connect to default BBL device during app startup (#10214)
* Do not connect to default device during app startup

* Connect to last selected machine automatically even if it's lan machine
Simplify default machine connection logic

* Select last machine automatically when available

* Check for LAN connection state after updating combobox selection.
This matches the logic of `SendPrint.cpp`.

* Avoid showing same error message multiple times until next connection attempt.

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-07-26 00:18:56 +08:00
yw4z
96a1efb37e Color & Icon fixes / improvements (#9773)
* init

* update

* update

* revert changes for stepmesh dialog

* make highlight arrow more obvious

* reset to zero icons

* modernize return icon

* better dark mode icon for project page

* fix return arrow

* revert changes for hyperlinks

* update

* Update SelectMachine.cpp

* Update SendToPrinter.cpp

* update

* update plate icons

* dragcanvas dark mode support

* revert changes for calibration page

* revert changes for bind dialog

* Update BindDialog.cpp

* fix green text on bbl calibration window

* Update AmsMappingPopup.cpp

* match measure axis color

* fix

* update

* Update AmsMappingPopup.cpp

* revert color change for hyperlink

* Update NotificationManager.cpp

* update

* add icon for resonance avoidance

* update

* Fix wrong icon color after switching dark mode

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-17 15:26:55 +08:00
Noisyfox
bf2c6e4fcf Merge branch 'main' into dev/bbl-network-upd
# Conflicts:
#	src/slic3r/GUI/SelectMachine.cpp
2025-06-21 10:27:10 +08:00
yw4z
f6f80fe1ee Remove usage of titlebar icons (#9932)
* ibit

* update

* Update RecenterDialog.cpp

* Update AboutDialog.cpp
2025-06-20 16:52:15 +08:00
tao wang
4bfe77bfff ENH:Support more SD card states
jira:[for sdcard]

Change-Id: Ic09198a0ed357f827768ed2f8d8a9ed6266f749f
(cherry picked from commit c877405caba2b75c515c814b7aaa0793200eee04)
2025-05-26 14:41:43 +08:00