X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Futils%2Fui%2FConfigEditor.java;h=b384c9dc49631f37d5998385f745408570a1043c;hb=d18e136e69f03efe5fd6b8e6536cf8ad9033da1a;hp=b2182adb34fd689717cbca9d3ea147f348d1842f;hpb=22f24988413c71e7240e0a32994160b3ffa54c57;p=fanfix.git diff --git a/src/be/nikiroo/utils/ui/ConfigEditor.java b/src/be/nikiroo/utils/ui/ConfigEditor.java index b2182ad..b384c9d 100644 --- a/src/be/nikiroo/utils/ui/ConfigEditor.java +++ b/src/be/nikiroo/utils/ui/ConfigEditor.java @@ -1,6 +1,7 @@ package be.nikiroo.utils.ui; import java.awt.BorderLayout; +import java.awt.Color; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.IOException; @@ -12,8 +13,11 @@ import javax.swing.JComponent; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JScrollPane; +import javax.swing.JTextArea; import javax.swing.border.EmptyBorder; +import javax.swing.border.TitledBorder; +import be.nikiroo.utils.StringUtils; import be.nikiroo.utils.resources.Bundle; import be.nikiroo.utils.resources.MetaInfo; @@ -52,12 +56,13 @@ public class ConfigEditor> extends JPanel { this.add(scroll, BorderLayout.CENTER); main.setLayout(new BoxLayout(main, BoxLayout.PAGE_AXIS)); - + main.setBorder(new EmptyBorder(5, 5, 5, 5)); + main.add(new JLabel(title)); items = MetaInfo.getItems(type, bundle); for (MetaInfo item : items) { - addItem(main, item); + addItem(main, item, 0); } main.add(createButton("Reset", new ActionListener() { @@ -98,14 +103,32 @@ public class ConfigEditor> extends JPanel { })); } - private void addItem(JPanel main, MetaInfo item) { + private void addItem(JPanel main, MetaInfo item, int nhgap) { if (item.isGroup()) { - // TODO + JPanel bpane = new JPanel(new BorderLayout()); + bpane.setBorder(new TitledBorder(item.getName())); + JPanel pane = new JPanel(); + pane.setBorder(new EmptyBorder(5, 5, 5, 5)); + pane.setLayout(new BoxLayout(pane, BoxLayout.Y_AXIS)); + + String info = item.getDescription(); + info = StringUtils.justifyTexts(info, 100); + if (!info.isEmpty()) { + JTextArea text = new JTextArea(info); + text.setWrapStyleWord(true); + text.setOpaque(false); + text.setForeground(new Color(100, 100, 180)); + text.setEditable(false); + pane.add(text); + } + for (MetaInfo subitem : item) { - addItem(main, subitem); + addItem(pane, subitem, nhgap + 11); } + bpane.add(pane, BorderLayout.CENTER); + main.add(bpane); } else { - main.add(new ConfigItem(item)); + main.add(new ConfigItem(item, nhgap)); } }