Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754704AbcK1IxD (ORCPT ); Mon, 28 Nov 2016 03:53:03 -0500 Received: from mail-pg0-f67.google.com ([74.125.83.67]:33913 "EHLO mail-pg0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754539AbcK1Ive (ORCPT ); Mon, 28 Nov 2016 03:51:34 -0500 From: Taeung Song To: Arnaldo Carvalho de Melo Cc: linux-kernel@vger.kernel.org, Jiri Olsa , Namhyung Kim , Ingo Molnar , Peter Zijlstra , Wang Nan , Taeung Song , Jiri Olsa Subject: [PATCH v9 3/7] perf config: Add default section and item arrays for 'colors' config Date: Mon, 28 Nov 2016 17:51:14 +0900 Message-Id: <1480323078-15623-4-git-send-email-treeze.taeung@gmail.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1480323078-15623-1-git-send-email-treeze.taeung@gmail.com> References: <1480323078-15623-1-git-send-email-treeze.taeung@gmail.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2469 Lines: 91 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 Cc: Jiri Olsa Cc: Wang Nan Signed-off-by: Taeung Song --- 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 3d906db..b56aa0e 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 7498669..fba7304 100644 --- a/tools/perf/util/config.h +++ b/tools/perf/util/config.h @@ -77,6 +77,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 { @@ -116,4 +130,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