James Moger
2013-02-25 9effe1630d97039b3e01cd9b58ed07e75be1d63c
src/com/gitblit/client/JPalette.java
@@ -38,8 +38,16 @@
   private static final long serialVersionUID = 1L;
   private PaletteModel<T> availableModel;
   private PaletteModel<T> selectedModel;
   private JButton add;
   private JButton subtract;
   private JButton up;
   private JButton down;
   public JPalette() {
      this(false);
   }
   public JPalette(boolean controlOrder) {
      super(new BorderLayout(5, 5));
      availableModel = new PaletteModel<T>();
@@ -48,7 +56,7 @@
      final JTable available = new JTable(availableModel);
      final JTable selected = new JTable(selectedModel);
      JButton add = new JButton("->");
      add = new JButton("->");
      add.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent event) {
            List<T> move = new ArrayList<T>();
@@ -66,7 +74,7 @@
            selectedModel.fireTableDataChanged();
         }
      });
      JButton subtract = new JButton("<-");
      subtract = new JButton("<-");
      subtract.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent event) {
            List<T> move = new ArrayList<T>();
@@ -86,9 +94,37 @@
         }
      });
      up = new JButton("\u2191");
      up.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent event) {
            int row = selected.getSelectedRow();
            if (row > 0) {
               T o = selectedModel.list.remove(row);
               selectedModel.list.add(row - 1, o);
               selectedModel.fireTableDataChanged();
            }
         }
      });
      down = new JButton("\u2193");
      down.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent event) {
            int row = selected.getSelectedRow();
            if (row < selected.getRowCount() - 1) {
               T o = selectedModel.list.remove(row);
               selectedModel.list.add(row + 1, o);
               selectedModel.fireTableDataChanged();
            }
         }
      });
      JPanel controls = new JPanel(new GridLayout(0, 1, 0, 5));
      controls.add(add);
      controls.add(subtract);
      if (controlOrder) {
         controls.add(up);
         controls.add(down);
      }
      JPanel center = new JPanel(new GridBagLayout());
      center.add(controls);
@@ -102,14 +138,13 @@
      NameRenderer nameRenderer = new NameRenderer();
      table.setCellSelectionEnabled(false);
      table.setRowSelectionAllowed(true);
      table.setRowHeight(nameRenderer.getFont().getSize() + 8);
      table.getTableHeader().setReorderingAllowed(false);
      table.setGridColor(new Color(0xd9d9d9));
      table.setBackground(Color.white);
      table.getColumn(table.getColumnName(0)).setCellRenderer(nameRenderer);
      JScrollPane jsp = new JScrollPane(table);
      jsp.setPreferredSize(new Dimension(225, 175));
      jsp.setPreferredSize(new Dimension(225, 160));
      JPanel panel = new JPanel(new BorderLayout());
      JLabel jlabel = new JLabel(label);
      jlabel.setFont(jlabel.getFont().deriveFont(Font.BOLD));
@@ -117,6 +152,15 @@
      panel.add(jsp, BorderLayout.CENTER);
      return panel;
   }
   @Override
   public void setEnabled(boolean enabled) {
      super.setEnabled(enabled);
      add.setEnabled(enabled);
      subtract.setEnabled(enabled);
      up.setEnabled(enabled);
      down.setEnabled(enabled);
   }
   public void setObjects(List<T> all, List<T> selected) {
      List<T> available = new ArrayList<T>(all);