aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/fs/helper.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/fs/helper.c')
-rw-r--r--src/plugins/fs/helper.c129
1 files changed, 129 insertions, 0 deletions
diff --git a/src/plugins/fs/helper.c b/src/plugins/fs/helper.c
index 9f6eaed9..6c2a70c0 100644
--- a/src/plugins/fs/helper.c
+++ b/src/plugins/fs/helper.c
@@ -205,3 +205,132 @@ buildSearchTabLabel(GtkWidget *searchPage,
205 205
206 return hbox; 206 return hbox;
207} 207}
208
209
210
211GtkWidget * makeSearchResultFrame(struct GC_Configuration * cfg,
212 GtkWidget ** treeview,
213 GtkWidget ** anonSpin) {
214 GtkWidget * window;
215 GtkWidget * child;
216 GtkWidget * resultList;
217 GtkTreeViewColumn * column;
218 GtkCellRenderer * renderer;
219 GtkTreeStore * tree;
220 GladeXML * searchXML;
221 int col;
222
223 DEBUG_BEGIN();
224 searchXML
225 = glade_xml_new(getGladeFileName(),
226 "searchResultsFrame",
227 PACKAGE_NAME);
228 connectGladeWithPlugins(searchXML);
229 window = glade_xml_get_widget(searchXML,
230 "searchResultsFrame");
231 resultList = glade_xml_get_widget(searchXML,
232 "searchResults");
233 *anonSpin = glade_xml_get_widget(searchXML,
234 "downloadAnonymitySpinButton");
235 if (treeview != NULL)
236 (*treeview) = GTK_WIDGET(GTK_TREE_VIEW(resultList));
237 tree =
238 gtk_tree_store_new(SEARCH_NUM,
239 G_TYPE_STRING, /* name */
240 G_TYPE_UINT64, /* size */
241 G_TYPE_STRING, /* human-readable size */
242 G_TYPE_STRING, /* mime-type */
243 G_TYPE_STRING, /* meta-data (some) */
244 GDK_TYPE_PIXBUF, /* preview */
245 G_TYPE_POINTER, /* url */
246 G_TYPE_POINTER, /* meta */
247 G_TYPE_POINTER); /* internal: download info/NULL */
248 gtk_tree_view_set_model(GTK_TREE_VIEW(resultList),
249 GTK_TREE_MODEL(tree));
250 renderer = gtk_cell_renderer_text_new();
251 col = gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(resultList),
252 -1,
253 _("Name"),
254 renderer,
255 "text", SEARCH_NAME,
256 NULL);
257 column = gtk_tree_view_get_column(GTK_TREE_VIEW(resultList),
258 col - 1);
259 gtk_tree_view_column_set_resizable(column, TRUE);
260 gtk_tree_view_column_set_clickable(column, TRUE);
261 gtk_tree_view_column_set_reorderable(column, TRUE);
262 gtk_tree_view_column_set_sort_column_id(column, SEARCH_NAME);
263 /*gtk_tree_view_column_set_sort_indicator(column, TRUE);*/
264 renderer = gtk_cell_renderer_text_new();
265 g_object_set (renderer, "xalign", 1.00, NULL);
266 col = gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(resultList),
267 -1,
268 _("Size"),
269 renderer,
270 "text", SEARCH_HSIZE,
271 NULL);
272 column = gtk_tree_view_get_column(GTK_TREE_VIEW(resultList),
273 col - 1);
274 gtk_tree_view_column_set_resizable(column, TRUE);
275 gtk_tree_view_column_set_clickable(column, TRUE);
276 gtk_tree_view_column_set_reorderable(column, TRUE);
277 gtk_tree_view_column_set_sort_column_id(column, SEARCH_SIZE);
278 /*gtk_tree_view_column_set_sort_indicator(column, TRUE);*/
279
280 renderer = gtk_cell_renderer_text_new();
281 col = gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(resultList),
282 -1,
283 _("Mime-type"),
284 renderer,
285 "text", SEARCH_MIME,
286 NULL);
287 column = gtk_tree_view_get_column(GTK_TREE_VIEW(resultList),
288 col - 1);
289 gtk_tree_view_column_set_resizable(column, TRUE);
290 gtk_tree_view_column_set_clickable(column, TRUE);
291 gtk_tree_view_column_set_reorderable(column, TRUE);
292 gtk_tree_view_column_set_sort_column_id(column, SEARCH_MIME);
293 /*gtk_tree_view_column_set_sort_indicator(column, TRUE);*/
294
295 renderer = gtk_cell_renderer_text_new();
296 col = gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(resultList),
297 -1,
298 _("Meta-data"),
299 renderer,
300 "text", SEARCH_DESC,
301 NULL);
302 column = gtk_tree_view_get_column(GTK_TREE_VIEW(resultList),
303 col - 1);
304 gtk_tree_view_column_set_resizable(column, TRUE);
305 gtk_tree_view_column_set_clickable(column, TRUE);
306 gtk_tree_view_column_set_reorderable(column, TRUE);
307 gtk_tree_view_column_set_sort_column_id(column, SEARCH_DESC);
308 /*gtk_tree_view_column_set_sort_indicator(column, TRUE);*/
309 if (YES != GC_get_configuration_value_yesno(cfg,
310 "GNUNET-GTK",
311 "DISABLE-PREVIEWS",
312 NO)) {
313 renderer = gtk_cell_renderer_pixbuf_new();
314 col = gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(resultList),
315 -1,
316 _("Preview"),
317 renderer,
318 "pixbuf", SEARCH_PIXBUF,
319 NULL);
320 column = gtk_tree_view_get_column(GTK_TREE_VIEW(resultList),
321 col - 1);
322 gtk_tree_view_column_set_resizable(column, TRUE);
323 gtk_tree_view_column_set_reorderable(column, TRUE);
324 gtk_tree_view_column_set_resizable(gtk_tree_view_get_column(GTK_TREE_VIEW(resultList),
325 col - 1),
326 TRUE);
327 }
328 child = gtk_bin_get_child(GTK_BIN(window));
329 gtk_widget_ref(GTK_WIDGET(child));
330 gtk_container_remove(GTK_CONTAINER(window),
331 child);
332 gtk_widget_destroy(window);
333 UNREF(searchXML);
334 DEBUG_END();
335 return child;
336}