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

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

Inheritance diagram for Slic3r::GUI::UnBindMachineDialog:
Collaboration diagram for Slic3r::GUI::UnBindMachineDialog:

Public Member Functions

 UnBindMachineDialog (Plater *plater=nullptr)
 ~UnBindMachineDialog ()
void on_cancel (wxCommandEvent &event)
void on_unbind_printer (wxCommandEvent &event)
void on_dpi_changed (const wxRect &suggested_rect) override
void update_machine_info (MachineObject *info)
void on_show (wxShowEvent &event)
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

wxStaticText * m_printer_name
wxStaticText * m_user_name
wxStaticText * m_status_text
Button * m_button_unbind
Button * m_button_cancel
MachineObject * m_machine_info {nullptr}
wxStaticBitmap * m_avatar
wxStaticBitmap * m_printer_img
std::shared_ptr< int > m_tocken

Private Member Functions

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

◆ UnBindMachineDialog()

Slic3r::GUI::UnBindMachineDialog::UnBindMachineDialog ( Plater * plater = nullptr)
942 : DPIDialog(static_cast<wxWindow *>(wxGetApp().mainframe), wxID_ANY, _L("Log out printer"), wxDefaultPosition, wxDefaultSize, wxCAPTION)
943 {
944 m_tocken.reset(new int(0));
945
946 SetBackgroundColour(*wxWHITE);
947 wxBoxSizer *m_sizer_main = new wxBoxSizer(wxVERTICAL);
948 auto m_line_top = new wxPanel(this, wxID_ANY, wxDefaultPosition, wxSize(-1, 1), wxTAB_TRAVERSAL);
949 m_line_top->SetBackgroundColour(wxColour("#A6A9AA"));
950 m_sizer_main->Add(m_line_top, 0, wxEXPAND, 0);
951 m_sizer_main->Add(0, 0, 0, wxTOP, FromDIP(38));
952
953 wxBoxSizer *m_sizer_body = new wxBoxSizer(wxHORIZONTAL);
954
955 auto m_panel_left = new StaticBox(this, wxID_ANY, wxDefaultPosition, wxSize(FromDIP(201), FromDIP(212)), wxBORDER_NONE);
956 m_panel_left->SetMinSize(wxSize(FromDIP(201), FromDIP(212)));
957 m_panel_left->SetCornerRadius(FromDIP(8));
958 m_panel_left->SetBackgroundColor(BIND_DIALOG_GREY200);
959 wxBoxSizer *m_sizere_left_h = new wxBoxSizer(wxHORIZONTAL);
960 wxBoxSizer *m_sizere_left_v= new wxBoxSizer(wxVERTICAL);
961
962 m_printer_img = new wxStaticBitmap(m_panel_left, wxID_ANY, create_scaled_bitmap("printer_thumbnail", nullptr, FromDIP(100)), wxDefaultPosition, wxSize(FromDIP(120), FromDIP(120)), 0);
963 m_printer_img->SetBackgroundColour(BIND_DIALOG_GREY200);
964 m_printer_img->Hide();
965 m_printer_name = new wxStaticText(m_panel_left, wxID_ANY, wxEmptyString);
967 m_printer_name->SetForegroundColour(*wxBLACK);
968 m_printer_name->SetBackgroundColour(BIND_DIALOG_GREY200);
969 m_sizere_left_v->Add(m_printer_img, 0, wxALIGN_CENTER, 0);
970 m_sizere_left_v->Add(0, 0, 0, wxTOP, 5);
971 m_sizere_left_v->Add(m_printer_name, 0, wxALIGN_CENTER, 0);
972 m_sizere_left_h->Add(m_sizere_left_v, 1, wxALIGN_CENTER, 0);
973
974 m_panel_left->SetSizer(m_sizere_left_h);
975 m_panel_left->Layout();
976 m_sizer_body->Add(m_panel_left, 0, wxEXPAND, 0);
977
978 auto m_bind_icon = create_scaled_bitmap("unbind_machine", nullptr, 28);
979 m_sizer_body->Add(new wxStaticBitmap(this, wxID_ANY, m_bind_icon, wxDefaultPosition, wxSize(FromDIP(36), FromDIP(28)), 0), 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, FromDIP(20));
980
981 auto m_panel_right = new StaticBox(this, wxID_ANY, wxDefaultPosition, wxSize(FromDIP(201), FromDIP(212)), wxBORDER_NONE);
982 m_panel_right->SetMinSize(wxSize(FromDIP(201), FromDIP(212)));
983 m_panel_right->SetCornerRadius(FromDIP(8));
984 m_panel_right->SetBackgroundColor(BIND_DIALOG_GREY200);
985 m_user_name = new wxStaticText(m_panel_right, wxID_ANY, wxEmptyString);
986 m_user_name->SetForegroundColour(*wxBLACK);
987 m_user_name->SetBackgroundColour(BIND_DIALOG_GREY200);
989 wxBoxSizer *m_sizer_right_h = new wxBoxSizer(wxHORIZONTAL);
990 wxBoxSizer *m_sizer_right_v = new wxBoxSizer(wxVERTICAL);
991
992 m_avatar = new wxStaticBitmap(m_panel_right, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize(FromDIP(60), FromDIP(60)), 0);
993 m_sizer_right_v->Add(m_avatar, 0, wxALIGN_CENTER, 0);
994 m_sizer_right_v->Add(0, 0, 0, wxTOP, 7);
995 m_sizer_right_v->Add(m_user_name, 0, wxALIGN_CENTER, 0);
996 m_sizer_right_h->Add(m_sizer_right_v, 1, wxALIGN_CENTER, 0);
997
998 m_panel_right->SetSizer(m_sizer_right_h);
999 m_panel_right->Layout();
1000 m_sizer_body->Add(m_panel_right, 0, wxEXPAND, 0);
1001
1002 m_sizer_main->Add(m_sizer_body, 1, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(30));
1003
1004 m_sizer_main->Add(0, 0, 0, wxEXPAND | wxTOP, FromDIP(20));
1005
1006 m_status_text = new wxStaticText(this, wxID_ANY, _L("Would you like to log out the printer?"), wxDefaultPosition, wxSize(BIND_DIALOG_BUTTON_PANEL_SIZE.x, -1), wxST_ELLIPSIZE_END);
1007 m_status_text->SetForegroundColour(wxColour(107, 107, 107));
1009
1010
1011
1012 wxBoxSizer *m_sizer_button = new wxBoxSizer(wxHORIZONTAL);
1013
1014 m_sizer_button->Add(0, 0, 1, wxEXPAND, 5);
1015 m_button_unbind = new Button(this, _L("Confirm"));
1017
1018 m_button_cancel = new Button(this, _L("Cancel"));
1020
1021 m_sizer_button->Add(m_button_unbind, 0, wxALIGN_CENTER, 0);
1022 m_sizer_button->Add(0, 0, 0, wxLEFT, ButtonProps::ChoiceButtonGap());
1023 m_sizer_button->Add(m_button_cancel, 0, wxALIGN_CENTER, 0);
1024
1025 m_sizer_main->Add(m_status_text, 0, wxALIGN_CENTER, 0);
1026 m_sizer_main->Add(0, 0, 0, wxTOP, FromDIP(10));
1027 m_sizer_main->Add(m_sizer_button, 0, wxALIGN_RIGHT | wxRIGHT, ButtonProps::ChoiceButtonGap());
1028 m_sizer_main->Add(0, 0, 0, wxTOP, FromDIP(20));
1029
1030 SetSizerAndFit(m_sizer_main);
1031 Layout();
1032 Fit();
1033 Centre(wxBOTH);
1034
1035 Bind(wxEVT_SHOW, &UnBindMachineDialog::on_show, this);
1036 m_button_unbind->Connect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(UnBindMachineDialog::on_unbind_printer), NULL, this);
1037 m_button_cancel->Connect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(UnBindMachineDialog::on_cancel), NULL, this);
1038
1039
1040 wxGetApp().UpdateDlgDarkUI(this);
1041 }
#define BIND_DIALOG_GREY200
Definition BindDialog.hpp:44
#define BIND_DIALOG_BUTTON_PANEL_SIZE
Definition BindDialog.hpp:48
@ Confirm
Definition Button.hpp:25
@ Regular
Definition Button.hpp:24
@ Choice
Definition Button.hpp:33
#define _L(s)
Definition OBJ.cpp:34
class WXDLLIMPEXP_FWD_CORE wxStaticText
Definition ProgressDialog.hpp:30
static int ChoiceButtonGap()
Definition Button.hpp:19
static wxFont Body_13
Definition Label.hpp:54
static wxFont Head_14
Definition Label.hpp:45
wxStaticText * m_printer_name
Definition BindDialog.hpp:149
void on_show(wxShowEvent &event)
Definition BindDialog.cpp:1097
wxStaticText * m_user_name
Definition BindDialog.hpp:150
void on_unbind_printer(wxCommandEvent &event)
Definition BindDialog.cpp:1055
std::shared_ptr< int > m_tocken
Definition BindDialog.hpp:157
void on_cancel(wxCommandEvent &event)
Definition BindDialog.cpp:1050
wxStaticBitmap * m_avatar
Definition BindDialog.hpp:155
Button * m_button_cancel
Definition BindDialog.hpp:153
Button * m_button_unbind
Definition BindDialog.hpp:152
wxStaticText * m_status_text
Definition BindDialog.hpp:151
wxStaticBitmap * m_printer_img
Definition BindDialog.hpp:156
wxBitmap create_scaled_bitmap(const std::string &bmp_name_in, wxWindow *win, const int px_cnt, const bool grayscale, const std::string &new_color, const bool menu_bitmap, const bool resize, const bool bitmap2, const std::vector< std::string > &array_new_color)
Definition wxExtensions.cpp:448

References _L, BIND_DIALOG_BUTTON_PANEL_SIZE, BIND_DIALOG_GREY200, Label::Body_13, Choice, ButtonProps::ChoiceButtonGap(), Confirm, create_scaled_bitmap(), Label::Head_14, m_avatar, m_button_cancel, m_button_unbind, m_printer_img, m_printer_name, m_status_text, m_tocken, m_user_name, on_cancel(), on_show(), on_unbind_printer(), Slic3r::GUI::plater(), Regular, and wxStaticText.

Here is the call graph for this function:

◆ ~UnBindMachineDialog()

Slic3r::GUI::UnBindMachineDialog::~UnBindMachineDialog ( )
1044 {
1045 m_button_unbind->Disconnect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(UnBindMachineDialog::on_unbind_printer), NULL, this);
1046 m_button_cancel->Disconnect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(UnBindMachineDialog::on_cancel), NULL, this);
1047 }

References m_button_cancel, m_button_unbind, on_cancel(), and on_unbind_printer().

Here is the call graph for this function:

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; }

◆ 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; }

◆ 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_cancel()

void Slic3r::GUI::UnBindMachineDialog::on_cancel ( wxCommandEvent & event)
1051{
1052 EndModal(wxID_CANCEL);
1053}
void EndModal(int retCode) override
Definition GUI_Utils.hpp:305

References Slic3r::GUI::DPIDialog::EndModal().

Referenced by UnBindMachineDialog(), and ~UnBindMachineDialog().

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

◆ on_dpi_changed()

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

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

1092{
1093 m_button_unbind->Rescale(); // ORCA
1094 m_button_cancel->Rescale(); // ORCA
1095}

References m_button_cancel, and m_button_unbind.

◆ on_show()

void Slic3r::GUI::UnBindMachineDialog::on_show ( wxShowEvent & event)
1098{
1099 if (event.IsShown()) {
1100 auto img = m_machine_info->get_printer_thumbnail_img_str();
1101 if (wxGetApp().dark_mode()) { img += "_dark"; }
1102 try {
1103 auto bitmap = create_scaled_bitmap(img, this, FromDIP(80));
1104 m_printer_img->SetBitmap(bitmap);
1105 } catch (...) {}
1106
1107 m_printer_img->Refresh();
1108 m_printer_img->Show();
1109
1110 m_printer_name->SetLabelText(from_u8(m_machine_info->get_dev_name()));
1111
1112
1113 const std::string provider = wxGetApp().get_printer_cloud_provider();
1114 if (wxGetApp().is_user_login(provider)) {
1115 wxString username_text = from_u8(wxGetApp().getAgent()->get_user_name(provider));
1116 m_user_name->SetLabelText(username_text);
1117
1118 std::string avatar_url = wxGetApp().getAgent()->get_user_avatar(provider);
1119 Slic3r::Http http = Slic3r::Http::get(avatar_url);
1120 std::string suffix = avatar_url.substr(avatar_url.find_last_of(".") + 1);
1121 http.header("accept", "image/" + suffix)
1122 .on_complete([this, time = std::weak_ptr<int>(m_tocken)](std::string body, unsigned int status) {
1123 if (time.expired()) return;
1124 wxMemoryInputStream stream(body.data(), body.size());
1125 wxImage avatar_image;
1126 if (avatar_image.LoadFile(stream, wxBITMAP_TYPE_ANY)) {
1127 if (avatar_image.IsOk() && m_avatar) {
1128 avatar_image.Rescale(this->FromDIP(60), this->FromDIP(60));
1129 CallAfter([this, avatar_image]() {
1130 auto bitmap = new wxBitmap(avatar_image);
1131 m_avatar->SetBitmap(*bitmap);
1132 Layout();
1133 });
1134 }
1135 }
1136 })
1137 .on_error([](std::string body, std::string error, unsigned status) {
1138 //BOOST_LOG_TRIVIAL(info) << "load oss picture failed, oss path: " << oss_path << " status:" << status << " error:" << error;
1139 }).perform();
1140
1141 }
1142
1143 Layout();
1144 event.Skip();
1145 }
1146}
MachineObject * m_machine_info
Definition BindDialog.hpp:154
static Http get(std::string url)
Definition Http.cpp:886
wxString from_u8(const std::string &str)
Definition GUI.cpp:544
@ http
Definition IPrinterAgent.hpp:64
@ Http
Definition PluginAuditManager.hpp:49

References create_scaled_bitmap(), Slic3r::GUI::from_u8(), Slic3r::Http::get(), Slic3r::http, m_avatar, m_machine_info, m_printer_img, m_printer_name, m_tocken, and m_user_name.

Referenced by UnBindMachineDialog().

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

◆ on_sys_color_changed()

◆ on_unbind_printer()

void Slic3r::GUI::UnBindMachineDialog::on_unbind_printer ( wxCommandEvent & event)
1056{
1057 if (!wxGetApp().is_user_login(wxGetApp().get_printer_cloud_provider())) {
1058 m_status_text->SetLabelText(_L("Please log in first."));
1059 return;
1060 }
1061
1062 if (!m_machine_info) {
1063 m_status_text->SetLabelText(_L("There was a problem connecting to the printer. Please try again."));
1064 return;
1065 }
1066
1067 m_machine_info->set_access_code("");
1068 int result = wxGetApp().request_user_unbind(m_machine_info->get_dev_id());
1069 if (result == 0) {
1070 DeviceManager* dev = Slic3r::GUI::wxGetApp().getDeviceManager();
1071 if (!dev) return;
1072 // clean local machine access code info
1073 MachineObject* obj = dev->get_local_machine(m_machine_info->get_dev_id());
1074 if (obj) {
1075 obj->set_access_code("");
1076 }
1077 dev->erase_user_machine(m_machine_info->get_dev_id());
1078
1079 m_status_text->SetLabelText(_L("Log out successful."));
1080 m_button_cancel->SetLabel(_L("Close"));
1081 m_button_unbind->Hide();
1082 EndModal(wxID_OK);
1083 }
1084 else {
1085 m_status_text->SetLabelText(_L("Failed to log out."));
1086 EndModal(wxID_CANCEL);
1087 return;
1088 }
1089}

References _L, Slic3r::GUI::DPIDialog::EndModal(), Slic3r::DeviceManager::erase_user_machine(), Slic3r::DeviceManager::get_local_machine(), m_button_cancel, m_button_unbind, m_machine_info, m_status_text, and Slic3r::MachineObject::set_access_code().

Referenced by UnBindMachineDialog(), and ~UnBindMachineDialog().

Here is the call graph for this function:
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; }

◆ 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_info()

void Slic3r::GUI::UnBindMachineDialog::update_machine_info ( MachineObject * info)
inline
166{ m_machine_info = info; };

References m_machine_info.

Member Data Documentation

◆ m_avatar

wxStaticBitmap* Slic3r::GUI::UnBindMachineDialog::m_avatar
protected

Referenced by UnBindMachineDialog(), and on_show().

◆ m_button_cancel

Button* Slic3r::GUI::UnBindMachineDialog::m_button_cancel
protected

◆ m_button_unbind

Button* Slic3r::GUI::UnBindMachineDialog::m_button_unbind
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_machine_info

MachineObject* Slic3r::GUI::UnBindMachineDialog::m_machine_info {nullptr}
protected
154{nullptr};

Referenced by on_show(), on_unbind_printer(), and update_machine_info().

◆ 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_printer_img

wxStaticBitmap* Slic3r::GUI::UnBindMachineDialog::m_printer_img
protected

Referenced by UnBindMachineDialog(), and on_show().

◆ m_printer_name

wxStaticText* Slic3r::GUI::UnBindMachineDialog::m_printer_name
protected

Referenced by UnBindMachineDialog(), and on_show().

◆ m_scale_factor

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

◆ m_status_text

wxStaticText* Slic3r::GUI::UnBindMachineDialog::m_status_text
protected

◆ m_tocken

std::shared_ptr<int> Slic3r::GUI::UnBindMachineDialog::m_tocken
protected

Referenced by UnBindMachineDialog(), and on_show().

◆ m_user_name

wxStaticText* Slic3r::GUI::UnBindMachineDialog::m_user_name
protected

Referenced by UnBindMachineDialog(), and on_show().


The documentation for this class was generated from the following files:
  • /home/runner/work/OrcaSlicer/OrcaSlicer/src/slic3r/GUI/BindDialog.hpp
  • /home/runner/work/OrcaSlicer/OrcaSlicer/src/slic3r/GUI/BindDialog.cpp