OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
Slic3r::GUI::PrinterPartsDialog Class Reference

#include </home/runner/work/OrcaSlicer/OrcaSlicer/src/slic3r/GUI/PrintOptionsDialog.hpp>

Inheritance diagram for Slic3r::GUI::PrinterPartsDialog:
Collaboration diagram for Slic3r::GUI::PrinterPartsDialog:

Public Member Functions

 PrinterPartsDialog (wxWindow *parent)
 ~PrinterPartsDialog ()
void on_dpi_changed (const wxRect &suggested_rect) override
void update_machine_obj (MachineObject *obj_)
bool Show (bool show) override
void UpdateNozzleInfo ()
void EndModal (int retCode) override
float scale_factor () const
float prev_scale_factor () const
void set_scale_factor (float v)
void set_prev_scale_factor (float v)
void set_em_unit (int v)
bool force_rescale () const
int em_unit () const
const wxFont & normal_font () const
void enable_force_rescale ()
int ShowModal ()

Protected Member Functions

virtual void on_sys_color_changed ()

Protected Attributes

MachineObject * obj { nullptr }
ComboBox * nozzle_type_checkbox
ComboBox * nozzle_diameter_checkbox
Label * nozzle_flow_type_label
ComboBox * nozzle_flow_type_checkbox
Label * change_nozzle_tips
Button * m_wiki_link
Button * m_single_update_nozzle_button
Button * m_multiple_update_nozzle_button
ComboBox * multiple_left_nozzle_type_checkbox
ComboBox * multiple_left_nozzle_diameter_checkbox
ComboBox * multiple_left_nozzle_flow_checkbox
ComboBox * multiple_right_nozzle_type_checkbox
ComboBox * multiple_right_nozzle_diameter_checkbox
ComboBox * multiple_right_nozzle_flow_checkbox
Label * multiple_change_nozzle_tips
Button * multiple_wiki_link
wxPanel * single_panel
wxPanel * multiple_panel

Private Member Functions

void EnableEditing (bool enable)
void OnWikiClicked (wxMouseEvent &e)
void OnNozzleRefresh (wxCommandEvent &e)
wxString GetString (NozzleType nozzle_type) const
wxString GetString (NozzleFlowType nozzle_flow_type) const
void update_em_unit ()
bool is_new_scale_factor () const
void rescale (const wxRect &suggested_rect)

Private Attributes

float m_scale_factor
int m_em_unit
wxFont m_normal_font
float m_prev_scale_factor
bool m_can_rescale
bool m_force_rescale
int m_new_font_point_size

Detailed Description

Constructor & Destructor Documentation

◆ PrinterPartsDialog()

Slic3r::GUI::PrinterPartsDialog::PrinterPartsDialog ( wxWindow * parent)
1477: DPIDialog(parent, wxID_ANY, _L("Printer Parts"), wxDefaultPosition, wxDefaultSize, wxCAPTION | wxCLOSE_BOX)
1478{
1479 SetBackgroundColour(*wxWHITE);
1480
1481 wxBoxSizer *sizer = new wxBoxSizer(wxVERTICAL);
1482
1483 wxBoxSizer* single_sizer = new wxBoxSizer(wxVERTICAL);
1484 single_panel = new wxPanel(this);
1485 single_panel->SetBackgroundColour(*wxWHITE);
1486
1487 wxBoxSizer* multiple_sizer = new wxBoxSizer(wxVERTICAL);
1488 multiple_panel = new wxPanel(this);
1489 multiple_panel->SetBackgroundColour(*wxWHITE);
1490
1491 /*single nozzle*/
1492 auto single_line = new wxPanel(single_panel, wxID_ANY, wxDefaultPosition, wxSize(-1, 1), wxTAB_TRAVERSAL);
1493 single_line->SetBackgroundColour(wxColour("#A6A9AA"));
1494
1495 //nozzle type
1496 wxBoxSizer* line_sizer_nozzle_type = new wxBoxSizer(wxHORIZONTAL);
1497
1498 auto nozzle_type = new Label(single_panel, _L_CONTEXT(L_CONTEXT("Type", "Nozzle Type"), "Nozzle Type"));
1499 nozzle_type->SetFont(Label::Body_14);
1500 nozzle_type->SetMinSize(wxSize(FromDIP(180), -1));
1501 nozzle_type->SetMaxSize(wxSize(FromDIP(180), -1));
1502 nozzle_type->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
1503 nozzle_type->Wrap(-1);
1504
1505 nozzle_type_checkbox = new ComboBox(single_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(180), -1), 0, NULL, wxCB_READONLY);
1506
1507 line_sizer_nozzle_type->Add(nozzle_type, 0, wxALIGN_CENTER, 5);
1508 line_sizer_nozzle_type->Add(0, 0, 1, wxEXPAND, 5);
1509 line_sizer_nozzle_type->Add(nozzle_type_checkbox, 0, wxALIGN_CENTER, 5);
1510
1511
1512 //nozzle diameter
1513 wxBoxSizer* line_sizer_nozzle_diameter = new wxBoxSizer(wxHORIZONTAL);
1514 auto nozzle_diameter = new Label(single_panel, _L_CONTEXT(L_CONTEXT("Diameter", "Nozzle Diameter"), "Nozzle Diameter"));
1516 nozzle_diameter->SetMinSize(wxSize(FromDIP(180), -1));
1517 nozzle_diameter->SetMaxSize(wxSize(FromDIP(180), -1));
1518 nozzle_diameter->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
1519 nozzle_diameter->Wrap(-1);
1520
1521 nozzle_diameter_checkbox = new ComboBox(single_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(180), -1), 0, NULL, wxCB_READONLY);
1522
1523 line_sizer_nozzle_diameter->Add(nozzle_diameter, 0, wxALIGN_CENTER, 5);
1524 line_sizer_nozzle_diameter->Add(0, 0, 1, wxEXPAND, 5);
1525 line_sizer_nozzle_diameter->Add(nozzle_diameter_checkbox, 0, wxALIGN_CENTER, 5);
1526
1527 //nozzle flow type
1528 wxBoxSizer* line_sizer_nozzle_flowtype = new wxBoxSizer(wxHORIZONTAL);
1529 nozzle_flow_type_label = new Label(single_panel, _L_CONTEXT(L_CONTEXT("Flow", "Nozzle Flow"), "Nozzle Flow"));
1531 nozzle_flow_type_label->SetMinSize(wxSize(FromDIP(180), -1));
1532 nozzle_flow_type_label->SetMaxSize(wxSize(FromDIP(180), -1));
1533 nozzle_flow_type_label->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
1534 nozzle_flow_type_label->Wrap(-1);
1535
1536 nozzle_flow_type_checkbox = new ComboBox(single_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(180), -1), 0, NULL, wxCB_READONLY);
1537
1538 line_sizer_nozzle_flowtype->Add(nozzle_flow_type_label, 0, wxALIGN_CENTER, 5);
1539 line_sizer_nozzle_flowtype->Add(0, 0, 1, wxEXPAND, 5);
1540 line_sizer_nozzle_flowtype->Add(nozzle_flow_type_checkbox, 0, wxALIGN_CENTER, 5);
1541
1542 wxSizer* h_tips_sizer = new wxBoxSizer(wxHORIZONTAL);
1543 change_nozzle_tips = new Label(single_panel, _L("Please change the nozzle settings on the printer."));
1545 change_nozzle_tips->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
1546
1547 m_wiki_link = new Button(single_panel, "", "toolbar_wiki", 0, 15);
1548 m_wiki_link->SetToolTip(_L("Wiki Guide"));
1550 m_wiki_link->SetCanFocus(false);
1551 m_wiki_link->Bind(wxEVT_LEFT_DOWN, &PrinterPartsDialog::OnWikiClicked, this);
1552
1553 h_tips_sizer->Add(m_wiki_link);
1554 h_tips_sizer->Add(change_nozzle_tips, 0, wxLEFT | wxALIGN_CENTER_VERTICAL, FromDIP(5));
1555
1556 wxSizer* single_update_nozzle_sizer = new wxBoxSizer(wxHORIZONTAL);
1557 m_single_update_nozzle_button = new Button(single_panel, _L("Refresh"));
1558 m_single_update_nozzle_button->SetBackgroundColor(btn_bg_green);
1559 m_single_update_nozzle_button->SetTextColor(wxColour("#FFFFFE"));
1561 m_single_update_nozzle_button->SetSize(wxSize(FromDIP(80), FromDIP(32)));
1562 m_single_update_nozzle_button->SetMinSize(wxSize(-1, FromDIP(32)));
1564 single_update_nozzle_sizer->Add(0, 0, 1, wxEXPAND, FromDIP(0));
1565 single_update_nozzle_sizer->Add(m_single_update_nozzle_button, 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, FromDIP(18));
1566
1567 single_sizer->Add(single_line, 0, wxEXPAND, 0);
1568 single_sizer->Add(0, 0, 0, wxTOP, FromDIP(15));
1569 single_sizer->Add(line_sizer_nozzle_type, 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, FromDIP(10));
1570 single_sizer->Add(0, 0, 0, wxTOP, FromDIP(15));
1571 single_sizer->Add(line_sizer_nozzle_diameter, 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, FromDIP(10));
1572 single_sizer->Add(0, 0, 0, wxTOP, FromDIP(15));
1573 single_sizer->Add(line_sizer_nozzle_flowtype, 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, FromDIP(10));
1574 single_sizer->Add(0, 0, 0, wxTOP, FromDIP(10));
1575 single_sizer->Add(h_tips_sizer, 0, wxLEFT, FromDIP(10));
1576 single_sizer->Add(0, 0, 0, wxTOP, FromDIP(10));
1577 single_sizer->Add(single_update_nozzle_sizer, 0, wxLEFT | wxEXPAND, FromDIP(10));
1578 single_sizer->Add(0, 0, 0, wxTOP, FromDIP(10));
1579
1580 single_panel->SetSizer(single_sizer);
1581 single_panel->Layout();
1582 single_panel->Fit();
1583
1584 /*multiple nozzle*/
1585 auto multi_line = new wxPanel(multiple_panel, wxID_ANY, wxDefaultPosition, wxSize(-1, 1), wxTAB_TRAVERSAL);
1586 multi_line->SetBackgroundColour(wxColour("#A6A9AA"));
1587
1588 /*left*/
1589 auto leftTitle = new Label(multiple_panel, _L("Left Nozzle"));
1590 leftTitle->SetFont(::Label::Head_14);
1591 leftTitle->SetForegroundColour(StateColor::darkModeColorFor(wxColour("#2C2C2E")));
1592
1593 wxBoxSizer *multiple_left_line_sizer = new wxBoxSizer(wxHORIZONTAL);
1594 auto multiple_left_nozzle_type = new Label(multiple_panel, _L_CONTEXT(L_CONTEXT("Type", "Nozzle Type"), "Nozzle Type"));
1595 multiple_left_nozzle_type->SetFont(Label::Body_14);
1596 multiple_left_nozzle_type->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
1597
1598 multiple_left_nozzle_type_checkbox = new ComboBox(multiple_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(180), -1), 0, NULL, wxCB_READONLY);
1599
1600 auto multiple_left_nozzle_diameter = new Label(multiple_panel, _L_CONTEXT(L_CONTEXT("Diameter", "Nozzle Diameter"), "Nozzle Diameter"));
1601 multiple_left_nozzle_diameter->SetFont(Label::Body_14);
1602 multiple_left_nozzle_diameter->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
1603 multiple_left_nozzle_diameter_checkbox = new ComboBox(multiple_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(140), -1), 0, NULL, wxCB_READONLY);
1604
1605 auto multiple_left_nozzle_flow = new Label(multiple_panel, _L_CONTEXT(L_CONTEXT("Flow", "Nozzle Flow"), "Nozzle Flow"));
1606 multiple_left_nozzle_flow->SetFont(Label::Body_14);
1607 multiple_left_nozzle_flow->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
1608 multiple_left_nozzle_flow_checkbox = new ComboBox(multiple_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(140), -1), 0, NULL, wxCB_READONLY);
1609
1610 multiple_left_line_sizer->Add(multiple_left_nozzle_type, 0, wxALIGN_CENTER, 0);
1611 multiple_left_line_sizer->Add(0, 0, 0, wxLEFT, FromDIP(8));
1612 multiple_left_line_sizer->Add(multiple_left_nozzle_type_checkbox, 0, wxALIGN_CENTER, 0);
1613 multiple_left_line_sizer->Add(0, 0, 0, wxLEFT, FromDIP(15));
1614 multiple_left_line_sizer->Add(multiple_left_nozzle_diameter, 0, wxALIGN_CENTER, 0);
1615 multiple_left_line_sizer->Add(0, 0, 1, wxLEFT, FromDIP(8));
1616 multiple_left_line_sizer->Add(multiple_left_nozzle_diameter_checkbox, 0, wxALIGN_CENTER, 0);
1617 multiple_left_line_sizer->Add(0, 0, 0, wxLEFT, FromDIP(15));
1618 multiple_left_line_sizer->Add(multiple_left_nozzle_flow, 0, wxALIGN_CENTER, 0);
1619 multiple_left_line_sizer->Add(0, 0, 1, wxLEFT, FromDIP(8));
1620 multiple_left_line_sizer->Add(multiple_left_nozzle_flow_checkbox, 0, wxALIGN_CENTER, 0);
1621
1622 /*right*/
1623 auto rightTitle = new Label(multiple_panel, _L("Right Nozzle"));
1624 rightTitle->SetFont(::Label::Head_14);
1625 rightTitle->SetForegroundColour(StateColor::darkModeColorFor(wxColour("#2C2C2E")));
1626
1627 wxBoxSizer *multiple_right_line_sizer = new wxBoxSizer(wxHORIZONTAL);
1628 auto multiple_right_nozzle_type = new Label(multiple_panel, _L_CONTEXT(L_CONTEXT("Type", "Nozzle Type"), "Nozzle Type"));
1629 multiple_right_nozzle_type->SetFont(Label::Body_14);
1630 multiple_right_nozzle_type->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
1631
1632 multiple_right_nozzle_type_checkbox = new ComboBox(multiple_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(180), -1), 0, NULL, wxCB_READONLY);
1633
1634 auto multiple_right_nozzle_diameter = new Label(multiple_panel, _L_CONTEXT(L_CONTEXT("Diameter", "Nozzle Diameter"), "Nozzle Diameter"));
1635 multiple_right_nozzle_diameter->SetFont(Label::Body_14);
1636 multiple_right_nozzle_diameter->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
1637 multiple_right_nozzle_diameter_checkbox = new ComboBox(multiple_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(140), -1), 0, NULL, wxCB_READONLY);
1638
1639 auto multiple_right_nozzle_flow = new Label(multiple_panel, _L_CONTEXT(L_CONTEXT("Flow", "Nozzle Flow"), "Nozzle Flow"));
1640 multiple_right_nozzle_flow->SetFont(Label::Body_14);
1641 multiple_right_nozzle_flow->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
1642 multiple_right_nozzle_flow_checkbox = new ComboBox(multiple_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(140), -1), 0, NULL, wxCB_READONLY);
1643
1644 multiple_right_line_sizer->Add(multiple_right_nozzle_type, 0, wxALIGN_CENTER, 0);
1645 multiple_right_line_sizer->Add(0, 0, 0, wxLEFT, FromDIP(8));
1646 multiple_right_line_sizer->Add(multiple_right_nozzle_type_checkbox, 0, wxALIGN_CENTER, 0);
1647 multiple_right_line_sizer->Add(0, 0, 0, wxLEFT, FromDIP(15));
1648 multiple_right_line_sizer->Add(multiple_right_nozzle_diameter, 0, wxALIGN_CENTER, 0);
1649 multiple_right_line_sizer->Add(0, 0, 1, wxLEFT, FromDIP(8));
1650 multiple_right_line_sizer->Add(multiple_right_nozzle_diameter_checkbox, 0, wxALIGN_CENTER, 0);
1651 multiple_right_line_sizer->Add(0, 0, 0, wxLEFT, FromDIP(15));
1652 multiple_right_line_sizer->Add(multiple_right_nozzle_flow, 0, wxALIGN_CENTER, 0);
1653 multiple_right_line_sizer->Add(0, 0, 1, wxLEFT, FromDIP(8));
1654 multiple_right_line_sizer->Add(multiple_right_nozzle_flow_checkbox, 0, wxALIGN_CENTER, 0);
1655
1656 multiple_change_nozzle_tips = new Label(multiple_panel, _L("Please change the nozzle settings on the printer."));
1659
1660 multiple_wiki_link = new Button(multiple_panel, "", "toolbar_wiki", 0, 15);
1661 multiple_wiki_link->SetToolTip(_L("Wiki Guide"));
1663 multiple_wiki_link->SetCanFocus(false);
1664 multiple_wiki_link->Bind(wxEVT_LEFT_DOWN, &PrinterPartsDialog::OnWikiClicked, this);
1665
1666 wxSizer* multiple_change_tips_sizer = new wxBoxSizer(wxHORIZONTAL);
1667 multiple_change_tips_sizer->Add(multiple_wiki_link);
1668 multiple_change_tips_sizer->Add(multiple_change_nozzle_tips, 0, wxLEFT | wxALIGN_CENTER_VERTICAL, FromDIP(5));
1669
1670 wxSizer* multiple_update_nozzle_sizer = new wxBoxSizer(wxHORIZONTAL);
1671 m_multiple_update_nozzle_button = new Button(multiple_panel, _L("Refresh"));
1672 m_multiple_update_nozzle_button->SetBackgroundColor(btn_bg_green);
1673 m_multiple_update_nozzle_button->SetTextColor(wxColour("#FFFFFE"));
1675 m_multiple_update_nozzle_button->SetSize(wxSize(FromDIP(80), FromDIP(32)));
1676 m_multiple_update_nozzle_button->SetMinSize(wxSize(-1, FromDIP(32)));
1678 multiple_update_nozzle_sizer->Add(0, 0, 1, wxEXPAND, FromDIP(0));
1679 multiple_update_nozzle_sizer->Add(m_multiple_update_nozzle_button, 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, FromDIP(18));
1680
1681 multiple_sizer->Add(multi_line, 0, wxEXPAND, 0);
1682 multiple_sizer->Add(0, 0, 0, wxTOP, FromDIP(15));
1683 multiple_sizer->Add(leftTitle, 0, wxLEFT, FromDIP(18));
1684 multiple_sizer->Add(0, 0, 0, wxTOP, FromDIP(8));
1685 multiple_sizer->Add(multiple_left_line_sizer, 0, wxALIGN_CENTER|wxLEFT|wxRIGHT, FromDIP(18));
1686 multiple_sizer->Add(0, 0, 0, wxTOP, FromDIP(24));
1687 multiple_sizer->Add(rightTitle, 0, wxLEFT, FromDIP(18));
1688 multiple_sizer->Add(0, 0, 0, wxTOP, FromDIP(8));
1689 multiple_sizer->Add(multiple_right_line_sizer, 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, FromDIP(18));
1690 multiple_sizer->Add(0, 0, 0, wxTOP, FromDIP(20));
1691 multiple_sizer->Add(multiple_change_tips_sizer, 0, wxLEFT, FromDIP(18));
1692 multiple_sizer->Add(0, 0, 0, wxTOP, FromDIP(10));
1693 multiple_sizer->Add(multiple_update_nozzle_sizer, 0, wxLEFT | wxEXPAND, FromDIP(10));
1694 multiple_sizer->Add(0, 0, 0, wxTOP, FromDIP(10));
1695
1696 multiple_panel->SetSizer(multiple_sizer);
1697 multiple_panel->Layout();
1698 multiple_panel->Fit();
1699
1700 /*inset data*/
1701 sizer->Add(single_panel, 0, wxEXPAND, 0);
1702 sizer->Add(multiple_panel, 0, wxEXPAND, 0);
1703 single_panel->Hide();
1704 SetSizerAndFit(sizer);
1705 Layout();
1706 wxGetApp().UpdateDlgDarkUI(this);
1707}
@ Confirm
Definition Button.hpp:25
@ Circle
Definition Button.hpp:37
#define L_CONTEXT(s, context)
Definition DesignOffer.hpp:17
#define _L(s)
Definition OBJ.cpp:34
static const wxColour STATIC_TEXT_CAPTION_COL
Definition PrintOptionsDialog.cpp:41
static wxFont Body_13
Definition Label.hpp:54
static wxFont Head_14
Definition Label.hpp:45
static wxFont Body_14
Definition Label.hpp:53
void OnNozzleRefresh(wxCommandEvent &e)
Definition PrintOptionsDialog.cpp:1844
ComboBox * multiple_right_nozzle_flow_checkbox
Definition PrintOptionsDialog.hpp:54
ComboBox * multiple_right_nozzle_diameter_checkbox
Definition PrintOptionsDialog.hpp:53
Label * nozzle_flow_type_label
Definition PrintOptionsDialog.hpp:41
Button * m_single_update_nozzle_button
Definition PrintOptionsDialog.hpp:45
ComboBox * multiple_right_nozzle_type_checkbox
Definition PrintOptionsDialog.hpp:52
Label * multiple_change_nozzle_tips
Definition PrintOptionsDialog.hpp:56
ComboBox * multiple_left_nozzle_flow_checkbox
Definition PrintOptionsDialog.hpp:50
ComboBox * multiple_left_nozzle_type_checkbox
Definition PrintOptionsDialog.hpp:48
Button * m_multiple_update_nozzle_button
Definition PrintOptionsDialog.hpp:46
wxPanel * single_panel
Definition PrintOptionsDialog.hpp:59
Label * change_nozzle_tips
Definition PrintOptionsDialog.hpp:43
ComboBox * nozzle_type_checkbox
Definition PrintOptionsDialog.hpp:38
wxPanel * multiple_panel
Definition PrintOptionsDialog.hpp:60
Button * multiple_wiki_link
Definition PrintOptionsDialog.hpp:57
ComboBox * nozzle_flow_type_checkbox
Definition PrintOptionsDialog.hpp:42
ComboBox * multiple_left_nozzle_diameter_checkbox
Definition PrintOptionsDialog.hpp:49
Button * m_wiki_link
Definition PrintOptionsDialog.hpp:44
ComboBox * nozzle_diameter_checkbox
Definition PrintOptionsDialog.hpp:39
void OnWikiClicked(wxMouseEvent &e)
Definition PrintOptionsDialog.cpp:1832
static wxColour darkModeColorFor(wxColour const &color)
Definition StateColor.cpp:219
static StateColor btn_bg_green(std::pair< wxColour, int >(wxColour(206, 206, 206), StateColor::Disabled), std::pair< wxColour, int >(wxColour(0, 137, 123), StateColor::Pressed), std::pair< wxColour, int >(wxColour(38, 166, 154), StateColor::Hovered), std::pair< wxColour, int >(wxColour(0, 150, 136), StateColor::Normal))
zaa_minimize_perimeter_height nozzle_diameter((ConfigOptionBool, reduce_infill_retraction))((ConfigOptionBool
zaa_minimize_perimeter_height nozzle_type((ConfigOptionInt, nozzle_hrc))((ConfigOptionBool
#define _L_CONTEXT(s, ctx)
Definition I18N.hpp:15

References _L, _L_CONTEXT, Label::Body_13, Label::Body_14, Slic3r::GUI::btn_bg_green, change_nozzle_tips, Circle, Confirm, StateColor::darkModeColorFor(), Label::Head_14, L_CONTEXT, m_multiple_update_nozzle_button, m_single_update_nozzle_button, m_wiki_link, multiple_change_nozzle_tips, multiple_left_nozzle_diameter_checkbox, multiple_left_nozzle_flow_checkbox, multiple_left_nozzle_type_checkbox, multiple_panel, multiple_right_nozzle_diameter_checkbox, multiple_right_nozzle_flow_checkbox, multiple_right_nozzle_type_checkbox, multiple_wiki_link, Slic3r::nozzle_diameter(), nozzle_diameter_checkbox, nozzle_flow_type_checkbox, nozzle_flow_type_label, Slic3r::nozzle_type(), nozzle_type_checkbox, OnNozzleRefresh(), OnWikiClicked(), single_panel, and STATIC_TEXT_CAPTION_COL.

Here is the call graph for this function:

◆ ~PrinterPartsDialog()

Slic3r::GUI::PrinterPartsDialog::~PrinterPartsDialog ( )
1709{}

Member Function Documentation

◆ em_unit()

int Slic3r::GUI::DPIAware< wxDialog >::em_unit ( ) const
inlineinherited
203{ return m_em_unit; }
Definition GUI_Utils.hpp:107

Referenced by Slic3r::GUI::AuxiliaryDialog::AuxiliaryDialog(), Slic3r::GUI::CopyrightsDialog::CopyrightsDialog(), Slic3r::GUI::DesignTextDialog::DesignTextDialog(), Slic3r::GUI::EditGCodeDialog::EditGCodeDialog(), Slic3r::GUI::FileArchiveDialog::FileArchiveDialog(), Slic3r::GUI::MsgNoUpdates::MsgNoUpdates(), Slic3r::GUI::MsgUpdateForced::MsgUpdateForced(), Slic3r::GUI::OAuthDialog::OAuthDialog(), Slic3r::GUI::ParamsDialog::ParamsDialog(), Slic3r::GUI::PhysicalPrinterDialog::PhysicalPrinterDialog(), Slic3r::GUI::SettingsDialog::SettingsDialog(), anonymous_namespace{3DPrinterOS.cpp}::TokenAuthDialog::TokenAuthDialog(), anonymous_namespace{3DPrinterOS.cpp}::UploadOptionsDialog::UploadOptionsDialog(), Slic3r::GUI::PublishSettingsDialog::add_row_ui(), Slic3r::GUI::DiffPresetDialog::complete_dialog_creation(), Slic3r::GUI::DiffPresetDialog::create_edit_sizer(), Slic3r::GUI::DiffPresetDialog::create_presets_sizer(), Slic3r::GUI::DiffPresetDialog::create_tree(), Slic3r::GUI::ElegooPrintHostSendDialog::init(), Slic3r::GUI::FlashforgePrintHostSendDialog::init(), Slic3r::GUI::PrintHostSendDialog::init(), Slic3r::GUI::AboutDialog::on_dpi_changed(), Slic3r::GUI::AuxiliaryDialog::on_dpi_changed(), Slic3r::GUI::BedShapeDialog::on_dpi_changed(), Slic3r::GUI::ConfigWizard::on_dpi_changed(), Slic3r::GUI::CopyrightsDialog::on_dpi_changed(), Slic3r::GUI::DiffPresetDialog::on_dpi_changed(), Slic3r::GUI::EditGCodeDialog::on_dpi_changed(), Slic3r::GUI::FileArchiveDialog::on_dpi_changed(), Slic3r::GUI::OAuthDialog::on_dpi_changed(), Slic3r::GUI::ObjectTableDialog::on_dpi_changed(), Slic3r::GUI::ParamsDialog::on_dpi_changed(), Slic3r::GUI::PhysicalPrinterDialog::on_dpi_changed(), Slic3r::GUI::PrintHostQueueDialog::on_dpi_changed(), Slic3r::GUI::PurgeModeDialog::on_dpi_changed(), Slic3r::GUI::SavePresetDialog::on_dpi_changed(), Slic3r::GUI::SendSystemInfoDialog::on_dpi_changed(), Slic3r::GUI::SettingsDialog::on_dpi_changed(), and Slic3r::GUI::UnsavedChangesDialog::on_dpi_changed().

Here is the caller graph for this function:

◆ enable_force_rescale()

void Slic3r::GUI::DPIAware< wxDialog >::enable_force_rescale ( )
inlineinherited
206{ m_force_rescale = true; }

◆ EnableEditing()

void Slic3r::GUI::PrinterPartsDialog::EnableEditing ( bool enable)
private
1789 {
1790
1791 nozzle_type_checkbox->Enable(enable);
1792 nozzle_diameter_checkbox->Enable(enable);
1793 nozzle_flow_type_checkbox->Enable(enable);
1794
1795 multiple_left_nozzle_type_checkbox->Enable(enable);
1797 multiple_left_nozzle_flow_checkbox->Enable(enable);
1798
1802
1803 change_nozzle_tips->Show(!enable);
1804 multiple_change_nozzle_tips->Show(!enable);
1805}

References change_nozzle_tips, multiple_change_nozzle_tips, multiple_left_nozzle_diameter_checkbox, multiple_left_nozzle_flow_checkbox, multiple_left_nozzle_type_checkbox, multiple_right_nozzle_diameter_checkbox, multiple_right_nozzle_flow_checkbox, multiple_right_nozzle_type_checkbox, nozzle_diameter_checkbox, nozzle_flow_type_checkbox, and nozzle_type_checkbox.

Referenced by Show().

Here is the caller graph for this function:

◆ EndModal()

void Slic3r::GUI::DPIDialog::EndModal ( int retCode)
inlineoverrideinherited
306 {
307 if (!dialogStack.empty() && dialogStack.front() != this) {
308 // This is a bug in wxWidgets
309 // when the dialog is not top modal dialog, EndModal() just hide dialog without quit
310 // the modal event loop. And the modal event loop blocks us from bottom widgets.
311 // Solution: let user click it manually or close outside. FIXME
312 BOOST_LOG_TRIVIAL(warning) << "DPIAware::EndModal Error: dialogStack is not empty, but top dialog is not this one. retCode=" << retCode;
313 return;
314 }
315
316 return wxDialog::EndModal(retCode);
317 }
std::deque< wxDialog * > dialogStack
Definition GUI_Utils.cpp:549

References Slic3r::GUI::dialogStack.

Referenced by Slic3r::GUI::CloneDialog::CloneDialog(), Slic3r::GUI::ConfigWizard::ConfigWizard(), Slic3r::GUI::CreatePresetSuccessfulDialog::CreatePresetSuccessfulDialog(), Slic3r::GUI::DeleteConfirmDialog::DeleteConfirmDialog(), Slic3r::GUI::DesignVariableDialog::DesignVariableDialog(), Slic3r::GUI::anonymous_namespace{PrintHostDialogs.cpp}::FlashforgeSlotDialog::FlashforgeSlotDialog(), Slic3r::GUI::GuideFrame::GuideFrame(), Slic3r::GUI::InputIpAddressDialog::InputIpAddressDialog(), Slic3r::GUI::ManualNozzleCountDialog::ManualNozzleCountDialog(), Slic3r::GUI::MsgUpdateConfig::MsgUpdateConfig(), Slic3r::GUI::MsgUpdateForced::MsgUpdateForced(), Slic3r::GUI::MultiChoiceDialog::MultiChoiceDialog(), Slic3r::GUI::NetworkErrorDialog::NetworkErrorDialog(), Slic3r::GUI::NetworkPluginRestartDialog::NetworkPluginRestartDialog(), Slic3r::GUI::PartSkipConfirmDialog::PartSkipConfirmDialog(), Slic3r::GUI::PhysicalPrinterDialog::PhysicalPrinterDialog(), Slic3r::GUI::PlateNameEditDialog::PlateNameEditDialog(), Slic3r::GUI::PlateSettingsDialog::PlateSettingsDialog(), Slic3r::GUI::PublishSettingsDialog::PublishSettingsDialog(), Slic3r::GUI::SelectMachineDialog::SelectMachineDialog(), Slic3r::GUI::SendFailedConfirm::SendFailedConfirm(), Slic3r::GUI::SendSystemInfoDialog::SendSystemInfoDialog(), Slic3r::GUI::ShortcutCaptureDialog::ShortcutCaptureDialog(), Slic3r::GUI::SingleChoiceDialog::SingleChoiceDialog(), StepMeshDialog::StepMeshDialog(), Slic3r::GUI::SyncAmsInfoDialog::SyncAmsInfoDialog(), anonymous_namespace{3DPrinterOS.cpp}::TokenAuthDialog::TokenAuthDialog(), Slic3r::GUI::UpdatePluginDialog::UpdatePluginDialog(), Slic3r::GUI::UpdateVersionDialog::UpdateVersionDialog(), Slic3r::GUI::wgtDeviceNozzleRackUpgradeDlg::wgtDeviceNozzleRackUpgradeDlg(), Slic3r::GUI::SavePresetDialog::accept(), Slic3r::GUI::MsgDialog::add_button(), Slic3r::GUI::TipsDialog::add_button(), Slic3r::GUI::FilamentPickerDialog::BindEvents(), Slic3r::GUI::PluginPickerDialog::build_capability_ui(), Slic3r::GUI::BedShapeDialog::build_dialog(), Slic3r::GUI::PluginPickerDialog::build_ui(), Slic3r::GUI::UnsavedChangesDialog::close(), Slic3r::GUI::FileArchiveDialog::create_btn_sizer(), Slic3r::GUI::ColorDecomposeDialog::create_button_panel(), Slic3r::GUI::MixedFilamentDialog::create_button_panel(), Slic3r::GUI::CreateFilamentPresetDialog::create_dialog_buttons(), Slic3r::GUI::CreatePresetForPrinterDialog::create_dialog_buttons(), Slic3r::GUI::EditFilamentPresetDialog::create_dialog_buttons(), Slic3r::GUI::ExportConfigsDialog::create_dialog_buttons(), Slic3r::GUI::PreferencesDialog::create_item_language_combobox(), Slic3r::GUI::PreferencesDialog::create_item_region_combobox(), Slic3r::GUI::PreferencesDialog::create_items(), Slic3r::GUI::CreatePrinterPresetDialog::create_page1_dialog_buttons(), Slic3r::GUI::CreatePrinterPresetDialog::create_page2_dialog_buttons(), Slic3r::GUI::ExportConfigsDialog::data_init(), Slic3r::GUI::WebDialog::destroy_silently(), Slic3r::GUI::EditFilamentPresetDialog::edit_preset(), Slic3r::GUI::ConnectPrinterDialog::end_modal(), Slic3r::GUI::PrintHostSendDialog::EndModal(), Slic3r::GUI::ColorPickerDialog::finish(), Slic3r::GUI::WebDialog::finish(), Slic3r::GUI::Newer3mfVersionDialog::get_btn_sizer(), Slic3r::GUI::ScoreDialog::get_button_sizer(), Slic3r::GUI::WebViewHostDialog::handle_common_script_command(), Slic3r::GUI::ExportPresetBundleDialog::InitExportData(), Slic3r::GUI::SelectMachineDialog::navigate_to_timelapse_page(), Slic3r::GUI::BindMachineDialog::on_bind_success(), Slic3r::GUI::ConnectPrinterDialog::on_button_confirm(), Slic3r::GUI::RecenterDialog::on_button_confirm(), Slic3r::GUI::BindMachineDialog::on_cancel(), Slic3r::GUI::EditCalibrationHistoryDialog::on_cancel(), Slic3r::GUI::InputIpAddressDialog::on_cancel(), Slic3r::GUI::NewCalibrationHistoryDialog::on_cancel(), Slic3r::GUI::OAuthDialog::on_cancel(), Slic3r::GUI::PingCodeBindDialog::on_cancel(), Slic3r::GUI::SelectMachineDialog::on_cancel(), Slic3r::GUI::SendToPrinterDialog::on_cancel(), Slic3r::GUI::SyncAmsInfoDialog::on_cancel(), Slic3r::GUI::UnBindMachineDialog::on_cancel(), Slic3r::GUI::WebDialog::on_close_window(), Slic3r::GUI::NetworkPluginDownloadDialog::on_dont_ask(), Slic3r::GUI::NetworkPluginDownloadDialog::on_download(), Slic3r::GUI::EditDevNameDialog::on_edit_name(), Slic3r::GUI::ConfirmBeforeSendDialog::on_hide(), Slic3r::GUI::PrivacyUpdateDialog::on_hide(), Slic3r::GUI::ShortcutCaptureDialog::on_key(), Slic3r::GUI::TextureImportDialog::on_ok_clicked(), Slic3r::GUI::FileArchiveDialog::on_open_button(), Slic3r::GUI::NetworkPluginDownloadDialog::on_remind_later(), Slic3r::GUI::ProjectDropDialog::on_select_cancel(), Slic3r::GUI::SavePresetDialog::on_select_cancel(), Slic3r::GUI::ProjectDropDialog::on_select_ok(), Slic3r::GUI::SendMultiMachinePage::on_send(), Slic3r::GUI::NetworkPluginDownloadDialog::on_skip(), Slic3r::GUI::TextureImportDialog::on_skip_clicked(), Slic3r::GUI::NetworkPluginDownloadDialog::on_skip_version(), Slic3r::GUI::Cornering_Test_Dlg::on_start(), Slic3r::GUI::FlowRateCalibrationDialog::on_start(), Slic3r::GUI::Input_Shaping_Damp_Test_Dlg::on_start(), Slic3r::GUI::Input_Shaping_Freq_Test_Dlg::on_start(), Slic3r::GUI::MaxVolumetricSpeed_Test_Dlg::on_start(), Slic3r::GUI::PA_Calibration_Dlg::on_start(), Slic3r::GUI::Retraction_Test_Dlg::on_start(), Slic3r::GUI::Temp_Calibration_Dlg::on_start(), Slic3r::GUI::VFA_Test_Dlg::on_start(), Slic3r::GUI::CalibrationDialog::on_start_calibration(), Slic3r::GUI::UnBindMachineDialog::on_unbind_printer(), Slic3r::GUI::PartSkipDialog::OnApplyDialog(), anonymous_namespace{3DPrinterOS.cpp}::TokenAuthDialog::OnCancel(), Slic3r::GUI::AboutDialog::onCloseDialog(), Slic3r::GUI::CopyrightsDialog::onCloseDialog(), Slic3r::GUI::MultiNozzleSyncDialog::OnRackStatusReadingFinished(), Slic3r::GUI::GuideFrame::OnScriptMessage(), Slic3r::GUI::InputIpAddressDialog::OnTimer(), Slic3r::GUI::KBShortcutsDialog::open_mouse_preferences(), Slic3r::GUI::TroubleshootDialog::PackAll(), Slic3r::GUI::TroubleshootDialog::RebuildSystemProfiles(), Slic3r::GUI::SpeedDialWebDialog::run_action(), Slic3r::GUI::OAuthDialog::Show(), Slic3r::GUI::MultiNozzleSyncDialog::UpdateButton(), and Slic3r::GUI::CreatePrinterPresetDialog::validate_input_valid().

◆ force_rescale()

bool Slic3r::GUI::DPIAware< wxDialog >::force_rescale ( ) const
inlineinherited
201{ return m_force_rescale; }

◆ GetString() [1/2]

wxString Slic3r::GUI::PrinterPartsDialog::GetString ( NozzleFlowType nozzle_flow_type) const
private
1820 {
1821 switch (nozzle_flow_type) {
1822 case Slic3r::S_FLOW: return _L("Standard");
1823 case Slic3r::H_FLOW: return _L("High flow");
1824 case Slic3r::U_FLOW: return _L("TPU High flow");
1825 case Slic3r::E_FLOW: return _L("E3D High Flow");
1826 default: break;
1827 }
1828
1829 return wxEmptyString;
1830}
@ E_FLOW
Definition DevDefs.h:121
@ H_FLOW
Definition DevDefs.h:119
@ U_FLOW
Definition DevDefs.h:120
@ S_FLOW
Definition DevDefs.h:118

References _L, Slic3r::E_FLOW, Slic3r::H_FLOW, Slic3r::S_FLOW, and Slic3r::U_FLOW.

◆ GetString() [2/2]

wxString Slic3r::GUI::PrinterPartsDialog::GetString ( NozzleType nozzle_type) const
private
1807 {
1808 switch (nozzle_type) {
1809 case Slic3r::ntHardenedSteel: return _L("Hardened Steel");
1810 case Slic3r::ntStainlessSteel: return _L("Stainless Steel");
1811 case Slic3r::ntTungstenCarbide: return _L("Tungsten Carbide");
1812 case Slic3r::ntBrass: return _L("Brass");
1813 case Slic3r::ntE3D: return "E3D";
1814 default: break;
1815 }
1816
1817 return _L("Unknown");
1818}
@ ntE3D
Definition CommonDefs.hpp:19
@ ntTungstenCarbide
Definition CommonDefs.hpp:17
@ ntStainlessSteel
Definition CommonDefs.hpp:16
@ ntBrass
Definition CommonDefs.hpp:18
@ ntHardenedSteel
Definition CommonDefs.hpp:15

References _L, Slic3r::nozzle_type(), Slic3r::ntBrass, Slic3r::ntE3D, Slic3r::ntHardenedSteel, Slic3r::ntStainlessSteel, and Slic3r::ntTungstenCarbide.

Referenced by Show(), and UpdateNozzleInfo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_new_scale_factor()

bool Slic3r::GUI::DPIAware< wxDialog >::is_new_scale_factor ( ) const
inlineprivateinherited
262{ return fabs(m_scale_factor - m_prev_scale_factor) > 0.001; }

◆ normal_font()

◆ on_dpi_changed()

void Slic3r::GUI::PrinterPartsDialog::on_dpi_changed ( const wxRect & suggested_rect)
overridevirtual

Implements Slic3r::GUI::DPIAware< wxDialog >.

1711 {
1712 m_single_update_nozzle_button->SetMinSize(wxSize(-1, FromDIP(32)));
1713 m_single_update_nozzle_button->SetCornerRadius(FromDIP(16));
1715
1716 m_multiple_update_nozzle_button->SetMinSize(wxSize(-1, FromDIP(32)));
1717 m_multiple_update_nozzle_button->SetCornerRadius(FromDIP(16));
1719
1720 Fit();
1721}

References m_multiple_update_nozzle_button, and m_single_update_nozzle_button.

◆ on_sys_color_changed()

◆ OnNozzleRefresh()

void Slic3r::GUI::PrinterPartsDialog::OnNozzleRefresh ( wxCommandEvent & e)
private
1845{
1846 if (!obj) { return; }
1847
1848 BOOST_LOG_TRIVIAL(info) << "Send refresh nozzle command.";
1849 obj->command_refresh_nozzle();
1850}
MachineObject * obj
Definition PrintOptionsDialog.hpp:36

References obj.

Referenced by PrinterPartsDialog().

Here is the caller graph for this function:

◆ OnWikiClicked()

void Slic3r::GUI::PrinterPartsDialog::OnWikiClicked ( wxMouseEvent & e)
private
1833{
1834 if (!obj) { return; }
1835
1836 const wxString& url = obj->get_nozzle_replace_url();
1837 if (!url.IsEmpty()) {
1838 wxLaunchDefaultBrowser(url);
1839 } else {
1840 wxMessageBox(_L("No wiki link available for this printer."), _L("Error"), wxOK | wxICON_ERROR, this);
1841 }
1842}// PrinterPartsDialog::OnWikiClicked

References _L, obj, and Slic3r::GUI::wxMouseEvent.

Referenced by PrinterPartsDialog().

Here is the caller graph for this function:

◆ prev_scale_factor()

float Slic3r::GUI::DPIAware< wxDialog >::prev_scale_factor ( ) const
inlineinherited
196{ return m_prev_scale_factor; }

◆ rescale()

void Slic3r::GUI::DPIAware< wxDialog >::rescale ( const wxRect & suggested_rect)
inlineprivateinherited
265 {
266 this->Freeze();
267
268 m_force_rescale = false;
269
270 // set normal application font as a current window font
271 m_normal_font = this->GetFont();
272
274
275 // rescale missed controls sizes and images
277
278 this->Layout();
279 this->Thaw();
280
281 // reset previous scale factor from current scale factor value
283 }
virtual void on_dpi_changed(const wxRect &suggested_rect)=0
void update_em_unit()
Definition GUI_Utils.hpp:249

◆ scale_factor()

float Slic3r::GUI::DPIAware< wxDialog >::scale_factor ( ) const
inlineinherited
195{ return m_scale_factor; }

◆ set_em_unit()

void Slic3r::GUI::DPIAware< wxDialog >::set_em_unit ( int v)
inlineinherited
200{ m_em_unit = v; }

◆ set_prev_scale_factor()

void Slic3r::GUI::DPIAware< wxDialog >::set_prev_scale_factor ( float v)
inlineinherited

◆ set_scale_factor()

void Slic3r::GUI::DPIAware< wxDialog >::set_scale_factor ( float v)
inlineinherited
198{ m_scale_factor = v; }

◆ Show()

bool Slic3r::GUI::PrinterPartsDialog::Show ( bool show)
override
1724{
1725 if (show) {
1726 wxGetApp().UpdateDlgDarkUI(this);
1727 CentreOnParent();
1728
1729 /*disable editing*/
1730 EnableEditing(false);
1731 assert(DevPrinterConfigUtil::get_printer_can_set_nozzle(obj->printer_type) == false);/*editing is not supported*/
1732
1733 if (obj->GetExtderSystem()->GetTotalExtderSize() <= 1) {
1734 single_panel->Show();
1735 multiple_panel->Hide();
1736
1737 auto type = obj->GetExtderSystem()->GetNozzleType(MAIN_EXTRUDER_ID);
1738 auto diameter = obj->GetExtderSystem()->GetNozzleDiameter(MAIN_EXTRUDER_ID);
1739 nozzle_type_checkbox->SetValue(GetString(type));
1741
1742 // nozzle flow type
1743 nozzle_flow_type_label->Show(obj->is_nozzle_flow_type_supported());
1744 nozzle_flow_type_checkbox->Show(obj->is_nozzle_flow_type_supported());
1745 if (obj->is_nozzle_flow_type_supported())
1746 {
1747 auto flow_type = obj->GetExtderSystem()->GetNozzleFlowType(MAIN_EXTRUDER_ID);
1748 nozzle_flow_type_checkbox->SetValue(GetString(flow_type));
1749 }
1750 if (obj->is_support_refresh_nozzle) {
1752 } else {
1754 }
1755 } else {
1756 single_panel->Hide();
1757 multiple_panel->Show();
1758
1759 //left
1760 auto type = obj->GetExtderSystem()->GetNozzleType(DEPUTY_EXTRUDER_ID);
1761 auto diameter = obj->GetExtderSystem()->GetNozzleDiameter(DEPUTY_EXTRUDER_ID);
1762 auto flow_type = obj->GetExtderSystem()->GetNozzleFlowType(DEPUTY_EXTRUDER_ID);
1765 multiple_left_nozzle_flow_checkbox->SetValue(GetString(flow_type));
1766
1767 //right
1768 type = obj->GetExtderSystem()->GetNozzleType(MAIN_EXTRUDER_ID);
1769 diameter = obj->GetExtderSystem()->GetNozzleDiameter(MAIN_EXTRUDER_ID);
1770 flow_type = obj->GetExtderSystem()->GetNozzleFlowType(MAIN_EXTRUDER_ID);
1773 multiple_right_nozzle_flow_checkbox->SetValue(GetString(flow_type));
1774
1775 if (obj->is_support_refresh_nozzle) {
1777 } else {
1779 }
1780 }
1781
1782 GetSizer()->SetSizeHints(this);
1783 Layout();
1784 Fit();
1785 }
1786 return DPIDialog::Show(show);
1787}
#define DEPUTY_EXTRUDER_ID
Definition DevDefs.h:102
#define MAIN_EXTRUDER_ID
Definition DevDefs.h:101
static bool get_printer_can_set_nozzle(std::string type_str)
Definition DevConfigUtil.h:100
void EnableEditing(bool enable)
Definition PrintOptionsDialog.cpp:1789
wxString GetString(NozzleType nozzle_type) const
Definition PrintOptionsDialog.cpp:1807
wxString format_nozzle_diameter(float diameter)
Definition GUI_Utils.cpp:62

References DEPUTY_EXTRUDER_ID, EnableEditing(), Slic3r::GUI::format_nozzle_diameter(), Slic3r::DevPrinterConfigUtil::get_printer_can_set_nozzle(), GetString(), m_multiple_update_nozzle_button, m_single_update_nozzle_button, MAIN_EXTRUDER_ID, multiple_left_nozzle_diameter_checkbox, multiple_left_nozzle_flow_checkbox, multiple_left_nozzle_type_checkbox, multiple_panel, multiple_right_nozzle_diameter_checkbox, multiple_right_nozzle_flow_checkbox, multiple_right_nozzle_type_checkbox, nozzle_diameter_checkbox, nozzle_flow_type_checkbox, nozzle_flow_type_label, nozzle_type_checkbox, obj, and single_panel.

Here is the call graph for this function:

◆ ShowModal()

◆ update_em_unit()

void Slic3r::GUI::DPIAware< wxDialog >::update_em_unit ( )
inlineprivateinherited
250 {
251 // Linux specific issue : get_dpi_for_window(this) still doesn't responce to the Display's scale in new wxWidgets(3.1.3).
252 // So, calculate the m_em_unit value from the font size, as before
253#if !defined(__WXGTK__)
255#else
256 // initialize default width_unit according to the width of the one symbol ("m") of the currently active font of this window.
257 m_em_unit = std::max<size_t>(10, this->GetTextExtent("m").x - 1);
258#endif // __WXGTK__
259 }

◆ update_machine_obj()

void Slic3r::GUI::PrinterPartsDialog::update_machine_obj ( MachineObject * obj_)
1722{ if (obj_) { obj = obj_; }}

References obj.

Referenced by Slic3r::GUI::Plater::check_printer_initialized().

Here is the caller graph for this function:

◆ UpdateNozzleInfo()

void Slic3r::GUI::PrinterPartsDialog::UpdateNozzleInfo ( )
1852 {
1853 /* nozzle in checking*/
1854 if (obj->GetNozzleSystem()->IsRefreshing()) {
1855 if (single_panel->IsShown()) {
1856 m_single_update_nozzle_button->SetLabel(_L("Refreshing"));
1858 } else if (multiple_panel->IsShown()) {
1859 m_multiple_update_nozzle_button->SetLabel(_L("Refreshing"));
1861 }
1862 BOOST_LOG_TRIVIAL(info) << "Nozzle state in refreshing.";
1863 Layout();
1864 Fit();
1865 return;
1866 } else {
1867 if (single_panel->IsShown()) {
1868 m_single_update_nozzle_button->SetLabel(_L("Refresh"));
1870 } else if (multiple_panel->IsShown()) {
1871 m_multiple_update_nozzle_button->SetLabel(_L("Refresh"));
1873 }
1874 BOOST_LOG_TRIVIAL(info) << "Nozzle state in idle.";
1875 }
1876
1877 if (single_panel->IsShown()) {
1878 auto type = obj->GetExtderSystem()->GetNozzleType(MAIN_EXTRUDER_ID);
1879 auto diameter = obj->GetExtderSystem()->GetNozzleDiameter(MAIN_EXTRUDER_ID);
1880 nozzle_type_checkbox->SetValue(GetString(type));
1882
1883 // nozzle flow type
1884 nozzle_flow_type_label->Show(obj->is_nozzle_flow_type_supported());
1885 nozzle_flow_type_checkbox->Show(obj->is_nozzle_flow_type_supported());
1886 if (obj->is_nozzle_flow_type_supported())
1887 {
1888 auto flow_type = obj->GetExtderSystem()->GetNozzleFlowType(MAIN_EXTRUDER_ID);
1889 nozzle_flow_type_checkbox->SetValue(GetString(flow_type));
1890 }
1891 } else if(multiple_panel->IsShown()){
1892 //left
1893 auto type = obj->GetExtderSystem()->GetNozzleType(DEPUTY_EXTRUDER_ID);
1894 auto diameter = obj->GetExtderSystem()->GetNozzleDiameter(DEPUTY_EXTRUDER_ID);
1895 auto flow_type = obj->GetExtderSystem()->GetNozzleFlowType(DEPUTY_EXTRUDER_ID);
1898 multiple_left_nozzle_flow_checkbox->SetValue(GetString(flow_type));
1899
1900 //right
1901 type = obj->GetExtderSystem()->GetNozzleType(MAIN_EXTRUDER_ID);
1902 diameter = obj->GetExtderSystem()->GetNozzleDiameter(MAIN_EXTRUDER_ID);
1903 flow_type = obj->GetExtderSystem()->GetNozzleFlowType(MAIN_EXTRUDER_ID);
1906 multiple_right_nozzle_flow_checkbox->SetValue(GetString(flow_type));
1907 }
1908
1909 Layout();
1910 Fit();
1911}

References _L, DEPUTY_EXTRUDER_ID, Slic3r::GUI::format_nozzle_diameter(), GetString(), m_multiple_update_nozzle_button, m_single_update_nozzle_button, MAIN_EXTRUDER_ID, multiple_left_nozzle_diameter_checkbox, multiple_left_nozzle_flow_checkbox, multiple_left_nozzle_type_checkbox, multiple_panel, multiple_right_nozzle_diameter_checkbox, multiple_right_nozzle_flow_checkbox, multiple_right_nozzle_type_checkbox, nozzle_diameter_checkbox, nozzle_flow_type_checkbox, nozzle_flow_type_label, nozzle_type_checkbox, obj, and single_panel.

Here is the call graph for this function:

Member Data Documentation

◆ change_nozzle_tips

Label* Slic3r::GUI::PrinterPartsDialog::change_nozzle_tips
protected

◆ m_can_rescale

bool Slic3r::GUI::DPIAware< wxDialog >::m_can_rescale
privateinherited
235{ true };

◆ m_em_unit

int Slic3r::GUI::DPIAware< wxDialog >::m_em_unit
privateinherited

◆ m_force_rescale

bool Slic3r::GUI::DPIAware< wxDialog >::m_force_rescale
privateinherited
236{ false };

◆ m_multiple_update_nozzle_button

Button* Slic3r::GUI::PrinterPartsDialog::m_multiple_update_nozzle_button
protected

◆ m_new_font_point_size

int Slic3r::GUI::DPIAware< wxDialog >::m_new_font_point_size
privateinherited

◆ m_normal_font

wxFont Slic3r::GUI::DPIAware< wxDialog >::m_normal_font
privateinherited

◆ m_prev_scale_factor

float Slic3r::GUI::DPIAware< wxDialog >::m_prev_scale_factor
privateinherited

◆ m_scale_factor

float Slic3r::GUI::DPIAware< wxDialog >::m_scale_factor
privateinherited

◆ m_single_update_nozzle_button

Button* Slic3r::GUI::PrinterPartsDialog::m_single_update_nozzle_button
protected

◆ m_wiki_link

Button* Slic3r::GUI::PrinterPartsDialog::m_wiki_link
protected

Referenced by PrinterPartsDialog().

◆ multiple_change_nozzle_tips

Label* Slic3r::GUI::PrinterPartsDialog::multiple_change_nozzle_tips
protected

◆ multiple_left_nozzle_diameter_checkbox

ComboBox* Slic3r::GUI::PrinterPartsDialog::multiple_left_nozzle_diameter_checkbox
protected

◆ multiple_left_nozzle_flow_checkbox

ComboBox* Slic3r::GUI::PrinterPartsDialog::multiple_left_nozzle_flow_checkbox
protected

◆ multiple_left_nozzle_type_checkbox

ComboBox* Slic3r::GUI::PrinterPartsDialog::multiple_left_nozzle_type_checkbox
protected

◆ multiple_panel

wxPanel* Slic3r::GUI::PrinterPartsDialog::multiple_panel
protected

◆ multiple_right_nozzle_diameter_checkbox

ComboBox* Slic3r::GUI::PrinterPartsDialog::multiple_right_nozzle_diameter_checkbox
protected

◆ multiple_right_nozzle_flow_checkbox

ComboBox* Slic3r::GUI::PrinterPartsDialog::multiple_right_nozzle_flow_checkbox
protected

◆ multiple_right_nozzle_type_checkbox

ComboBox* Slic3r::GUI::PrinterPartsDialog::multiple_right_nozzle_type_checkbox
protected

◆ multiple_wiki_link

Button* Slic3r::GUI::PrinterPartsDialog::multiple_wiki_link
protected

Referenced by PrinterPartsDialog().

◆ nozzle_diameter_checkbox

ComboBox* Slic3r::GUI::PrinterPartsDialog::nozzle_diameter_checkbox
protected

◆ nozzle_flow_type_checkbox

ComboBox* Slic3r::GUI::PrinterPartsDialog::nozzle_flow_type_checkbox
protected

◆ nozzle_flow_type_label

Label* Slic3r::GUI::PrinterPartsDialog::nozzle_flow_type_label
protected

◆ nozzle_type_checkbox

ComboBox* Slic3r::GUI::PrinterPartsDialog::nozzle_type_checkbox
protected

◆ obj

MachineObject* Slic3r::GUI::PrinterPartsDialog::obj { nullptr }
protected

◆ single_panel

wxPanel* Slic3r::GUI::PrinterPartsDialog::single_panel
protected

The documentation for this class was generated from the following files: