fix line size and collision indicator!
[lttv.git] / ltt / branches / poly / lttv / modules / gui / controlflow / drawing.h
index 02dd33e4948a2b77d9a939026efd0e2971110eb9..58f562a2a6380e4be299b805e68807f1aaf29365 100644 (file)
@@ -39,7 +39,8 @@ typedef enum _draw_color {
                 COL_RUN_USER_MODE,/* green */
                 COL_RUN_SYSCALL,  /* pale blue */
                 COL_RUN_TRAP,     /* yellow */
-                COL_RUN_IRQ,      /* red */
+                COL_RUN_IRQ,      /* orange */
+                COL_RUN_SOFT_IRQ, /* red */
                 COL_WAIT,         /* dark red */
                 COL_WAIT_CPU,     /* dark yellow */
                 COL_ZOMBIE,       /* dark purple */
@@ -73,7 +74,15 @@ extern GdkColor drawing_colors[NUM_COLORS];
  * of the shown processes.
  */
 
+#ifndef TYPE_DRAWING_T_DEFINED
+#define TYPE_DRAWING_T_DEFINED
 typedef struct _Drawing_t Drawing_t;
+#endif //TYPE_DRAWING_T_DEFINED
+
+#ifndef TYPE_CONTROLFLOWDATA_DEFINED
+#define TYPE_CONTROLFLOWDATA_DEFINED
+typedef struct _ControlFlowData ControlFlowData;
+#endif //TYPE_CONTROLFLOWDATA_DEFINED
 
 struct _Drawing_t {
   GtkWidget *vbox;
@@ -86,12 +95,14 @@ struct _Drawing_t {
   GtkWidget *ruler_hbox;
   GtkWidget *ruler;
   GtkWidget *padding;
-  GdkPixmap *pixmap;
+  //GdkPixmap *pixmap;
   ControlFlowData *control_flow_data;
   
   PangoLayout *pango_layout;
 
   gint      height, width, depth;
+  /* height and width of allocated buffer pixmap */
+  gint      alloc_height, alloc_width;
   
   /* X coordinate of damaged region */
   gint      damage_begin, damage_end; /* damaged region to be exposed,
@@ -99,6 +110,8 @@ struct _Drawing_t {
   LttTime   last_start;               
   GdkGC     *dotted_gc;
   GdkGC     *gc;
+  GdkGC     *ruler_gc_butt;
+  GdkGC     *ruler_gc_round;
 
   /* Position of the horizontal selector, -1 for none */
   gint horizontal_sel;
@@ -110,6 +123,12 @@ void drawing_destroy(Drawing_t *drawing);
 GtkWidget *drawing_get_widget(Drawing_t *drawing);
 GtkWidget *drawing_get_drawing_area(Drawing_t *drawing);
 
+
+void drawing_data_request(Drawing_t *drawing,
+      gint x, gint y,
+      gint width,
+      gint height);
+
 void drawing_draw_line( Drawing_t *drawing,
       GdkPixmap *pixmap,
       guint x1, guint y1,
@@ -157,7 +176,7 @@ tree_row_activated(GtkTreeModel *treemodel,
  *
  * Convert from window pixel and time interval to an absolute time.
  */
-inline void convert_pixels_to_time(
+static inline void convert_pixels_to_time(
     gint width,
     guint x,
     TimeWindow time_window,
@@ -172,7 +191,7 @@ inline void convert_pixels_to_time(
 }
 
 
-inline void convert_time_to_pixels(
+static inline void convert_time_to_pixels(
     TimeWindow time_window,
     LttTime time,
     int width,
This page took 0.027969 seconds and 4 git commands to generate.