From aae17ceace36ed25f3428e1667a107648d05e954 Mon Sep 17 00:00:00 2001 From: Andrew Gvozdev Date: Sun, 15 Aug 2010 02:08:08 +0000 Subject: [PATCH] bug 322695: Can't access preferences of any unrelated CDT project having "bad" project in workspace --- .../dataprovider/DataProviderMessages.properties | 2 +- .../managedbuilder/internal/ui/Messages.properties | 4 ++-- .../ui/properties/ToolChainEditTab.java | 12 ++++++++---- .../src/org/eclipse/cdt/ui/newui/AbstractPage.java | 5 +++-- 4 files changed, 14 insertions(+), 9 deletions(-) diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/DataProviderMessages.properties b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/DataProviderMessages.properties index 824c06f516f..0d61f21330a 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/DataProviderMessages.properties +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/DataProviderMessages.properties @@ -22,4 +22,4 @@ ProjectConverter.7=targets conversion ProjectConverter.8=the project conversion failed due to unknown reason ProjectConverter.9=the given project is not a valid CDT project BuildConfigurationData.NoConfigurationSupport=The configuration support is not installed on the system -BuildConfigurationData.OrphanedConfiguration=Orphaned configuration. No base extension cfg exists for ID={0} +BuildConfigurationData.OrphanedConfiguration=Orphaned configuration. No base extension cfg exists for {0} diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/Messages.properties b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/Messages.properties index 484e2341bb3..e7fd85e5a7d 100644 --- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/Messages.properties +++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/Messages.properties @@ -99,8 +99,8 @@ ToolChainEditTab_6=-- NO TOOL -- ToolChainEditTab_7=incompatibility with ToolChainEditTab_8=source extension conflict with ToolChainEditTab_9=toolchain -ToolChainEditTab_OrphanedBuilder=Orphaned builder: ID={0}, name={1} -ToolChainEditTab_OrphanedToolchain=Orphaned toolchain: ID={0}, name={1} +ToolChainEditTab_OrphanedBuilder=Orphaned builder {0} ({1}) +ToolChainEditTab_OrphanedToolchain=Orphaned toolchain {0} ({1}) NewVarDialog_0=Variable name: NewVarDialog_1=Apply to all configurations NewCfgDialog_0=Existing configuration diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolChainEditTab.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolChainEditTab.java index d7477630abe..4d93424b4f3 100644 --- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolChainEditTab.java +++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ToolChainEditTab.java @@ -82,8 +82,8 @@ public class ToolChainEditTab extends AbstractCBuildPropertyTab { private Button button_edit; private Group tools_group; private Group single_tool_group; - private Label st_builder; - private Label st_toolchain; + private Text st_builder; + private Text st_toolchain; private Label st_tool; private IBuilder[] v_bs; @@ -113,7 +113,8 @@ public class ToolChainEditTab extends AbstractCBuildPropertyTab { }}); c_toolchain.setEnabled(!page.isForFile()); - st_toolchain = setupLabel(usercomp, EMPTY_STR, 2, GridData.FILL_HORIZONTAL); + st_toolchain = new Text(usercomp, SWT.LEFT | SWT.READ_ONLY); + setupControl(st_toolchain, 2, GridData.FILL_HORIZONTAL); st_toolchain.setForeground(red); setupLabel(usercomp, Messages.ToolChainEditTab_2, 1, GridData.BEGINNING); @@ -128,7 +129,8 @@ public class ToolChainEditTab extends AbstractCBuildPropertyTab { }}); c_builder.setEnabled(page.isForProject()); - st_builder = setupLabel(usercomp, EMPTY_STR, 2, GridData.FILL_HORIZONTAL); + st_builder = new Text(usercomp, SWT.LEFT | SWT.READ_ONLY); + setupControl(st_builder, 2, GridData.FILL_HORIZONTAL); st_builder.setForeground(red); // make table for tools list @@ -240,6 +242,8 @@ public class ToolChainEditTab extends AbstractCBuildPropertyTab { // IFileInfoModification fim = (IFileInfoModification)mod; // fim.getProjectToolModifications(); } + st_toolchain.setEnabled(!EMPTY_STR.equals(st_toolchain.getText())); + st_builder.setEnabled(!EMPTY_STR.equals(st_builder.getText())); } private void fillToolChainCombo() { diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractPage.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractPage.java index faa1acda1ca..113a8f9856e 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractPage.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractPage.java @@ -72,6 +72,7 @@ import org.eclipse.swt.widgets.MessageBox; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.TabFolder; import org.eclipse.swt.widgets.TabItem; +import org.eclipse.swt.widgets.Text; import org.eclipse.ui.IWorkbenchPart; import org.eclipse.ui.IWorkbenchPartReference; import org.eclipse.ui.PlatformUI; @@ -159,7 +160,7 @@ implements private Button manageButton; private Button excludeFromBuildCheck; private Label errIcon; - private Label errMessage; + private Text errMessage; private Composite errPane; private Composite parentComposite; /* @@ -314,7 +315,7 @@ implements errIcon.setLayoutData(new GridData(GridData.BEGINNING)); errIcon.setImage(IMG_WARN); - errMessage = new Label(errPane, SWT.LEFT); + errMessage = new Text(errPane, SWT.LEFT | SWT.READ_ONLY); errMessage.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); if (isForFolder() || isForFile()) {