import javax.swing.JButton; //导入方法依赖的package包/类
@Override
public void setup(Set grantedPrivileges, String name)
{
getButtonActions(actions);
listFilled = false;
model = new GenericListModel();
list = new JList<>(model);
list.addMouseListener(new ListDoubleClickListener(list, editAction));
list.addMouseListener(new ListPopupListener(list, actions));
list.addListSelectionListener(new ListSelectionListener()
{
@Override
public void valueChanged(ListSelectionEvent e)
{
updateButtons();
}
});
JScrollPane scroll = new JScrollPane(list);
JLabel heading = new JLabel(name);
heading.setHorizontalAlignment(SwingConstants.CENTER);
heading.setHorizontalTextPosition(SwingConstants.CENTER);
JButton refreshButton = new JTextlessButton(refreshAction);
refreshButton.setBorderPainted(false);
refreshButton.setIconTextGap(0);
refreshButton.setBorder(null);
JComponent buttonsComp = createButtonsPanel();
final int width1 = refreshButton.getPreferredSize().width;
final int height1 = refreshButton.getPreferredSize().height;
final int height2 = buttonsComp.getPreferredSize().height;
final int[] rows = {5, height1, 5, TableLayout.FILL, 5, height2,};
final int[] cols = {width1, TableLayout.FILL, width1, 5};
everything = new JPanel(new TableLayout(rows, cols, 0, 0));
everything.add(heading, new Rectangle(1, 1, 1, 1));
everything.add(refreshButton, new Rectangle(2, 1, 1, 1));
everything.add(scroll, new Rectangle(0, 3, 3, 1));
everything.add(buttonsComp, new Rectangle(0, 5, 3, 1));
updateButtons();
}