mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-10-10 17:21:10 +00:00
refactor(imex): use IMEX consistently in user-facing strings
Labels, tooltips, menu items and dialog text mixed "IDEX/IQEX" with "IMEX" for the same feature. IMEX is now the user-facing name throughout: IDEX and IQEX are hardware categories, IMEX is the feature spanning them. The hardware terms remain only where they help a user tell whether the feature applies to their printer. Comments and log messages keep IDEX/IQEX, where the specific carriage topology is the more precise term. Also corrects the imex_parallel_mode tooltip, which pointed at a "Printer -> IDEX/IQEX tab" that does not exist; the options live under Printer -> Multimaterial -> IMEX Configuration. None of these strings appear in any .po or the .pot, so no translation is affected. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
3852f4be61
commit
5e38877ba1
@@ -70,7 +70,7 @@ std::string imex_multicolor_block_reason(const std::string& parallel_mode,
|
||||
if (filament < 0 || filament >= (int)pem.values.size()) continue;
|
||||
const int phys = pem.get_at(filament);
|
||||
if (!seen_physicals.insert(phys).second) {
|
||||
return "Multi-color prints in IDEX/IQEX parallel modes require each filament "
|
||||
return "Multi-color prints in IMEX parallel modes require each filament "
|
||||
"to have its own dedicated physical extruder. Two or more of the active "
|
||||
"filaments are routed to the same physical head via the printer's "
|
||||
"physical extruder map (an MMU/AFC manifold), which the slaved gantry "
|
||||
@@ -82,8 +82,8 @@ std::string imex_multicolor_block_reason(const std::string& parallel_mode,
|
||||
// Determine which physical head is the primary in this mode.
|
||||
const int primary_physical = imex_primary_tool_for_mode(active_tools_str);
|
||||
if (primary_physical < 0) {
|
||||
return "The active IDEX/IQEX mode does not define a primary tool, so multi-color "
|
||||
"printing cannot be scheduled. Open the printer settings IDEX/IQEX Modes "
|
||||
return "The active IMEX mode does not define a primary tool, so multi-color "
|
||||
"printing cannot be scheduled. Open the printer settings IMEX Modes "
|
||||
"editor and assign a Primary role to one tool.";
|
||||
}
|
||||
|
||||
@@ -113,7 +113,7 @@ std::string imex_multicolor_block_reason(const std::string& parallel_mode,
|
||||
return "Multi-color in this mode isn't a parallel-print scenario — all of the "
|
||||
"active tools sit on a single gantry, so there's no second gantry being "
|
||||
"copied or mirrored to. Switch the plate to Primary mode for multi-color "
|
||||
"printing on a single gantry, or define an IDEX/IQEX mode that includes "
|
||||
"printing on a single gantry, or define an IMEX mode that includes "
|
||||
"tools on a second gantry.";
|
||||
}
|
||||
|
||||
@@ -123,10 +123,10 @@ std::string imex_multicolor_block_reason(const std::string& parallel_mode,
|
||||
// copies (each gantry tool prints its own object) which is incompatible with
|
||||
// mid-print multicolor in a parallel mode.
|
||||
if (!span_on_primary_gantry) {
|
||||
return "Multi-color prints in IDEX/IQEX parallel modes require a Span tool on the "
|
||||
return "Multi-color prints in IMEX parallel modes require a Span tool on the "
|
||||
"primary's gantry — without one, the mode doesn't declare a within-gantry "
|
||||
"multicolor partner. Either reduce the print to a single filament, switch to "
|
||||
"Primary mode, or open the printer settings IDEX/IQEX Modes editor and mark a "
|
||||
"Primary mode, or open the printer settings IMEX Modes editor and mark a "
|
||||
"tool on the primary's gantry as Span.";
|
||||
}
|
||||
return {};
|
||||
|
||||
@@ -6522,8 +6522,8 @@ void PrintConfigDef::init_fff_params()
|
||||
|
||||
// IDEX/IQEX (independent X extruder) — parallel printing support for IDEX/IQEX printers
|
||||
def = this->add("is_imex", coBool);
|
||||
def->label = L("IDEX/IQEX Printer");
|
||||
def->tooltip = L("Enable IDEX/IQEX (independent X extruder) support for IDEX/IQEX printers with multiple independent carriages.");
|
||||
def->label = L("IMEX Printer");
|
||||
def->tooltip = L("Enable IMEX parallel printing for printers with multiple independent carriages (IDEX, IQEX, and similar).");
|
||||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionBool(false));
|
||||
|
||||
@@ -6604,7 +6604,7 @@ void PrintConfigDef::init_fff_params()
|
||||
|
||||
def = this->add("imex_viz_theme", coEnum);
|
||||
def->label = L("Visualization Theme");
|
||||
def->tooltip = L("Color theme for IDEX/IQEX bed zone visualization. Choose a colorblind-friendly theme if needed.");
|
||||
def->tooltip = L("Color theme for IMEX bed zone visualization. Choose a colorblind-friendly theme if needed.");
|
||||
def->mode = comAdvanced;
|
||||
def->enum_keys_map = &ConfigOptionEnum<ImexVizTheme>::get_enum_values();
|
||||
def->enum_values.push_back("standard");
|
||||
@@ -6618,8 +6618,8 @@ void PrintConfigDef::init_fff_params()
|
||||
def->set_default_value(new ConfigOptionEnum<ImexVizTheme>(ImexVizTheme::Standard));
|
||||
|
||||
def = this->add("imex_parallel_mode", coString);
|
||||
def->label = L("IDEX/IQEX Print Mode");
|
||||
def->tooltip = L("Name of the active IDEX/IQEX parallel print mode, or \"primary\" for single-carriage printing. Requires IDEX/IQEX Printer enabled in the Printer preset (Printer \u2192 IDEX/IQEX tab).");
|
||||
def->label = L("IMEX Print Mode");
|
||||
def->tooltip = L("Name of the active IMEX parallel print mode, or \"primary\" for single-carriage printing. Requires IMEX Printer enabled in the Printer preset (Printer \u2192 Multimaterial \u2192 IMEX Configuration).");
|
||||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionString("primary"));
|
||||
|
||||
@@ -6631,19 +6631,19 @@ void PrintConfigDef::init_fff_params()
|
||||
def->set_default_value(new ConfigOptionString(""));
|
||||
|
||||
def = this->add("imex_mode_names", coStrings);
|
||||
def->label = L("IDEX/IQEX Mode Names");
|
||||
def->tooltip = L("Display names for each user-defined IDEX/IQEX parallel print mode.");
|
||||
def->label = L("IMEX Mode Names");
|
||||
def->tooltip = L("Display names for each user-defined IMEX parallel print mode.");
|
||||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionStrings());
|
||||
|
||||
def = this->add("imex_mode_active_tools", coStrings);
|
||||
def->label = L("IDEX/IQEX Mode Active Tools");
|
||||
def->tooltip = L("Tool role assignments for each mode. Format: \"idx:P,idx:C,idx:M\" where P=Primary, C=Copy, M=Mirror (e.g. \"0:P,1:C,2:M,3:M\"). Managed by the IDEX/IQEX Modes editor in the Printer preset.");
|
||||
def->label = L("IMEX Mode Active Tools");
|
||||
def->tooltip = L("Tool role assignments for each mode. Format: \"idx:P,idx:C,idx:M\" where P=Primary, C=Copy, M=Mirror (e.g. \"0:P,1:C,2:M,3:M\"). Managed by the IMEX Modes editor in the Printer preset.");
|
||||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionStrings());
|
||||
|
||||
def = this->add("imex_mode_gcodes", coStrings);
|
||||
def->label = L("IDEX/IQEX Mode G-codes");
|
||||
def->label = L("IMEX Mode G-codes");
|
||||
def->tooltip = L("G-code or macro call to inject at print start for each mode.");
|
||||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionStrings());
|
||||
|
||||
@@ -3097,8 +3097,8 @@ void MainFrame::init_menubar_as_editor()
|
||||
// change adds true toolhead model support (cf. printer bed models) this same toggle
|
||||
// governs that. Only relevant on Preview, and only meaningful when the active
|
||||
// printer is IDEX/IQEX — gated to keep the menu uncluttered for everyone else.
|
||||
append_menu_check_item(viewMenu, wxID_ANY, _L("Show IDEX/IQEX Toolhead"),
|
||||
_L("Show the IDEX/IQEX toolhead representation around each active nozzle in the G-code preview."),
|
||||
append_menu_check_item(viewMenu, wxID_ANY, _L("Show IMEX Toolhead"),
|
||||
_L("Show the IMEX toolhead representation around each active nozzle in the G-code preview."),
|
||||
[this](wxCommandEvent&) {
|
||||
const bool current = wxGetApp().app_config->get("show_imex_toolhead_boxes") != "false";
|
||||
wxGetApp().app_config->set("show_imex_toolhead_boxes", current ? "false" : "true");
|
||||
|
||||
@@ -2353,7 +2353,7 @@ void PartPlate::render_icons(bool bottom, bool only_name, int hover_id)
|
||||
render_icon_texture(m_imex_mode_icon.model, m_partplate_list->m_imex_mode_hovered_texture);
|
||||
std::string cur = get_imex_mode();
|
||||
if (cur == kImexPrimaryMode) cur = _u8L("Primary");
|
||||
show_tooltip(_u8L("IDEX/IQEX mode: ") + cur + _u8L(" (left-click to cycle, right-click for menu)"));
|
||||
show_tooltip(_u8L("IMEX mode: ") + cur + _u8L(" (left-click to cycle, right-click for menu)"));
|
||||
} else {
|
||||
render_icon_texture(m_imex_mode_icon.model, m_partplate_list->m_imex_mode_texture);
|
||||
}
|
||||
|
||||
@@ -11276,11 +11276,11 @@ void Plater::priv::on_action_slice_plate(SimpleEvent&)
|
||||
std::vector<wxString> warnings = collect_imex_warnings(plate);
|
||||
if (!warnings.empty()) {
|
||||
int plate_num = partplate_list.get_curr_plate_index() + 1;
|
||||
wxString msg = wxString::Format(_L("Plate %d has IDEX/IQEX parallel mode active with the following concerns:\n\n"), plate_num);
|
||||
wxString msg = wxString::Format(_L("Plate %d has IMEX parallel mode active with the following concerns:\n\n"), plate_num);
|
||||
for (const wxString& w : warnings)
|
||||
msg += L"\u2022 " + w + "\n\n";
|
||||
msg += _L("Continue slicing?");
|
||||
RichMessageDialog dlg(q, msg, _L("IDEX/IQEX Parallel Mode Warning"), wxICON_WARNING | wxYES | wxNO);
|
||||
RichMessageDialog dlg(q, msg, _L("IMEX Parallel Mode Warning"), wxICON_WARNING | wxYES | wxNO);
|
||||
dlg.ShowCheckBox(_L("Don't show these warnings again"));
|
||||
int result = dlg.ShowModal();
|
||||
if (dlg.IsCheckBoxChecked())
|
||||
@@ -11326,10 +11326,10 @@ void Plater::priv::on_action_slice_all(SimpleEvent&)
|
||||
combined_msg += "\n";
|
||||
}
|
||||
if (!combined_msg.empty()) {
|
||||
wxString msg = _L("The following IDEX/IQEX parallel mode concerns were detected:\n\n")
|
||||
wxString msg = _L("The following IMEX parallel mode concerns were detected:\n\n")
|
||||
+ combined_msg
|
||||
+ _L("Continue slicing?");
|
||||
RichMessageDialog dlg(q, msg, _L("IDEX/IQEX Parallel Mode Warning"), wxICON_WARNING | wxYES | wxNO);
|
||||
RichMessageDialog dlg(q, msg, _L("IMEX Parallel Mode Warning"), wxICON_WARNING | wxYES | wxNO);
|
||||
dlg.ShowCheckBox(_L("Don't show these warnings again"));
|
||||
int result = dlg.ShowModal();
|
||||
if (dlg.IsCheckBoxChecked())
|
||||
|
||||
@@ -5025,7 +5025,7 @@ public:
|
||||
if (m_n_rows >= 2)
|
||||
instructions += " " + _L("Span (yellow) marks a tool on the Primary's gantry as the "
|
||||
"multicolor partner — required to enable multi-color printing in "
|
||||
"paired-gantry IDEX/IQEX modes.");
|
||||
"paired-gantry IMEX modes.");
|
||||
auto* inst = new wxStaticText(info_panel, wxID_ANY, instructions);
|
||||
inst->Wrap(FromDIP(620));
|
||||
info_sizer->Add(inst, 0, wxBOTTOM, FromDIP(6));
|
||||
@@ -6180,7 +6180,7 @@ if (is_marlin_flavor)
|
||||
optgroup->append_single_option_line("machine_tool_change_time", "printer_multimaterial_advanced#tool-change-time");
|
||||
|
||||
// IDEX/IQEX (IMEX) parallel printing configuration
|
||||
optgroup = page->new_optgroup(L("IDEX/IQEX Configuration"), L"param_advanced");
|
||||
optgroup = page->new_optgroup(L("IMEX Configuration"), L"param_advanced");
|
||||
optgroup->append_single_option_line("is_imex");
|
||||
optgroup->append_single_option_line("imex_firmware_managed_zones");
|
||||
optgroup->append_single_option_line("imex_gantry_count");
|
||||
@@ -6201,7 +6201,7 @@ if (is_marlin_flavor)
|
||||
// activate_line to return early before build_field.
|
||||
ConfigOptionDef placeholder_def;
|
||||
placeholder_def.label = L("Pre-slice warnings");
|
||||
placeholder_def.tooltip = L("Show a warning dialog before slicing if IDEX/IQEX parallel mode "
|
||||
placeholder_def.tooltip = L("Show a warning dialog before slicing if IMEX parallel mode "
|
||||
"concerns are detected (bed temperature conflicts, filament type "
|
||||
"mismatches, multi-material conflicts). Can be suppressed from the "
|
||||
"dialog itself. Re-enable here if suppressed accidentally.");
|
||||
@@ -6222,7 +6222,7 @@ if (is_marlin_flavor)
|
||||
}
|
||||
optgroup->append_single_option_line("imex_viz_theme");
|
||||
{
|
||||
auto modes_og = page->new_optgroup(L("IDEX/IQEX Parallel Modes"), L"param_advanced");
|
||||
auto modes_og = page->new_optgroup(L("IMEX Parallel Modes"), L"param_advanced");
|
||||
auto line = Line{ L("Modes"), L("") };
|
||||
line.full_width = 1;
|
||||
line.widget = [this](wxWindow* parent) -> wxSizer* {
|
||||
|
||||
Reference in New Issue
Block a user