Root/eeshow/gui/style.c

1/*
2 * gui/style.c - GUI: overlay styles
3 *
4 * Written 2016 by Werner Almesberger
5 * Copyright 2016 by Werner Almesberger
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
11 */
12
13#include "gui/style.h"
14
15
16#define OVER_BORDER 8
17#define OVER_RADIUS 6
18#define OVER_SEP 8
19
20#define NORMAL_PAD 8
21#define NORMAL_RADIUS 6
22#define NORMAL_SKIP 8
23#define NORMAL_WIDTH 2
24
25#define DENSE_PAD 4
26#define DENSE_RADIUS 3
27#define DENSE_SKIP 5
28#define DENSE_WIDTH 1
29
30#define BG_STANDARD { 0.8, 0.9, 1.0, 0.8 }
31#define FG_STANDARD { 0.0, 0.0, 0.0, 1.0 }
32#define FRAME_STANDARD { 0.5, 0.5, 1.0, 0.7 }
33
34#define BG_DIFF_NEW BG_STANDARD
35#define FG_DIFF_NEW { 0.0, 0.6, 0.0, 1.0 }
36#define FRAME_DIFF_NEW FRAME_STANDARD
37
38#define BG_DIFF_OLD BG_STANDARD
39#define FG_DIFF_OLD { 0.8, 0.0, 0.0, 1.0 }
40#define FRAME_DIFF_OLD FRAME_STANDARD
41
42
43#define BOX_ATTRS(style) \
44    .pad = style##_PAD, \
45    .radius = style##_RADIUS, \
46    .skip = style##_SKIP, \
47    .width = style##_WIDTH
48
49#define NORMAL BOX_ATTRS(NORMAL)
50#define DENSE BOX_ATTRS(DENSE)
51
52#define COLOR_ATTRS(style) \
53    .bg = BG_##style, \
54    .fg = FG_##style, \
55    .frame = FRAME_##style
56
57#define STANDARD COLOR_ATTRS(STANDARD)
58#define DIFF_NEW COLOR_ATTRS(DIFF_NEW)
59#define DIFF_OLD COLOR_ATTRS(DIFF_OLD)
60
61
62struct overlay_style overlay_style_default = {
63    .font = NORMAL_FONT,
64    NORMAL,
65    STANDARD,
66}, overlay_style_dense = {
67    .font = NORMAL_FONT,
68    DENSE,
69    STANDARD,
70}, overlay_style_diff_new = {
71    .font = NORMAL_FONT,
72    NORMAL,
73    DIFF_NEW,
74}, overlay_style_diff_old = {
75    .font = NORMAL_FONT,
76    NORMAL,
77    DIFF_OLD,
78};
79

Archive Download this file

Branches:
master



interactive