change 'OrcaSlicer' to 'Snapmaker Orca' (#88)

* change 'OrcaSlicer' to 'Snapmaker Orca'

* Fix Orca Multi-Language

* Update 1227
This commit is contained in:
xiaoyeliu
2025-12-27 18:28:06 +08:00
committed by GitHub
parent e14b22c1df
commit 9ade3620b0
42 changed files with 115536 additions and 180107 deletions
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1 +1 @@
e30270fddbfbaac23226aaf46fb5280f
3814d86b5ffb835b21d1cda7a4c4cab3
@@ -11,6 +11,6 @@ _flutter.buildConfig = {"engineRevision":"b8800d88be4866db1b15f8b954ab2573bba996
_flutter.loader.load({
serviceWorkerSettings: {
serviceWorkerVersion: "332938162"
serviceWorkerVersion: "3157657136"
}
});
@@ -3,11 +3,11 @@ const MANIFEST = 'flutter-app-manifest';
const TEMP = 'flutter-temp-cache';
const CACHE_NAME = 'flutter-app-cache';
const RESOURCES = {"flutter_bootstrap.js": "70025bb433b520d0ec62b28dee896ad3",
"version.json": "e52a93209d7448318a7147c855506052",
"index.html": "ac3c42043ce225dd2ddf521624bed1f8",
"/": "ac3c42043ce225dd2ddf521624bed1f8",
"main.dart.js": "0aecb6c76ad938e3203514c93b85649c",
const RESOURCES = {"flutter_bootstrap.js": "71ac4b5b85bddb6fdb98cd8356c6ddfa",
"version.json": "808d895cae9401882955eb0f582a0403",
"index.html": "626847718ec5c240e19799fa3d4aa135",
"/": "626847718ec5c240e19799fa3d4aa135",
"main.dart.js": "373c85329ab0536c3543cec4672eaeed",
"flutter.js": "f31737fb005cd3a3c6bd9355efd33061",
"version.changelog": "9590096c9e50df042fdc3575b0b6c55c",
"favicon.png": "be8d1ab28c20907c9869c345d0482962",
+2 -19
View File
@@ -55,27 +55,10 @@
</script>
<script>
function open_browser() {
function open_orca_webview() {
const message = JSON.stringify({
seqid: 1222222,
cmd: "homepage_test_browser",
params: {
url: "http://localhost:7357/?locale=zh-cn-CN&dark_model=1&path=/",
},
});
// 调用 window.postMessage 传递消息给 flutter
window.wx && window.wx.postMessage(message); // 调用 window.postMessage 传递消息给 原生系统
///模拟收到响应结果5000
if(!window.wx) {
// 我不能发现 window.wx
console.log('i dont find window.wx, so i simulate a return by postMessage, message: ', message)
}
}
function open_snapmaker_browser() {
const message = JSON.stringify({
seqid: 1222222,
cmd: "sw_OpenBrowser",
cmd: "sw_OpenOrcaWebview",
params: {
url: "http://localhost:7357/?locale=zh-cn-CN&dark_model=1&path=/",
},
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1 +1 @@
{"app_name":"orca","version":"2.2.1","build_number":"20251225210739","package_name":"orca"}
{"app_name":"orca","version":"2.2.1","build_number":"20251226192510","package_name":"orca"}
+1 -1
View File
@@ -947,7 +947,7 @@ std::string Model::get_backup_path()
std::time_t t = std::time(0);
std::tm* now_time = std::localtime(&t);
std::stringstream buf;
buf << "/orcaslicer_model/";
buf << "/snapmaker_orca_model/";
buf << std::put_time(now_time, "%a_%b_%d/%H_%M_%S#");
buf << pid << "#";
buf << this->id().id;
+6 -6
View File
@@ -602,7 +602,7 @@ void PrintConfigDef::init_common_params()
def = this->add("printhost_apikey", coString);
def->label = L("API Key / Password");
def->tooltip = L("Orca Slicer can upload G-code files to a printer host. This field should contain "
def->tooltip = L("Snapmaker Orca can upload G-code files to a printer host. This field should contain "
"the API Key or the password required for authentication.");
def->mode = comAdvanced;
def->cli = ConfigOptionDef::nocli;
@@ -1806,7 +1806,7 @@ void PrintConfigDef::init_fff_params()
def->tooltip = L(
"This option sets the min point for the allowed bed mesh area. Due to the probe's XY offset, most printers are unable to probe the "
"entire bed. To ensure the probe point does not go outside the bed area, the minimum and maximum points of the bed mesh should be "
"set appropriately. OrcaSlicer ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not exceed these min/max "
"set appropriately. Snapmaker Orca ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not exceed these min/max "
"points. This information can usually be obtained from your printer manufacturer. The default setting is (-99999, -99999), which "
"means there are no limits, thus allowing probing across the entire bed.");
def->sidetext = "mm"; // milimeters, don't need translation
@@ -2515,7 +2515,7 @@ void PrintConfigDef::init_fff_params()
def->category = L("Strength");
def->tooltip = L("Connect an infill line to an internal perimeter with a short segment of an additional perimeter. "
"If expressed as percentage (example: 15%) it is calculated over infill extrusion width. "
"Orca Slicer tries to connect two close infill lines to a short perimeter segment. If no such perimeter segment "
"Snapmaker Orca tries to connect two close infill lines to a short perimeter segment. If no such perimeter segment "
"shorter than infill_anchor_max is found, the infill line is connected to a perimeter segment at just one side "
"and the length of the perimeter segment taken is limited to this parameter, but no longer than anchor_length_max.\n"
"Set this parameter to zero to disable anchoring perimeters connected to a single infill line.");
@@ -2543,7 +2543,7 @@ void PrintConfigDef::init_fff_params()
def->category = L("Strength");
def->tooltip = L("Connect an infill line to an internal perimeter with a short segment of an additional perimeter. "
"If expressed as percentage (example: 15%) it is calculated over infill extrusion width. "
"Orca Slicer tries to connect two close infill lines to a short perimeter segment. If no such perimeter segment "
"Snapmaker Orca tries to connect two close infill lines to a short perimeter segment. If no such perimeter segment "
"shorter than this parameter is found, the infill line is connected to a perimeter segment at just one side "
"and the length of the perimeter segment taken is limited to infill_anchor, but no longer than this parameter.\n"
"If set to 0, the old algorithm for infill connection will be used, it should create the same result as with 1000 & 0.");
@@ -8183,12 +8183,12 @@ ReadWriteSlicingStatesConfigDef::ReadWriteSlicingStatesConfigDef()
def = this->add("position", coFloats);
def->label = L("Position");
def->tooltip = L("Position of the extruder at the beginning of the custom G-code block. If the custom G-code travels somewhere else, "
"it should write to this variable so OrcaSlicer knows where it travels from when it gets control back.");
"it should write to this variable so Snapmaker Orca knows where it travels from when it gets control back.");
def = this->add("e_retracted", coFloats);
def->label = L("Retraction");
def->tooltip = L("Retraction state at the beginning of the custom G-code block. If the custom G-code moves the extruder axis, "
"it should write to this variable so OrcaSlicer de-retracts correctly when it gets control back.");
"it should write to this variable so Snapmaker Orca de-retracts correctly when it gets control back.");
def = this->add("e_restart_extra", coFloats);
def->label = L("Extra de-retraction");
+1 -1
View File
@@ -286,7 +286,7 @@ AboutDialog::AboutDialog()
// SM Beta
text_list.push_back(_L("Note: The firmware version of SnapmakerU1 should be no less than") + " " + std::string(MIN_FIRM_VER));
text_list.push_back(_L("Snapmaker Orca beta is forked from Orca Slicer by SoftFever."));
text_list.push_back(_L("Snapmaker Orca is forked from Orca Slicer by SoftFever."));
text_list.push_back(_L("OrcaSlicer is forked from Bambu Studio by Bambu Lab."));
text_list.push_back(_L("Bambu Studio is forked from PrusaSlicer by Prusa Research, which is from Slic3r by Alessandro Ranellucci and the RepRap community. Orca Slicer incorporates a lot of features from SuperSlicer by @supermerill."));
text_list.push_back(_L("Snapmaker Orca integrates some features from the 3D printing open-source community, with specific attributions provided in the code comments."));
+1 -1
View File
@@ -379,7 +379,7 @@ void DesktopIntegrationDialog::perform_desktop_integration()
return;
}
// save path to desktop file
app_config->set("desktop_integration_app_path", GUI::format("%1%/applications/OrcaSlicer%2%.desktop", target_dir_desktop, version_suffix));
app_config->set("desktop_integration_app_path", GUI::format("%1%/applications/Snapmaker Orca%2%.desktop", target_dir_desktop, version_suffix));
// Repeat for Gcode viewer - use same paths as for slicer files
// Do NOT add gcode viewer desktop file on ChromeOS
+1 -1
View File
@@ -577,7 +577,7 @@ void MediaFilePanel::doAction(size_t index, int action)
wxPostEvent(Slic3r::GUI::wxGetApp().plater(), SimpleEvent(EVT_PRINT_FROM_SDCARD_VIEW));
}
else {
MessageDialog dlg(this, _L("The .gcode.3mf file contains no G-code data. Please slice it with Orca Slicer and export a new .gcode.3mf file."),
MessageDialog dlg(this, _L("The .gcode.3mf file contains no G-code data. Please slice it with Snapmaker Orca and export a new .gcode.3mf file."),
wxEmptyString, wxICON_WARNING | wxOK);
auto res = dlg.ShowModal();
}
+1 -1
View File
@@ -507,7 +507,7 @@ void MediaPlayCtrl::ToggleStream()
}
}
if (!url.empty() && wxGetApp().app_config->get("not_show_vcamera_stop_prev") != "1") {
MessageDialog dlg(this->GetParent(), _L("Another virtual camera is running.\nOrca Slicer supports only a single virtual camera.\nDo you want to stop this virtual camera?"), _L("Warning"),
MessageDialog dlg(this->GetParent(), _L("Another virtual camera is running.\nSnapmaker Orca supports only a single virtual camera.\nDo you want to stop this virtual camera?"), _L("Warning"),
wxYES | wxCANCEL | wxICON_INFORMATION);
dlg.show_dsa_button();
auto res = dlg.ShowModal();
+3 -3
View File
@@ -538,15 +538,15 @@ wxBoxSizer *Newer3mfVersionDialog::get_msg_sizer()
wxBoxSizer * horizontal_sizer = new wxBoxSizer(wxHORIZONTAL);
wxString msg_str;
if (file_version_newer) {
text1 = new wxStaticText(this, wxID_ANY, _L("The 3mf file version is in Beta and it is newer than the current Snapmaker Orca version."));
text1 = new wxStaticText(this, wxID_ANY, _L("The 3mf file version is in Beta and it is newer than the current Snapmaker Orca version."));
wxStaticText * text2 = new wxStaticText(this, wxID_ANY, _L("If you would like to try Snapmaker Orca Beta, you may click to"));
wxHyperlinkCtrl *github_link = new wxHyperlinkCtrl(this, wxID_ANY, _L("Download Beta Version"), "https://github.com/bambulab/BambuStudio/releases");
wxHyperlinkCtrl *github_link = new wxHyperlinkCtrl(this, wxID_ANY, _L("Download Beta Version"), "https://github.com/Snapmaker/OrcaSlicer/releases");
horizontal_sizer->Add(text2, 0, wxEXPAND, 0);
horizontal_sizer->Add(github_link, 0, wxEXPAND | wxLEFT, 5);
} else {
text1 = new wxStaticText(this, wxID_ANY, _L("The 3mf file version is newer than the current Snapmaker Orca version."));
wxStaticText *text2 = new wxStaticText(this, wxID_ANY, _L("Update your Snapmaker Orca could enable all functionality in the 3mf file."));
wxStaticText *text2 = new wxStaticText(this, wxID_ANY, _L("Updating your Snapmaker Orca could enable all functionality in the 3MF file."));
horizontal_sizer->Add(text2, 0, wxEXPAND, 0);
}
Semver app_version = *(Semver::parse(SLIC3R_VERSION));
+5 -5
View File
@@ -2423,7 +2423,7 @@ void Sidebar::sync_ams_list()
wxGetApp().app_config ->set("ams_filament_ids", p->ams_list_device, ams_filament_ids);
if (unknowns > 0) {
MessageDialog dlg(this,
_L("There are some unknown filaments mapped to generic preset. Please update Snapmaker Orca or restart Orca Slicer to check if there is an update to system presets."),
_L("There are some unknown filaments mapped to generic preset. Please update Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system presets."),
_L("Sync filaments with AMS"), wxOK);
dlg.ShowModal();
}
@@ -4594,7 +4594,7 @@ std::vector<size_t> Plater::priv::load_files(const std::vector<fs::path>& input_
// do not reset the model config
load_config = false;
if(load_type != LoadType::LoadGeometry)
show_info(q, _L("The 3mf is not supported by OrcaSlicer, load geometry data only."), _L("Load 3mf"));
show_info(q, _L("The 3mf is not supported by Snapmaker Orca, load geometry data only."), _L("Load 3mf"));
}
// else if (load_config && (file_version.maj() != app_version.maj())) {
// // version mismatch, only load geometries
@@ -4632,11 +4632,11 @@ std::vector<size_t> Plater::priv::load_files(const std::vector<fs::path>& input_
_sparse_infill_pattern == ipLockedZag;
if (!is_safe_to_rotate) {
wxString msg_text = _(
L("This project was created with an OrcaSlicer 2.3.1-alpha and uses "
L("This project was created with an Snapmaker Orca and uses "
"infill rotation template settings that may not work properly with your current infill pattern. "
"This could result in weak support or print quality issues."));
msg_text += "\n\n" +
_(L("Would you like OrcaSlicer to automatically fix this by clearing the rotation template settings?"));
_(L("Would you like Snapmaker Orca to automatically fix this by clearing the rotation template settings?"));
MessageDialog dialog(wxGetApp().plater(), msg_text, "", wxICON_WARNING | wxYES | wxNO);
dialog.SetButtonLabel(wxID_YES, _L("Yes"));
dialog.SetButtonLabel(wxID_NO, _L("No"));
@@ -15541,7 +15541,7 @@ void Plater::show_object_info()
#ifndef __WINDOWS__
if (non_manifold_edges > 0) {
info_manifold += into_u8("\n" + _L("Tips:") + "\n" +_L("\"Fix Model\" feature is currently only on Windows. Please repair the model on Orca Slicer(windows) or CAD softwares."));
info_manifold += into_u8("\n" + _L("Tips:") + "\n" +_L("\"Fix Model\" feature is currently only on Windows. Please repair the model on Snapmaker Orca(windows) or CAD softwares."));
}
#endif //APPLE & LINUX
+3 -3
View File
@@ -1187,7 +1187,7 @@ wxWindow* PreferencesDialog::create_general_page()
// SM Beta: temporarily open the item_stealth_mode and close the network plugin
/*auto item_stealth_mode = create_item_checkbox(_L("Stealth Mode"), page, _L("This stops the transmission of data to Bambu's cloud services. Users who don't use BBL machines or use LAN mode only can safely turn on this function."), 50, "stealth_mode");
/*auto item_stealth_mode = create_item_checkbox(_L("Stealth mode"), page, _L("This stops the transmission of data to Bambu's cloud services. Users who don't use BBL machines or use LAN mode only can safely turn on this function."), 50, "stealth_mode");
auto item_enable_plugin = create_item_checkbox(_L("Enable network plugin"), page, _L("Enable network plugin"), 50, "installed_networking");
auto item_legacy_network_plugin = create_item_checkbox(_L("Use legacy network plugin (Takes effect after restarting Orca)"), page, _L("Disable to use latest network plugin that supports new BambuLab firmwares."), 50, "legacy_networking");
*/
@@ -1228,7 +1228,7 @@ wxWindow* PreferencesDialog::create_general_page()
auto item_calc_in_long_retract = create_item_checkbox(_L("Flushing volumes: Auto-calculate every time when the filament is changed."), page, _L("If enabled, auto-calculate every time when filament is changed"), 50, "auto_calculate_when_filament_change");
auto item_remember_printer_config = create_item_checkbox(_L("Remember printer configuration"), page, _L("If enabled, Orca will remember and switch filament/process configuration for each printer automatically."), 50, "remember_printer_config");
auto item_step_mesh_setting = create_item_checkbox(_L("Show the step mesh parameter setting dialog."), page, _L("If enabled,a parameter settings dialog will appear during STEP file import."), 50, "enable_step_mesh_setting");
auto item_multi_machine = create_item_checkbox(_L("Multi-device Management (Take effect after restarting Orca Slicer)."), page, _L("With this option enabled, you can send a task to multiple devices at the same time and manage multiple devices."), 50, "enable_multi_machine");
auto item_multi_machine = create_item_checkbox(_L("Multi-device Management (Take effect after restarting Snapmaker Orca)."), page, _L("With this option enabled, you can send a task to multiple devices at the same time and manage multiple devices."), 50, "enable_multi_machine");
auto item_auto_arrange = create_item_checkbox(_L("Auto arrange plate after cloning"), page, _L("Auto arrange plate after object cloning"), 50, "auto_arrange");
auto title_presets = create_item_title(_L("Presets"), page, _L("Presets"));
auto title_network = create_item_title(_L("Network"), page, _L("Network"));
@@ -1289,7 +1289,7 @@ wxWindow* PreferencesDialog::create_general_page()
//dark mode
#ifdef _WIN32
auto title_darkmode = create_item_title(_L("Dark Mode"), page, _L("Dark Mode"));
auto item_darkmode = create_item_darkmode_checkbox(_L("Enable Dark mode"), page,_L("Enable Dark mode"), 50, "dark_color_mode");
auto item_darkmode = create_item_darkmode_checkbox(_L("Enable Dark mode"), page,_L("Enable dark mode"), 50, "dark_color_mode");
#endif
std::string enUrl = "https://www.snapmaker.com/privacy-policy";
+1 -1
View File
@@ -2949,7 +2949,7 @@ bool SelectMachineDialog::is_show_timelapse()
}
break;
}
if (line == "OrcaSlicer")
if (line == "Snapmaker Orca")
is_version = true;
}
}
+1 -1
View File
@@ -148,7 +148,7 @@ SysInfoDialog::SysInfoDialog()
#ifdef WIN32
std::wstring blacklisted_libraries = BlacklistedLibraryCheck::get_instance().get_blacklisted_string().c_str();
if (! blacklisted_libraries.empty())
blacklisted_libraries_message = wxString("<br><b>") + _L("Blacklisted libraries loaded into OrcaSlicer process:") + "</b><br>" + blacklisted_libraries;
blacklisted_libraries_message = wxString("<br><b>") + _L("Blacklisted libraries loaded into Snapmaker Orca process:") + "</b><br>" + blacklisted_libraries;
#endif // WIN32
const auto text = GUI::format_wxstr(
"<html>"
+1 -1
View File
@@ -4017,7 +4017,7 @@ void TabPrinter::build_fff()
const int gcode_field_height = 15; // 150
const int notes_field_height = 25; // 250
page = add_options_page(L("Machine gcode"), "custom-gcode_gcode"); // ORCA: icon only visible on placeholders
page = add_options_page(L("Machine G-code"), "custom-gcode_gcode"); // ORCA: icon only visible on placeholders
optgroup = page->new_optgroup(L("Machine start G-code"), L"param_gcode", 0);
optgroup->m_on_change = [this, &optgroup_title = optgroup->title](const t_config_option_key& opt_key, const boost::any& value) {
validate_custom_gcode_cb(this, optgroup_title, opt_key, value);
+1 -1
View File
@@ -463,7 +463,7 @@ WipingPanel::WipingPanel(wxWindow* parent, const std::vector<float>& matrix, con
auto message_sizer = new wxBoxSizer(wxVERTICAL);
tip_message_panel->SetSizer(message_sizer);
{
wxString message = _L("Orca would re-calculate your flushing volumes every time the filaments color changed. You could disable the auto-calculate in Orca Slicer > Preferences");
wxString message = _L("Orca would re-calculate your flushing volumes every time the filaments color changed. You could disable the auto-calculate in Snapmaker Orca > Preferences");
m_tip_message_label = new Label(tip_message_panel, wxEmptyString);
wxClientDC dc(tip_message_panel);
wxString multiline_message;
+1 -1
View File
@@ -99,7 +99,7 @@ boost::filesystem::path storage_path()
const std::string& base_dir = Slic3r::data_dir();
if (base_dir.empty())
return {};
return boost::filesystem::path(base_dir) / ".orcaslicer_machine_id";
return boost::filesystem::path(base_dir) / ".snapmaker_orca_machine_id";
}
std::optional<std::string> read_storage_file()