On Monday 09 Jun 2003 8:48 am, Tomas Kukosa wrote:
> The responsible piece of code is the set_frame_mark() function in the
> gtk/main.c module.
> As I do not know how the colorization is done I am not able to fix it.
Thanks for that, I have saved it off and will try to remember it when I get
around to fixing it.
FWIW, on an OK/APPLY, gtk/colorfilters.c calls file.c: colorize_packets,
which redraws the entire packet list with rescan_packets, which clears the
packet list and adds each packet to it with add_packet_to_packet_list. And
that seems to assume that it is in the context of a complete rebuild, so
calling it with a single line to change would be non-trivial. I think we will
need to copy some of it into a new function that redraws a given row.
The lines of interest are:
typedef struct {
color_filter_t *colorf;
epan_dissect_t *edt;
} apply_color_filter_args;
<snip>
g_slist_foreach(filter_list, apply_color_filter, &args);
<snip>
packet_list_set_colors(row, &args.colorf->fg_color,
&args.colorf->bg_color);
I don't (currently) understand the epan/edt stuff, so that's as far as I can
go.
--
Richard Urwin