JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
scrollPane.getHorizontalScrollBar().setUnitIncrement(10);
scrollPane.getVerticalScrollBar().setUnitIncrement(10);
JPanel panel = new JPanel();
panel.setLayout(new BorderLayout());
panel.setBorder(new EtchedBorder());
final JLabel metLabel = new JLabel("Static Metadata");
metLabel.setAlignmentX(Component.CENTER_ALIGNMENT);
final JLabel extendsLabel = new JLabel("<extends>");
extendsLabel.setFont(new Font("Serif", Font.PLAIN, 10));
extendsLabel.setAlignmentX(Component.CENTER_ALIGNMENT);
extendsLabel.addMouseListener(new MouseListener() {
private JScrollPane availableScroller;
private JScrollPane mineScroller;
private JList mineList;
private JList availableList;
private DefaultListModel mineModel;
private DefaultListModel availableModel;
public void mouseClicked(MouseEvent e) {
final JPopupMenu popup = new JPopupMenu();
popup.setLayout(new BorderLayout());
JPanel main = new JPanel();
main.setLayout(new BoxLayout(main, BoxLayout.X_AXIS));
JPanel mine = new JPanel();
mine.setBorder(new EtchedBorder());
mine.setLayout(new BorderLayout());
JLabel mineLabel = new JLabel("Mine");
mineScroller = new JScrollPane(mineList = createJList(
mineModel = new DefaultListModel(), state.getSelected()
.getModel().getExtendsConfig()));
mineScroller.setPreferredSize(new Dimension(250, 80));
mine.add(mineLabel, BorderLayout.NORTH);
mine.add(mineScroller, BorderLayout.CENTER);
JPanel available = new JPanel();
available.setBorder(new EtchedBorder());
available.setLayout(new BorderLayout());
JLabel availableLabel = new JLabel("Available");
Vector<String> availableGroups = new Vector<String>(state
.getGlobalConfigGroups().keySet());
availableGroups.removeAll(state.getSelected().getModel()