25 GtkWidget *
title = gtk_label_new(
"");
26 gtk_label_set_markup(GTK_LABEL(title),
view->
getString(
"ClassifierTitle"));
28 TabAdd(gtk_hseparator_new());
33 GtkWidget *hbox_classifiers = gtk_hbox_new(
false, 0);
35 this->updating_view =
false;
36 this->num_classifiers = 0;
37 this->selected_classifier =
"";
38 combo_classifiers = gtk_combo_box_new_text();
41 gtk_combo_box_set_active(GTK_COMBO_BOX(combo_classifiers),0);
42 g_signal_connect(G_OBJECT(combo_classifiers),
44 G_CALLBACK(CB_ChangeClassifier),
47 gtk_box_pack_start(GTK_BOX(hbox_classifiers), combo_classifiers,
false,
false, 0);
50 check_classifier_trained =
51 gtk_check_button_new_with_label(
view->
getString(
"ClassifiersStr1"));
52 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check_classifier_trained),
54 gtk_widget_set_sensitive(check_classifier_trained,
false);
56 gtk_box_pack_end(GTK_BOX(hbox_classifiers),check_classifier_trained,
64 panel_box = gtk_hbox_new(
false, 0);
71 if(gtk_combo_box_get_active(GTK_COMBO_BOX(combo_classifiers))==-1)
72 gtk_combo_box_set_active(GTK_COMBO_BOX(combo_classifiers),0);
84 this->updating_view =
true;
94 this->selected_classifier = model_selected_classifier;
95 this->classifier_names = names;
96 for(
int i = this->num_classifiers-1; i >= 0; i--)
98 gtk_combo_box_remove_text(GTK_COMBO_BOX(combo_classifiers),i);
100 this->num_classifiers = names.size();
104 for(
unsigned int i=0;i<names.size();i++)
106 gtk_combo_box_append_text(GTK_COMBO_BOX(combo_classifiers),names[i].c_str());
107 if(names[i]==model_selected_classifier)
109 gtk_combo_box_set_active(GTK_COMBO_BOX(combo_classifiers),i);
113 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check_classifier_trained),
117 if (this->panel != NULL)
119 gtk_container_remove(GTK_CONTAINER(this->panel_box),this->panel->
getContainer());
125 if(model_selected_classifier !=
"")
129 std::map<std::string, CEBL::Param> params = model->
classifierGetParams(model_selected_classifier);
135 cerr <<
"ERROR: exception occurred when trying to get parameters for classifier.\n";
138 if (this->panel != NULL)
140 gtk_container_add(GTK_CONTAINER(this->panel_box),this->panel->
getContainer());
141 gtk_widget_show_all(this->panel_box);
145 this->updating_view =
false;
153 if(this->panel != NULL){
162 void TabClassifiers::CB_ChangeClassifier(GtkWidget *w, gpointer data)
169 if(tab->num_classifiers > 0 && !tab->updating_view)
171 string classifier = gtk_combo_box_get_active_text(GTK_COMBO_BOX(tab->combo_classifiers));
174 if(classifier != tab->selected_classifier)
177 if(tab->panel != NULL){
187 cerr <<
"Error selecting classifier.\n";