[PATCH v4 3/7] perf config: Add 'colors' section default configs arrrays
From: Taeung Song
Date: Sun Jul 03 2016 - 18:53:50 EST
Actual variable for configs of 'colors' section is like below.
(at ui/browser.c)
static struct ui_browser_colorset {
const char *name, *fg, *bg;
int colorset;
} ui_browser__colorsets[] = {
{
.colorset = HE_COLORSET_TOP,
.name = "top",
.fg = "red",
.bg = "default",
},
...
But I suggest using 'colors' default config array that
have all default config key-value pairs for 'colors' section
In near future, this array will be used on ui/browser.c
because of setting default actual variable for 'colors' config.
Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
Cc: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
Cc: Wang Nan <wangnan0@xxxxxxxxxx>
Cc: Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx>
Signed-off-by: Taeung Song <treeze.taeung@xxxxxxxxx>
---
tools/perf/util/config.c | 15 +++++++++++++++
tools/perf/util/config.h | 16 ++++++++++++++++
2 files changed, 31 insertions(+)
diff --git a/tools/perf/util/config.c b/tools/perf/util/config.c
index 18dae74..a0c0170 100644
--- a/tools/perf/util/config.c
+++ b/tools/perf/util/config.c
@@ -30,6 +30,21 @@ static struct perf_config_set *config_set;
const char *config_exclusive_filename;
+const struct default_config_item colors_config_items[] = {
+ CONF_STR_VAR("top", "red, default"),
+ CONF_STR_VAR("medium", "green, default"),
+ CONF_STR_VAR("normal", "default, default"),
+ CONF_STR_VAR("selected", "black, yellow"),
+ CONF_STR_VAR("jump_arrows", "blue, default"),
+ CONF_STR_VAR("addr", "magenta, default"),
+ CONF_STR_VAR("root", "white, blue"),
+ CONF_END()
+};
+
+const struct default_config_section default_sections[] = {
+ { .name = "colors", .items = colors_config_items },
+};
+
static int get_next_char(void)
{
int c;
diff --git a/tools/perf/util/config.h b/tools/perf/util/config.h
index 613900f..f2ce8b4 100644
--- a/tools/perf/util/config.h
+++ b/tools/perf/util/config.h
@@ -73,6 +73,20 @@ enum perf_config_type {
CONFIG_TYPE_STRING
};
+enum config_section_idx {
+ CONFIG_COLORS,
+};
+
+enum colors_config_items_idx {
+ CONFIG_COLORS_TOP,
+ CONFIG_COLORS_MEDIUM,
+ CONFIG_COLORS_NORMAL,
+ CONFIG_COLORS_SELECTED,
+ CONFIG_COLORS_JUMP_ARROWS,
+ CONFIG_COLORS_ADDR,
+ CONFIG_COLORS_ROOT,
+};
+
struct default_config_item {
const char *name;
union {
@@ -112,4 +126,6 @@ struct default_config_section {
#define CONF_END() \
{ .name = NULL }
+extern const struct default_config_item colors_config_items[];
+
#endif /* __PERF_CONFIG_H */
--
2.5.0