示例#1
0
    public ClientsPanel() {
      super(new BorderLayout());
      lstClients = new JList();
      lstClients.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
      lstClients.setCellRenderer(
          new DefaultListCellRenderer() {
            public Component getListCellRendererComponent(
                JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
              EditorClient c = (EditorClient) value;
              JLabel label = new JLabel(c.getName());

              if (c.isPresent()) label.setForeground(MyColors.getMainColor(c.getColorCode()));
              else label.setForeground(Color.GRAY);

              if (isSelected) label.setBackground(lstClients.getSelectionBackground());

              return label;
            }
          });

      lstClients.addMouseListener(
          new MouseAdapter() {
            public void mouseClicked(MouseEvent e) {
              if (EditorServer_Debug) System.out.println(" mouseClicked ");
              int ndx = lstClients.locationToIndex(new Point(e.getX(), e.getY()));
              if (ndx > -1 && ndx < lstClients.getModel().getSize())
                lstClients.setSelectedIndex(ndx);
              else {
                if (EditorServer_Debug) System.out.println(" invalid mouse click on the JList");
              }
            }
          });

      lstClients.addListSelectionListener(
          new ListSelectionListener() {
            public void valueChanged(ListSelectionEvent e) {
              EditorClient c = (EditorClient) lstClients.getSelectedValue();
              currClient = c;
              updateActionTableFor(currClient);
            }
          });

      tblActions = new JTable(getClearTableModel());

      add(new JScrollPane(lstClients), BorderLayout.WEST);
      add(new JScrollPane(tblActions), BorderLayout.CENTER);
    }
示例#2
0
 private static <E> JList<E> newList(DefaultListModel<E> listModel) {
   JList<E> list = new JList<>(listModel);
   list.setFont(f13);
   list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
   return list;
 }