diff options
author | avera | 2009-01-27 20:56:36 +0000 |
---|---|---|
committer | avera | 2009-01-27 20:56:36 +0000 |
commit | 2fc6e70b2a2aaff80b075abe3c4afe410d6a1569 (patch) | |
tree | 60de87d89879a6ac281f8de8feb1634d04165ad4 /plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui | |
parent | bb5ab6341edc899a8a03795ee397a5c4933a2eff (diff) | |
download | webtools.servertools-2fc6e70b2a2aaff80b075abe3c4afe410d6a1569.tar.gz webtools.servertools-2fc6e70b2a2aaff80b075abe3c4afe410d6a1569.tar.xz webtools.servertools-2fc6e70b2a2aaff80b075abe3c4afe410d6a1569.zip |
[262575] Published application doesn't show State as "Started" for the modules
[258184] Server objects on the Servers view does not show lightweight decorators
Diffstat (limited to 'plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui')
2 files changed, 26 insertions, 11 deletions
diff --git a/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/view/servers/ServerTableLabelProvider.java b/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/view/servers/ServerTableLabelProvider.java index 493657603..34f7733ff 100644 --- a/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/view/servers/ServerTableLabelProvider.java +++ b/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/view/servers/ServerTableLabelProvider.java @@ -57,7 +57,8 @@ public class ServerTableLabelProvider extends BaseCellLabelProvider { * ServerTableLabelProvider constructor comment. */ public ServerTableLabelProvider() { - super(); + // Ensure decorator is initialized. + super(null); } public void setDefaultServer(IServer ds) { @@ -168,10 +169,9 @@ public class ServerTableLabelProvider extends BaseCellLabelProvider { } return name; } else if (columnIndex == 1) { - //if (ms.server == null) - // return ""; - //return getStateLabel(ms.server.getServerType(), ms.server.getModuleState(ms.module), null); - return ""; + if (ms.server == null) + return ""; + return getStateLabel(ms.server.getServerType(), ms.server.getModuleState(ms.module), null); } else if (columnIndex == 2) { IStatus status = ((Server) ms.server).getModuleStatus(ms.module); if (status != null) diff --git a/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/viewers/BaseCellLabelProvider.java b/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/viewers/BaseCellLabelProvider.java index 64e5640d0..94ecc8cdd 100644 --- a/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/viewers/BaseCellLabelProvider.java +++ b/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/viewers/BaseCellLabelProvider.java @@ -10,9 +10,7 @@ *******************************************************************************/ package org.eclipse.wst.server.ui.internal.viewers; -import org.eclipse.jface.viewers.ColumnLabelProvider; -import org.eclipse.jface.viewers.ILabelDecorator; -import org.eclipse.jface.viewers.ViewerCell; +import org.eclipse.jface.viewers.*; import org.eclipse.swt.graphics.Image; import org.eclipse.swt.graphics.Point; import org.eclipse.ui.PlatformUI; @@ -21,6 +19,7 @@ import org.eclipse.ui.PlatformUI; */ public abstract class BaseCellLabelProvider extends ColumnLabelProvider { public ILabelDecorator decorator; + protected ILabelProviderListener providerListener; /* (non-Javadoc) * @see org.eclipse.jface.viewers.ColumnLabelProvider#update(org.eclipse.jface.viewers.ViewerCell) @@ -38,7 +37,7 @@ public abstract class BaseCellLabelProvider extends ColumnLabelProvider { * Create a BaseCellLabelProvider */ public BaseCellLabelProvider() { - super(); + super(); } /** @@ -47,9 +46,18 @@ public abstract class BaseCellLabelProvider extends ColumnLabelProvider { */ public BaseCellLabelProvider(ILabelDecorator decorator) { super(); - if (decorator == null) + + if (decorator == null){ decorator = PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator(); - + providerListener = new ILabelProviderListener() { + @SuppressWarnings("synthetic-access") + public void labelProviderChanged(LabelProviderChangedEvent event) { + fireLabelProviderChanged(event); + } + }; + decorator.addListener(providerListener); + } + this.decorator = decorator; } @@ -64,6 +72,13 @@ public abstract class BaseCellLabelProvider extends ColumnLabelProvider { public int getToolTipTimeDisplayed(Object object) { return 5000; } + + public void dispose() { + if (decorator != null && providerListener != null) { + decorator.removeListener(providerListener); + } + super.dispose(); + } /** * Extenders of this class would implement this method to provide an image to the column based on the element |