From d29e341a8b6565e781b20366d9929aa992b860ea Mon Sep 17 00:00:00 2001 From: Alessandro Ranellucci Date: Mon, 30 Dec 2013 19:00:32 +0100 Subject: [PATCH] Parse options from AMF metadata --- lib/Slic3r/Format/AMF/Parser.pm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/Slic3r/Format/AMF/Parser.pm b/lib/Slic3r/Format/AMF/Parser.pm index d392a8915..d67687f70 100644 --- a/lib/Slic3r/Format/AMF/Parser.pm +++ b/lib/Slic3r/Format/AMF/Parser.pm @@ -97,6 +97,12 @@ sub end_element { } elsif ($data->{LocalName} eq 'material') { $self->{_material} = undef; } elsif ($data->{LocalName} eq 'metadata' && $self->{_material}) { + if ($self->{_material_metadata_type} =~ /^slic3r\.(.+)/) { + my $opt_key = $1; + if (exists $Slic3r::Config::Options->{$opt_key}) { + $self->{_material}->set_deserialize($opt_key, $self->{_material}->attributes->{$opt_key}); + } + } $self->{_material_metadata_type} = undef; } elsif ($data->{LocalName} eq 'constellation') { $self->{_constellation} = undef;