X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FProgressBar.java;h=c04754f80f1e889ccab66280cfeddbf098678845;hb=e0aacff0a162fdf1beb71cd5965b6ff4f8c9de0d;hp=8ebc98d356e1588a3a839a98f3cacd56a60806b1;hpb=bd318fe40b8d07db486f47d788dcdc2df8cb9e9c;p=jalview.git diff --git a/src/jalview/gui/ProgressBar.java b/src/jalview/gui/ProgressBar.java index 8ebc98d..c04754f 100644 --- a/src/jalview/gui/ProgressBar.java +++ b/src/jalview/gui/ProgressBar.java @@ -1,6 +1,29 @@ +/* + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors + * + * This file is part of Jalview. + * + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. + * + * Jalview is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. + */ package jalview.gui; +import jalview.util.MessageManager; + import java.awt.BorderLayout; +import java.awt.Component; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -13,8 +36,6 @@ import javax.swing.JPanel; import javax.swing.JProgressBar; import javax.swing.SwingUtilities; -import jalview.util.MessageManager; - /** * A class to manage multiple progress bars embedded in a JPanel. */ @@ -101,7 +122,7 @@ public class ProgressBar implements IProgressIndicator public void setProgressBar(String message, long id) { Long longId = Long.valueOf(id); - + JPanel progressPanel = progressBars.get(longId); if (progressPanel != null) { @@ -125,15 +146,15 @@ public class ProgressBar implements IProgressIndicator * No progress bar for this id - add one now */ progressPanel = new JPanel(new BorderLayout(10, 5)); - + JProgressBar progressBar = new JProgressBar(); progressBar.setIndeterminate(true); - + progressPanel.add(new JLabel(message), BorderLayout.WEST); progressPanel.add(progressBar, BorderLayout.CENTER); - + addRow(progressPanel); - + progressBars.put(longId, progressPanel); } @@ -148,7 +169,11 @@ public class ProgressBar implements IProgressIndicator /* * lay out progress bar container hierarchy */ - SwingUtilities.getRoot(statusPanel).validate(); + Component root = SwingUtilities.getRoot(statusPanel); + if (root != null) + { + root.validate(); + } } /** @@ -218,8 +243,9 @@ public class ProgressBar implements IProgressIndicator { handler.cancelActivity(id); us.setProgressBar(MessageManager.formatMessage( - "label.cancelled_params", new Object[] - { ((JLabel) progressPanel.getComponent(0)).getText() }), id); + "label.cancelled_params", + new Object[] { ((JLabel) progressPanel.getComponent(0)) + .getText() }), id); } }); progressPanel.add(cancel, BorderLayout.EAST);