X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FJvSwingUtils.java;h=e7f992dd37faff03ba188e5f32600d10a4a1a75e;hb=1a80985facca80167fb54ca70d9778b1c3bcf9f1;hp=ef96fa6144720c6dd0170a7ca1251ea67029940a;hpb=7187810b17d6d9be06208dd596e08fa4a5709b75;p=jalview.git diff --git a/src/jalview/gui/JvSwingUtils.java b/src/jalview/gui/JvSwingUtils.java index ef96fa6..e7f992d 100644 --- a/src/jalview/gui/JvSwingUtils.java +++ b/src/jalview/gui/JvSwingUtils.java @@ -20,8 +20,6 @@ */ package jalview.gui; -import jalview.util.MessageManager; - import java.awt.BorderLayout; import java.awt.Color; import java.awt.Component; @@ -35,6 +33,7 @@ import java.util.List; import java.util.Objects; import javax.swing.AbstractButton; +import javax.swing.BorderFactory; import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JComponent; @@ -44,6 +43,10 @@ import javax.swing.JMenuItem; import javax.swing.JPanel; import javax.swing.JScrollBar; import javax.swing.SwingConstants; +import javax.swing.border.Border; +import javax.swing.border.TitledBorder; + +import jalview.util.MessageManager; /** * useful functions for building Swing GUIs @@ -93,9 +96,14 @@ public final class JvSwingUtils } return (enclose ? "" : "") - + "

" - + ttext + "

" + ((enclose ? "" : "")); - + // BH 2018 + + "
" + // + "

" + + ttext + "

" + // + "

" + + ((enclose ? "" : "")); } public static JButton makeButton(String label, String tooltip, @@ -316,13 +324,13 @@ public final class JvSwingUtils * @param entries * @param tooltips */ - public static JComboBox buildComboWithTooltips( - List entries, List tooltips) + public static JComboBox buildComboWithTooltips( + List entries, List tooltips) { - JComboBox combo = new JComboBox<>(); + JComboBox combo = new JComboBox<>(); final ComboBoxTooltipRenderer renderer = new ComboBoxTooltipRenderer(); combo.setRenderer(renderer); - for (String attName : entries) + for (Object attName : entries) { combo.addItem(attName); } @@ -338,6 +346,7 @@ public final class JvSwingUtils combo.setToolTipText(tooltips.get(j)); } } + @Override public void mouseExited(MouseEvent e) { @@ -351,4 +360,29 @@ public final class JvSwingUtils return combo; } + /** + * Adds a titled border to the component in the default font and position (top + * left), optionally witht italic text + * + * @param comp + * @param title + * @param italic + */ + public static TitledBorder createTitledBorder(JComponent comp, + String title, boolean italic) + { + Font font = comp.getFont(); + if (italic) + { + font = new Font(font.getName(), Font.ITALIC, font.getSize()); + } + Border border = BorderFactory.createTitledBorder(""); + TitledBorder titledBorder = BorderFactory.createTitledBorder(border, + title, TitledBorder.LEADING, TitledBorder.DEFAULT_POSITION, + font); + comp.setBorder(titledBorder); + + return titledBorder; + } + }