Example usage for com.jgoodies.forms.builder DefaultFormBuilder append

List of usage examples for com.jgoodies.forms.builder DefaultFormBuilder append

Introduction

In this page you can find the example usage for com.jgoodies.forms.builder DefaultFormBuilder append.

Prototype

public JLabel append(String textWithMnemonic) 

Source Link

Document

Adds a text label to the panel and proceeds to the next column.

Usage

From source file:net.sf.jabref.external.FileLinksUpgradeWarning.java

License:Open Source License

/**
 * This method presents a dialog box explaining and offering to make the
 * changes. If the user confirms, the changes are performed.
 * @param panel/*w  w  w. j  a  va  2  s .  co  m*/
 * @param pr
 */
@Override
public void performAction(BasePanel panel, ParserResult pr) {
    // Find out which actions should be offered:
    // Only offer to change Preferences if file column is not already visible:
    boolean offerChangeSettings = !Globals.prefs.getBoolean(JabRefPreferences.FILE_COLUMN)
            || !showsFileInGenFields();
    // Only offer to upgrade links if the pdf/ps fields are used:
    boolean offerChangeDatabase = linksFound(pr.getDatabase(), FileLinksUpgradeWarning.FIELDS_TO_LOOK_FOR);
    // If the "file" directory is not set, offer to migrate pdf/ps dir:
    boolean offerSetFileDir = !Globals.prefs.hasKey(GUIGlobals.FILE_FIELD + "Directory")
            && (Globals.prefs.hasKey("pdfDirectory") || Globals.prefs.hasKey("psDirectory"));

    if (!offerChangeDatabase && !offerChangeSettings && !offerSetFileDir) {
        return; // Nothing to do, just return.
    }

    JCheckBox changeSettings = new JCheckBox(
            Globals.lang("Change table column and General fields settings to use the new feature"),
            offerChangeSettings);
    JCheckBox changeDatabase = new JCheckBox(
            Globals.lang("Upgrade old external file links to use the new feature"), offerChangeDatabase);
    JCheckBox setFileDir = new JCheckBox(Globals.lang("Set main external file directory") + ":",
            offerSetFileDir);
    JTextField fileDir = new JTextField(30);
    JCheckBox doNotShowDialog = new JCheckBox(Globals.lang("Do not show these options in the future"), false);

    JPanel message = new JPanel();
    DefaultFormBuilder b = new DefaultFormBuilder(new FormLayout("left:pref", ""), message);
    // Keep the formatting of these lines. Otherwise, strings have to be translated again.
    // See updated JabRef_en.properties modifications by python syncLang.py -s -u
    b.append(new JLabel("<html>" + Globals.lang("This database was written using an older version of JabRef.")
            + "<br>"
            + Globals.lang(
                    "The current version features a new way of handling links to external files.<br>To take advantage of this, your links must be changed into the new format, and<br>JabRef must be configured to show the new links.")
            + "<p>" + Globals.lang("Do you want JabRef to do the following operations?") + "</html>"));
    b.nextLine();
    if (offerChangeSettings) {
        b.append(changeSettings);
        b.nextLine();
    }
    if (offerChangeDatabase) {
        b.append(changeDatabase);
        b.nextLine();
    }
    if (offerSetFileDir) {
        if (Globals.prefs.hasKey("pdfDirectory")) {
            fileDir.setText(Globals.prefs.get("pdfDirectory"));
        } else {
            fileDir.setText(Globals.prefs.get("psDirectory"));
        }
        JPanel pan = new JPanel();
        pan.add(setFileDir);
        pan.add(fileDir);
        JButton browse = new JButton(Globals.lang("Browse"));
        browse.addActionListener(BrowseAction.buildForDir(fileDir));
        pan.add(browse);
        b.append(pan);
        b.nextLine();
    }
    b.append("");
    b.nextLine();
    b.append(doNotShowDialog);

    int answer = JOptionPane.showConfirmDialog(panel.frame(), message, Globals.lang("Upgrade file"),
            JOptionPane.YES_NO_OPTION);
    if (doNotShowDialog.isSelected()) {
        Globals.prefs.putBoolean(JabRefPreferences.SHOW_FILE_LINKS_UPGRADE_WARNING, false);
    }

    if (answer == JOptionPane.YES_OPTION) {
        makeChanges(panel, pr, changeSettings.isSelected(), changeDatabase.isSelected(),
                setFileDir.isSelected() ? fileDir.getText() : null);
    }
}

From source file:net.sf.jabref.external.PushToEmacs.java

License:Open Source License

private void initSettingsPanel() {
    DefaultFormBuilder builder = new DefaultFormBuilder(
            new FormLayout("left:pref, 4dlu, fill:pref, 4dlu, fill:pref", ""));
    builder.append(new JLabel(Globals.lang("Path to gnuclient or emacsclient").concat(":")));
    builder.append(emacsPath);/*from  ww w .  ja va2  s. co  m*/
    BrowseAction action = BrowseAction.buildForFile(emacsPath);
    JButton browse = new JButton(Globals.lang("Browse"));
    browse.addActionListener(action);
    builder.append(browse);
    builder.nextLine();
    builder.append(Globals.lang("Additional parameters").concat(":"));
    builder.append(additionalParams);
    builder.nextLine();
    builder.append(Globals.lang("Use EMACS 23 insertion string").concat(":"));
    builder.append(useEmacs23);
    builder.nextLine();
    builder.append(Globals.lang("Cite command") + ":");
    builder.append(citeCommand);
    settings = builder.getPanel();
}

From source file:net.sf.jabref.external.PushToLatexEditor.java

License:Open Source License

private void initSettingsPanel() {
    DefaultFormBuilder builder = new DefaultFormBuilder(
            new FormLayout("left:pref, 4dlu, fill:pref, 4dlu, fill:pref", ""));
    builder.append(new JLabel(Globals.lang("Path to LatexEditor (LEd.exe)") + ":"));
    builder.append(ledPath);//ww w . ja  v  a  2  s .co  m
    BrowseAction action = BrowseAction.buildForFile(ledPath);
    JButton browse = new JButton(Globals.lang("Browse"));
    browse.addActionListener(action);
    builder.append(browse);
    builder.nextLine();
    builder.append(Globals.lang("Cite command") + ":");
    builder.append(citeCommand);
    settings = builder.getPanel();
}

From source file:net.sf.jabref.external.PushToVim.java

License:Open Source License

private void initSettingsPanel() {
    DefaultFormBuilder builder = new DefaultFormBuilder(
            new FormLayout("left:pref, 4dlu, fill:pref, 4dlu, fill:pref", ""));

    builder.append(new JLabel(Globals.lang("Path to Vim") + ":"));
    builder.append(vimPath);//from   www  .  j  ava2s  .  c om
    BrowseAction action = BrowseAction.buildForFile(vimPath);
    JButton browse = new JButton(Globals.lang("Browse"));
    browse.addActionListener(action);
    builder.append(browse);
    builder.nextLine();
    builder.append(Globals.lang("Vim Server Name") + ":");
    builder.append(vimServer);
    builder.nextLine();
    builder.append(Globals.lang("Cite command") + ":");
    builder.append(citeCommand);
    settings = builder.getPanel();
}

From source file:net.sf.jabref.external.PushToWinEdt.java

License:Open Source License

private void initSettingsPanel() {
    DefaultFormBuilder builder = new DefaultFormBuilder(
            new FormLayout("left:pref, 4dlu, fill:pref, 4dlu, fill:pref", ""));
    builder.append(new JLabel(Globals.lang("Path to WinEdt.exe") + ":"));
    builder.append(winEdtPath);/*from  ww  w .  j av  a  2  s.  c  om*/
    BrowseAction action = BrowseAction.buildForFile(winEdtPath);
    JButton browse = new JButton(Globals.lang("Browse"));
    browse.addActionListener(action);
    builder.append(browse);
    builder.nextLine();
    builder.append(Globals.lang("Cite command") + ":");
    builder.append(citeCommand);
    settings = builder.getPanel();
}

From source file:net.sf.jabref.ExternalTab.java

License:Open Source License

public ExternalTab(JabRefFrame frame, PrefsDialog3 prefsDiag, JabRefPreferences prefs, HelpDialog helpDialog) {
    _prefs = prefs;/* w  w  w .java  2  s .  c  o m*/
    _frame = frame;
    setLayout(new BorderLayout());

    psDir = new JTextField(25);
    pdfDir = new JTextField(25);
    fileDir = new JTextField(25);
    bibLocationAsFileDir = new JCheckBox(Globals.lang("Allow file links relative to each bib file's location"));
    bibLocAsPrimaryDir = new JCheckBox(Globals.lang("Use the bib file location as primary file directory"));
    bibLocAsPrimaryDir.setToolTipText(Globals.lang("When downloading files, or moving linked files to the "
            + "file directory, prefer the bib file location rather than the file directory set above"));
    bibLocationAsFileDir.addChangeListener(new ChangeListener() {

        @Override
        public void stateChanged(ChangeEvent changeEvent) {
            bibLocAsPrimaryDir.setEnabled(bibLocationAsFileDir.isSelected());
        }
    });
    JButton editFileTypes = new JButton(Globals.lang("Manage external file types"));
    runAutoFileSearch = new JCheckBox(
            Globals.lang("When opening file link, search for matching file if no link is defined"));
    allowFileAutoOpenBrowse = new JCheckBox(
            Globals.lang("Automatically open browse dialog when creating new file link"));
    regExpTextField = new JTextField(25);
    useRegExpComboBox = new JRadioButton(Globals.lang("Use Regular Expression Search"));
    ItemListener regExpListener = new ItemListener() {

        @Override
        public void itemStateChanged(ItemEvent e) {
            regExpTextField.setEditable(useRegExpComboBox.isSelected());
        }
    };
    useRegExpComboBox.addItemListener(regExpListener);

    editFileTypes.addActionListener(ExternalFileTypeEditor.getAction(prefsDiag));

    ButtonGroup bg = new ButtonGroup();
    bg.add(matchExactKeyOnly);
    bg.add(matchStartsWithKey);
    bg.add(useRegExpComboBox);

    BrowseAction browse;

    FormLayout layout = new FormLayout("1dlu, 8dlu, left:pref, 4dlu, fill:150dlu, 4dlu, fill:pref", "");

    DefaultFormBuilder builder = new DefaultFormBuilder(layout);

    builder.appendSeparator(Globals.lang("External file links"));
    JPanel pan = new JPanel();
    builder.append(pan);
    /**
     * Fix for [ 1749613 ] About translation
     * 
     * https://sourceforge.net/tracker/index.php?func=detail&aid=1749613&group_id=92314&atid=600306
     * 
     * Cannot really use %0 to refer to the file type, since this ruins translation.
     */
    JLabel lab = new JLabel(Globals.lang("Main file directory") + ':');
    builder.append(lab);
    builder.append(fileDir);
    browse = BrowseAction.buildForDir(_frame, fileDir);
    builder.append(new JButton(browse));
    builder.nextLine();
    builder.append(new JPanel());
    builder.append(bibLocationAsFileDir, 3);
    builder.nextLine();
    builder.append(new JPanel());
    builder.append(bibLocAsPrimaryDir, 3);
    builder.nextLine();
    builder.append(new JPanel());
    builder.append(matchStartsWithKey, 3);
    builder.nextLine();
    builder.append(new JPanel());
    builder.append(matchExactKeyOnly, 3);
    builder.nextLine();
    builder.append(new JPanel());
    builder.append(useRegExpComboBox);
    builder.append(regExpTextField);

    HelpAction helpAction = new HelpAction(helpDialog, GUIGlobals.regularExpressionSearchHelp,
            Globals.lang("Help on Regular Expression Search"), GUIGlobals.getIconUrl("helpSmall"));
    builder.append(helpAction.getIconButton());
    builder.nextLine();
    builder.append(new JPanel());
    builder.append(runAutoFileSearch, 3);
    builder.nextLine();
    builder.append(new JPanel());
    builder.append(allowFileAutoOpenBrowse);
    builder.nextLine();

    builder.appendSeparator(Globals.lang("Sending of emails"));
    builder.append(new JPanel());
    lab = new JLabel(Globals.lang("Subject for sending an email with references").concat(":"));
    builder.append(lab);
    emailSubject = new JTextField(25);
    builder.append(emailSubject);
    builder.nextLine();
    builder.append(new JPanel());
    openFoldersOfAttachedFiles = new JCheckBox(Globals.lang("Automatically open folders of attached files"));
    builder.append(openFoldersOfAttachedFiles);
    builder.nextLine();

    builder.appendSeparator(Globals.lang("Legacy file fields"));
    pan = new JPanel();
    builder.append(pan);
    builder.append(new JLabel("<html>" + Globals.lang("Note that these settings are used for the legacy "
            + "<b>pdf</b> and <b>ps</b> fields only.<br>For most users, setting the <b>Main file directory</b> "
            + "above should be sufficient.") + "</html>"), 5);
    builder.nextLine();
    pan = new JPanel();
    builder.append(pan);
    lab = new JLabel(Globals.lang("Main PDF directory") + ':');
    builder.append(lab);
    builder.append(pdfDir);
    browse = BrowseAction.buildForDir(_frame, pdfDir);
    builder.append(new JButton(browse));
    builder.nextLine();

    pan = new JPanel();
    builder.append(pan);
    lab = new JLabel(Globals.lang("Main PS directory") + ':');
    builder.append(lab);
    builder.append(psDir);
    browse = BrowseAction.buildForDir(_frame, psDir);
    builder.append(new JButton(browse));
    builder.nextLine();
    builder.appendSeparator(Globals.lang("External programs"));

    builder.nextLine();

    JPanel butpan = new JPanel();
    butpan.setLayout(new GridLayout(2, 3));
    addSettingsButton(new PushToLyx(), butpan);
    addSettingsButton(new PushToEmacs(), butpan);
    addSettingsButton(new PushToWinEdt(), butpan);
    addSettingsButton(new PushToVim(), butpan);
    addSettingsButton(new PushToLatexEditor(), butpan);
    addSettingsButton(new PushToTeXstudio(), butpan);
    builder.append(new JPanel());
    builder.append(butpan, 3);

    builder.nextLine();
    builder.append(pan);
    builder.append(editFileTypes);

    pan = builder.getPanel();
    pan.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
    add(pan, BorderLayout.CENTER);

}

From source file:net.sf.jabref.FileTab.java

License:Open Source License

private void createAdFieldOrderBg(DefaultFormBuilder builder, ButtonGroup bg, JTextField jtf) {
    //for LWang_AdjustableFieldOrder

    for (Enumeration<AbstractButton> _it = bg.getElements(); _it.hasMoreElements();) {
        builder.append(_it.nextElement());
        builder.nextLine();/*w  w  w  .  j  av  a 2s  .  c o m*/
    }
    builder.append(jtf);
    builder.nextLine();
}

From source file:net.sf.jabref.groups.GroupDialog.java

License:Open Source License

/**
 * Shows a group add/edit dialog./*from  ww w . j av  a 2  s. c  om*/
 *
 * @param jabrefFrame
 *            The parent frame.
 * @param basePanel
 *            The default grouping field.
 * @param editedGroup
 *            The group being edited, or null if a new group is to be
 *            created.
 */
public GroupDialog(JabRefFrame jabrefFrame, BasePanel basePanel, AbstractGroup editedGroup) {
    super(jabrefFrame, Globals.lang("Edit group"), true);
    m_basePanel = basePanel;
    m_editedGroup = editedGroup;

    // set default values (overwritten if editedGroup != null)
    m_kgSearchField.setText(jabrefFrame.prefs().get(JabRefPreferences.GROUPS_DEFAULT_FIELD));

    // configure elements
    ButtonGroup groupType = new ButtonGroup();
    groupType.add(m_explicitRadioButton);
    groupType.add(m_keywordsRadioButton);
    groupType.add(m_searchRadioButton);
    ButtonGroup groupHierarchy = new ButtonGroup();
    groupHierarchy.add(m_independentButton);
    groupHierarchy.add(m_intersectionButton);
    groupHierarchy.add(m_unionButton);
    m_description.setVerticalAlignment(SwingConstants.TOP);
    getRootPane().setDefaultButton(m_ok);

    // build individual layout cards for each group
    m_optionsPanel.setLayout(m_optionsLayout);
    // ... for explicit group
    m_optionsPanel.add(new JPanel(), "" + GroupDialog.INDEX_EXPLICITGROUP);
    // ... for keyword group
    FormLayout layoutKG = new FormLayout("right:pref, 4dlu, fill:1dlu:grow, 2dlu, left:pref");
    DefaultFormBuilder builderKG = new DefaultFormBuilder(layoutKG);
    builderKG.append(Globals.lang("Field"));
    builderKG.append(m_kgSearchField, 3);
    builderKG.nextLine();
    builderKG.append(Globals.lang("Keyword"));
    builderKG.append(m_kgSearchTerm);
    builderKG.append(new FieldContentSelector(jabrefFrame, m_basePanel, this, m_kgSearchTerm,
            m_basePanel.metaData(), null, true, ", "));
    builderKG.nextLine();
    builderKG.append(m_kgCaseSensitive, 3);
    builderKG.nextLine();
    builderKG.append(m_kgRegExp, 3);
    m_optionsPanel.add(builderKG.getPanel(), "" + GroupDialog.INDEX_KEYWORDGROUP);
    // ... for search group
    FormLayout layoutSG = new FormLayout("right:pref, 4dlu, fill:1dlu:grow");
    DefaultFormBuilder builderSG = new DefaultFormBuilder(layoutSG);
    builderSG.append(Globals.lang("Search expression"));
    builderSG.append(m_sgSearchExpression);
    builderSG.nextLine();
    builderSG.append(m_sgCaseSensitive, 3);
    builderSG.nextLine();
    builderSG.append(m_sgRegExp, 3);
    m_optionsPanel.add(builderSG.getPanel(), "" + GroupDialog.INDEX_SEARCHGROUP);
    // ... for buttons panel
    FormLayout layoutBP = new FormLayout("pref, 4dlu, pref", "p");
    layoutBP.setColumnGroups(new int[][] { { 1, 3 } });
    ButtonBarBuilder builderBP = new ButtonBarBuilder();
    builderBP.addGlue();
    builderBP.addButton(m_ok);
    JButton m_cancel = new JButton(Globals.lang("Cancel"));
    builderBP.addButton(m_cancel);
    builderBP.addGlue();
    builderBP.getPanel().setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));

    // create layout
    FormLayout layoutAll = new FormLayout("right:pref, 4dlu, fill:600px, 4dlu, fill:pref",
            "p, 3dlu, p, 3dlu, p, 0dlu, p, 0dlu, p, 3dlu, p, 3dlu, p, " + "0dlu, p, 0dlu, p, 3dlu, p, 3dlu, "
                    + "p, 3dlu, p, 3dlu, top:80dlu, 9dlu, p, 9dlu, p");

    DefaultFormBuilder builderAll = new DefaultFormBuilder(layoutAll);
    builderAll.border(Borders.DIALOG);
    builderAll.appendSeparator(Globals.lang("General"));
    builderAll.nextLine();
    builderAll.nextLine();
    builderAll.append(Globals.lang("Name"));
    builderAll.append(m_name);
    builderAll.nextLine();
    builderAll.nextLine();
    builderAll.append(m_explicitRadioButton, 5);
    builderAll.nextLine();
    builderAll.nextLine();
    builderAll.append(m_keywordsRadioButton, 5);
    builderAll.nextLine();
    builderAll.nextLine();
    builderAll.append(m_searchRadioButton, 5);
    builderAll.nextLine();
    builderAll.nextLine();
    builderAll.appendSeparator(Globals.lang("Hierarchical context")); // JZTODO lyrics
    builderAll.nextLine();
    builderAll.nextLine();
    builderAll.append(m_independentButton, 5);
    builderAll.nextLine();
    builderAll.nextLine();
    builderAll.append(m_intersectionButton, 5);
    builderAll.nextLine();
    builderAll.nextLine();
    builderAll.append(m_unionButton, 5);
    builderAll.nextLine();
    builderAll.nextLine();
    builderAll.appendSeparator(Globals.lang("Options"));
    builderAll.nextLine();
    builderAll.nextLine();
    builderAll.append(m_optionsPanel, 5);
    builderAll.nextLine();
    builderAll.nextLine();
    builderAll.appendSeparator(Globals.lang("Description"));
    builderAll.nextLine();
    builderAll.nextLine();
    JScrollPane sp = new JScrollPane(m_description, ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
            ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED) {

        @Override
        public Dimension getPreferredSize() {
            return getMaximumSize();
        }
    };
    builderAll.append(sp, 5);
    builderAll.nextLine();
    builderAll.nextLine();
    builderAll.appendSeparator();
    builderAll.nextLine();
    builderAll.nextLine();
    //CellConstraints cc = new CellConstraints();
    //builderAll.add(builderBP.getPanel(), cc.xyw(builderAll.getColumn(),
    //                builderAll.getRow(), 5, "center, fill"));

    Container cp = getContentPane();
    //cp.setLayout(new BoxLayout(cp, BoxLayout.Y_AXIS));
    cp.add(builderAll.getPanel(), BorderLayout.CENTER);
    cp.add(builderBP.getPanel(), BorderLayout.SOUTH);
    pack();
    setResizable(false);
    updateComponents();
    setLayoutForSelectedGroup();
    Util.placeDialog(this, jabrefFrame);

    // add listeners
    ItemListener radioButtonItemListener = new ItemListener() {

        @Override
        public void itemStateChanged(ItemEvent e) {
            setLayoutForSelectedGroup();
            updateComponents();
        }
    };
    m_explicitRadioButton.addItemListener(radioButtonItemListener);
    m_keywordsRadioButton.addItemListener(radioButtonItemListener);
    m_searchRadioButton.addItemListener(radioButtonItemListener);

    Action cancelAction = new AbstractAction() {

        @Override
        public void actionPerformed(ActionEvent e) {
            dispose();
        }
    };
    m_cancel.addActionListener(cancelAction);
    builderAll.getPanel().getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW)
            .put(Globals.prefs.getKey("Close dialog"), "close");
    builderAll.getPanel().getActionMap().put("close", cancelAction);

    m_ok.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent e) {
            m_okPressed = true;
            if (m_explicitRadioButton.isSelected()) {
                if (m_editedGroup instanceof ExplicitGroup) {
                    // keep assignments from possible previous ExplicitGroup
                    m_resultingGroup = m_editedGroup.deepCopy();
                    m_resultingGroup.setName(m_name.getText().trim());
                    m_resultingGroup.setHierarchicalContext(getContext());
                } else {
                    m_resultingGroup = new ExplicitGroup(m_name.getText().trim(), getContext());
                    if (m_editedGroup != null) {
                        addPreviousEntries();
                    }
                }
            } else if (m_keywordsRadioButton.isSelected()) {
                // regex is correct, otherwise OK would have been disabled
                // therefore I don't catch anything here
                m_resultingGroup = new KeywordGroup(m_name.getText().trim(), m_kgSearchField.getText().trim(),
                        m_kgSearchTerm.getText().trim(), m_kgCaseSensitive.isSelected(),
                        m_kgRegExp.isSelected(), getContext());
                if (((m_editedGroup instanceof ExplicitGroup) || (m_editedGroup instanceof SearchGroup))
                        && m_resultingGroup.supportsAdd()) {
                    addPreviousEntries();
                }
            } else if (m_searchRadioButton.isSelected()) {
                try {
                    // regex is correct, otherwise OK would have been
                    // disabled
                    // therefore I don't catch anything here
                    m_resultingGroup = new SearchGroup(m_name.getText().trim(),
                            m_sgSearchExpression.getText().trim(), isCaseSensitive(), isRegex(), getContext());
                } catch (Exception e1) {
                    // should never happen
                }
            }
            dispose();
        }
    });

    CaretListener caretListener = new CaretListener() {

        @Override
        public void caretUpdate(CaretEvent e) {
            updateComponents();
        }
    };

    ItemListener itemListener = new ItemListener() {

        @Override
        public void itemStateChanged(ItemEvent e) {
            updateComponents();
        }
    };

    m_name.addCaretListener(caretListener);
    m_kgSearchField.addCaretListener(caretListener);
    m_kgSearchTerm.addCaretListener(caretListener);
    m_kgCaseSensitive.addItemListener(itemListener);
    m_kgRegExp.addItemListener(itemListener);
    m_sgSearchExpression.addCaretListener(caretListener);
    m_sgRegExp.addItemListener(itemListener);
    m_sgCaseSensitive.addItemListener(itemListener);

    // configure for current type
    if (editedGroup instanceof KeywordGroup) {
        KeywordGroup group = (KeywordGroup) editedGroup;
        m_name.setText(group.getName());
        m_kgSearchField.setText(group.getSearchField());
        m_kgSearchTerm.setText(group.getSearchExpression());
        m_kgCaseSensitive.setSelected(group.isCaseSensitive());
        m_kgRegExp.setSelected(group.isRegExp());
        m_keywordsRadioButton.setSelected(true);
        setContext(editedGroup.getHierarchicalContext());
    } else if (editedGroup instanceof SearchGroup) {
        SearchGroup group = (SearchGroup) editedGroup;
        m_name.setText(group.getName());
        m_sgSearchExpression.setText(group.getSearchExpression());
        m_sgCaseSensitive.setSelected(group.isCaseSensitive());
        m_sgRegExp.setSelected(group.isRegExp());
        m_searchRadioButton.setSelected(true);
        setContext(editedGroup.getHierarchicalContext());
    } else if (editedGroup instanceof ExplicitGroup) {
        m_name.setText(editedGroup.getName());
        m_explicitRadioButton.setSelected(true);
        setContext(editedGroup.getHierarchicalContext());
    } else { // creating new group -> defaults!
        m_explicitRadioButton.setSelected(true);
        setContext(GroupHierarchyType.INDEPENDENT);
    }
}

From source file:net.sf.jabref.groups.GroupsPrefsTab.java

License:Open Source License

public GroupsPrefsTab(JabRefPreferences prefs) {
    this.prefs = prefs;

    keywordSeparator.addFocusListener(new FocusListener() {

        @Override//from  ww  w .j  a  v  a 2  s  . c  o m
        public void focusGained(FocusEvent e) {
            keywordSeparator.selectAll();
        }

        @Override
        public void focusLost(FocusEvent e) {
            // deselection is automatic
        }
    });

    FormLayout layout = new FormLayout("9dlu, pref", //500px",
            "p, 3dlu, p, 3dlu, p, 3dlu, p, 3dlu, p, 3dlu, p, 3dlu, p, 3dlu, " + "p, 3dlu, p");
    DefaultFormBuilder builder = new DefaultFormBuilder(layout);
    builder.appendSeparator(Globals.lang("View"));
    builder.nextLine();
    builder.nextLine();
    builder.nextColumn();
    builder.append(showIcons);
    builder.nextLine();
    builder.nextLine();
    builder.nextColumn();
    builder.append(showDynamic);
    builder.nextLine();
    builder.nextLine();
    builder.nextColumn();
    builder.append(expandTree);
    builder.nextLine();
    builder.nextLine();
    builder.nextColumn();
    builder.append(autoShow);
    builder.nextLine();
    builder.nextLine();
    builder.nextColumn();
    builder.append(autoHide);
    builder.nextLine();
    builder.nextLine();
    builder.nextColumn();
    builder.append(autoAssignGroup);
    builder.nextLine();
    builder.nextLine();
    builder.appendSeparator(Globals.lang("Dynamic groups"));
    builder.nextLine();
    builder.nextLine();
    builder.nextColumn();
    // build subcomponent
    FormLayout layout2 = new FormLayout("left:pref, 2dlu, left:pref", "p, 3dlu, p");
    DefaultFormBuilder builder2 = new DefaultFormBuilder(layout2);
    builder2.append(new JLabel(Globals.lang("Default grouping field") + ":"));
    builder2.append(groupingField);
    builder2.nextLine();
    builder2.nextLine();
    builder2.append(new JLabel(Globals.lang("When adding/removing keywords, separate them by") + ":"));
    builder2.append(keywordSeparator);
    builder.append(builder2.getPanel());

    setLayout(new BorderLayout());
    JPanel panel = builder.getPanel();
    panel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
    add(panel, BorderLayout.CENTER);
}

From source file:net.sf.jabref.gui.AttachFileDialog.java

License:Open Source License

private void initGui() {

    final ExternalFilePanel extPan = new ExternalFilePanel(fieldName, metaData, entry, editor,
            Util.getFileFilterForField(fieldName));

    browse.addActionListener(new ActionListener() {

        @Override/*  w  w w . j  a  v a  2  s . c  om*/
        public void actionPerformed(ActionEvent event) {
            extPan.browseFile(fieldName, editor);
        }
    });

    download.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent event) {
            extPan.downLoadFile(fieldName, editor, ths);
        }
    });

    auto.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent event) {
            JabRefExecutorService.INSTANCE.execute(extPan.autoSetFile(fieldName, editor));
        }
    });

    ActionListener okListener = new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent event) {
            cancelled = false;
            dispose();
        }
    };

    ok.addActionListener(okListener);
    ((JTextField) editor.getTextComponent()).addActionListener(okListener);

    AbstractAction cancelListener = new AbstractAction() {

        @Override
        public void actionPerformed(ActionEvent event) {
            cancelled = true;
            dispose();
        }
    };

    cancel.addActionListener(cancelListener);
    editor.getTextComponent().getInputMap().put(Globals.prefs.getKey("Close dialog"), "close");
    editor.getTextComponent().getActionMap().put("close", cancelListener);

    FormLayout layout = new FormLayout("fill:160dlu, 4dlu, fill:pref", "");
    DefaultFormBuilder builder = new DefaultFormBuilder(layout);
    //builder.append(Util.nCase(fieldName));//(editor.getLabel());
    builder.appendSeparator(StringUtil.nCase(fieldName));
    builder.append(editor.getTextComponent());
    builder.append(browse);

    ButtonBarBuilder bb = new ButtonBarBuilder();
    bb.addButton(download);
    bb.addButton(auto);
    builder.nextLine();
    builder.append(bb.getPanel());
    builder.nextLine();
    builder.appendSeparator();

    JPanel main = builder.getPanel();

    main.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));

    bb = new ButtonBarBuilder();
    bb.addGlue();
    bb.addButton(ok);
    bb.addButton(cancel);
    bb.addGlue();

    getContentPane().add(main, BorderLayout.CENTER);
    getContentPane().add(bb.getPanel(), BorderLayout.SOUTH);
    pack();
}