aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteven Rostedt <srostedt@redhat.com>2010-02-03 23:02:47 -0500
committerSteven Rostedt <rostedt@goodmis.org>2010-02-03 23:02:47 -0500
commit535b5b2da1f2611d5fae96c738a14539c974544f (patch)
tree5946fe6e08ea9c86bc0b2a86621e88de5da45a93
parent5f41599c1cdfd567d4147d21305c4162e836538b (diff)
kernelshark: Use trace_view_get_selected_row() for list popup
Add trace_view_get_selected_row() in trace-view.h header so that kernelshark can use it to get the selected row. Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
-rw-r--r--kernel-shark.c15
-rw-r--r--trace-view.h2
2 files changed, 4 insertions, 13 deletions
diff --git a/kernel-shark.c b/kernel-shark.c
index 1caedf2..e6851e8 100644
--- a/kernel-shark.c
+++ b/kernel-shark.c
@@ -389,15 +389,11 @@ do_tree_popup(GtkWidget *widget, GdkEventButton *event, gpointer data)
389 static GtkWidget *menu_filter_clear_tasks; 389 static GtkWidget *menu_filter_clear_tasks;
390 struct record *record; 390 struct record *record;
391 TraceViewRecord *vrec; 391 TraceViewRecord *vrec;
392 GtkTreeSelection *selection;
393 GtkTreeModel *model; 392 GtkTreeModel *model;
394 GtkTreePath *path;
395 const char *comm; 393 const char *comm;
396 gchar *text; 394 gchar *text;
397 gint pid; 395 gint pid;
398 gint len; 396 gint len;
399 GList *glist;
400 gchar *spath;
401 guint64 offset; 397 guint64 offset;
402 gint row; 398 gint row;
403 gint cpu; 399 gint cpu;
@@ -446,15 +442,8 @@ do_tree_popup(GtkWidget *widget, GdkEventButton *event, gpointer data)
446 442
447 } 443 }
448 444
449 selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(info->treeview)); 445 row = trace_view_get_selected_row(GTK_WIDGET(info->treeview));
450 glist = gtk_tree_selection_get_selected_rows(GTK_TREE_SELECTION(selection), NULL); 446 if (row >= 0) {
451 if (glist) {
452 path = glist->data;
453 g_list_free(glist);
454 spath = gtk_tree_path_to_string(path);
455 gtk_tree_path_free(path);
456 row = atoi(spath);
457 g_free(spath);
458 447
459 model = gtk_tree_view_get_model(GTK_TREE_VIEW(info->treeview)); 448 model = gtk_tree_view_get_model(GTK_TREE_VIEW(info->treeview));
460 vrec = trace_view_store_get_row(TRACE_VIEW_STORE(model), row); 449 vrec = trace_view_store_get_row(TRACE_VIEW_STORE(model), row);
diff --git a/trace-view.h b/trace-view.h
index 073e644..f201181 100644
--- a/trace-view.h
+++ b/trace-view.h
@@ -34,4 +34,6 @@ void trace_view_cpu_filter_callback(gboolean accept,
34 34
35void trace_view_search_setup(GtkBox *box, GtkTreeView *treeview); 35void trace_view_search_setup(GtkBox *box, GtkTreeView *treeview);
36 36
37gint trace_view_get_selected_row(GtkWidget *treeview);
38
37#endif /* _TRACE_VIEW_H */ 39#endif /* _TRACE_VIEW_H */