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

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

Inheritance diagram for Slic3r::GUI::ConfirmBeforeSendDialog:
Collaboration diagram for Slic3r::GUI::ConfirmBeforeSendDialog:

Public Types

enum  VisibleButtons { ONLY_CONFIRM = 0 , CONFIRM_AND_CANCEL = 1 , MAX_STYLE_NUM = 2 }

Public Member Functions

 ConfirmBeforeSendDialog (wxWindow *parent, wxWindowID id=wxID_ANY, const wxString &title=wxEmptyString, enum VisibleButtons btn_style=CONFIRM_AND_CANCEL, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxCLOSE_BOX|wxCAPTION, bool not_show_again_check=false)
void update_text (wxString text)
void update_text (std::vector< ConfirmBeforeSendInfo > texts, bool enable_warning_clr=true)
void on_show ()
void on_hide ()
void update_btn_label (wxString ok_btn_text, wxString cancel_btn_text)
void rescale ()
void on_dpi_changed (const wxRect &suggested_rect)
void show_update_nozzle_button (bool show=false)
void hide_button_ok ()
void edit_cancel_button_txt (const wxString &txt, bool switch_green=false)
void disable_button_ok ()
void enable_button_ok ()
wxString format_text (wxString str, int warp)
 ~ConfirmBeforeSendDialog ()
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

wxBoxSizer * m_sizer_main
wxScrolledWindow * m_vebview_release_note { nullptr }
Label * m_staticText_release_note { nullptr }
Button * m_button_ok
Button * m_button_cancel
Button * m_button_update_nozzle
wxCheckBox * m_show_again_checkbox
bool not_show_again = false
std::string show_again_config_text = ""

Private Member Functions

void update_em_unit ()
bool is_new_scale_factor () const

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

Member Enumeration Documentation

◆ VisibleButtons

Enumerator
ONLY_CONFIRM 
CONFIRM_AND_CANCEL 
MAX_STYLE_NUM 
256 { // ORCA VisibleButtons instead ButtonStyle
257 ONLY_CONFIRM = 0,
259 MAX_STYLE_NUM = 2
260 };
@ MAX_STYLE_NUM
Definition ReleaseNote.hpp:259
@ CONFIRM_AND_CANCEL
Definition ReleaseNote.hpp:258
@ ONLY_CONFIRM
Definition ReleaseNote.hpp:257

Constructor & Destructor Documentation

◆ ConfirmBeforeSendDialog()

Slic3r::GUI::ConfirmBeforeSendDialog::ConfirmBeforeSendDialog ( wxWindow * parent,
wxWindowID id = wxID_ANY,
const wxString & title = wxEmptyString,
enum VisibleButtons btn_style = CONFIRM_AND_CANCEL,
const wxPoint & pos = wxDefaultPosition,
const wxSize & size = wxDefaultSize,
long style = wxCLOSE_BOX | wxCAPTION,
bool not_show_again_check = false )
1160 :DPIDialog(parent, id, title, pos, size, style)
1161{
1162 SetBackgroundColour(*wxWHITE);
1163 m_sizer_main = new wxBoxSizer(wxVERTICAL);
1164 auto m_line_top = new wxPanel(this, wxID_ANY, wxDefaultPosition, wxSize(FromDIP(400), 1));
1165 m_line_top->SetBackgroundColour(wxColour(166, 169, 170));
1166 m_sizer_main->Add(m_line_top, 0, wxEXPAND, 0);
1167 m_sizer_main->Add(0, 0, 0, wxTOP, FromDIP(5));
1168
1169 wxBoxSizer* m_sizer_right = new wxBoxSizer(wxVERTICAL);
1170
1171 m_sizer_right->Add(0, 0, 1, wxTOP, FromDIP(15));
1172
1173 m_vebview_release_note = new wxScrolledWindow(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxVSCROLL);
1174 m_vebview_release_note->SetScrollRate(0, FromDIP(20));
1175 m_vebview_release_note->SetBackgroundColour(*wxWHITE);
1176 m_vebview_release_note->SetMinSize(wxSize(FromDIP(400), FromDIP(380)));
1177 m_sizer_right->Add(m_vebview_release_note, 0, wxEXPAND | wxRIGHT | wxLEFT, FromDIP(15));
1178
1179
1180 auto bottom_sizer = new wxBoxSizer(wxVERTICAL);
1181 auto sizer_button = new wxBoxSizer(wxHORIZONTAL);
1182
1183 if (not_show_again_check) {
1184 auto checkbox_sizer = new wxBoxSizer(wxHORIZONTAL);
1185 m_show_again_checkbox = new wxCheckBox(this, wxID_ANY, _L("Don't show again"), wxDefaultPosition, wxDefaultSize, 0);
1186 m_show_again_checkbox->Bind(wxEVT_COMMAND_CHECKBOX_CLICKED, [this](wxCommandEvent& e) {
1189 });
1190 checkbox_sizer->Add(FromDIP(15), 0, 0, 0);
1191 checkbox_sizer->Add(m_show_again_checkbox, 0, wxALL, FromDIP(5));
1192 bottom_sizer->Add(checkbox_sizer, 0, wxBOTTOM | wxEXPAND, 0);
1193 }
1194 m_button_ok = new Button(this, _L("Confirm"));
1196
1197 m_button_ok->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) {
1198 wxCommandEvent evt(EVT_SECONDARY_CHECK_CONFIRM, GetId());
1199 e.SetEventObject(this);
1200 GetEventHandler()->ProcessEvent(evt);
1201 this->on_hide();
1202 });
1203
1204 m_button_cancel = new Button(this, _L("Cancel"));
1206
1207 m_button_cancel->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) {
1208 wxCommandEvent evt(EVT_SECONDARY_CHECK_CANCEL);
1209 e.SetEventObject(this);
1210 GetEventHandler()->ProcessEvent(evt);
1211 this->on_hide();
1212 });
1213
1214 if (btn_style != CONFIRM_AND_CANCEL)
1215 m_button_cancel->Hide();
1216 else
1217 m_button_cancel->Show();
1218
1219 m_button_update_nozzle = new Button(this, _L("Confirm and Update Nozzle"));
1221
1222 m_button_update_nozzle->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) {
1223 wxCommandEvent evt(EVT_UPDATE_NOZZLE);
1224 e.SetEventObject(this);
1225 GetEventHandler()->ProcessEvent(evt);
1226 this->on_hide();
1227 });
1228
1229 m_button_update_nozzle->Hide();
1230
1231 sizer_button->AddStretchSpacer();
1232 sizer_button->Add(m_button_ok, 0, wxALL, FromDIP(5));
1233 sizer_button->Add(m_button_update_nozzle, 0, wxALL, FromDIP(5));
1234 sizer_button->Add(m_button_cancel, 0, wxALL, FromDIP(5));
1235 sizer_button->Add(FromDIP(5),0, 0, 0);
1236 bottom_sizer->Add(sizer_button, 0, wxEXPAND | wxRIGHT | wxLEFT, 0);
1237
1238
1239 m_sizer_right->Add(bottom_sizer, 0, wxEXPAND | wxRIGHT | wxLEFT, FromDIP(20));
1240 m_sizer_right->Add(0, 0, 0, wxTOP, FromDIP(10));
1241
1242 m_sizer_main->Add(m_sizer_right, 0, wxBOTTOM | wxEXPAND, FromDIP(5));
1243
1244 Bind(wxEVT_CLOSE_WINDOW, [this](auto& e) {this->on_hide(); });
1245
1246 SetSizer(m_sizer_main);
1247 Layout();
1248 m_sizer_main->Fit(this);
1249
1250 CenterOnParent();
1251 wxGetApp().UpdateDlgDarkUI(this);
1252}
@ Confirm
Definition Button.hpp:25
@ Regular
Definition Button.hpp:24
@ Choice
Definition Button.hpp:33
#define _L(s)
Definition OBJ.cpp:34
#define style
Definition WipeTowerDialog.cpp:101
void on_hide()
Definition ReleaseNote.cpp:1344
wxBoxSizer * m_sizer_main
Definition ReleaseNote.hpp:288
Button * m_button_cancel
Definition ReleaseNote.hpp:292
bool not_show_again
Definition ReleaseNote.hpp:295
Button * m_button_ok
Definition ReleaseNote.hpp:291
wxCheckBox * m_show_again_checkbox
Definition ReleaseNote.hpp:294
Button * m_button_update_nozzle
Definition ReleaseNote.hpp:293
wxScrolledWindow * m_vebview_release_note
Definition ReleaseNote.hpp:289
wxMouseEvent
Definition CameraPopup.cpp:47

References _L, Choice, Confirm, CONFIRM_AND_CANCEL, m_button_cancel, m_button_ok, m_button_update_nozzle, m_show_again_checkbox, m_sizer_main, m_vebview_release_note, not_show_again, on_hide(), Regular, style, and Slic3r::GUI::wxMouseEvent.

Here is the call graph for this function:

◆ ~ConfirmBeforeSendDialog()

Slic3r::GUI::ConfirmBeforeSendDialog::~ConfirmBeforeSendDialog ( )
1378{
1379
1380}

Member Function Documentation

◆ disable_button_ok()

void Slic3r::GUI::ConfirmBeforeSendDialog::disable_button_ok ( )
1414{
1415 m_button_ok->Disable(); // ORCA enabling / disabling buttons with conditions enough to change its style
1416}

References m_button_ok.

◆ edit_cancel_button_txt()

void Slic3r::GUI::ConfirmBeforeSendDialog::edit_cancel_button_txt ( const wxString & txt,
bool switch_green = false )
1399{
1400 m_button_cancel->SetLabel(txt);
1401
1402 if (switch_green)
1403 {
1404 StateColor btn_bg_green(std::pair<wxColour, int>(wxColour(0, 137, 123), StateColor::Pressed),
1405 std::pair<wxColour, int>(wxColour(38, 166, 154), StateColor::Hovered),
1406 std::pair<wxColour, int>(AMS_CONTROL_BRAND_COLOUR, StateColor::Normal));
1407 m_button_cancel->SetBackgroundColor(btn_bg_green);
1408 m_button_cancel->SetBorderColor(*wxWHITE);
1409 m_button_cancel->SetTextColor(wxColour("#FFFFFE"));
1410 }
1411}
#define AMS_CONTROL_BRAND_COLOUR
Definition AMSItem.hpp:36
@ Hovered
Definition StateColor.hpp:20
@ Normal
Definition StateColor.hpp:16
@ Pressed
Definition StateColor.hpp:21
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))

References AMS_CONTROL_BRAND_COLOUR, Slic3r::GUI::btn_bg_green, StateColor::Hovered, m_button_cancel, StateColor::Normal, and StateColor::Pressed.

Referenced by Slic3r::GUI::SelectMachineDialog::on_ok_btn().

Here is the caller graph for this function:

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

void Slic3r::GUI::ConfirmBeforeSendDialog::enable_button_ok ( )
1419{
1420 m_button_ok->Enable(); // ORCA enabling / disabling buttons with conditions enough to change its style
1421}

References m_button_ok.

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

◆ format_text()

wxString Slic3r::GUI::ConfirmBeforeSendDialog::format_text ( wxString str,
int warp )
1359{
1360 Label st (this, str);
1361 wxString out_txt = str;
1362 wxString count_txt = "";
1363 int new_line_pos = 0;
1364
1365 for (int i = 0; i < str.length(); i++) {
1366 auto text_size = st.GetTextExtent(count_txt);
1367 if (text_size.x < warp) {
1368 count_txt += str[i];
1369 } else {
1370 out_txt.insert(i - 1, '\n');
1371 count_txt = "";
1372 }
1373 }
1374 return out_txt;
1375}

◆ hide_button_ok()

void Slic3r::GUI::ConfirmBeforeSendDialog::hide_button_ok ( )
1394{
1395 m_button_ok->Hide();
1396}

References m_button_ok.

Referenced by Slic3r::GUI::SelectMachineDialog::on_ok_btn().

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::ConfirmBeforeSendDialog::on_dpi_changed ( const wxRect & suggested_rect)
virtual

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

1383{
1384 rescale();
1385}
void rescale()
Definition ReleaseNote.cpp:1423

References rescale().

Here is the call graph for this function:

◆ on_hide()

void Slic3r::GUI::ConfirmBeforeSendDialog::on_hide ( )
1345{
1347 wxGetApp().app_config->set(show_again_config_text, "1");
1348 EndModal(wxID_OK);
1349}
std::string show_again_config_text
Definition ReleaseNote.hpp:296
void EndModal(int retCode) override
Definition GUI_Utils.hpp:305

References Slic3r::GUI::DPIDialog::EndModal(), m_show_again_checkbox, not_show_again, and show_again_config_text.

Referenced by ConfirmBeforeSendDialog(), and Slic3r::GUI::SelectMachineDialog::on_ok_btn().

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

◆ on_show()

void Slic3r::GUI::ConfirmBeforeSendDialog::on_show ( )
1333{
1334 wxGetApp().UpdateDlgDarkUI(this);
1335 // recover button color
1336 wxMouseEvent evt_ok(wxEVT_LEFT_UP);
1337 m_button_ok->GetEventHandler()->ProcessEvent(evt_ok);
1338 wxMouseEvent evt_cancel(wxEVT_LEFT_UP);
1339 m_button_cancel->GetEventHandler()->ProcessEvent(evt_cancel);
1340 CenterOnScreen();
1341 this->ShowModal();
1342}
int ShowModal()
Definition GUI_Utils.hpp:216

References m_button_cancel, m_button_ok, Slic3r::GUI::DPIAware< wxDialog >::ShowModal(), and Slic3r::GUI::wxMouseEvent.

Referenced by Slic3r::GUI::BindMachineDialog::BindMachineDialog(), Slic3r::GUI::PreferencesDialog::create_debug_page(), Slic3r::GUI::SelectMachineDialog::on_ok_btn(), Slic3r::GUI::MainFrame::preview_only_hint(), Slic3r::GUI::SelectMachineDialog::show_errors(), and Slic3r::GUI::SyncAmsInfoDialog::show_errors().

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

◆ on_sys_color_changed()

◆ prev_scale_factor()

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

◆ rescale()

void Slic3r::GUI::ConfirmBeforeSendDialog::rescale ( )
1424{
1425 m_button_ok->Rescale();
1426 m_button_cancel->Rescale();
1427}

References m_button_cancel, and m_button_ok.

Referenced by on_dpi_changed(), and update_btn_label().

Here is the caller graph for this function:

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

void Slic3r::GUI::ConfirmBeforeSendDialog::show_update_nozzle_button ( bool show = false)
1388{
1389 m_button_update_nozzle->Show(show);
1390 Layout();
1391}

References m_button_update_nozzle.

◆ ShowModal()

◆ update_btn_label()

void Slic3r::GUI::ConfirmBeforeSendDialog::update_btn_label ( wxString ok_btn_text,
wxString cancel_btn_text )
1352{
1353 m_button_ok->SetLabel(ok_btn_text);
1354 m_button_cancel->SetLabel(cancel_btn_text);
1355 rescale();
1356}

References m_button_cancel, m_button_ok, and rescale().

Referenced by Slic3r::GUI::MainFrame::preview_only_hint().

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

◆ 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_text() [1/2]

void Slic3r::GUI::ConfirmBeforeSendDialog::update_text ( std::vector< ConfirmBeforeSendInfo > texts,
bool enable_warning_clr = true )
1286{
1287 wxBoxSizer* sizer_text_release_note = new wxBoxSizer(wxVERTICAL);
1288 m_vebview_release_note->SetSizer(sizer_text_release_note);
1289
1290
1291 auto height = 0;
1292 for (auto text : texts) {
1293
1294 Label* label_item = nullptr;
1295 if (text.wiki_url.empty())
1296 {
1297 label_item = new Label(m_vebview_release_note, text.text, LB_AUTO_WRAP);
1298 }
1299 else
1300 {
1301 label_item = new Label(m_vebview_release_note, text.text + " " + _L("Please refer to Wiki before use->"), LB_AUTO_WRAP);
1302 label_item->Bind(wxEVT_LEFT_DOWN, [text](wxMouseEvent& e) { wxLaunchDefaultBrowser(text.wiki_url);});
1303 label_item->Bind(wxEVT_ENTER_WINDOW, [this](auto& e) { SetCursor(wxCURSOR_HAND); });
1304 label_item->Bind(wxEVT_LEAVE_WINDOW, [this](auto& e) { SetCursor(wxCURSOR_ARROW); });
1305 }
1306
1307 if (enable_warning_clr && text.level == ConfirmBeforeSendInfo::InfoLevel::Warning)
1308 {
1309 label_item->SetForegroundColour(wxColour(0xFF, 0x6F, 0x00));
1310 }
1311
1312 label_item->SetMaxSize(wxSize(FromDIP(494), -1));
1313 label_item->SetMinSize(wxSize(FromDIP(494), -1));
1314 label_item->Wrap(FromDIP(494));
1315 label_item->Layout();
1316
1317 sizer_text_release_note->Add(label_item, 0, wxALIGN_CENTER | wxALL, FromDIP(3));
1318 height += label_item->GetSize().y;
1319 }
1320
1321 m_vebview_release_note->Layout();
1322 if (height < FromDIP(500))
1323 m_vebview_release_note->SetMinSize(wxSize(-1, height + FromDIP(25)));
1324 else {
1325 m_vebview_release_note->SetMinSize(wxSize(-1, FromDIP(500)));
1326 }
1327
1328 Layout();
1329 Fit();
1330}
#define LB_AUTO_WRAP
Definition Label.hpp:12
void Wrap(int width)
Definition Label.cpp:366
coord_t height(const BoundingBox &box)
Definition Arrange.cpp:1185
@ Warning
Definition ReleaseNote.hpp:245

References _L, LB_AUTO_WRAP, m_vebview_release_note, Slic3r::GUI::ConfirmBeforeSendInfo::Warning, Label::Wrap(), and Slic3r::GUI::wxMouseEvent.

Here is the call graph for this function:

◆ update_text() [2/2]

void Slic3r::GUI::ConfirmBeforeSendDialog::update_text ( wxString text)
1255{
1256 wxBoxSizer* sizer_text_release_note = new wxBoxSizer(wxVERTICAL);
1259 wxBoxSizer* top_blank_sizer = new wxBoxSizer(wxVERTICAL);
1260 wxBoxSizer* bottom_blank_sizer = new wxBoxSizer(wxVERTICAL);
1261 top_blank_sizer->Add(FromDIP(5), 0, wxALIGN_CENTER | wxALL, FromDIP(5));
1262 bottom_blank_sizer->Add(FromDIP(5), 0, wxALIGN_CENTER | wxALL, FromDIP(5));
1263
1264 sizer_text_release_note->Add(top_blank_sizer, 0, wxALIGN_CENTER | wxALL, FromDIP(5));
1265 sizer_text_release_note->Add(m_staticText_release_note, 0, wxALIGN_CENTER, FromDIP(5));
1266 sizer_text_release_note->Add(bottom_blank_sizer, 0, wxALIGN_CENTER | wxALL, FromDIP(5));
1267 m_vebview_release_note->SetSizer(sizer_text_release_note);
1268 }
1269 m_staticText_release_note->SetMaxSize(wxSize(FromDIP(380), -1));
1270 m_staticText_release_note->SetMinSize(wxSize(FromDIP(380), -1));
1271 m_staticText_release_note->SetLabelText(text);
1272 m_vebview_release_note->Layout();
1273
1274 auto text_size = m_staticText_release_note->GetBestSize();
1275 if (text_size.y < FromDIP(380))
1276 m_vebview_release_note->SetMinSize(wxSize(FromDIP(400), text_size.y + FromDIP(25)));
1277 else {
1278 m_vebview_release_note->SetMinSize(wxSize(FromDIP(400), FromDIP(380)));
1279 }
1280
1281 Layout();
1282 Fit();
1283}
Label * m_staticText_release_note
Definition ReleaseNote.hpp:290

References LB_AUTO_WRAP, m_staticText_release_note, and m_vebview_release_note.

Referenced by Slic3r::GUI::BindMachineDialog::BindMachineDialog(), Slic3r::GUI::PreferencesDialog::create_debug_page(), Slic3r::GUI::SelectMachineDialog::on_ok_btn(), Slic3r::GUI::MainFrame::preview_only_hint(), Slic3r::GUI::SelectMachineDialog::show_errors(), and Slic3r::GUI::SyncAmsInfoDialog::show_errors().

Here is the caller graph for this function:

Member Data Documentation

◆ m_button_cancel

Button* Slic3r::GUI::ConfirmBeforeSendDialog::m_button_cancel
protected

◆ m_button_ok

Button* Slic3r::GUI::ConfirmBeforeSendDialog::m_button_ok
protected

◆ m_button_update_nozzle

Button* Slic3r::GUI::ConfirmBeforeSendDialog::m_button_update_nozzle
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_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_show_again_checkbox

wxCheckBox* Slic3r::GUI::ConfirmBeforeSendDialog::m_show_again_checkbox
protected

Referenced by ConfirmBeforeSendDialog(), and on_hide().

◆ m_sizer_main

wxBoxSizer* Slic3r::GUI::ConfirmBeforeSendDialog::m_sizer_main
protected

Referenced by ConfirmBeforeSendDialog().

◆ m_staticText_release_note

Label* Slic3r::GUI::ConfirmBeforeSendDialog::m_staticText_release_note { nullptr }
protected
290{ nullptr };

Referenced by update_text().

◆ m_vebview_release_note

wxScrolledWindow* Slic3r::GUI::ConfirmBeforeSendDialog::m_vebview_release_note { nullptr }
protected
289{ nullptr };

Referenced by ConfirmBeforeSendDialog(), update_text(), and update_text().

◆ not_show_again

bool Slic3r::GUI::ConfirmBeforeSendDialog::not_show_again = false
protected

Referenced by ConfirmBeforeSendDialog(), and on_hide().

◆ show_again_config_text

std::string Slic3r::GUI::ConfirmBeforeSendDialog::show_again_config_text = ""
protected

Referenced by on_hide().


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