From c48e321ea3874237194f2ee4c213a2769ad04306 Mon Sep 17 00:00:00 2001 From: Andrew Gvozdev Date: Tue, 19 Feb 2013 23:00:21 -0500 Subject: [PATCH] bug 401255: LSP userdef entries: Cannot add macro after adding a workspace include path --- .../providers/LanguageSettingEntryDialog.java | 28 +++++++++++-------- 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/language/settings/providers/LanguageSettingEntryDialog.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/language/settings/providers/LanguageSettingEntryDialog.java index 9fd5e328b10..faa75e6c8ae 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/language/settings/providers/LanguageSettingEntryDialog.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/language/settings/providers/LanguageSettingEntryDialog.java @@ -489,21 +489,25 @@ public class LanguageSettingEntryDialog extends AbstractPropertyDialog { inputValue.setEnabled(isMacroSelected); - int indexPathKind = comboPathCategory.getSelectionIndex(); - boolean isProjectSelected = (indexPathKind == COMBO_PATH_INDEX_PROJECT); - boolean isWorkspaceSelected = (indexPathKind == COMBO_PATH_INDEX_WORKSPACE); - boolean isFilesystemSelected = (indexPathKind == COMBO_PATH_INDEX_FILESYSTEM); - - String path = inputName.getText().trim(); - if (path.isEmpty()) { - buttonOk.setEnabled(false); + if (isMacroSelected) { + buttonOk.setEnabled(!inputName.getText().trim().isEmpty()); } else { - buttonOk.setEnabled((isProjectSelected && !path.startsWith(SLASH)) || - (isWorkspaceSelected && path.startsWith(SLASH)) || isFilesystemSelected); + int indexPathKind = comboPathCategory.getSelectionIndex(); + boolean isProjectSelected = (indexPathKind == COMBO_PATH_INDEX_PROJECT); + boolean isWorkspaceSelected = (indexPathKind == COMBO_PATH_INDEX_WORKSPACE); + boolean isFilesystemSelected = (indexPathKind == COMBO_PATH_INDEX_FILESYSTEM); + + String path = inputName.getText().trim(); + if (path.isEmpty()) { + buttonOk.setEnabled(false); + } else { + buttonOk.setEnabled((isProjectSelected && !path.startsWith(SLASH)) || + (isWorkspaceSelected && path.startsWith(SLASH)) || isFilesystemSelected); + } + + buttonVars.setEnabled(isFilesystemSelected); } - buttonVars.setEnabled(isFilesystemSelected); - compositeArea.layout(true); }