Example usage for com.jgoodies.binding.adapter BasicComponentFactory createComboBox

List of usage examples for com.jgoodies.binding.adapter BasicComponentFactory createComboBox

Introduction

In this page you can find the example usage for com.jgoodies.binding.adapter BasicComponentFactory createComboBox.

Prototype

public static <E> JComboBox createComboBox(SelectionInList<E> selectionInList, ListCellRenderer cellRenderer) 

Source Link

Document

Creates and returns a non-editable JComboBox that is bound to the given SelectionInList using the given cell renderer.

Usage

From source file:de.dal33t.powerfolder.ui.information.folder.members.MembersExpertTable.java

License:Open Source License

private JComboBox createdEditComboBox(final MembersExpertTableModel model) {
    return BasicComponentFactory.createComboBox(model.getPermissionsListModel(), new DefaultListCellRenderer() {
        @Override/*from ww w.  j a v  a  2  s .c o m*/
        public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected,
                boolean cellHasFocus) {
            Component comp = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);

            if (value instanceof FolderPermission) {
                setText(((FolderPermission) value).getName());
            } else {
                int selectedRow = getSelectedRow();
                FolderMember selectedMember = selectedRow >= 0 ? model.getFolderMemberAt(selectedRow) : null;
                if (selectedMember != null && selectedMember.getMember() == null) {
                    setText(Translation.getTranslation("permissions.folder.no_access"));
                } else {
                    FolderPermission defPerm = model.getDefaultPermission();
                    if (defPerm != null) {
                        setText(defPerm.getName() + " ("
                                + Translation.getTranslation("permissions.folder.default") + ')');
                    } else {
                        setText(Translation.getTranslation("permissions.folder.no_access") + " ("
                                + Translation.getTranslation("permissions.folder.default") + ')');
                    }
                }

            }
            return comp;
        }
    });
}

From source file:de.dal33t.powerfolder.ui.information.folder.members.MembersSimpleTab.java

License:Open Source License

private static JComboBox createdEditComboBox(SelectionInList<FolderPermission> folderPermissions) {
    return BasicComponentFactory.createComboBox(folderPermissions, new DefaultListCellRenderer() {
        @Override//from www.j a  v a 2 s . c  o m
        public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected,
                boolean cellHasFocus) {
            Component comp = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
            if (value instanceof FolderPermission) {
                setText(((FolderPermission) value).getName());
            } else {
                setText(Translation.getTranslation("permissions.folder.no_access"));
            }
            return comp;
        }
    });
}

From source file:de.dal33t.powerfolder.ui.information.folder.members.MembersSimpleTable.java

License:Open Source License

private JComboBox createdEditComboBox(final MembersSimpleTableModel model) {
    return BasicComponentFactory.createComboBox(model.getPermissionsListModel(), new DefaultListCellRenderer() {
        @Override//from w w w  . ja v a 2 s  .  co  m
        public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected,
                boolean cellHasFocus) {
            Component comp = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);

            if (value instanceof FolderPermission) {
                setText(((FolderPermission) value).getName());
            } else {
                int selectedRow = getSelectedRow();
                FolderMember selectedMember = selectedRow >= 0 ? model.getFolderMemberAt(selectedRow) : null;
                if (selectedMember != null && selectedMember.getMember() == null) {
                    setText(Translation.getTranslation("permissions.folder.no_access"));
                } else {
                    FolderPermission defPerm = model.getDefaultPermission();
                    if (defPerm != null) {
                        setText(defPerm.getName() + " ("
                                + Translation.getTranslation("permissions.folder.default") + ')');
                    } else {
                        setText(Translation.getTranslation("permissions.folder.no_access") + " ("
                                + Translation.getTranslation("permissions.folder.default") + ')');
                    }
                }

            }
            return comp;
        }
    });
}

From source file:org.drugis.addis.gui.wizard.AddTreatmentCategorizationWizardStep.java

License:Open Source License

@Override
protected JPanel buildPanel() {
    final FormLayout layout = new FormLayout(
            "left:pref, 3dlu, pref, 3dlu, pref, fill:pref:grow, pref, 3dlu, pref",
            "p, 3dlu, p, 3dlu, p, 3dlu, p, 3dlu, p, 3dlu, p, 3dlu, p");

    final PanelBuilder builder = new PanelBuilder(layout);

    final CellConstraints cc = new CellConstraints();
    int row = 1;//from w w w  . j a v  a2s  . c  o  m
    final int colSpan = layout.getColumnCount();

    final JTextField name = BasicComponentFactory
            .createTextField(d_pm.getModel(TreatmentCategorization.PROPERTY_NAME), false);
    name.setColumns(15);

    builder.addLabel("Drug:", cc.xy(1, row));
    final JComboBox drugSelect = AuxComponentFactory.createBoundComboBox(d_domain.getDrugs(), d_pm.getDrug(),
            true);
    builder.add(drugSelect, cc.xy(3, row));
    builder.add(createNewDrugButton(d_pm.getDrug()), cc.xy(5, row));
    d_validator.add(new NonEmptyValueModel(new ComboBoxSelectionModel(drugSelect)));

    builder.addLabel("Name:", cc.xy(7, row));
    builder.add(name, cc.xy(9, row));

    d_pm.getNameAvailableModel().addValueChangeListener(new PropertyChangeListener() {
        public void propertyChange(PropertyChangeEvent evt) {
            setNameValidBorder(name);
        }
    });

    d_validator.add(new NonEmptyValueModel(d_pm.getModel(TreatmentCategorization.PROPERTY_NAME)));

    row += 2;
    builder.addSeparator("Category labels", cc.xyw(1, row, colSpan));

    row += 2;
    final JComponent categoriesPanel = createCategoriesPanel();
    final JScrollPane catPane = new JScrollPane(categoriesPanel);
    catPane.setPreferredSize(new Dimension(PANEL_WIDTH, 200));
    builder.add(catPane, cc.xyw(1, row, colSpan));

    row += 2;
    builder.addSeparator("Dose criteria", cc.xyw(1, row, colSpan));

    row += 2;
    builder.addLabel("Unit:", cc.xy(1, row));
    builder.add(DoseView.createDoseUnitRow(d_pm.getDoseUnitPresentation(), d_domain.getUnits()),
            cc.xyw(3, row, colSpan - 2));

    row += 2;
    builder.addLabel("Unknown dose:", cc.xy(1, row));
    final JComboBox unknownDoseCombo = BasicComponentFactory
            .createComboBox(new SelectionInList<DecisionTreeNode>((ListModel) d_pm.getOptionsForUnknownDose(),
                    d_pm.getModelForUnknownDose()), new CategoryComboboxRenderer(false));
    builder.add(unknownDoseCombo, cc.xyw(3, row, colSpan - 2));

    row += 2;
    builder.addLabel("Known dose:", cc.xy(1, row));
    final JComboBox knownDoseCombo = BasicComponentFactory
            .createComboBox(new SelectionInList<DecisionTreeNode>((ListModel) d_pm.getOptionsForKnownDose(),
                    d_pm.getModelForKnownDose()), new CategoryComboboxRenderer(false));
    builder.add(knownDoseCombo, cc.xyw(3, row, colSpan - 2));
    return builder.getPanel();
}

From source file:org.drugis.addis.gui.wizard.RangeInputBuilder.java

License:Open Source License

private int rangeRow(final FormLayout layout, final PanelBuilder builder, int row, final RangeEdge range) {
    final CellConstraints cc = new CellConstraints();
    row = LayoutUtil.addRow(layout, row);

    final JButton splitBtn = new JButton("Split Range");
    splitBtn.addActionListener(new ActionListener() {
        public void actionPerformed(final ActionEvent e) {
            final DoseRangeCutOffDialog dialog = new DoseRangeCutOffDialog(d_dialog,
                    d_pm.getParentPresentation(), d_pm.getParent(), range);
            dialog.setVisible(true);//from  w ww. j ava  2 s  . c  om
        }
    });

    builder.add(splitBtn, cc.xy(1, row));
    final String variableName = GUIHelper.humanize(d_pm.getParent().getPropertyName());
    builder.add(new JLabel(RangeEdge.format(variableName, range)), cc.xy(3, row));

    final JComboBox comboBox = BasicComponentFactory.createComboBox(
            new SelectionInList<DecisionTreeNode>(
                    (ListModel) d_pm.getParentPresentation().getOptionsForEdge(range),
                    d_pm.getParentPresentation().getModelForEdge(range)),
            new CategoryComboboxRenderer(d_pm.hasPrevious()));

    builder.add(comboBox, cc.xy(5, row));
    return row;
}

From source file:org.drugis.addis.gui.wizard.SpecifyDoseTypeWizardStep.java

License:Open Source License

@Override
protected JPanel buildPanel() {
    final FormLayout layout = new FormLayout("left:pref, 3dlu, fill:pref:grow", "p");

    final PanelBuilder builder = new PanelBuilder(layout);
    final CellConstraints cc = new CellConstraints();

    final int colSpan = layout.getColumnCount();
    int row = 1;//  w  w w  . j a v a 2  s  .  co  m
    builder.addSeparator("Dose type", cc.xyw(1, row, colSpan));

    row = LayoutUtil.addRow(layout, row);

    builder.addLabel("Fixed dose", cc.xy(1, row));
    final JComboBox fixedCategoryComboBox = BasicComponentFactory
            .createComboBox(new SelectionInList<DecisionTreeNode>((ListModel) d_pm.getOptionsForFixedDose(),
                    d_pm.getModelForFixedDose()), new CategoryComboboxRenderer(false));
    builder.add(fixedCategoryComboBox, cc.xy(3, row));

    row = LayoutUtil.addRow(layout, row);

    builder.addLabel("Flexible dose", cc.xy(1, row));
    final JComboBox flexibleCategoryComboBox = BasicComponentFactory
            .createComboBox(new SelectionInList<DecisionTreeNode>((ListModel) d_pm.getOptionsForFlexibleDose(),
                    d_pm.getModelForFlexibleDose()), new CategoryComboboxRenderer(false));
    builder.add(flexibleCategoryComboBox, cc.xy(3, row));

    return builder.getPanel();
}