Load the wxWidgets PNG handler only once.

This commit is contained in:
bubnikv 2017-11-30 20:25:59 +01:00
parent a0268a1906
commit 354408c7e6
2 changed files with 3 additions and 2 deletions

View file

@ -112,7 +112,7 @@ sub OnInit {
$run_wizard = 1 if $self->{preset_bundle}->has_defauls_only;
# application frame
Wx::Image::AddHandler(Wx::PNGHandler->new);
Wx::Image::FindHandlerType(wxBITMAP_TYPE_PNG) || Wx::Image::AddHandler(Wx::PNGHandler->new);
$self->{mainframe} = my $frame = Slic3r::GUI::MainFrame->new(
# If set, the "Controller" tab for the control of the printer over serial line and the serial port settings are hidden.
no_controller => $self->{app_config}->get('no_controller'),

View file

@ -34,7 +34,8 @@ PresetBundle::PresetBundle() :
m_bitmapCompatible(new wxBitmap),
m_bitmapIncompatible(new wxBitmap)
{
::wxInitAllImageHandlers();
if (wxImage::FindHandler(wxBITMAP_TYPE_PNG) == nullptr)
wxImage::AddHandler(new wxPNGHandler);
// Create the ID config keys, as they are not part of the Static print config classes.
this->prints.preset(0).config.opt_string("print_settings_id", true);