summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Gemmell <robbie@apache.org>2009-08-17 17:08:56 +0000
committerRobert Gemmell <robbie@apache.org>2009-08-17 17:08:56 +0000
commit37be358e76234f085ff5d6527acea5499e43cb12 (patch)
tree5903708e7b705d0a7cab61f6dc21322ff2e66d3a
parent0c50acc795dbb205c5ed30977c2eb1e7f089c19b (diff)
downloadqpid-python-37be358e76234f085ff5d6527acea5499e43cb12.tar.gz
QPID-2056: ensure the table listeners are added to the new table when changing the displayed attributes
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@805046 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/MBeanTypeTabControl.java102
-rw-r--r--qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/QueueTypeTabControl.java2
2 files changed, 56 insertions, 48 deletions
diff --git a/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/MBeanTypeTabControl.java b/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/MBeanTypeTabControl.java
index 37af1f8f31..cab9bc9f95 100644
--- a/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/MBeanTypeTabControl.java
+++ b/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/MBeanTypeTabControl.java
@@ -77,6 +77,8 @@ public abstract class MBeanTypeTabControl extends TabControl
protected String _virtualHost;
protected JMXServerRegistry _serverRegistry;
protected Composite _tableComposite;
+ protected Button _favouritesButton;
+ protected Button _openButton;
public MBeanTypeTabControl(TabFolder tabFolder, ManagedServer server, String virtualHost, String type)
{
@@ -191,8 +193,54 @@ public abstract class MBeanTypeTabControl extends TabControl
_tableViewer.setSorter(tableSorter);
_table.setSortColumn(_table.getColumn(0));
_table.setSortDirection(SWT.UP);
+
+ addTableListeners();
}
+ protected void addTableListeners()
+ {
+ _favouritesButton.setEnabled(false);
+ _openButton.setEnabled(false);
+
+ _tableViewer.addSelectionChangedListener(new ISelectionChangedListener(){
+ public void selectionChanged(SelectionChangedEvent evt)
+ {
+ int selectionIndex = _table.getSelectionIndex();
+
+ if (selectionIndex == -1)
+ {
+ _favouritesButton.setEnabled(false);
+ _openButton.setEnabled(false);
+ return;
+ }
+ else
+ {
+ _favouritesButton.setEnabled(true);
+ }
+
+ if(_table.getSelectionCount() > 1)
+ {
+ _openButton.setEnabled(false);
+ }
+ else
+ {
+ _openButton.setEnabled(true);
+ }
+ }
+ });
+
+ _table.addMouseListener(new MouseListener()
+ {
+ // MouseListener implementation
+ public void mouseDoubleClick(MouseEvent event)
+ {
+ openMBean();
+ }
+
+ public void mouseDown(MouseEvent e){}
+ public void mouseUp(MouseEvent e){}
+ });
+ }
private void createWidgets()
@@ -206,11 +254,11 @@ public abstract class MBeanTypeTabControl extends TabControl
buttonComposite.setLayoutData(gridData);
buttonComposite.setLayout(new GridLayout(2,true));
- final Button favouritesButton = _toolkit.createButton(buttonComposite,
+ _favouritesButton = _toolkit.createButton(buttonComposite,
"<-- Add " + _type + "(s) to favourites", SWT.PUSH);
gridData = new GridData(SWT.LEFT, SWT.CENTER, true, false);
- favouritesButton.setLayoutData(gridData);
- favouritesButton.addSelectionListener(new SelectionAdapter()
+ _favouritesButton.setLayoutData(gridData);
+ _favouritesButton.addSelectionListener(new SelectionAdapter()
{
public void widgetSelected(SelectionEvent e)
{
@@ -218,10 +266,10 @@ public abstract class MBeanTypeTabControl extends TabControl
}
});
- final Button openButton = _toolkit.createButton(buttonComposite, "Open selected " + _type, SWT.PUSH);
+ _openButton = _toolkit.createButton(buttonComposite, "Open selected " + _type, SWT.PUSH);
gridData = new GridData(SWT.RIGHT, SWT.CENTER, true, false);
- openButton.setLayoutData(gridData);
- openButton.addSelectionListener(new SelectionAdapter()
+ _openButton.setLayoutData(gridData);
+ _openButton.addSelectionListener(new SelectionAdapter()
{
public void widgetSelected(SelectionEvent e)
{
@@ -236,48 +284,6 @@ public abstract class MBeanTypeTabControl extends TabControl
createTable();
- favouritesButton.setEnabled(false);
- openButton.setEnabled(false);
-
- _tableViewer.addSelectionChangedListener(new ISelectionChangedListener(){
- public void selectionChanged(SelectionChangedEvent evt)
- {
- int selectionIndex = _table.getSelectionIndex();
-
- if (selectionIndex == -1)
- {
- favouritesButton.setEnabled(false);
- openButton.setEnabled(false);
- return;
- }
- else
- {
- favouritesButton.setEnabled(true);
- }
-
- if(_table.getSelectionCount() > 1)
- {
- openButton.setEnabled(false);
- }
- else
- {
- openButton.setEnabled(true);
- }
- }
- });
-
- _table.addMouseListener(new MouseListener()
- {
- // MouseListener implementation
- public void mouseDoubleClick(MouseEvent event)
- {
- openMBean();
- }
-
- public void mouseDown(MouseEvent e){}
- public void mouseUp(MouseEvent e){}
- });
-
createLowerAreaButton(mainComposite);
}
diff --git a/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/QueueTypeTabControl.java b/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/QueueTypeTabControl.java
index 3e1f198606..df2a1eca59 100644
--- a/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/QueueTypeTabControl.java
+++ b/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/QueueTypeTabControl.java
@@ -357,6 +357,8 @@ public class QueueTypeTabControl extends MBeanTypeTabControl
_tableViewer.setSorter(tableSorter);
_table.setSortColumn(_table.getColumn(0));
_table.setSortDirection(SWT.UP);
+
+ addTableListeners();
}
protected void createLowerAreaButton(Composite parent)