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

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

Inheritance diagram for Slic3r::GUI::ObjectTableDialog:
Collaboration diagram for Slic3r::GUI::ObjectTableDialog:

Public Member Functions

 ObjectTableDialog (wxWindow *parent, Plater *platerObj, Model *modelObj, wxSize maxSize)
 ~ObjectTableDialog ()
void Popup (int obj_idx=-1, int vol_idx=-1, wxPoint position=wxDefaultPosition)
void OnClose (wxCloseEvent &evt)
void OnText (wxKeyEvent &evt)
void OnSize (wxSizeEvent &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

void on_dpi_changed (const wxRect &suggested_rect) override
void on_sys_color_changed () override

Private Member Functions

void update_em_unit ()
bool is_new_scale_factor () const
void rescale (const wxRect &suggested_rect)

Private Attributes

const int POPUP_WIDTH = FromDIP(512)
const int POPUP_HEIGHT = FromDIP(1024)
ObjectTablePanel * m_obj_panel { nullptr }
Model * m_model { nullptr }
Plater * m_plater { nullptr }
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

◆ ObjectTableDialog()

Slic3r::GUI::ObjectTableDialog::ObjectTableDialog ( wxWindow * parent,
Plater * platerObj,
Model * modelObj,
wxSize maxSize )
3358 : GUI::DPIDialog(parent, wxID_ANY, _L("Object/Part Settings"), wxDefaultPosition, wxDefaultSize, wxCAPTION | wxCLOSE_BOX | wxRESIZE_BORDER)
3359 ,
3360 m_model(modelObj), m_plater(platerObj)
3361{
3362#ifdef __WINDOWS__
3363 SetDoubleBuffered(true);
3364#endif //__WINDOWS__
3365 //this->SetBackgroundColour(m_bg_colour);
3366
3367 //m_top_sizer = new wxBoxSizer( wxVERTICAL );
3368
3369 //m_panel = new wxPanel(this, wxID_ANY, wxDefaultPosition, wxDefaultSize);
3370 SetBackgroundColour(*wxWHITE);
3371 SetMinSize(wxSize(-1, FromDIP(480)));
3372
3373 //m_static_title = new wxStaticText( m_panel, wxID_ANY, wxT("Totally Objects, Parts"), wxDefaultPosition, wxDefaultSize, 0 );
3374 //m_static_title->SetFont(Label::Head_12);
3375 //m_static_title->Wrap( -1 );
3376 //m_top_sizer->Add(m_static_title, 0, wxALL, 5);
3377
3378 //wxBoxSizer* bSizer1;
3379 //bSizer1 = new wxBoxSizer( wxVERTICAL );
3380
3381 //this->SetSizer( bSizer1 );
3382 //this->Layout();
3383
3384 // And also actually enable them.
3385 //m_panel->SetScrollRate(10, 10);
3386 auto m_main_sizer = new wxBoxSizer(wxVERTICAL);
3387
3388 //top line
3389 auto m_line_top = new wxPanel(this, wxID_ANY, wxDefaultPosition, wxSize(-1, 2), wxTAB_TRAVERSAL);
3390 m_line_top->SetBackgroundColour(wxColour(0xA6, 0xa9, 0xAA));
3391 m_main_sizer->Add(m_line_top, 0, wxEXPAND, 0);
3392
3393 m_obj_panel = new ObjectTablePanel(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxBORDER_NONE, wxEmptyString, m_plater, m_model);
3394 m_obj_panel->SetBackgroundColour(*wxWHITE);
3395 //m_top_sizer->Add(m_obj_panel, 1, wxALL | wxEXPAND, 5);
3396
3397 wxSize panel_size = m_obj_panel->get_init_size();
3398 g_max_size_from_parent = maxSize;
3399 if ((maxSize.GetWidth() == -1) || (maxSize.GetHeight() == -1)) {
3400 wxDisplay display(this);
3401 //auto drect = display.GetGeometry();
3402 wxRect client_area = display.GetClientArea ();
3403 g_max_size_from_parent.SetWidth(client_area.GetWidth());
3404 g_max_size_from_parent.SetHeight(client_area.GetHeight());
3405 }
3406
3407 if ((g_dialog_width == 0) || (g_dialog_height == 0))
3408 {
3409 g_dialog_height = (panel_size.GetHeight() > g_max_size_from_parent.GetHeight())?g_max_size_from_parent.GetHeight():panel_size.GetHeight();
3410 g_dialog_width = (panel_size.GetWidth() > g_max_size_from_parent.GetWidth())?g_max_size_from_parent.GetWidth():panel_size.GetWidth();
3411 }
3412 this->SetSize(wxSize(g_dialog_width, g_dialog_height));
3413 g_dialog_max_width = (panel_size.GetWidth() > g_max_size_from_parent.GetWidth())?g_max_size_from_parent.GetWidth():panel_size.GetWidth();
3415 //g_dialog_max_height = (panel_size.GetHeight() > g_max_size_from_parent.GetHeight()) ? g_max_size_from_parent.GetHeight() : panel_size.GetHeight();
3416 //this->SetMaxSize(wxSize(g_dialog_max_width, g_dialog_max_height));
3417 //m_top_sizer->SetSizeHints(this);
3418 //this->SetSizer(m_top_sizer);
3419 //SetClientSize(m_panel->GetSize());
3420 Bind(wxEVT_CLOSE_WINDOW, &ObjectTableDialog::OnClose, this);
3421 Bind(wxEVT_SIZE, &ObjectTableDialog::OnSize, this);
3422 Bind(wxEVT_CHAR_HOOK, &ObjectTableDialog::OnText, this);
3423
3424 //this->Layout();
3425 BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << boost::format(", created, this %1%, m_obj_panel %2%") %this % m_obj_panel;
3426
3427 m_main_sizer->Add(m_obj_panel, 1, wxEXPAND|wxLEFT,FromDIP(10));
3428 SetSizer(m_main_sizer);
3429 Fit();
3430 Layout();
3431 wxGetApp().UpdateDlgDarkUI(this);
3432}
#define _L(s)
Definition OBJ.cpp:34
ObjectTablePanel * m_obj_panel
Definition GUI_ObjectTable.hpp:638
void OnText(wxKeyEvent &evt)
Definition GUI_ObjectTable.cpp:3489
void OnClose(wxCloseEvent &evt)
Definition GUI_ObjectTable.cpp:3473
Plater * m_plater
Definition GUI_ObjectTable.hpp:640
void OnSize(wxSizeEvent &event)
Definition GUI_ObjectTable.cpp:3498
Model * m_model
Definition GUI_ObjectTable.hpp:639
static int g_dialog_max_width
Definition GUI_ObjectTable.cpp:79
static int g_dialog_max_height
Definition GUI_ObjectTable.cpp:80
static int g_dialog_width
Definition GUI_ObjectTable.cpp:77
static wxSize g_max_size_from_parent
Definition GUI_ObjectTable.cpp:81
static int g_dialog_height
Definition GUI_ObjectTable.cpp:78

References _L, Slic3r::GUI::g_dialog_height, Slic3r::GUI::g_dialog_max_height, Slic3r::GUI::g_dialog_max_width, Slic3r::GUI::g_dialog_width, Slic3r::GUI::g_max_size_from_parent, m_model, m_obj_panel, m_plater, OnClose(), OnSize(), and OnText().

Here is the call graph for this function:

◆ ~ObjectTableDialog()

Slic3r::GUI::ObjectTableDialog::~ObjectTableDialog ( )
3435{
3436 #ifdef __WXOSX_MAC__
3437 if (m_obj_panel) {
3438 delete m_obj_panel;
3439 m_obj_panel = nullptr;
3440 }
3441 #endif
3442}

References m_obj_panel.

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_dpi_changed()

void Slic3r::GUI::ObjectTableDialog::on_dpi_changed ( const wxRect & suggested_rect)
overrideprotectedvirtual

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

3455{
3456 const int& em = em_unit();
3457
3458 const wxSize& size = wxSize(40 * em, 30 * em);
3459 SetMinSize(size);
3460 m_obj_panel->msw_rescale();
3461
3462
3463 Fit();
3464 Refresh();
3465}
int em_unit() const
Definition GUI_Utils.hpp:203

References Slic3r::GUI::DPIAware< wxDialog >::em_unit(), and m_obj_panel.

Here is the call graph for this function:

◆ on_sys_color_changed()

void Slic3r::GUI::ObjectTableDialog::on_sys_color_changed ( )
overrideprotectedvirtual

Reimplemented from Slic3r::GUI::DPIAware< wxDialog >.

3468{
3469
3470 Refresh();
3471}

◆ OnClose()

void Slic3r::GUI::ObjectTableDialog::OnClose ( wxCloseEvent & evt)
3474{
3475 this->GetSize(&g_dialog_width, &g_dialog_height);
3476
3477 #ifdef __WINDOWS__
3478 if (m_obj_panel) {
3479 delete m_obj_panel;
3480 m_obj_panel = nullptr;
3481 }
3482 DestroyChildren();
3483 Destroy();
3484 #else
3485 evt.Skip();
3486 #endif
3487}

References Slic3r::GUI::g_dialog_height, Slic3r::GUI::g_dialog_width, and m_obj_panel.

Referenced by ObjectTableDialog().

Here is the caller graph for this function:

◆ OnSize()

void Slic3r::GUI::ObjectTableDialog::OnSize ( wxSizeEvent & event)
3499{
3500 /* wxSize new_size = event.GetSize();
3501 if ((new_size.GetWidth() > g_dialog_max_width) || (new_size.GetHeight() > g_dialog_max_height)) {
3502 int width = (new_size.GetWidth() > g_dialog_max_width) ? new_size.GetWidth() : g_dialog_max_width;
3503 int height = (new_size.GetHeight() > g_dialog_max_height) ? new_size.GetHeight() : g_dialog_max_height;
3504 this->SetMaxSize(wxSize(width, height));
3505 }*/
3506
3507 if (event.GetSize().y <= FromDIP(450)) {
3508 SetMaxSize(wxSize(GetSize().x, -1));
3509 SetMinSize(wxSize(GetSize().x, -1));
3510 SetSize(wxSize(GetSize().x, -1));
3511 return;
3512 }
3513 SetMaxSize(wxSize(GetSize().x, -1));
3514 SetMinSize(wxSize(GetSize().x, -1));
3515 SetSize(wxSize(GetSize().x, -1));
3516
3517 //m_obj_panel->SetSize(wxSize(-1, GetSize().y));
3518 //m_obj_panel->SetMinSize(wxSize(-1, GetSize().y));
3519 //m_obj_panel->SetMaxSize(wxSize(-1, GetSize().y));
3520
3521 event.Skip();
3522}

Referenced by ObjectTableDialog().

Here is the caller graph for this function:

◆ OnText()

void Slic3r::GUI::ObjectTableDialog::OnText ( wxKeyEvent & evt)
3490{
3491 if (evt.GetKeyCode() == WXK_ESCAPE) {
3492 Close();
3493 } else {
3494 evt.Skip();
3495 }
3496}

Referenced by ObjectTableDialog().

Here is the caller graph for this function:

◆ Popup()

void Slic3r::GUI::ObjectTableDialog::Popup ( int obj_idx = -1,
int vol_idx = -1,
wxPoint position = wxDefaultPosition )
3445{
3446 m_obj_panel->sort_by_default();
3447 m_obj_panel->SetSelection(obj_idx, vol_idx);
3448
3449 //this->SetPosition(position);
3450 Centre(wxBOTH);
3451 this->ShowModal();
3452}
int ShowModal()
Definition GUI_Utils.hpp:216

References m_obj_panel, and Slic3r::GUI::DPIAware< wxDialog >::ShowModal().

Referenced by Slic3r::GUI::Plater::priv::PopupObjectTable().

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 }

Member Data Documentation

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

Model* Slic3r::GUI::ObjectTableDialog::m_model { nullptr }
private
639{ nullptr };

Referenced by ObjectTableDialog().

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

ObjectTablePanel* Slic3r::GUI::ObjectTableDialog::m_obj_panel { nullptr }
private

◆ m_plater

Plater* Slic3r::GUI::ObjectTableDialog::m_plater { nullptr }
private
640{ nullptr };

Referenced by ObjectTableDialog().

◆ 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

◆ POPUP_HEIGHT

const int Slic3r::GUI::ObjectTableDialog::POPUP_HEIGHT = FromDIP(1024)
private

◆ POPUP_WIDTH

const int Slic3r::GUI::ObjectTableDialog::POPUP_WIDTH = FromDIP(512)
private

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