make batchanalysis and textDump work
[lttv.git] / ltt / branches / poly / lttv / modules / gui / controlflow / drawing.c
index c6d331f92cfc9fd924aa32e3108944794111d258..e074853a4561a9dea36e6bc3d4f1ecc03f1eb274 100644 (file)
  * MA 02111-1307, USA.
  */
 
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
 #include <gtk/gtk.h>
 #include <gdk/gdk.h>
 #include <string.h>
@@ -68,8 +72,8 @@ GdkColor drawing_colors[NUM_COLORS] =
   { 0, 0x0000, 0xFF00, 0x0000 }, /* COL_RUN_USER_MODE : green */
   { 0, 0x0100, 0x9E00, 0xFFFF }, /* COL_RUN_SYSCALL : pale blue */
   { 0, 0xFF00, 0xFF00, 0x0100 }, /* COL_RUN_TRAP : yellow */
-  { 0, 0xFFFF, 0x0000, 0x0000 }, /* COL_RUN_IRQ : red */
-  { 0, 0xA3FF, 0x0000, 0x0000 }, /* COL_WAIT : dark red */
+  { 0, 0xFFFF, 0x5E00, 0x0000 }, /* COL_RUN_IRQ : red */
+  { 0, 0x6600, 0x0000, 0x0000 }, /* COL_WAIT : dark red */
   { 0, 0x7700, 0x7700, 0x0000 }, /* COL_WAIT_CPU : dark yellow */
   { 0, 0x6400, 0x0000, 0x5D00 }, /* COL_ZOMBIE : dark purple */
   { 0, 0x0700, 0x6400, 0x0000 }, /* COL_WAIT_FORK : dark green */
@@ -210,7 +214,7 @@ void drawing_data_request(Drawing_t *drawing,
          associated by id hooks. */
 
       hooks = g_array_new(FALSE, FALSE, sizeof(LttvTraceHook));
-      g_array_set_size(hooks, 10);
+      hooks = g_array_set_size(hooks, 10);
 
       /* before hooks */
       
@@ -559,6 +563,15 @@ configure_event( GtkWidget *widget, GdkEventConfigure *event,
         widget->allocation.height != 1)
         && drawing->damage_begin < drawing->damage_end)
     {
+
+      rectangle_pixmap (drawing->control_flow_data->process_list,
+        drawing->drawing_area->style->black_gc,
+        TRUE,
+        0, 0,
+        drawing->alloc_width, // do not overlap
+        -1);
+
+
       drawing_data_request(drawing,
                            drawing->damage_begin,
                            0,
@@ -648,11 +661,11 @@ expose_event( GtkWidget *widget, GdkEventExpose *event, gpointer user_data )
                         dash_list,
                         2);
     }
-    
+    gint height_tot = MAX(widget->allocation.height, drawing->height);
     gdk_draw_line(widget->window,
                   drawing->dotted_gc,
                   cursor_x, 0,
-                  cursor_x, widget->allocation.height);
+                  cursor_x, height_tot);
   }
   return FALSE;
 }
@@ -918,7 +931,7 @@ void drawing_destroy(Drawing_t *drawing)
     gdk_gc_unref(drawing->gc);
   
   g_free(drawing->pango_layout);
-  if(!drawing->dotted_gc) gdk_gc_unref(drawing->dotted_gc);
+  if(drawing->dotted_gc != NULL) gdk_gc_unref(drawing->dotted_gc);
   g_free(drawing);
   g_info("drawing_destroy end");
 }
This page took 0.026068 seconds and 4 git commands to generate.