protected void buildChooser() {
String recentStr = UIManager.getString("ColorChooser.swatchesRecentText", getLocale());
GridBagLayout gb = new GridBagLayout();
GridBagConstraints gbc = new GridBagConstraints();
JPanel superHolder = new JPanel(gb);
swatchPanel = new MainSwatchPanel();
swatchPanel.putClientProperty(AccessibleContext.ACCESSIBLE_NAME_PROPERTY,
getDisplayName());
swatchPanel.setInheritsPopupMenu(true);
recentSwatchPanel = new RecentSwatchPanel();
recentSwatchPanel.putClientProperty(AccessibleContext.ACCESSIBLE_NAME_PROPERTY,
recentStr);
mainSwatchListener = new MainSwatchListener();
swatchPanel.addMouseListener(mainSwatchListener);
recentSwatchListener = new RecentSwatchListener();
recentSwatchPanel.addMouseListener(recentSwatchListener);
JPanel mainHolder = new JPanel(new BorderLayout());
Border border = new CompoundBorder( new LineBorder(Color.black),
new LineBorder(Color.white) );
mainHolder.setBorder(border);
mainHolder.add(swatchPanel, BorderLayout.CENTER);
gbc.anchor = GridBagConstraints.LAST_LINE_START;
gbc.gridwidth = 1;
gbc.gridheight = 2;
Insets oldInsets = gbc.insets;
gbc.insets = new Insets(0, 0, 0, 10);
superHolder.add(mainHolder, gbc);
gbc.insets = oldInsets;
recentSwatchPanel.addMouseListener(recentSwatchListener);
recentSwatchPanel.setInheritsPopupMenu(true);
JPanel recentHolder = new JPanel( new BorderLayout() );
recentHolder.setBorder(border);
recentHolder.setInheritsPopupMenu(true);
recentHolder.add(recentSwatchPanel, BorderLayout.CENTER);
JLabel l = new JLabel(recentStr);
l.setLabelFor(recentSwatchPanel);
gbc.gridwidth = GridBagConstraints.REMAINDER;
gbc.gridheight = 1;
gbc.weighty = 1.0;
superHolder.add(l, gbc);
gbc.weighty = 0;
gbc.gridheight = GridBagConstraints.REMAINDER;
gbc.insets = new Insets(0, 0, 0, 2);
superHolder.add(recentHolder, gbc);
superHolder.setInheritsPopupMenu(true);
add(superHolder);
}
|