/* * Created on 27.02.2013 * */ package org.jdesktop.swingx; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.EventQueue; import java.io.ByteArrayInputStream; import java.io.InputStream; import javax.swing.BoxLayout; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.UIManager; import javax.swing.plaf.synth.SynthLookAndFeel; import org.jdesktop.swingx.painter.ImagePainter; import org.jdesktop.swingx.test.XTestUtils; public class SynthPanelPainterTest extends JFrame { private static String synthXml = "<synth>" + " <style id=\"all\">" + " <font name=\"Tahoma\" size=\"11\"/>" + " </style>" + " <bind style=\"all\" type=\"REGION\" key=\".*\"/>" + " <style id=\"panel\">" + " <state>" + " <opaque value=\"true\"/>" + " <color type=\"BACKGROUND\" value=\"#FFFFFF\" />" + " <color type=\"FOREGROUND\" value=\"#000000\" />" + " <imagePainter method=\"panelBackground\" path=\"/org/jdesktop/swingx/panelBackground.png\" sourceInsets=\"5 5 5 5\" paintCenter=\"true\" stretch=\"true\" />" + " </state>" + " </style>" + " <bind style=\"panel\" type=\"region\" key=\"Panel\"/>" + "</synth>"; public static void main(String[] args) { EventQueue.invokeLater(new Runnable(){ public void run() { // UIManager.put("JXPanel.patch", Boolean.TRUE); try { new SynthPanelPainterTest(); } catch (Exception e) { e.printStackTrace(); } } }); } public SynthPanelPainterTest() throws Exception { InputStream is = new ByteArrayInputStream(synthXml.getBytes("UTF8")); SynthLookAndFeel laf = new SynthLookAndFeel(); laf.load(is, SynthPanelPainterTest.class); UIManager.setLookAndFeel(laf); setLayout(new BoxLayout(getContentPane(), BoxLayout.LINE_AXIS)); JPanel p = new JPanel(new BorderLayout()); // p.setBorder(new LineBorder(Color.GREEN)); p.add(new JLabel("in core panel")); add(p); JXPanel xp = new JXPanel(new BorderLayout()); JLabel label = new JLabel("happily living in x panel"); label.setForeground(Color.GREEN); label.setHorizontalAlignment(JLabel.CENTER); xp.add(label); xp.setBackgroundPainter(new ImagePainter(XTestUtils.loadDefaultImage())); // xp.setBorder(new LineBorder(Color.RED)); add(xp); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setSize(new Dimension(600, 400)); setLocationRelativeTo(null); setVisible(true); } }