I am feeding a Wx::ListCtrl with an image list and use the following code to read images in from file:
my $images_sm = Wx::ImageList->new( 16, 16, 1 );
$images_sm->Add( Wx::Bitmap->new("bin/icons/$_.gif", wxBITMAP_TYPE_GIF
+) );
This works.
Now, moving the image data into a module and reading in the data from a string fails, why?
use MIME::Base64 ();
$raw_data = "R0lGODlhEAAQAJEAAAAAAP///+vc3AAAACwAAAAAEAAQAAACDpSPqcvtD
+6OctNqLsz4FADs=";
my $icon_data = MIME::Base64::decode_base64( $raw_data );
my $images_sm = Wx::ImageList->new( 16, 16, 1 );
my $file = IO::Scalar->new( \$icon_data );
my $image = Wx::Image->new();
$image->LoadFile( $file, wxBITMAP_TYPE_ANY );
close($file);
$images_sm->Add( Wx::Bitmap->new($image, -1) );
I hope I did not infuse an error while copy&paste'ing the simplified code...