X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Flttv%2Fmodules%2Fgui%2Fcontrolflow%2Fdrawing.h;h=0dd8ae892fffa9cf973964bb2a1af3478b2ec0c9;hb=9a1ec01b8ebf230989fc9078d35f5ac2aa7fb5b0;hp=1139d48b6127ba716b3141a100757617a958e621;hpb=b9a010a28d9625c9d31968aa44f1a553daccb294;p=lttv.git diff --git a/ltt/branches/poly/lttv/modules/gui/controlflow/drawing.h b/ltt/branches/poly/lttv/modules/gui/controlflow/drawing.h index 1139d48b..0dd8ae89 100644 --- a/ltt/branches/poly/lttv/modules/gui/controlflow/drawing.h +++ b/ltt/branches/poly/lttv/modules/gui/controlflow/drawing.h @@ -33,6 +33,24 @@ #define SAFETY 50 // safety pixels at right and bottom of pixmap buffer +typedef enum _draw_color { + COL_BLACK, + COL_WHITE, + COL_RUN_USER_MODE,/* green */ + COL_RUN_SYSCALL, /* pale blue */ + COL_RUN_TRAP, /* yellow */ + COL_RUN_IRQ, /* red */ + COL_WAIT, /* dark red */ + COL_WAIT_CPU, /* dark yellow */ + COL_ZOMBIE, /* dark purple */ + COL_WAIT_FORK, /* dark green */ + COL_EXIT, /* "less dark" magenta */ + COL_MODE_UNKNOWN, /* white */ + COL_UNNAMED, /* white */ + NUM_COLORS } draw_color; + +extern GdkColor drawing_colors[NUM_COLORS]; + /* This part of the viewer does : * Draw horizontal lines, getting graphic context as arg. * Copy region of the screen into another. @@ -76,10 +94,14 @@ struct _Drawing_t { gint height, width, depth; /* X coordinate of damaged region */ - gint damage_begin, damage_end; - LttTime last_start; + gint damage_begin, damage_end; /* damaged region to be exposed, + updated per chunk */ + LttTime last_start; GdkGC *dotted_gc; GdkGC *gc; + + /* Position of the horizontal selector, -1 for none */ + gint horizontal_sel; }; Drawing_t *drawing_construct(ControlFlowData *control_flow_data); @@ -112,14 +134,14 @@ void drawing_remove_square(Drawing_t *drawing, guint y, guint height); -void convert_pixels_to_time( +__inline void convert_pixels_to_time( gint width, guint x, LttTime window_time_begin, LttTime window_time_end, LttTime *time); -void convert_time_to_pixels( +__inline void convert_time_to_pixels( LttTime window_time_begin, LttTime window_time_end, LttTime time, @@ -136,4 +158,12 @@ void drawing_data_request_begin(EventsRequest *events_request, LttvTracesetState *tss); void drawing_chunk_begin(EventsRequest *events_request, LttvTracesetState *tss); + + +void +tree_row_activated(GtkTreeModel *treemodel, + GtkTreePath *arg1, + GtkTreeViewColumn *arg2, + gpointer user_data); + #endif // _DRAWING_H