private synchronized void updateThreadPanel(boolean forceUpdate){
  if (!forceUpdate && !isVisible()) {
    return;
  }
  threadPanel.removeAll();
  GridBagConstraints gbc=new GridBagConstraints();
  gbc.gridx=0;
  gbc.gridy=0;
  gbc.weightx=1.0;
  gbc.weighty=0.0;
  gbc.fill=GridBagConstraints.HORIZONTAL;
  gbc.ipady=10;
  for (  ProgressThread currentThread : ProgressThread.getCurrentThreads()) {
    ProgressThreadDisplay pgPanel=new ProgressThreadDisplay(currentThread,false);
    threadPanel.add(pgPanel,gbc);
    MAPPING_PG_TO_UI.put(currentThread,pgPanel);
    updateProgressMessage(currentThread);
    updateProgress(currentThread);
    gbc.gridy+=1;
  }
  for (  ProgressThread queuedThread : ProgressThread.getQueuedThreads()) {
    ProgressThreadDisplay pgPanel=new ProgressThreadDisplay(queuedThread,true);
    threadPanel.add(pgPanel,gbc);
    MAPPING_PG_TO_UI.put(queuedThread,pgPanel);
    gbc.gridy+=1;
  }
  gbc.gridy+=1;
  gbc.weighty=1.0;
  gbc.fill=GridBagConstraints.BOTH;
  threadPanel.add(new JLabel(),gbc);
  threadPanel.revalidate();
  threadPanel.repaint();
}

private synchronized void updateThreadPanel ( boolean forceUpdate ) { if ( ! forceUpdate && ! isVisible ( ) ) { return ; } threadPanel . removeAll ( ) ; GridBagConstraints gbc = new GridBagConstraints ( ) ; gbc . gridx = 0 ; gbc . gridy = 0 ; gbc . weightx = 1.0 ; gbc . weighty = 0.0 ; gbc . fill = GridBagConstraints . HORIZONTAL ; gbc . ipady = 10 ; for ( ProgressThread currentThread : ProgressThread . getCurrentThreads ( ) ) { ProgressThreadDisplay pgPanel = new ProgressThreadDisplay ( currentThread , false ) ; threadPanel . add ( pgPanel , gbc ) ; MAPPING_PG_TO_UI . put ( currentThread , pgPanel ) ; updateProgressMessage ( currentThread ) ; updateProgress ( currentThread ) ; gbc . gridy += 1 ; } for ( ProgressThread queuedThread : ProgressThread . getQueuedThreads ( ) ) { ProgressThreadDisplay pgPanel = new ProgressThreadDisplay ( queuedThread , true ) ; threadPanel . add ( pgPanel , gbc ) ; MAPPING_PG_TO_UI . put ( queuedThread , pgPanel ) ; gbc . gridy += 1 ; } gbc . gridy += 1 ; gbc . weighty = 1.0 ; gbc . fill = GridBagConstraints . BOTH ; threadPanel . add ( new JLabel ( ) , gbc ) ; threadPanel . revalidate ( ) ; threadPanel . repaint ( ) ; }
updates the thread display panel which shows running / queued threads .
