pidgin/pidginprotocolchooser.c

changeset 40741
850137e8737c
parent 40299
e2f8638bac5a
child 40787
8a5a20a49e9b
equal deleted inserted replaced
40740:548fed625b8a 40741:850137e8737c
81 81
82 return protocol; 82 return protocol;
83 } 83 }
84 84
85 gchar * 85 gchar *
86 pidgin_protocol_chooser_get_selected_name(PidginProtocolChooser *chooser) { 86 pidgin_protocol_chooser_get_selected_id(PidginProtocolChooser *chooser) {
87 GtkTreeIter iter; 87 GtkTreeIter iter;
88 gchar *name = NULL; 88 gchar *id = NULL;
89 89
90 g_return_val_if_fail(PIDGIN_IS_PROTOCOL_CHOOSER(chooser), NULL); 90 g_return_val_if_fail(PIDGIN_IS_PROTOCOL_CHOOSER(chooser), NULL);
91 91
92 if(gtk_combo_box_get_active_iter(GTK_COMBO_BOX(chooser), &iter)) { 92 if(gtk_combo_box_get_active_iter(GTK_COMBO_BOX(chooser), &iter)) {
93 gtk_tree_model_get(GTK_TREE_MODEL(chooser->model), &iter, 93 gtk_tree_model_get(GTK_TREE_MODEL(chooser->model), &iter,
94 PIDGIN_PROTOCOL_STORE_COLUMN_NAME, &name, 94 PIDGIN_PROTOCOL_STORE_COLUMN_ID, &id,
95 -1); 95 -1);
96 } 96 }
97 97
98 return name; 98 return id;
99 } 99 }
100 100
101 void 101 void
102 pidgin_protocol_chooser_set_selected_name(PidginProtocolChooser *chooser, 102 pidgin_protocol_chooser_set_selected_id(PidginProtocolChooser *chooser,
103 const gchar *name) 103 const gchar *id)
104 { 104 {
105 GtkTreeIter iter; 105 GtkTreeIter iter;
106 gchar *iter_name = NULL; 106 gchar *iter_id = NULL;
107 107
108 g_return_if_fail(PIDGIN_IS_PROTOCOL_CHOOSER(chooser)); 108 g_return_if_fail(PIDGIN_IS_PROTOCOL_CHOOSER(chooser));
109 109
110 if (gtk_tree_model_get_iter_first(GTK_TREE_MODEL(chooser->model), &iter)) { 110 if (gtk_tree_model_get_iter_first(GTK_TREE_MODEL(chooser->model), &iter)) {
111 do { 111 do {
112 gtk_tree_model_get(GTK_TREE_MODEL(chooser->model), &iter, 112 gtk_tree_model_get(GTK_TREE_MODEL(chooser->model), &iter,
113 PIDGIN_PROTOCOL_STORE_COLUMN_NAME, &iter_name, 113 PIDGIN_PROTOCOL_STORE_COLUMN_ID, &iter_id,
114 -1); 114 -1);
115 115
116 if(purple_strequal(iter_name, name)) { 116 if(purple_strequal(iter_id, id)) {
117 gtk_combo_box_set_active_iter(GTK_COMBO_BOX(chooser), &iter); 117 gtk_combo_box_set_active_iter(GTK_COMBO_BOX(chooser), &iter);
118 118
119 g_free(iter_name); 119 g_free(iter_id);
120 120
121 return; 121 return;
122 } 122 }
123 123
124 g_free(iter_name); 124 g_free(iter_id);
125 } while(gtk_tree_model_iter_next(GTK_TREE_MODEL(chooser->model), 125 } while(gtk_tree_model_iter_next(GTK_TREE_MODEL(chooser->model),
126 &iter)); 126 &iter));
127 } 127 }
128 } 128 }

mercurial