X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=lttv%2Fmodules%2Fgui%2Fdetailedevents%2Fevents.c;h=5f1323219a6f7d423de8e3f52aef72050cff2464;hb=88bf15f0f2a239186b5cf6fcf8711786907ca483;hp=ac1311497ad23944e4a8173bda0b7ff5ccdb335b;hpb=6db3427f29cace9a1addac5a6277bbc1ce666002;p=lttv.git diff --git a/lttv/modules/gui/detailedevents/events.c b/lttv/modules/gui/detailedevents/events.c index ac131149..5f132321 100644 --- a/lttv/modules/gui/detailedevents/events.c +++ b/lttv/modules/gui/detailedevents/events.c @@ -233,11 +233,11 @@ gui_events(LttvPluginTab *ptab) GTK_POLICY_AUTOMATIC, GTK_POLICY_NEVER); event_viewer_data->currently_selected_position = - lttv_traceset_create_position(ts); + lttv_traceset_create_current_position(ts); event_viewer_data->first_event = - lttv_traceset_create_position(ts); + lttv_traceset_create_current_position(ts); event_viewer_data->last_event = - lttv_traceset_create_position(ts); + lttv_traceset_create_current_position(ts); event_viewer_data->main_win_filter = lttvwindow_get_filter(tab); event_viewer_data->update_cursor = TRUE; @@ -1375,9 +1375,12 @@ static void get_events(double new_value, EventViewerData *event_viewer_data) pos = (LttvTracesetPosition*)g_ptr_array_index( event_viewer_data->pos, 0); - lttv_traceset_seek_to_position(pos); + lttv_state_traceset_seek_position(ts,pos); } - } + } else { + lttv_state_traceset_seek_time(ts,time); + + } /* Note that, as we mess with the tsc position, this function CANNOT be called * from a hook inside the lttv_process_traceset_middle. */ @@ -1416,7 +1419,7 @@ static void get_events(double new_value, EventViewerData *event_viewer_data) /* Save the first event position */ - event_viewer_data->first_event = lttv_traceset_create_position(ts); + event_viewer_data->first_event = lttv_traceset_create_current_position(ts); time = ltt_time_from_uint64(lttv_traceset_position_get_timestamp( event_viewer_data->first_event)); @@ -1426,11 +1429,11 @@ static void get_events(double new_value, EventViewerData *event_viewer_data) LttTime time_val = ltt_time_sub(time,time_span.start_time); event_viewer_data->previous_value = ltt_time_to_double(time_val); - lttv_traceset_seek_to_position(event_viewer_data->first_event); + lttv_state_traceset_seek_position(ts, event_viewer_data->first_event); } else { /* Seek by time */ - lttv_traceset_seek_to_position(timePos); + lttv_state_traceset_seek_time(ts, time); LttTime time_val = ltt_time_sub(time,time_span.start_time); @@ -1472,7 +1475,7 @@ static void get_events(double new_value, EventViewerData *event_viewer_data) event_viewer_data->pos->len - 1); event_viewer_data->last_event = cur_pos; } else - event_viewer_data->last_event =lttv_traceset_create_position(ts); + event_viewer_data->last_event =lttv_traceset_create_current_position(ts); gtk_adjustment_set_value(event_viewer_data->vadjust_c, event_viewer_data->previous_value); @@ -1544,7 +1547,7 @@ int event_hook(void *hook_data, void *call_data) GString *desc = g_string_new(""); GString *name = g_string_new(""); - LttvTracesetPosition *pos = lttv_traceset_create_position(traceState->trace->traceset); + LttvTracesetPosition *pos = lttv_traceset_create_current_position(traceState->trace->traceset); lttv_event_to_string(e, desc, TRUE, FALSE); lttv_event_get_name(e,name); @@ -1606,6 +1609,7 @@ static void event_update_selection(EventViewerData *event_viewer_data) if(path) { gtk_tree_view_set_cursor(GTK_TREE_VIEW(event_viewer_data->tree_v), path, NULL, FALSE); + gtk_widget_grab_focus(event_viewer_data->tree_v ); gtk_tree_path_free(path); break; } @@ -1649,8 +1653,7 @@ gboolean update_current_time(void * hook_data, void * call_data) EventViewerData *event_viewer_data = (EventViewerData*) hook_data; const LttTime * current_time = (LttTime*)call_data; - LttvTraceset * ts = - lttvwindow_get_traceset(event_viewer_data->tab); + LttvTraceset * ts = lttvwindow_get_traceset(event_viewer_data->tab); /* If the currently selected event time != current time, set the first event * with this time as currently selected. */ @@ -1658,17 +1661,14 @@ gboolean update_current_time(void * hook_data, void * call_data) event_viewer_data->currently_selected_position); if(ltt_time_compare(pos_time, *current_time) != 0) { - /*create position*/ LttvTracesetPosition *currentPosition = lttv_traceset_create_time_position(ts,*current_time ); /*seek to current position*/ - lttv_traceset_seek_to_position(currentPosition); + lttv_state_traceset_seek_time(ts, *current_time); event_viewer_data->currently_selected_position = - lttv_traceset_create_position(ts); - - + lttv_traceset_create_current_position(ts); } event_viewer_data->report_position = FALSE; @@ -1737,15 +1737,16 @@ gboolean traceset_changed(void * hook_data, void * call_data) lttv_traceset_destroy_position(event_viewer_data->currently_selected_position); lttv_traceset_destroy_position(event_viewer_data->first_event); lttv_traceset_destroy_position(event_viewer_data->last_event); - + event_viewer_data->currently_selected_position = - lttv_traceset_create_position(ts); + lttv_traceset_create_current_position(ts); event_viewer_data->first_event = - lttv_traceset_create_position(ts); + lttv_traceset_create_current_position(ts); event_viewer_data->last_event = - lttv_traceset_create_position(ts); + lttv_traceset_create_current_position(ts); get_events(event_viewer_data->vadjust_c->value, event_viewer_data); + #endif //babel_cleanup // event_viewer_data->vadjust_c->value = 0;