From 74ebb4ef75c09d2507fe49700e92f750fd8beac0 Mon Sep 17 00:00:00 2001 From: Alain Magloire Date: Fri, 7 Jan 2005 20:43:03 +0000 Subject: [PATCH] 2005-01-07 Alain Magloire Part of Fix 82323. The "New" action was not shown when workspace was empty or no selection. * src/org/eclipse/cdt/internal/ui/cview/MainActionGroup.java And make sure we do not put problem icons on resources that !exist() && isReadOnly(). * src/org/eclipse/cdt/internal/ui/util/ResourceToItemsMapper.java --- core/org.eclipse.cdt.ui/ChangeLog | 8 ++++++++ .../cdt/internal/ui/cview/MainActionGroup.java | 15 ++++++++++----- .../internal/ui/util/ResourceToItemsMapper.java | 2 +- 3 files changed, 19 insertions(+), 6 deletions(-) diff --git a/core/org.eclipse.cdt.ui/ChangeLog b/core/org.eclipse.cdt.ui/ChangeLog index 3bf62c18f0c..693063a910e 100644 --- a/core/org.eclipse.cdt.ui/ChangeLog +++ b/core/org.eclipse.cdt.ui/ChangeLog @@ -1,3 +1,11 @@ +2005-01-07 Alain Magloire + Part of Fix 82323. + The "New" action was not shown when workspace was empty + or no selection. + * src/org/eclipse/cdt/internal/ui/cview/MainActionGroup.java + And make sure we do not put problem icons on resources that !exist() && isReadOnly(). + * src/org/eclipse/cdt/internal/ui/util/ResourceToItemsMapper.java + 2005-01-07 Alain Magloire Fix PR 82202 * src/org/eclipse/cdt/internal/ui/cview/CViewDropAdapter.java diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/MainActionGroup.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/MainActionGroup.java index c887c05de46..17326b9b986 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/MainActionGroup.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/MainActionGroup.java @@ -78,7 +78,9 @@ public class MainActionGroup extends CViewActionGroup { SelectionSearchGroup selectionSearchGroup; RefactoringActionGroup refactoringActionGroup; - + + private NewWizardMenu newWizardMenu; + public MainActionGroup(CView cview) { super(cview); } @@ -115,6 +117,8 @@ public class MainActionGroup extends CViewActionGroup { buildGroup = new BuildGroup(getCView()); refactorGroup = new RefactorActionGroup(getCView()); + newWizardMenu = new NewWizardMenu(getCView().getSite().getWorkbenchWindow()); + openIncludeAction = new OpenIncludeAction(viewer); //sortByNameAction = new SortViewAction(this, false); @@ -167,8 +171,9 @@ public class MainActionGroup extends CViewActionGroup { IStructuredSelection celements = (IStructuredSelection) getCView().getViewer().getSelection(); IStructuredSelection resources = SelectionConverter.convertSelectionToResources(celements); + addNewMenu(menu, resources); + if (resources.isEmpty()) { - new NewWizardMenu(getCView().getSite().getWorkbenchWindow()); menu.add(new Separator(IContextMenuConstants.GROUP_REORGANIZE)); refactoringActionGroup.fillContextMenu(menu); menu.add(new Separator()); @@ -184,7 +189,6 @@ public class MainActionGroup extends CViewActionGroup { return; } - addNewMenu(menu, resources); menu.add(new Separator()); gotoGroup.fillContextMenu(menu); menu.add(new Separator()); @@ -223,8 +227,8 @@ public class MainActionGroup extends CViewActionGroup { void addNewMenu(IMenuManager menu, IStructuredSelection selection) { MenuManager newMenu = new MenuManager(CViewMessages.getString("NewWizardsActionGroup.new")); //$NON-NLS-1$ - new NewWizardMenu(getCView().getSite().getWorkbenchWindow()); - menu.add(newMenu); + menu.add(newMenu); + newMenu.add(newWizardMenu); } void addBookMarkMenu(IMenuManager menu, IStructuredSelection selection) { @@ -339,6 +343,7 @@ public class MainActionGroup extends CViewActionGroup { openProjectGroup.dispose(); gotoGroup.dispose(); buildGroup.dispose(); + newWizardMenu.dispose(); super.dispose(); } diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/ResourceToItemsMapper.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/ResourceToItemsMapper.java index 6c0c122418f..8c8f667071a 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/ResourceToItemsMapper.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/util/ResourceToItemsMapper.java @@ -184,7 +184,7 @@ public class ResourceToItemsMapper { private static IResource getCorrespondingResource(Object element) { if (element instanceof ICElement) { ICElement elem= (ICElement) element; - if (!elem.isReadOnly()) { // only modifieable elements can get error ticks + if (elem.exists() && !elem.isReadOnly()) { // only modifieable elements can get error ticks IResource res= elem.getResource(); if (res == null) { ITranslationUnit cu= (ITranslationUnit) elem.getAncestor(ICElement.C_UNIT);