From e0957537cd0938313803c290a2f3922a3889e6f1 Mon Sep 17 00:00:00 2001 From: Marc Jeanmougin Date: Sun, 1 Oct 2017 17:49:26 +0200 Subject: Removed all GSList occurences in .h files --- src/extension/extension.cpp | 24 +++++++----------------- 1 file changed, 7 insertions(+), 17 deletions(-) (limited to 'src/extension/extension.cpp') diff --git a/src/extension/extension.cpp b/src/extension/extension.cpp index f1b328f05..d9ea5eca7 100644 --- a/src/extension/extension.cpp +++ b/src/extension/extension.cpp @@ -64,7 +64,6 @@ Extension::Extension (Inkscape::XML::Node * in_repr, Implementation::Implementat id = NULL; name = NULL; _state = STATE_UNLOADED; - parameters = NULL; if (in_imp == NULL) { imp = new Implementation::Implementation(); @@ -97,7 +96,7 @@ Extension::Extension (Inkscape::XML::Node * in_repr, Implementation::Implementat Parameter * param; param = Parameter::make(child_repr, this); if (param != NULL) - parameters = g_slist_append(parameters, param); + parameters.push_back(param); } /* param || _param */ if (!strcmp(chname, "dependency")) { _deps.push_back(new Dependency(child_repr)); @@ -146,12 +145,9 @@ Extension::~Extension (void) /** \todo Need to do parameters here */ // delete parameters: - for (GSList * list = parameters; list != NULL; list = g_slist_next(list)) { - Parameter * param = reinterpret_cast(list->data); + for (auto param:parameters) { delete param; } - g_slist_free(parameters); - for (unsigned int i = 0 ; i < _deps.size(); i++) { delete _deps[i]; @@ -402,14 +398,11 @@ Parameter *Extension::get_param(gchar const *name) if (name == NULL) { throw Extension::param_not_exist(); } - if (this->parameters == NULL) { - // the list of parameters is empty + if (this->parameters.empty()) { throw Extension::param_not_exist(); } - for (GSList * list = this->parameters; list != NULL; list = -g_slist_next(list)) { - Parameter * param = static_cast(list->data); + for( auto param:this->parameters) { if (!strcmp(param->name(), name)) { return param; } else { @@ -730,8 +723,7 @@ Extension::autogui (SPDocument * doc, Inkscape::XML::Node * node, sigc::signalset_spacing(Parameter::GUI_BOX_SPACING); //go through the list of parameters to see if there are any non-hidden ones - for (GSList * list = parameters; list != NULL; list = g_slist_next(list)) { - Parameter * param = reinterpret_cast(list->data); + for (auto param:parameters) { if (param->get_hidden()) continue; //Ignore hidden parameters Gtk::Widget * widg = param->get_widget(doc, node, changeSignal); gchar const * tip = param->get_tooltip(); @@ -751,8 +743,7 @@ Extension::autogui (SPDocument * doc, Inkscape::XML::Node * node, sigc::signal &retlist) { - for (GSList * list = parameters; list != NULL; list = g_slist_next(list)) { - Parameter * param = reinterpret_cast(list->data); + for(auto param:parameters) { param->string(retlist); } @@ -835,8 +826,7 @@ Extension::get_params_widget(void) unsigned int Extension::param_visible_count ( ) { unsigned int _visible_count = 0; - for (GSList * list = parameters; list != NULL; list = g_slist_next(list)) { - Parameter * param = reinterpret_cast(list->data); + for (auto param:parameters) { if (!param->get_hidden()) _visible_count++; } return _visible_count; -- cgit v1.2.3