2929
3030package org .scijava .ui .swing ;
3131
32- import java .awt .BorderLayout ;
33-
32+ import javax .swing .JComponent ;
3433import javax .swing .JLabel ;
3534import javax .swing .JPanel ;
3635import javax .swing .JProgressBar ;
4746import org .scijava .ui .StatusBar ;
4847import org .scijava .ui .UIService ;
4948import org .scijava .ui .awt .AWTInputEventDispatcher ;
49+ import org .scijava .ui .swing .task .SwingTaskMonitorComponent ;
50+
51+ import java .awt .BorderLayout ;
52+ import java .awt .Dimension ;
5053
5154/**
5255 * Swing implementation of {@link StatusBar}.
@@ -72,14 +75,17 @@ public class SwingStatusBar extends JPanel implements StatusBar {
7275
7376 public SwingStatusBar (final Context context ) {
7477 context .inject (this );
75-
7678 statusText = new JLabel (appService .getApp ().getInfo (false ));
7779 statusText .setBorder (new BevelBorder (BevelBorder .LOWERED ));
7880 progressBar = new JProgressBar ();
7981 progressBar .setVisible (false );
8082 setLayout (new BorderLayout ());
8183 add (statusText , BorderLayout .CENTER );
82- add (progressBar , BorderLayout .EAST );
84+ add (progressBar , BorderLayout .WEST );
85+ JComponent progress = new SwingTaskMonitorComponent (context , true , true ,300 , false ).getComponent ();
86+ int h = getPreferredSize ().height ;
87+ progress .setPreferredSize (new Dimension (h ,h ));
88+ add (progress , BorderLayout .EAST );
8389 }
8490
8591 // -- SwingStatusBar methods --
0 commit comments