Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1476125

[PATCH v8 3/7] perf config: Add default section and item arrays for 'colors' config

From Taeung Song <treeze.taeung@gmail.com>
Newsgroups linux.kernel
Subject [PATCH v8 3/7] perf config: Add default section and item arrays for 'colors' config
Date 2016-09-05 07:30 +0200
Message-ID <sdUDM-7OR-19@gated-at.bofh.it> (permalink)
References <sdUDL-7OR-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Actual values for default 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 default config arrays for 'colors' section that
contain all default config key-value pairs for it.

In near future, this array will be used on ui/browser.c
because of setting default values of actual variables for 'colors' config.

Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Signed-off-by: Taeung Song <treeze.taeung@gmail.com>
---
 tools/perf/util/config.c | 15 +++++++++++++++
 tools/perf/util/config.h | 17 +++++++++++++++++
 2 files changed, 32 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..b9190fe 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,7 @@ struct default_config_section {
 #define CONF_END()					\
 	{ .name = NULL }
 
+extern const struct default_config_section default_sections[];
+extern const struct default_config_item colors_config_items[];
+
 #endif /* __PERF_CONFIG_H */
-- 
2.7.4

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

[PATCH v8 3/7] perf config: Add default section and item arrays for 'colors' config Taeung Song <treeze.taeung@gmail.com> - 2016-09-05 07:30 +0200

csiph-web