Permalink
Browse files

New erase() method for DynamicConfig objects

  • Loading branch information...
alexrj committed Jan 22, 2014
1 parent b5b8fb6 commit 42519174cd2b4e9c55e38bc0d4a46ff3345679a9
Showing with 8 additions and 1 deletion.
  1. +1 −1 lib/Slic3r/GUI/Plater/ObjectSettingsDialog.pm
  2. +5 −0 xs/src/Config.cpp
  3. +1 −0 xs/src/Config.hpp
  4. +1 −0 xs/xsp/Config.xsp
@@ -132,7 +132,7 @@ sub update_optgroup {
my ($opt_key) = @{$line->{options}}; # we assume that we have one option per line
my $btn = Wx::BitmapButton->new($self, -1, Wx::Bitmap->new("$Slic3r::var/delete.png", wxBITMAP_TYPE_PNG));
EVT_BUTTON($self, $btn, sub {
- delete $self->model_object->config->{$opt_key};
+ $self->model_object->config->erase($opt_key);
Slic3r::GUI->CallAfter(sub { $self->update_optgroup });
});
return $btn;
View
@@ -289,6 +289,11 @@ DynamicConfig::keys(t_config_option_keys *keys) {
keys->push_back(it->first);
}
+void
+DynamicConfig::erase(const t_config_option_key opt_key) {
+ this->options.erase(opt_key);
+}
+
void
StaticConfig::keys(t_config_option_keys *keys) {
for (t_optiondef_map::const_iterator it = this->def->begin(); it != this->def->end(); ++it) {
View
@@ -430,6 +430,7 @@ class DynamicConfig : public ConfigBase
~DynamicConfig();
ConfigOption* option(const t_config_option_key opt_key, bool create = false);
void keys(t_config_option_keys *keys);
+ void erase(const t_config_option_key opt_key);
private:
DynamicConfig(const DynamicConfig& other); // we disable this by making it private and unimplemented
View
@@ -24,6 +24,7 @@
%code{% THIS->apply(*other, true); %};
std::vector<std::string> get_keys()
%code{% THIS->keys(&RETVAL); %};
+ void erase(t_config_option_key opt_key);
};
%name{Slic3r::Config::Print} class PrintConfig {

0 comments on commit 4251917

Please sign in to comment.