mirror of
git://projects.qi-hardware.com/eda-tools.git
synced 2024-11-26 04:41:33 +02:00
eeshow/gui.c: show commits that don't change the schematics in grey
This commit is contained in:
parent
bbfa7c573a
commit
092386d0c2
11
eeshow/gui.c
11
eeshow/gui.c
@ -74,6 +74,7 @@ struct gui_hist {
|
|||||||
int libs_open;
|
int libs_open;
|
||||||
struct sch_ctx sch_ctx;
|
struct sch_ctx sch_ctx;
|
||||||
struct lib lib; /* combined library */
|
struct lib lib; /* combined library */
|
||||||
|
bool identical; /* identical with previous entry */
|
||||||
|
|
||||||
struct gui_hist *next;
|
struct gui_hist *next;
|
||||||
};
|
};
|
||||||
@ -467,6 +468,10 @@ static void set_history_style(struct gui_hist *h, bool current)
|
|||||||
if (h == old)
|
if (h == old)
|
||||||
style.bg = COLOR(BG_OLD);
|
style.bg = COLOR(BG_OLD);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (h->identical)
|
||||||
|
style.fg = RGBA(0.5, 0.5, 0.5, 1);
|
||||||
|
|
||||||
overlay_style(h->over, &style);
|
overlay_style(h->over, &style);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1212,7 +1217,7 @@ static struct gui_sheet *get_sheets(struct gui_ctx *ctx,
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
static const struct sheet *parse_files(struct gui_hist *hist,
|
static const struct sheet *parse_files(struct gui_hist *hist,
|
||||||
int n_args, char **args, bool recurse, const struct gui_hist *prev)
|
int n_args, char **args, bool recurse, struct gui_hist *prev)
|
||||||
{
|
{
|
||||||
char *rev = NULL;
|
char *rev = NULL;
|
||||||
struct file sch_file;
|
struct file sch_file;
|
||||||
@ -1269,6 +1274,9 @@ static const struct sheet *parse_files(struct gui_hist *hist,
|
|||||||
file_close(lib_files + i);
|
file_close(lib_files + i);
|
||||||
file_close(&sch_file);
|
file_close(&sch_file);
|
||||||
|
|
||||||
|
if (prev && sheet_eq(prev->sch_ctx.sheets, hist->sch_ctx.sheets))
|
||||||
|
prev->identical = 1;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* @@@ we have a major memory leak for the component library.
|
* @@@ we have a major memory leak for the component library.
|
||||||
* We should record parsed schematics and libraries separately, so
|
* We should record parsed schematics and libraries separately, so
|
||||||
@ -1319,6 +1327,7 @@ static void add_hist(void *user, struct hist *h)
|
|||||||
hist = alloc_type(struct gui_hist);
|
hist = alloc_type(struct gui_hist);
|
||||||
hist->ctx = ctx;
|
hist->ctx = ctx;
|
||||||
hist->vcs_hist = h;
|
hist->vcs_hist = h;
|
||||||
|
hist->identical = 0;
|
||||||
sch = parse_files(hist, ahc->n_args, ahc->args, ahc->recurse, prev);
|
sch = parse_files(hist, ahc->n_args, ahc->args, ahc->recurse, prev);
|
||||||
hist->sheets = sch ? get_sheets(ctx, sch) : NULL;
|
hist->sheets = sch ? get_sheets(ctx, sch) : NULL;
|
||||||
hist->age = age;
|
hist->age = age;
|
||||||
|
Loading…
Reference in New Issue
Block a user