-static void control_flow_grab_focus(GtkWidget *widget, gpointer data){
- ControlFlowData * control_flow_data = (ControlFlowData *)data;
- MainWindow * mw = control_flow_data->mw;
- lttvwindow_report_focus(mw, gtk_widget_get_parent(control_flow_data->scrolled_window));
+static gboolean
+header_size_allocate(GtkWidget *widget,
+ GtkAllocation *allocation,
+ gpointer user_data)
+{
+ Drawing_t *drawing = (Drawing_t*)user_data;
+
+ gtk_widget_set_size_request(drawing->ruler, -1, allocation->height);
+ //gtk_widget_queue_resize(drawing->padding);
+ //gtk_widget_queue_resize(drawing->ruler);
+ gtk_container_check_resize(GTK_CONTAINER(drawing->ruler_hbox));
+ return 0;
+}
+
+gboolean cfv_scroll_event(GtkWidget *widget, GdkEventScroll *event,
+ gpointer data)
+{
+ ControlFlowData *control_flow_data = (ControlFlowData*)data;
+ unsigned int cell_height =
+ get_cell_height(
+ GTK_TREE_VIEW(control_flow_data->process_list->process_list_widget));
+ gdouble new;
+
+ switch(event->direction) {
+ case GDK_SCROLL_UP:
+ {
+ new = gtk_adjustment_get_value(control_flow_data->v_adjust)
+ - cell_height;
+ }
+ break;
+ case GDK_SCROLL_DOWN:
+ {
+ new = gtk_adjustment_get_value(control_flow_data->v_adjust)
+ + cell_height;
+ }
+ break;
+ default:
+ return FALSE;
+ }
+ if(new >= control_flow_data->v_adjust->lower &&
+ new <= control_flow_data->v_adjust->upper
+ - control_flow_data->v_adjust->page_size)
+ gtk_adjustment_set_value(control_flow_data->v_adjust, new);
+ return TRUE;