From 9bc82fd9c00ca95a2f14f3fa78ac18b3e2921402 Mon Sep 17 00:00:00 2001 From: Rafael Medeiros Teixeira Date: Mon, 8 Aug 2011 13:59:53 -0300 Subject: Fix for bug #333315 - Add text to Valgrind view when no errors were found. --- .../internal/valgrind/core/ValgrindInfo.java | 23 ++++++++++++++++++++++ .../ValgrindLaunchConfigurationDelegate.java | 6 ++++++ .../internal/valgrind/launch/messages.properties | 3 ++- .../internal/valgrind/ui/CoreMessagesViewer.java | 6 +++++- 4 files changed, 36 insertions(+), 2 deletions(-) create mode 100644 valgrind/org.eclipse.linuxtools.valgrind.core/src/org/eclipse/linuxtools/internal/valgrind/core/ValgrindInfo.java diff --git a/valgrind/org.eclipse.linuxtools.valgrind.core/src/org/eclipse/linuxtools/internal/valgrind/core/ValgrindInfo.java b/valgrind/org.eclipse.linuxtools.valgrind.core/src/org/eclipse/linuxtools/internal/valgrind/core/ValgrindInfo.java new file mode 100644 index 0000000000..c0c1af8f42 --- /dev/null +++ b/valgrind/org.eclipse.linuxtools.valgrind.core/src/org/eclipse/linuxtools/internal/valgrind/core/ValgrindInfo.java @@ -0,0 +1,23 @@ +/******************************************************************************* + * Copyright (c) 2011 IBM Corporation + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Rafael M Teixeira - initial API and implementation + *******************************************************************************/ + +package org.eclipse.linuxtools.internal.valgrind.core; + +import org.eclipse.debug.core.ILaunch; +import org.eclipse.linuxtools.valgrind.core.IValgrindMessage; + +public class ValgrindInfo extends AbstractValgrindMessage { + + public ValgrindInfo(IValgrindMessage parent, String text, ILaunch launch) { + super(parent, text, launch); + } + +} diff --git a/valgrind/org.eclipse.linuxtools.valgrind.launch/src/org/eclipse/linuxtools/internal/valgrind/launch/ValgrindLaunchConfigurationDelegate.java b/valgrind/org.eclipse.linuxtools.valgrind.launch/src/org/eclipse/linuxtools/internal/valgrind/launch/ValgrindLaunchConfigurationDelegate.java index e053bad262..6aecae8da2 100644 --- a/valgrind/org.eclipse.linuxtools.valgrind.launch/src/org/eclipse/linuxtools/internal/valgrind/launch/ValgrindLaunchConfigurationDelegate.java +++ b/valgrind/org.eclipse.linuxtools.valgrind.launch/src/org/eclipse/linuxtools/internal/valgrind/launch/ValgrindLaunchConfigurationDelegate.java @@ -48,6 +48,7 @@ import org.eclipse.linuxtools.internal.valgrind.core.LaunchConfigurationConstant import org.eclipse.linuxtools.internal.valgrind.core.ValgrindCommand; import org.eclipse.linuxtools.internal.valgrind.core.ValgrindCoreParser; import org.eclipse.linuxtools.internal.valgrind.core.ValgrindError; +import org.eclipse.linuxtools.internal.valgrind.core.ValgrindInfo; import org.eclipse.linuxtools.internal.valgrind.core.ValgrindStackFrame; import org.eclipse.linuxtools.internal.valgrind.ui.ValgrindUIPlugin; import org.eclipse.linuxtools.internal.valgrind.ui.ValgrindViewPart; @@ -201,6 +202,11 @@ public class ValgrindLaunchConfigurationDelegate extends AbstractCLaunchDelegate for (File log : outputPath.toFile().listFiles(LOG_FILTER)) { ValgrindCoreParser parser = new ValgrindCoreParser(log, launch); IValgrindMessage[] results = parser.getMessages(); + + if (results.length == 0){ + results = new IValgrindMessage[1]; + results[0] = new ValgrindInfo(null, Messages.getString("ValgrindOutputView.No_output"), launch); + } messages.addAll(Arrays.asList(results)); createMarkers(results); } diff --git a/valgrind/org.eclipse.linuxtools.valgrind.launch/src/org/eclipse/linuxtools/internal/valgrind/launch/messages.properties b/valgrind/org.eclipse.linuxtools.valgrind.launch/src/org/eclipse/linuxtools/internal/valgrind/launch/messages.properties index aceee2fd23..2bed00a5ed 100644 --- a/valgrind/org.eclipse.linuxtools.valgrind.launch/src/org/eclipse/linuxtools/internal/valgrind/launch/messages.properties +++ b/valgrind/org.eclipse.linuxtools.valgrind.launch/src/org/eclipse/linuxtools/internal/valgrind/launch/messages.properties @@ -54,4 +54,5 @@ ValgrindOptionsTab.trace_children=Trace children on exec ValgrindOptionsTab.Valgrind_Options=Valgrind Options ValgrindOptionsTab.Workspace=&Workspace... ValgrindOutputDirectory.Couldnt_create=Couldn't create {0} -ValgrindOutputDirectory.Couldnt_delete=Couldn't delete {0} \ No newline at end of file +ValgrindOutputDirectory.Couldnt_delete=Couldn't delete {0} +ValgrindOutputView.No_output=Profiler executed successfully, no issues found diff --git a/valgrind/org.eclipse.linuxtools.valgrind.ui/src/org/eclipse/linuxtools/internal/valgrind/ui/CoreMessagesViewer.java b/valgrind/org.eclipse.linuxtools.valgrind.ui/src/org/eclipse/linuxtools/internal/valgrind/ui/CoreMessagesViewer.java index 5380586aaf..3bb18ff743 100644 --- a/valgrind/org.eclipse.linuxtools.valgrind.ui/src/org/eclipse/linuxtools/internal/valgrind/ui/CoreMessagesViewer.java +++ b/valgrind/org.eclipse.linuxtools.valgrind.ui/src/org/eclipse/linuxtools/internal/valgrind/ui/CoreMessagesViewer.java @@ -35,6 +35,7 @@ import org.eclipse.jface.viewers.LabelProvider; import org.eclipse.jface.viewers.TreeSelection; import org.eclipse.jface.viewers.TreeViewer; import org.eclipse.jface.viewers.Viewer; +import org.eclipse.linuxtools.internal.valgrind.core.ValgrindError; import org.eclipse.linuxtools.internal.valgrind.core.ValgrindStackFrame; import org.eclipse.linuxtools.profiling.ui.ProfileUIUtils; import org.eclipse.linuxtools.valgrind.core.IValgrindMessage; @@ -99,9 +100,12 @@ public class CoreMessagesViewer { if (element instanceof ValgrindStackFrame) { image = DebugUITools.getImage(IDebugUIConstants.IMG_OBJS_STACKFRAME); } - else { + else if (element instanceof ValgrindError) { image = PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJS_ERROR_TSK); } + else { + image = PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJS_INFO_TSK); + } return image; } -- cgit v1.2.3