/**
   * Creates the map area basket panel.
   *
   * @return the j panel
   */
  private JPanel createMapAreaBasketPanel() {
    JPanel panel = userInterfaceFactory.createPanel();
    GridBagConstraints panelGC = userInterfaceFactory.createGridBagConstraints();

    String mapAreaBasketLabelText =
        RIFJobSubmissionToolMessages.getMessage("mapAreaListSelectionPanel.mapAreaBasket.label");
    JLabel mapAreaBasketLabel = userInterfaceFactory.createLabel(mapAreaBasketLabelText);
    userInterfaceFactory.setBoldFont(mapAreaBasketLabel);
    panel.add(mapAreaBasketLabel, panelGC);

    panelGC.gridy++;
    panelGC.fill = GridBagConstraints.BOTH;
    panelGC.weightx = 1.0;
    panelGC.weighty = 1.0;

    JScrollPane selectedItemsStatusScrollPane =
        userInterfaceFactory.createScrollPane(selectedItemsStatusTextArea);
    panel.add(selectedItemsStatusScrollPane, panelGC);

    panelGC.gridy++;
    panelGC.fill = GridBagConstraints.NONE;
    panelGC.weightx = 0;
    panelGC.weighty = 0;
    panelGC.anchor = GridBagConstraints.SOUTHEAST;
    panel.add(createBasketControlButtonsPanel(), panelGC);

    return panel;
  }
  /** Builds the ui. */
  private void buildUI() {

    panel.removeAll();
    GridBagConstraints panelGC = userInterfaceFactory.createGridBagConstraints();

    String currentSelectionAreaTitleText =
        RIFJobSubmissionToolMessages.getMessage("mapAreaListSelectionPanel.title");
    JLabel currentSelectionAreaTitleLabel =
        userInterfaceFactory.createLabel(currentSelectionAreaTitleText);
    String currentSelectionAreaTitleToolTipText =
        RIFJobSubmissionToolMessages.getMessage("mapAreaListSelectionPanel.title.toolTip");
    currentSelectionAreaTitleLabel.setToolTipText(currentSelectionAreaTitleToolTipText);
    userInterfaceFactory.setBoldFont(currentSelectionAreaTitleLabel);
    panel.add(currentSelectionAreaTitleLabel, panelGC);

    panelGC.gridy++;
    panelGC.fill = GridBagConstraints.BOTH;
    panelGC.weightx = 1;
    panelGC.weighty = 0.8;
    panel.add(createMainPanel(), panelGC);

    panelGC.gridy++;
    panelGC.fill = GridBagConstraints.HORIZONTAL;
    panelGC.weightx = 1;
    panelGC.weighty = 0;
    panel.add(createMapAreaBasketPanel(), panelGC);

    updateBasketStatusPanel();
  }