Bug 572761 Fix some FindBugs warnings and switch to SpotBugs

Some fixes and tidy-up for Copy

Change-Id: I4eff17b06ec60254a3219b17deec985ebedafbf9
Task-Url: https://bugs.eclipse.org/bugs/show_bug.cgi?id=572761
diff --git a/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/editor/MultiPaneEditor.java b/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/editor/MultiPaneEditor.java
index f1ba675..acb27e5 100644
--- a/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/editor/MultiPaneEditor.java
+++ b/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/editor/MultiPaneEditor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************

- * Copyright (c) 2008, 2020 SAP AG and others.

+ * Copyright (c) 2008, 2021 SAP AG and others.

  * All rights reserved. This program and the accompanying materials

  * are made available under the terms of the Eclipse Public License 2.0

  * which accompanies this distribution, and is available at

- * https://www.eclipse.org/legal/epl-2.0/
- *
+ * https://www.eclipse.org/legal/epl-2.0/

+ *

  * SPDX-License-Identifier: EPL-2.0

  *

  * Contributors:

@@ -198,6 +198,8 @@
                                 break;

                             case IStatus.ERROR:

                             case IStatus.INFO:

+                            case IStatus.WARNING:

+                            default:

                                 cancel.setEnabled(false);

                                 form.setText(Messages.MultiPaneEditor_Failed_to_open);

                                 RowData rd = new RowData(form.getBody().getClientArea().width - layout.marginLeft - layout.marginRight, SWT.DEFAULT);

diff --git a/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/snapshot/actions/CopyActions.java b/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/snapshot/actions/CopyActions.java
index ce729b0..87b297c 100644
--- a/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/snapshot/actions/CopyActions.java
+++ b/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/snapshot/actions/CopyActions.java
@@ -1,10 +1,10 @@
 /*******************************************************************************

- * Copyright (c) 2008, 2017 SAP AG and IBM Corporation.

+ * Copyright (c) 2008, 2021 SAP AG and IBM Corporation.

  * All rights reserved. This program and the accompanying materials

  * are made available under the terms of the Eclipse Public License 2.0

  * which accompanies this distribution, and is available at

- * https://www.eclipse.org/legal/epl-2.0/
- *
+ * https://www.eclipse.org/legal/epl-2.0/

+ *

  * SPDX-License-Identifier: EPL-2.0

  *

  * Contributors:

@@ -25,10 +25,8 @@
 import org.eclipse.mat.snapshot.model.IClass;

 import org.eclipse.mat.snapshot.model.IObject;

 import org.eclipse.mat.ui.Messages;

+import org.eclipse.mat.ui.util.Copy;

 import org.eclipse.mat.util.IProgressListener;

-import org.eclipse.swt.dnd.Clipboard;

-import org.eclipse.swt.dnd.TextTransfer;

-import org.eclipse.swt.dnd.Transfer;

 import org.eclipse.swt.widgets.Display;

 

 public abstract class CopyActions implements IQuery

@@ -75,10 +73,7 @@
                 {

                     public void run()

                     {

-                        Clipboard clipboard = new Clipboard(display);

-                        clipboard.setContents(new Object[] { buf.toString() }, new Transfer[] { TextTransfer

-                                        .getInstance() });

-                        clipboard.dispose();

+                        Copy.copyToClipboard(buf.toString(), display);

                     }

                 });

             }

diff --git a/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/snapshot/actions/CopyOQL.java b/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/snapshot/actions/CopyOQL.java
index 4913a2a..abaf45c 100644
--- a/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/snapshot/actions/CopyOQL.java
+++ b/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/snapshot/actions/CopyOQL.java
@@ -1,10 +1,10 @@
 /*******************************************************************************

- * Copyright (c) 2011,2019 IBM Corporation.

+ * Copyright (c) 2011,2021 IBM Corporation.

  * All rights reserved. This program and the accompanying materials

  * are made available under the terms of the Eclipse Public License 2.0

  * which accompanies this distribution, and is available at

- * https://www.eclipse.org/legal/epl-2.0/
- *
+ * https://www.eclipse.org/legal/epl-2.0/

+ *

  * SPDX-License-Identifier: EPL-2.0

  *

  * Contributors:

@@ -24,10 +24,8 @@
 import org.eclipse.mat.query.annotations.Icon;

 import org.eclipse.mat.snapshot.OQL;

 import org.eclipse.mat.ui.Messages;

+import org.eclipse.mat.ui.util.Copy;

 import org.eclipse.mat.util.IProgressListener;

-import org.eclipse.swt.dnd.Clipboard;

-import org.eclipse.swt.dnd.TextTransfer;

-import org.eclipse.swt.dnd.Transfer;

 import org.eclipse.swt.widgets.Display;

 

 /**

@@ -97,10 +95,7 @@
         {

             public void run()

             {

-                Clipboard clipboard = new Clipboard(display);

-                clipboard.setContents(new Object[] { buf.toString() }, new Transfer[] { TextTransfer

-                                .getInstance() });

-                clipboard.dispose();

+                Copy.copyToClipboard(buf.toString(), display);

             }

         });

 

diff --git a/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/snapshot/views/inspector/InspectorView.java b/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/snapshot/views/inspector/InspectorView.java
index 31a755c..a59d411 100644
--- a/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/snapshot/views/inspector/InspectorView.java
+++ b/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/snapshot/views/inspector/InspectorView.java
@@ -1,10 +1,10 @@
 /*******************************************************************************

- * Copyright (c) 2008, 2011 SAP AG and others.

+ * Copyright (c) 2008, 2021 SAP AG, IBM Corporation and others.

  * All rights reserved. This program and the accompanying materials

  * are made available under the terms of the Eclipse Public License 2.0

  * which accompanies this distribution, and is available at

- * https://www.eclipse.org/legal/epl-2.0/
- *
+ * https://www.eclipse.org/legal/epl-2.0/

+ *

  * SPDX-License-Identifier: EPL-2.0

  *

  * Contributors:

@@ -73,9 +73,6 @@
 import org.eclipse.swt.custom.CTabItem;

 import org.eclipse.swt.custom.SashForm;

 import org.eclipse.swt.custom.StyledText;

-import org.eclipse.swt.dnd.Clipboard;

-import org.eclipse.swt.dnd.TextTransfer;

-import org.eclipse.swt.dnd.Transfer;

 import org.eclipse.swt.events.MenuAdapter;

 import org.eclipse.swt.events.MenuEvent;

 import org.eclipse.swt.events.PaintEvent;

@@ -544,10 +541,7 @@
                             break;

                         case 3:

                             String buffer = resolvedValue.getSelectionText();

-                            Clipboard clipboard = new Clipboard(resolvedValue.getDisplay());

-                            clipboard.setContents(new Object[] { buffer.toString() },

-                                            new Transfer[] { TextTransfer.getInstance() });

-                            clipboard.dispose();

+                            Copy.copyToClipboard(buffer, resolvedValue.getDisplay());

                             break;

                         default:

                             break;

diff --git a/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/util/Copy.java b/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/util/Copy.java
index ca19ac9..45681a6 100644
--- a/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/util/Copy.java
+++ b/plugins/org.eclipse.mat.ui/src/org/eclipse/mat/ui/util/Copy.java
@@ -66,7 +66,7 @@
     public static void copyToClipboard(String text, Display display)

     {

         Clipboard clipboard = new Clipboard(display);

-        clipboard.setContents(new Object[] { text.toString() }, new Transfer[] { TextTransfer.getInstance() });

+        clipboard.setContents(new Object[] { text }, new Transfer[] { TextTransfer.getInstance() });

         clipboard.dispose();

     }

 

@@ -130,6 +130,7 @@
                             c[i].aligning(Alignment.CENTER);

                             break;

                         case SWT.LEFT:

+                        default:

                             c[i].aligning(Alignment.LEFT);

                             break;

                     }

@@ -202,6 +203,7 @@
                             c[i].aligning(Alignment.CENTER);

                             break;

                         case SWT.LEFT:

+                        default:

                             c[i].aligning(Alignment.LEFT);

                             break;