From 998ca6cb4c21221b72ce80ab16019075fa70c53d Mon Sep 17 00:00:00 2001 From: Eldar Abusalimov Date: Tue, 17 Mar 2020 03:39:22 +0300 Subject: [PATCH] CPP-5040: Hide CMake-specific macros in non-CMake run configurations GitOrigin-RevId: 3fe2cb86e48970d5d99bb494f6572b6ae427e239 --- .../ui/CommonProgramParametersPanel.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/platform/execution-impl/src/com/intellij/execution/ui/CommonProgramParametersPanel.java b/platform/execution-impl/src/com/intellij/execution/ui/CommonProgramParametersPanel.java index c5f7433e4197..52213a095a40 100644 --- a/platform/execution-impl/src/com/intellij/execution/ui/CommonProgramParametersPanel.java +++ b/platform/execution-impl/src/com/intellij/execution/ui/CommonProgramParametersPanel.java @@ -156,10 +156,21 @@ public class CommonProgramParametersPanel extends JPanel implements PanelWithAnc } public static void addMacroSupport(@NotNull ExtendableTextField textField) { - addMacroSupport(textField, MacrosDialog.Filters.ALL, null); + doAddMacroSupport(textField, MacrosDialog.Filters.ALL, null); } - protected static void addMacroSupport(@NotNull ExtendableTextField textField, + protected void addMacroSupport(@NotNull ExtendableTextField textField, + @NotNull Predicate macroFilter, + @Nullable Map userMacros) { + final Predicate commonMacroFilter = getCommonMacroFilter(); + doAddMacroSupport(textField, t -> commonMacroFilter.test(t) && macroFilter.test(t), userMacros); + } + + protected @NotNull Predicate getCommonMacroFilter() { + return MacrosDialog.Filters.ALL; + } + + private static void doAddMacroSupport(@NotNull ExtendableTextField textField, @NotNull Predicate macroFilter, @Nullable Map userMacros) { if (Registry.is("allow.macros.for.run.configurations")) {