!7 module TrayAreaTest > DynPrintLog { start { final JPanel trayArea = dm_getOSOpt('trayArea); if (trayArea == null) ret with print("No tray area"); print("Got tray area. Setting contents."); swing { removeAllComponents(trayArea); trayArea.setLayout(new BorderLayout); JLabel label = jcenteredlabel("Hello world!"); trayArea.add(label, BorderLayout.CENTER); trayArea.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 20)); revalidate(trayArea); Dimension size = label.getPreferredSize(); print("Minimum size: " + size); Dimension parentSize; print("Parent size: " + (parentSize = trayArea.getParent().getSize())); //print("height: ", trayArea.getHeight()); int h = parentSize.height; setPreferredSize(trayArea, size.width, size.height); revalidate(trayArea.getParent()); } print("Done."); } }