/** * Create the Swing components that let you change the transparency of the color received from the * JColorChooser. * * @param initialValue the starting alpha value for the color. * @return JComponent to adjust the transparency value. */ public JComponent getTransparancyAdjustment(int initialValue) { transparency = initialValue; // This sets initial transparency effect in preview... setPreviewColor(preview.getColor()); JPanel slidePanel = new JPanel(); Box slideBox = Box.createHorizontalBox(); JSlider opaqueSlide = new JSlider(JSlider.HORIZONTAL, 0 /* min */, 255 /* max */, initialValue /* initial */); java.util.Hashtable<Integer, JLabel> dict = new java.util.Hashtable<Integer, JLabel>(); String opaqueLabel = i18n.get(ColorTracker.class, "opaque", "opaque"); String clearLabel = i18n.get(ColorTracker.class, "clear", "clear"); if (opaqueLabel == null || opaqueLabel.length() == 0) { // translations are too long :( dict.put(new Integer(126), new JLabel(clearLabel)); } else { dict.put(new Integer(50), new JLabel(clearLabel)); dict.put(new Integer(200), new JLabel(opaqueLabel)); } // commented because polish translations are too long opaqueSlide.setLabelTable(dict); opaqueSlide.setPaintLabels(true); opaqueSlide.setMajorTickSpacing(50); opaqueSlide.setPaintTicks(true); opaqueSlide.addChangeListener( new ChangeListener() { public void stateChanged(ChangeEvent ce) { JSlider slider = (JSlider) ce.getSource(); if (slider.getValueIsAdjusting()) { transparency = slider.getValue(); } // This sets transparency in preview... setPreviewColor(preview.getColor()); } }); preview.setPreferredSize(new Dimension(100, slideBox.getHeight())); slideBox.add(preview); slideBox.add(Box.createGlue()); slideBox.add(opaqueSlide); slideBox.add(Box.createGlue()); slidePanel.add(slideBox); // You know what, it just has to be something, so the // UIManager will think it's valid. It will get resized as // appropriate when the JDialog gets packed. slidePanel.setSize(new Dimension(50, 50)); return slidePanel; }
public void drawBox(Graphics g) { for (Box i : boxList) { g.drawImage(i.getImage(), i.getX(), i.getY(), i.getWidth(), i.getHeight(), null); } }