OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
Slic3r::GUI::DPIAware< P > Class Template Referenceabstract

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

Inheritance diagram for Slic3r::GUI::DPIAware< P >:
Collaboration diagram for Slic3r::GUI::DPIAware< P >:

Public Member Functions

 DPIAware (wxWindow *parent, wxWindowID id, const wxString &title, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxDEFAULT_FRAME_STYLE, const wxString &name=wxFrameNameStr)
virtual ~DPIAware ()
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_dpi_changed (const wxRect &suggested_rect)=0
virtual void on_sys_color_changed ()

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 { true }
bool m_force_rescale { false }
int m_new_font_point_size

Detailed Description

template<class P>
class Slic3r::GUI::DPIAware< P >

Constructor & Destructor Documentation

◆ DPIAware()

template<class P>
Slic3r::GUI::DPIAware< P >::DPIAware ( wxWindow * parent,
wxWindowID id,
const wxString & title,
const wxPoint & pos = wxDefaultPosition,
const wxSize & size = wxDefaultSize,
long style = wxDEFAULT_FRAME_STYLE,
const wxString & name = wxFrameNameStr )
inline
111 : P(parent, id, title, pos, size, style, name)
112 {
113 int dpi = get_dpi_for_window(this);
117
118 /* Because of default window font is a primary display font,
119 * We should set correct font for window before getting em_unit value.
120 */
121#ifndef __WXOSX__ // Don't call SetFont under OSX to avoid name cutting in ObjectList
122 this->SetFont(m_normal_font);
123#endif
124 this->CenterOnParent();
126#ifdef _WIN32
127 update_dark_ui(this);
128#endif
129
131
132// recalc_font();
133
134#ifndef __WXOSX__
136 m_scale_factor = (float)evt.GetNewDPI().x / (float)DPI_DEFAULT;
137 m_new_font_point_size = get_default_font_for_dpi(this, evt.GetNewDPI().x).GetPointSize();
139 rescale(wxRect());
140 });
141#endif // no __WXOSX__
142
143 this->Bind(wxEVT_MOVE_START, [this](wxMoveEvent& event)
144 {
145 event.Skip();
146
147 // Suppress application rescaling, when a MainFrame moving is not ended
148 m_can_rescale = false;
149 });
150
151 this->Bind(wxEVT_MOVE_END, [this](wxMoveEvent& event)
152 {
153 event.Skip();
154
156
157 // If scale factor is different after moving of MainFrame ...
158 if (m_can_rescale)
159 // ... rescale application
160 rescale(event.GetRect());
161 else
162 // set value to _true_ in purpose of possibility of a display dpi changing from System Settings
163 m_can_rescale = true;
164 });
165
167 {
168#ifndef __WINDOWS__
171 event.Skip();
172#else
173 // Not calling Skip() is what stops the event propagating on Windows.
174 (void) this;
175#endif // __WINDOWS__
176
177 });
178
180 this->Bind(wxEVT_CHAR_HOOK, [this](wxKeyEvent& e) {
181 if (e.GetKeyCode() == WXK_ESCAPE) {
182 //if (this->IsModal())
183 // this->EndModal(wxID_CANCEL);
184 //else
185 this->Close();
186 }
187 else
188 e.Skip();
189 });
190 }
191 }
Definition GUI_Utils.hpp:107
void rescale(const wxRect &suggested_rect)
Definition GUI_Utils.hpp:264
float m_scale_factor
Definition GUI_Utils.hpp:229
void update_em_unit()
Definition GUI_Utils.hpp:249
bool m_force_rescale
Definition GUI_Utils.hpp:236
int m_new_font_point_size
Definition GUI_Utils.hpp:238
float m_prev_scale_factor
Definition GUI_Utils.hpp:234
wxFont m_normal_font
Definition GUI_Utils.hpp:233
virtual void on_sys_color_changed()
Definition GUI_Utils.hpp:226
bool is_new_scale_factor() const
Definition GUI_Utils.hpp:262
bool m_can_rescale
Definition GUI_Utils.hpp:235
void update_dark_config()
Definition GUI_Utils.cpp:338
int get_dpi_for_window(const wxWindow *window)
Definition GUI_Utils.cpp:234
wxFont get_default_font_for_dpi(const wxWindow *window, int dpi)
Definition GUI_Utils.cpp:287
@ P
Definition libslic3r.h:149

◆ ~DPIAware()

template<class P>
virtual Slic3r::GUI::DPIAware< P >::~DPIAware ( )
inlinevirtual
193{}

Member Function Documentation

◆ em_unit()

template<class P>
int Slic3r::GUI::DPIAware< P >::em_unit ( ) const
inline
203{ return m_em_unit; }
int m_em_unit
Definition GUI_Utils.hpp:230

Referenced by Slic3r::GUI::SendSystemInfoDialog::SendSystemInfoDialog(), em_unit(), and Slic3r::GUI::GUI_App::update_fonts().

Here is the caller graph for this function:

◆ enable_force_rescale()

template<class P>
void Slic3r::GUI::DPIAware< P >::enable_force_rescale ( )
inline
206{ m_force_rescale = true; }

◆ force_rescale()

template<class P>
bool Slic3r::GUI::DPIAware< P >::force_rescale ( ) const
inline
201{ return m_force_rescale; }

◆ is_new_scale_factor()

template<class P>
bool Slic3r::GUI::DPIAware< P >::is_new_scale_factor ( ) const
inlineprivate
262{ return fabs(m_scale_factor - m_prev_scale_factor) > 0.001; }

Referenced by Slic3r::GUI::DPIAware< wxFrame >::DPIAware().

Here is the caller graph for this function:

◆ normal_font()

template<class P>
const wxFont & Slic3r::GUI::DPIAware< P >::normal_font ( ) const
inline
205{ return m_normal_font; }

◆ on_dpi_changed()

template<class P>
virtual void Slic3r::GUI::DPIAware< P >::on_dpi_changed ( const wxRect & suggested_rect)
protectedpure virtual

Implemented in anonymous_namespace{3DPrinterOS.cpp}::TokenAuthDialog, anonymous_namespace{3DPrinterOS.cpp}::UploadOptionsDialog, PrintHostQueueDialog, Slic3r::GUI::AboutDialog, Slic3r::GUI::AMSDryCtrWin, Slic3r::GUI::AMSMaterialsSetting, Slic3r::GUI::AmsReplaceMaterialDialog, Slic3r::GUI::AMSSetting, Slic3r::GUI::anonymous_namespace{PrintHostDialogs.cpp}::FlashforgeSlotDialog, Slic3r::GUI::anonymous_namespace{SceneBenchmark.cpp}::SceneBenchmarkDialog, Slic3r::GUI::AuxiliaryDialog, Slic3r::GUI::BaseTransparentDPIFrame, Slic3r::GUI::BedShapeDialog, Slic3r::GUI::BindMachineDialog, Slic3r::GUI::CalibrationDialog, Slic3r::GUI::CloneDialog, Slic3r::GUI::ColorDecomposeDialog, Slic3r::GUI::ColorPickerDialog, Slic3r::GUI::ConfigWizard, Slic3r::GUI::ConfirmBeforeSendDialog, Slic3r::GUI::ConnectPrinterDialog, Slic3r::GUI::CopyrightsDialog, Slic3r::GUI::Cornering_Test_Dlg, Slic3r::GUI::CreateFilamentPresetDialog, Slic3r::GUI::CreatePresetForPrinterDialog, Slic3r::GUI::CreatePresetSuccessfulDialog, Slic3r::GUI::CreatePrinterPresetDialog, Slic3r::GUI::DeleteConfirmDialog, Slic3r::GUI::DesignTextDialog, Slic3r::GUI::DesignVariableDialog, Slic3r::GUI::DeviceErrorDialog, Slic3r::GUI::DiffPresetDialog, Slic3r::GUI::DownloadProgressDialog, Slic3r::GUI::EditCalibrationHistoryDialog, Slic3r::GUI::EditDevNameDialog, Slic3r::GUI::EditFilamentPresetDialog, Slic3r::GUI::EditGCodeDialog, Slic3r::GUI::ExportConfigsDialog, Slic3r::GUI::ExtrusionCalibration, Slic3r::GUI::FilamentPickerDialog, Slic3r::GUI::FileArchiveDialog, Slic3r::GUI::FlowRateCalibrationDialog, Slic3r::GUI::GuideFrame, Slic3r::GUI::HistoryWindow, Slic3r::GUI::ImageDPIFrame, Slic3r::GUI::Input_Shaping_Damp_Test_Dlg, Slic3r::GUI::Input_Shaping_Freq_Test_Dlg, Slic3r::GUI::InputIpAddressDialog, Slic3r::GUI::KBShortcutsDialog, Slic3r::GUI::MainFrame, Slic3r::GUI::ManualNozzleCountDialog, Slic3r::GUI::MaxVolumetricSpeed_Test_Dlg, Slic3r::GUI::MediaFileFrame, Slic3r::GUI::MixedFilamentDialog, Slic3r::GUI::ModelMallDialog, Slic3r::GUI::MsgDialog, Slic3r::GUI::MsgUpdateConfig, Slic3r::GUI::MultiChoiceDialog, Slic3r::GUI::MultiMachinePickPage, Slic3r::GUI::MultiNozzleSyncDialog, Slic3r::GUI::NetworkErrorDialog, Slic3r::GUI::NetworkPluginDownloadDialog, Slic3r::GUI::NetworkPluginRestartDialog, Slic3r::GUI::NetworkTestDialog, Slic3r::GUI::NewCalibrationHistoryDialog, Slic3r::GUI::Newer3mfVersionDialog, Slic3r::GUI::OAuthDialog, Slic3r::GUI::ObjectTableDialog, Slic3r::GUI::PA_Calibration_Dlg, Slic3r::GUI::ParamsDialog, Slic3r::GUI::PartSkipConfirmDialog, Slic3r::GUI::PartSkipDialog, Slic3r::GUI::PhysicalPrinterDialog, Slic3r::GUI::PingCodeBindDialog, Slic3r::GUI::PlateNameEditDialog, Slic3r::GUI::PlateSettingsDialog, Slic3r::GUI::PluginPickerDialog, Slic3r::GUI::PreferencesDialog, Slic3r::GUI::PrinterPartsDialog, Slic3r::GUI::PrintErrorDialog, Slic3r::GUI::PrintHostQueueDialog, Slic3r::GUI::PrintOptionsDialog, Slic3r::GUI::PrivacyUpdateDialog, Slic3r::GUI::ProjectDropDialog, Slic3r::GUI::PublishSettingsDialog, Slic3r::GUI::PurgeModeDialog, Slic3r::GUI::RecenterDialog, Slic3r::GUI::ReleaseNoteDialog, Slic3r::GUI::Retraction_Test_Dlg, Slic3r::GUI::SafetyOptionsDialog, Slic3r::GUI::SavePresetDialog, Slic3r::GUI::ScoreDialog, Slic3r::GUI::SecondaryCheckDialog, Slic3r::GUI::SelectMachineDialog, Slic3r::GUI::SendFailedConfirm, Slic3r::GUI::SendMultiMachinePage, Slic3r::GUI::SendSystemInfoDialog, Slic3r::GUI::SendToPrinterDialog, Slic3r::GUI::SettingsDialog, Slic3r::GUI::ShortcutCaptureDialog, Slic3r::GUI::SingleChoiceDialog, Slic3r::GUI::SpeedDialWebDialog, Slic3r::GUI::SyncAmsInfoDialog, Slic3r::GUI::Temp_Calibration_Dlg, Slic3r::GUI::TextureImportDialog, Slic3r::GUI::TipsDialog, Slic3r::GUI::TroubleshootDialog, Slic3r::GUI::UnBindMachineDialog, Slic3r::GUI::UnsavedChangesDialog, Slic3r::GUI::UpdatePluginDialog, Slic3r::GUI::UpdateVersionDialog, Slic3r::GUI::VFA_Test_Dlg, Slic3r::GUI::WebViewHostDialog, Slic3r::GUI::wgtDeviceNozzleRackUpgradeDlg, and StepMeshDialog.

Referenced by Slic3r::GUI::DPIAware< wxFrame >::rescale().

Here is the caller graph for this function:

◆ on_sys_color_changed()

◆ prev_scale_factor()

template<class P>
float Slic3r::GUI::DPIAware< P >::prev_scale_factor ( ) const
inline
196{ return m_prev_scale_factor; }

◆ rescale()

template<class P>
void Slic3r::GUI::DPIAware< P >::rescale ( const wxRect & suggested_rect)
inlineprivate
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

Referenced by Slic3r::GUI::DPIAware< wxFrame >::DPIAware().

Here is the caller graph for this function:

◆ scale_factor()

template<class P>
float Slic3r::GUI::DPIAware< P >::scale_factor ( ) const
inline
195{ return m_scale_factor; }

◆ set_em_unit()

template<class P>
void Slic3r::GUI::DPIAware< P >::set_em_unit ( int v)
inline
200{ m_em_unit = v; }

◆ set_prev_scale_factor()

template<class P>
void Slic3r::GUI::DPIAware< P >::set_prev_scale_factor ( float v)
inline

◆ set_scale_factor()

template<class P>
void Slic3r::GUI::DPIAware< P >::set_scale_factor ( float v)
inline
198{ m_scale_factor = v; }

◆ ShowModal()

template<class P>
int Slic3r::GUI::DPIAware< P >::ShowModal ( )
inline
217 {
218 dialogStack.push_front(this);
219 int r = wxDialog::ShowModal();
220 dialogStack.pop_front();
221 return r;
222 }

Referenced by Slic3r::GUI::MultiMachineManagerPage::MultiMachineManagerPage(), Slic3r::GUI::OtherLayersSeqPanel::OtherLayersSeqPanel(), Slic3r::GUI::PlaterPresetComboBox::PlaterPresetComboBox(), Slic3r::GUI::PrintOptionsDialog::PrintOptionsDialog(), Slic3r::GUI::PublishSettingsDialog::PublishSettingsDialog(), RammingDialog::RammingDialog(), Slic3r::GUI::SendSystemInfoDialog::SendSystemInfoDialog(), Slic3r::GUI::Sidebar::Sidebar(), StepMeshDialog::StepMeshDialog(), Slic3r::GUI::Temp_Calibration_Dlg::Temp_Calibration_Dlg(), Slic3r::GUI::about(), Slic3r::GUI::TextureImportDialog::add_decomposed_mixed_filament(), Slic3r::GUI::Sidebar::add_mixed_filament(), Slic3r::GUI::CaliPageActionPanel::bind_button(), Slic3r::GUI::anonymous_namespace{NativeCommands.cpp}::build_command_catalog(), Slic3r::GUI::TabPrinter::build_fff(), Slic3r::GUI::Tab::build_preset_description_line(), Slic3r::GUI::PhysicalPrinterDialog::build_printhost_settings(), Slic3r::GUI::TabPrinter::build_unregular_pages(), Slic3r::GUI::Plater::calib_pa(), Slic3r::GUI::Plater::calib_temp(), Slic3r::GUI::PressureAdvanceWizard::can_save_cali_result(), Slic3r::GUI::ConfigManipulation::check_adaptive_pressure_advance_model(), Slic3r::GUI::ConfigWizard::priv::check_and_install_missing_materials(), Slic3r::GUI::ConfigManipulation::check_chamber_minimal_temperature(), Slic3r::GUI::ConfigManipulation::check_chamber_temperature(), Slic3r::GUI::ConfigManipulation::check_filament_ironing_spacing(), Slic3r::GUI::ConfigManipulation::check_filament_max_volumetric_speed(), Slic3r::GUI::ConfigManipulation::check_layer_height(), Slic3r::GUI::GUI_App::check_legacy_user_filament_presets(), Slic3r::PresetUpdater::priv::check_new_vendors(), Slic3r::GUI::ConfigManipulation::check_nozzle_recommended_temperature_range(), Slic3r::GUI::ConfigManipulation::check_nozzle_temperature_initial_layer_range(), Slic3r::GUI::ConfigManipulation::check_nozzle_temperature_range(), Slic3r::GUI::check_objects_after_cut(), Slic3r::GUI::GUI_App::check_print_host_queue(), Slic3r::GUI::Plater::check_printer_initialized(), Slic3r::GUI::FanControlNew::check_printing_state(), Slic3r::GUI::FanOperate::check_printing_state(), Slic3r::GUI::GUI_App::check_updates(), Slic3r::DevNozzleRack::CheckRackMoveWarningDlg(), Slic3r::GUI::Plater::clone_selection(), Slic3r::GUI::Plater::close_with_confirm(), Slic3r::GUI::Tab::compatible_widget_create(), Slic3r::PresetUpdater::config_update(), Slic3r::GUI::confirm_create_decompose_missing_components(), Slic3r::GUI::EditFilamentPresetDialog::create_add_filament_btn(), Slic3r::GUI::TabPrinter::create_bed_shape_widget(), Slic3r::GUI::PreferencesDialog::create_debug_page(), 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_checkbox(), Slic3r::GUI::PreferencesDialog::create_item_language_combobox(), Slic3r::GUI::PreferencesDialog::create_item_network_plugin_version(), Slic3r::GUI::PreferencesDialog::create_item_region_combobox(), Slic3r::GUI::PreferencesDialog::create_items(), Slic3r::GUI::SendMultiMachinePage::create_page(), Slic3r::GUI::CreatePrinterPresetDialog::create_page2_dialog_buttons(), Slic3r::GUI::CaliPresetCaliStagePanel::create_panel(), Slic3r::GUI::CreatePrinterPresetDialog::create_printer_item(), Slic3r::GUI::Sidebar::create_printer_preset(), Slic3r::GUI::CalibrationPresetPage::create_selection_panel(), Slic3r::DevNozzleRack::CtrlRackReadAll(), Slic3r::DevNozzleRack::CtrlRackUpgrade(), Slic3r::GUI::ExportConfigsDialog::data_init(), Slic3r::GUI::Sidebar::decompose_filament_color(), Slic3r::GUI::ObjectList::del_from_cut_object(), Slic3r::GUI::Plater::priv::delete_object_from_model(), Slic3r::GUI::EditFilamentPresetDialog::delete_preset(), Slic3r::GUI::Tab::delete_preset(), Slic3r::GUI::desktop_open_project_attachment(), Slic3r::GUI::determine_load_type(), Slic3r::PresetUpdater::do_printer_config_update(), Slic3r::GUI::MediaFilePanel::doAction(), Slic3r::GUI::GLGizmoEmboss::draw_delete_style_button(), Slic3r::GUI::GLGizmoEmboss::draw_style_list(), Slic3r::GUI::Tab::edit_custom_gcode(), Slic3r::GUI::Sidebar::edit_mixed_filament(), Slic3r::GUI::KBShortcutsDialog::edit_shortcut(), Slic3r::GUI::MainFrame::export_config(), Slic3r::GUI::Plater::export_published_3mf(), Slic3r::GUI::TroubleshootDialog::ExportAsJson(), Slic3r::GUI::TroubleshootDialog::ExportAsZip(), Slic3r::GUI::MainFrame::generate_help_menu(), Slic3r::GUI::ScoreDialog::get_button_sizer(), Slic3r::GUI::CalibrationFlowCoarseSavePage::get_result(), Slic3r::GUI::CalibrationFlowFineSavePage::get_result(), Slic3r::GUI::CalibrationFlowX1SavePage::get_result(), Slic3r::GUI::CaliPASaveAutoPanel::get_result(), Slic3r::GUI::CaliPASaveManualPanel::get_result(), Slic3r::GUI::CaliPASaveP1PPanel::get_result(), Slic3r::GUI::CalibrationMaxVolumetricSpeedSavePage::get_save_result(), Slic3r::GUI::Field::get_value_by_opt_type(), Slic3r::GUI::GUI_App::handle_web_request(), Slic3r::GUI::Plater::import_model_id(), Slic3r::GUI::ElegooPrintHostSendDialog::init(), Slic3r::GUI::FlashforgePrintHostSendDialog::init(), Slic3r::GUI::GCodeViewer::init(), Slic3r::GUI::PrintHostSendDialog::init(), Slic3r::GUI::MainFrame::init_menubar_as_editor(), Slic3r::GUI::ExportPresetBundleDialog::InitExportData(), Slic3r::GUI::ExportConfigsDialog::initial_file_name(), Slic3r::GUI::Sidebar::is_new_project_in_gcode3mf(), Slic3r::GUI::is_pa_params_valid(), Slic3r::GUI::is_same_nozzle_type(), Slic3r::GUI::GUI_App::keyboard_shortcuts(), Slic3r::GUI::ConfigManipulation::layer_height_out_of_range_dialog(), Slic3r::GUI::ObjectList::layers_editing(), Slic3r::GUI::MainFrame::load_config_file(), Slic3r::GUI::Plater::priv::load_files(), Slic3r::GUI::Plater::load_gcode(), Slic3r::GUI::ObjectList::load_generic_subobject(), Slic3r::GUI::MenuFactory::load_handy_model(), Slic3r::GUI::Plater::priv::load_model_objects(), Slic3r::GUI::ObjectList::load_modifier(), Slic3r::GUI::ScoreDialog::load_photo(), Slic3r::GUI::CreatePrinterPresetDialog::load_system_and_user_presets_with_curr_model(), Slic3r::GUI::manuallySetNozzleCount(), Slic3r::GUI::Tab::may_discard_current_dirty_preset(), Slic3r::GUI::GUI_App::maybe_migrate_user_presets_on_login(), Slic3r::GUI::Plater::priv::on_action_layersediting(), Slic3r::GUI::DesignPanel::on_add_variable(), Slic3r::GUI::StatusPanel::on_ams_filament_backup(), Slic3r::GUI::StatusPanel::on_ams_load_curr(), Slic3r::GUI::StatusPanel::on_ams_refresh_rfid(), Slic3r::GUI::PingCodeBindDialog::on_bind_printer(), Slic3r::GUI::BindMachineDialog::on_bind_success(), Slic3r::GUI::PressureAdvanceWizard::on_cali_action(), Slic3r::GUI::FlowRateWizard::on_cali_save(), Slic3r::GUI::MaxVolumetricSpeedWizard::on_cali_save(), Slic3r::GUI::PressureAdvanceWizard::on_cali_save(), Slic3r::GUI::FlowRateWizard::on_cali_start(), Slic3r::GUI::MaxVolumetricSpeedWizard::on_cali_start(), Slic3r::GUI::PressureAdvanceWizard::on_cali_start(), Slic3r::GUI::FilamentMapDialog::on_checkbox(), Slic3r::GUI::HistoryWindow::on_click_new_button(), Slic3r::GUI::ExtrusionCalibration::on_click_save(), Slic3r::GUI::TextureImportDialog::on_computation_error(), Slic3r::GUI::Plater::priv::on_create_filament(), Slic3r::GUI::NetworkPluginDownloadDialog::on_download(), Slic3r::GUI::DesignPanel::on_edit_variable(), Slic3r::GUI::StatusPanel::on_filament_extrusion_cali(), Slic3r::GUI::AMSControl::on_filament_load(), Slic3r::GUI::DownloadProgressDialog::on_finish(), Slic3r::GUI::GUI_App::on_http_error(), Slic3r::GUI::DesignPanel::on_import_mesh(), Slic3r::GUI::GUI_App::on_init_inner(), Slic3r::GUI::StatusPanel::on_lamp_switch(), Slic3r::GUI::anonymous_namespace{PrintHostDialogs.cpp}::FlashforgeMaterialMapWidget::on_left_down(), Slic3r::GUI::StatusPanel::on_market_scoring(), Slic3r::GUI::TextureImportDialog::on_mesh_repair_decision_required(), Slic3r::GUI::FanControlPopupNew::on_mode_changed(), Slic3r::GUI::Plater::priv::on_modify_filament(), Slic3r::GUI::PinCodePanel::on_mouse_left_up(), Slic3r::GUI::DesignPanel::on_new_design(), Slic3r::GUI::MachineInfoPanel::on_nozzle_rack_update(), Slic3r::GUI::StatusPanel::on_nozzle_selected(), Slic3r::GUI::NewCalibrationHistoryDialog::on_ok(), Slic3r::GUI::SendToPrinterDialog::on_ok(), Slic3r::GUI::SelectMachineDialog::on_rename_enter(), Slic3r::GUI::SendMultiMachinePage::on_rename_enter(), Slic3r::GUI::SendToPrinterDialog::on_rename_enter(), Slic3r::GUI::GLGizmoSimplify::on_render_input_window(), Slic3r::GUI::EditCalibrationHistoryDialog::on_save(), Slic3r::GUI::PresetBundleDialog::on_script_message(), Slic3r::GUI::MainFrame::on_select_default_preset(), Slic3r::GUI::AMSMaterialsSetting::on_select_filament(), Slic3r::GUI::AMSMaterialsSetting::on_select_ok(), Slic3r::GUI::Plater::priv::on_select_preset(), Slic3r::GUI::CreatePrinterPresetDialog::on_select_printer_model(), Slic3r::GUI::AMSMaterialsSetting::on_select_reset(), Slic3r::GUI::SelectMachineDialog::on_selection_changed(), Slic3r::GUI::SendMultiMachinePage::on_send(), Slic3r::GUI::SelectMachineDialog::on_send_print(), Slic3r::GUI::StatusPanel::on_set_chamber_temp(), Slic3r::GUI::MachineInfoPanel::on_show_release_note(), Slic3r::GUI::Cornering_Test_Dlg::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::PresetUpdater::on_update_notification_confirm(), Slic3r::GUI::Tab::on_value_change(), Slic3r::GUI::AMSSettingTypePanel::OnAmsTypeChanged(), Slic3r::GUI::PartSkipDialog::OnApplyDialog(), Slic3r::GUI::wgtDeviceNozzleRackNozzleItem::OnBtnNozzleStatus(), Slic3r::GUI::AboutDialog::onCopyrightBtn(), Slic3r::GUI::SelectMachinePopup::OnLeftUp(), Slic3r::GUI::CalibrateFilamentComboBox::OnSelect(), Slic3r::GUI::wgtDeviceNozzleRackHotendUpdate::OnStatusIconClick(), Slic3r::GUI::PluginConfigField::open_dialog(), Slic3r::GUI::GUI_App::open_exportpresetbundledialog(), Slic3r::GUI::Plater::open_platesettings_dialog(), Slic3r::GUI::GUI_App::open_preferences(), Slic3r::GUI::MainFrame::open_recent_project(), Slic3r::GUI::TroubleshootDialog::PackAll(), Slic3r::UserManager::parse_json(), Slic3r::GUI::GLGizmoCut3D::perform_cut(), Slic3r::GUI::OptionsGroup::pick_plugin(), Slic3r::GUI::Plater::pop_warning_and_go_to_device_page(), Slic3r::GUI::SelectMachineDialog::popup_filament_backup(), Slic3r::GUI::SyncAmsInfoDialog::popup_filament_backup(), Slic3r::GUI::Plater::PopupObjectTable(), Slic3r::GUI::GUI_App::post_init(), Slic3r::GUI::Plater::preview_zip_archive(), Slic3r::GUI::GUI_App::process_network_msg(), Slic3r::GUI::MainFrame::publish_project(), Slic3r::GUI::GUI_App::push_notification(), Slic3r::GUI::TroubleshootDialog::RebuildSystemProfiles(), Slic3r::GUI::Plater::priv::reload_from_disk(), Slic3r::GUI::Sidebar::remove_all_mixed_filaments(), Slic3r::GUI::GCodeViewer::render_legend_color_arr_recommen(), Slic3r::GUI::GLGizmoTextureDisplacement::render_texture_library_popup(), Slic3r::GUI::Plater::priv::replace_all_with_stl(), Slic3r::GUI::Plater::priv::replace_volume_with_stl(), Slic3r::GUI::Plater::priv::replace_with_stl(), Slic3r::GUI::TroubleshootDialog::RestartApplication(), Slic3r::GUI::run_scene_benchmark(), Slic3r::GUI::UnsavedChangesDialog::save(), Slic3r::GUI::Tab::save_preset(), Slic3r::GUI::Plater::save_project(), Slic3r::GUI::Plater::priv::save_project_if_dirty(), Slic3r::GUI::ConfigWizard::priv::select_default_materials_for_printer_models(), Slic3r::GUI::Plater::select_plate_by_hover_id(), Slic3r::GUI::Plater::send_gcode_legacy(), Slic3r::GUI::MachineObjectPanel::show_bind_dialog(), Slic3r::GUI::show_error(), Slic3r::GUI::ExportConfigsDialog::show_export_result(), Slic3r::GUI::ExportPresetBundleDialog::show_export_result(), Slic3r::GUI::Sidebar::priv::show_fila_switch_msg(), Slic3r::GUI::show_info(), Slic3r::GUI::GUI_App::show_modal_ip_address_enter_dialog(), Slic3r::GUI::GUI_App::show_network_plugin_download_dialog(), Slic3r::GUI::StatusPanel::show_recenter_dialog(), Slic3r::GUI::show_send_system_info_dialog_if_needed(), Slic3r::GUI::ConfigManipulation::show_spiral_mode_settings_dialog(), Slic3r::GUI::show_substitutions_info(), Slic3r::GUI::show_substitutions_info(), Slic3r::GUI::Tab::show_timelapse_warning_dialog(), Slic3r::GUI::GUI_App::ShowDownNetPluginDlg(), Slic3r::GUI::ObjectList::smooth_mesh(), Slic3r::GUI::Plater::priv::split_object(), Slic3r::GUI::Sidebar::priv::switch_diameter_to(), Slic3r::GUI::ObjectList::switch_to_object_process(), Slic3r::GUI::Sidebar::sync_ams_list(), Slic3r::GUI::Tab::sync_excluder(), Slic3r::GUI::Sidebar::priv::sync_extruder_list(), Slic3r::GUI::HistoryWindow::sync_history_data(), Slic3r::GUI::GUI_App::sync_preset(), Slic3r::GUI::KBShortcutsDialog::take_chord_from(), Slic3r::GUI::TabPrinter::toggle_options(), Slic3r::GUI::MediaPlayCtrl::ToggleStream(), Slic3r::GUI::GUI_App::troubleshoot(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::ui_message(), Slic3r::GUI::SelectMachinePopup::update_other_devices(), Slic3r::GUI::Plater::priv::update_plugin_when_launch(), Slic3r::GUI::ConfigManipulation::update_print_fff_config(), Slic3r::GUI::ConfigManipulation::update_print_sla_config(), Slic3r::GUI::MultiMachinePickPage::update_selected_count(), Slic3r::GUI::FanControlPopupNew::UpdatePartSubMode(), Slic3r::GUI::GUI_App::updating_bambu_networking(), Slic3r::GUI::Tab::validate_custom_gcode(), Slic3r::GUI::CalibUtils::validate_input_name(), Slic3r::GUI::CreatePrinterPresetDialog::validate_input_valid(), Slic3r::GUI::warning_catcher(), and Slic3r::GUI::Plater::priv::warnings_dialog().

◆ update_em_unit()

template<class P>
void Slic3r::GUI::DPIAware< P >::update_em_unit ( )
inlineprivate
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 }

Referenced by Slic3r::GUI::DPIAware< wxFrame >::DPIAware(), and Slic3r::GUI::DPIAware< wxFrame >::rescale().

Here is the caller graph for this function:

Member Data Documentation

◆ m_can_rescale

template<class P>
bool Slic3r::GUI::DPIAware< P >::m_can_rescale { true }
private
235{ true };

◆ m_em_unit

template<class P>
int Slic3r::GUI::DPIAware< P >::m_em_unit
private

◆ m_force_rescale

template<class P>
bool Slic3r::GUI::DPIAware< P >::m_force_rescale { false }
private
236{ false };

◆ m_new_font_point_size

template<class P>
int Slic3r::GUI::DPIAware< P >::m_new_font_point_size
private

◆ m_normal_font

template<class P>
wxFont Slic3r::GUI::DPIAware< P >::m_normal_font
private

◆ m_prev_scale_factor

template<class P>
float Slic3r::GUI::DPIAware< P >::m_prev_scale_factor
private

◆ m_scale_factor

template<class P>
float Slic3r::GUI::DPIAware< P >::m_scale_factor
private

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