public void initInfoWidgets(){
  Debug.message("info","InformationDelegator.initInfoWidgets");
  GridBagLayout gridbag=new GridBagLayout();
  GridBagConstraints c=new GridBagConstraints();
  setFont(new Font("Helvetica",Font.PLAIN,9));
  setLayout(gridbag);
  progressBar=new JProgressBar();
  gridbag.setConstraints(progressBar,c);
  add(progressBar);
  progressBar.setVisible(false);
  JPanel infoLinePanel=new JPanel();
  c.weightx=1;
  c.anchor=GridBagConstraints.WEST;
  c.fill=GridBagConstraints.HORIZONTAL;
  gridbag.setConstraints(infoLinePanel,c);
  GridBagLayout gridbag2=new GridBagLayout();
  GridBagConstraints c2=new GridBagConstraints();
  infoLinePanel.setLayout(gridbag2);
  infoLineHolder=new JLabel(fudgeString);
  c2.weightx=.9;
  c2.fill=GridBagConstraints.HORIZONTAL;
  c2.anchor=GridBagConstraints.WEST;
  c2.insets=new Insets(3,10,3,10);
  gridbag2.setConstraints(infoLineHolder,c2);
  infoLinePanel.add(infoLineHolder);
  infoLineHolder2=new JLabel(fudgeString,SwingConstants.RIGHT);
  c2.weightx=.1;
  c2.anchor=GridBagConstraints.EAST;
  gridbag2.setConstraints(infoLineHolder2,c2);
  infoLinePanel.add(infoLineHolder2);
  addInfoLine(COORDINATE_INFO_LINE,infoLineHolder);
  addInfoLine(MAP_OBJECT_INFO_LINE,infoLineHolder2);
  add(infoLinePanel);
  c.weightx=0;
  c.anchor=GridBagConstraints.EAST;
  statusBar=new StatusLightPanel();
  gridbag.setConstraints(statusBar,c);
  add(statusBar);
  statusBar.setVisible(showLights);
}

public void initInfoWidgets ( ) { Debug . message ( "info" , "InformationDelegator.initInfoWidgets" ) ; GridBagLayout gridbag = new GridBagLayout ( ) ; GridBagConstraints c = new GridBagConstraints ( ) ; setFont ( new Font ( "Helvetica" , Font . PLAIN , 9 ) ) ; setLayout ( gridbag ) ; progressBar = new JProgressBar ( ) ; gridbag . setConstraints ( progressBar , c ) ; add ( progressBar ) ; progressBar . setVisible ( false ) ; JPanel infoLinePanel = new JPanel ( ) ; c . weightx = 1 ; c . anchor = GridBagConstraints . WEST ; c . fill = GridBagConstraints . HORIZONTAL ; gridbag . setConstraints ( infoLinePanel , c ) ; GridBagLayout gridbag2 = new GridBagLayout ( ) ; GridBagConstraints c2 = new GridBagConstraints ( ) ; infoLinePanel . setLayout ( gridbag2 ) ; infoLineHolder = new JLabel ( fudgeString ) ; c2 . weightx = .9 ; c2 . fill = GridBagConstraints . HORIZONTAL ; c2 . anchor = GridBagConstraints . WEST ; c2 . insets = new Insets ( 3 , 10 , 3 , 10 ) ; gridbag2 . setConstraints ( infoLineHolder , c2 ) ; infoLinePanel . add ( infoLineHolder ) ; infoLineHolder2 = new JLabel ( fudgeString , SwingConstants . RIGHT ) ; c2 . weightx = .1 ; c2 . anchor = GridBagConstraints . EAST ; gridbag2 . setConstraints ( infoLineHolder2 , c2 ) ; infoLinePanel . add ( infoLineHolder2 ) ; addInfoLine ( COORDINATE_INFO_LINE , infoLineHolder ) ; addInfoLine ( MAP_OBJECT_INFO_LINE , infoLineHolder2 ) ; add ( infoLinePanel ) ; c . weightx = 0 ; c . anchor = GridBagConstraints . EAST ; statusBar = new StatusLightPanel ( ) ; gridbag . setConstraints ( statusBar , c ) ; add ( statusBar ) ; statusBar . setVisible ( showLights ) ; }
if you want to subclass the informationdelegator and have it handle messages differently , you can override this method to set the widgets you want .
