[406998] [Accessibility] Fix accessibility issues in the TCP/IP monitor
preferences page
diff --git a/features/org.eclipse.wst.server_ui.feature.patch/buildnotes_org.eclipse.wst.server_ui.feature.patch.html b/features/org.eclipse.wst.server_ui.feature.patch/buildnotes_org.eclipse.wst.server_ui.feature.patch.html
index 5b2e4cb..770a2bf 100644
--- a/features/org.eclipse.wst.server_ui.feature.patch/buildnotes_org.eclipse.wst.server_ui.feature.patch.html
+++ b/features/org.eclipse.wst.server_ui.feature.patch/buildnotes_org.eclipse.wst.server_ui.feature.patch.html
@@ -22,6 +22,7 @@
<p>Bug <a href='https://bugs.eclipse.org/390584'>390584</a>. [Accessibility] TCP/IP monitor view uses white background with green text in high contrast mode and labels are unreadable by a screenreader</p>
<p>Bug <a href='https://bugs.eclipse.org/400855'>400855</a>. [Accessibility] Mouse over on the module status in the server's view fails in high contrast mode</p>
<p>Bug <a href='https://bugs.eclipse.org/404672'>404672</a>. delete key on multiple modules sends wrong deltakind flag</p>
+<p>Bug <a href='https://bugs.eclipse.org/406998'>406998</a>. [Accessibility] Fix accessibility issues in the TCP/IP monitor preferences page</p>
</body></html>
\ No newline at end of file
diff --git a/features/org.eclipse.wst.server_ui.feature.patch/feature.properties b/features/org.eclipse.wst.server_ui.feature.patch/feature.properties
index da86e26..3ff383a 100644
--- a/features/org.eclipse.wst.server_ui.feature.patch/feature.properties
+++ b/features/org.eclipse.wst.server_ui.feature.patch/feature.properties
@@ -32,6 +32,7 @@
Bug https://bugs.eclipse.org/390584 [Accessibility] TCP/IP monitor view uses white background with green text in high contrast mode and labels are unreadable by a screenreader\n\
Bug https://bugs.eclipse.org/400855 [Accessibility] Mouse over on the module status in the server's view fails in high contrast mode\n\
Bug https://bugs.eclipse.org/404672 delete key on multiple modules sends wrong deltakind flag\n\
+Bug https://bugs.eclipse.org/406998 [Accessibility] Fix accessibility issues in the TCP/IP monitor preferences page\n\
\n\
# "copyright" property - text of the "Feature Update Copyright"
copyright=\
diff --git a/plugins/org.eclipse.wst.internet.monitor.ui/monitorui/org/eclipse/wst/internet/monitor/ui/internal/Messages.java b/plugins/org.eclipse.wst.internet.monitor.ui/monitorui/org/eclipse/wst/internet/monitor/ui/internal/Messages.java
index 5c45998..9db07c8 100644
--- a/plugins/org.eclipse.wst.internet.monitor.ui/monitorui/org/eclipse/wst/internet/monitor/ui/internal/Messages.java
+++ b/plugins/org.eclipse.wst.internet.monitor.ui/monitorui/org/eclipse/wst/internet/monitor/ui/internal/Messages.java
@@ -39,6 +39,7 @@
public static String remove;
public static String start;
public static String stop;
+ public static String columns;
public static String started;
public static String stopped;
public static String headerLabel;
diff --git a/plugins/org.eclipse.wst.internet.monitor.ui/monitorui/org/eclipse/wst/internet/monitor/ui/internal/Messages.properties b/plugins/org.eclipse.wst.internet.monitor.ui/monitorui/org/eclipse/wst/internet/monitor/ui/internal/Messages.properties
index 8847027..8fd3bed 100644
--- a/plugins/org.eclipse.wst.internet.monitor.ui/monitorui/org/eclipse/wst/internet/monitor/ui/internal/Messages.properties
+++ b/plugins/org.eclipse.wst.internet.monitor.ui/monitorui/org/eclipse/wst/internet/monitor/ui/internal/Messages.properties
@@ -61,6 +61,7 @@
remove=&Remove
start=&Start
stop=S&top
+columns=&Columns...
started=Started
stopped=Stopped
yes=Yes
diff --git a/plugins/org.eclipse.wst.internet.monitor.ui/monitorui/org/eclipse/wst/internet/monitor/ui/internal/MonitorPreferencePage.java b/plugins/org.eclipse.wst.internet.monitor.ui/monitorui/org/eclipse/wst/internet/monitor/ui/internal/MonitorPreferencePage.java
index c027481..3915603 100644
--- a/plugins/org.eclipse.wst.internet.monitor.ui/monitorui/org/eclipse/wst/internet/monitor/ui/internal/MonitorPreferencePage.java
+++ b/plugins/org.eclipse.wst.internet.monitor.ui/monitorui/org/eclipse/wst/internet/monitor/ui/internal/MonitorPreferencePage.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2003, 2008 IBM Corporation and others.
+ * Copyright (c) 2003, 2013 IBM Corporation and others.
* 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
@@ -14,20 +14,12 @@
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
+
import org.eclipse.core.runtime.CoreException;
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.preference.PreferencePage;
+import org.eclipse.jface.util.ConfigureColumns;
import org.eclipse.jface.viewers.ColumnWeightData;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.ISelectionChangedListener;
@@ -36,7 +28,20 @@
import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.jface.viewers.TableLayout;
import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.jface.window.IShellProvider;
import org.eclipse.jface.window.Window;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.swt.widgets.TableColumn;
+import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPreferencePage;
import org.eclipse.ui.PlatformUI;
@@ -46,7 +51,7 @@
/**
* The preference page that holds monitor properties.
*/
-public class MonitorPreferencePage extends PreferencePage implements IWorkbenchPreferencePage {
+public class MonitorPreferencePage extends PreferencePage implements IWorkbenchPreferencePage, IShellProvider {
protected Button displayButton;
protected Table table;
@@ -56,6 +61,7 @@
protected Button remove;
protected Button start;
protected Button stop;
+ protected Button columns;
protected List<Object> selection2;
@@ -87,12 +93,12 @@
GridData data = new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_FILL);
composite.setLayoutData(data);
PlatformUI.getWorkbench().getHelpSystem().setHelp(composite, ContextIds.PREF);
-
- Label label = new Label(composite, SWT.WRAP);
- label.setText(Messages.preferenceDescription);
+
+ Text description = new Text(composite, SWT.READ_ONLY);
+ description.setText(Messages.preferenceDescription);
data = new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING);
data.horizontalSpan = 2;
- label.setLayoutData(data);
+ description.setLayoutData(data);
displayButton = new Button(composite, SWT.CHECK);
displayButton.setText(Messages.prefShowView);
@@ -103,7 +109,7 @@
displayButton.setLayoutData(data);
PlatformUI.getWorkbench().getHelpSystem().setHelp(displayButton, ContextIds.PREF_SHOW);
- label = new Label(composite, SWT.WRAP);
+ Label label = new Label(composite, SWT.WRAP);
label.setText(Messages.monitorList);
data = new GridData(GridData.FILL_HORIZONTAL);
data.horizontalSpan = 2;
@@ -265,6 +271,17 @@
});
stop.setEnabled(false);
+ columns = SWTUtil.createButton(buttonComp, Messages.columns);
+ data = (GridData) columns.getLayoutData();
+ data.verticalIndent = 9;
+
+ final MonitorPreferencePage thisClass = this;
+ columns.addSelectionListener(new SelectionAdapter() {
+ public void widgetSelected(SelectionEvent e) {
+ ConfigureColumns.forTable(tableViewer.getTable(), thisClass);
+ }
+ });
+
Dialog.applyDialogFont(composite);
return composite;