Search in sources :

Example 1 with ZapTextField

use of org.zaproxy.zap.utils.ZapTextField in project zaproxy by zaproxy.

the class DynamicFieldsPanel method initialize.

private void initialize() {
    this.setLayout(new GridBagLayout());
    int fieldIndex = 0;
    for (String fieldName : requiredFields) {
        this.add(new JLabel("* " + fieldName + ": "), LayoutHelper.getGBC(0, fieldIndex, 1, 0.0d, 0.0d));
        ZapTextField tf = new ZapTextField();
        this.add(tf, LayoutHelper.getGBC(1, fieldIndex, 1, 1.0d, 0.0d));
        textFields.put(fieldName, tf);
        fieldIndex++;
    }
    for (String fieldName : optionalFields) {
        this.add(new JLabel(fieldName + ": "), LayoutHelper.getGBC(0, fieldIndex, 1, 0.0d, 0.0d));
        ZapTextField tf = new ZapTextField();
        this.add(tf, LayoutHelper.getGBC(1, fieldIndex, 1, 1.0d, 0.0d));
        textFields.put(fieldName, tf);
        fieldIndex++;
    }
}
Also used : GridBagLayout(java.awt.GridBagLayout) ZapTextField(org.zaproxy.zap.utils.ZapTextField) JLabel(javax.swing.JLabel)

Example 2 with ZapTextField

use of org.zaproxy.zap.utils.ZapTextField in project zaproxy by zaproxy.

the class DialogAddToken method getRegexTextField.

protected ZapTextField getRegexTextField() {
    if (regexTextField == null) {
        regexTextField = new ZapTextField(25);
        regexTextField.getDocument().addDocumentListener(new DocumentListener() {

            @Override
            public void removeUpdate(DocumentEvent e) {
                checkAndEnableConfirmButton();
            }

            @Override
            public void insertUpdate(DocumentEvent e) {
                checkAndEnableConfirmButton();
            }

            @Override
            public void changedUpdate(DocumentEvent e) {
                checkAndEnableConfirmButton();
            }

            private void checkAndEnableConfirmButton() {
                setConfirmButtonEnabled(getRegexTextField().getDocument().getLength() > 0);
            }
        });
    }
    return regexTextField;
}
Also used : DocumentListener(javax.swing.event.DocumentListener) ZapTextField(org.zaproxy.zap.utils.ZapTextField) DocumentEvent(javax.swing.event.DocumentEvent)

Example 3 with ZapTextField

use of org.zaproxy.zap.utils.ZapTextField in project zaproxy by zaproxy.

the class AlertViewPanel method getAlertDisplay.

private JPanel getAlertDisplay() {
    if (alertDisplay == null) {
        alertDisplay = new JXPanel();
        alertDisplay.setLayout(new GridBagLayout());
        alertDisplay.setScrollableHeightHint(ScrollableSizeHint.NONE);
        alertDisplay.setName("alertDisplay");
        // Create the labels
        alertEditName = new JComboBox<>();
        alertEditName.setEditable(true);
        nameListModel = new DefaultComboBoxModel<>();
        List<String> allVulns = getAllVulnerabilityNames();
        // Default to blank
        nameListModel.addElement("");
        for (String vuln : allVulns) {
            nameListModel.addElement(vuln);
        }
        alertEditName.setModel(nameListModel);
        alertEditName.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent e) {
                if ("comboBoxChanged".equals(e.getActionCommand())) {
                    Vulnerability v = getVulnerability((String) alertEditName.getSelectedItem());
                    if (v != null) {
                        if (v.getDescription() != null && v.getDescription().length() > 0) {
                            setAlertDescription(v.getDescription());
                        }
                        if (v.getSolution() != null && v.getSolution().length() > 0) {
                            setAlertSolution(v.getSolution());
                        }
                        if (v.getReferences() != null) {
                            StringBuilder sb = new StringBuilder();
                            for (String ref : v.getReferences()) {
                                sb.append(ref);
                                sb.append('\n');
                            }
                            setAlertReference(sb.toString());
                        }
                        alertEditWascId.setValue(v.getWascId());
                    }
                }
            }
        });
        alertEditRisk = new JComboBox<>(Alert.MSG_RISK);
        alertEditConfidence = new JComboBox<>(Alert.MSG_CONFIDENCE);
        alertEditConfidence.setSelectedItem(Alert.MSG_CONFIDENCE[Alert.CONFIDENCE_MEDIUM]);
        alertEditAttack = new ZapTextField();
        paramListModel = new DefaultComboBoxModel<>();
        // Default is empty so user can type anything in
        paramListModel.addElement("");
        alertEditParam = new JComboBox<>();
        alertEditParam.setModel(paramListModel);
        alertEditParam.setEditable(true);
        alertEditEvidence = new ZapTextField();
        alertEditCweId = new ZapNumberSpinner();
        if (alertEditCweId.getEditor() instanceof JSpinner.DefaultEditor) {
            ((JSpinner.DefaultEditor) alertEditCweId.getEditor()).getTextField().setHorizontalAlignment(JTextField.LEFT);
        }
        alertEditWascId = new ZapNumberSpinner();
        if (alertEditWascId.getEditor() instanceof JSpinner.DefaultEditor) {
            ((JSpinner.DefaultEditor) alertEditWascId.getEditor()).getTextField().setHorizontalAlignment(JTextField.LEFT);
        }
        // Read only ones
        alertName = new ZapLabel();
        alertName.setFont(FontUtils.getFont(Font.BOLD));
        alertName.setLineWrap(true);
        alertRisk = new JLabel();
        alertConfidence = new JLabel();
        alertParam = new ZapLabel();
        alertParam.setLineWrap(true);
        alertAttack = new ZapLabel();
        alertAttack.setLineWrap(true);
        alertEvidence = new ZapLabel();
        alertEvidence.setLineWrap(true);
        alertCweId = new ZapLabel();
        alertWascId = new ZapLabel();
        alertSource = new ZapLabel();
        alertSource.setLineWrap(true);
        alertUrl = new ZapLabel();
        alertUrl.setLineWrap(true);
        alertDescription = createZapTextArea();
        JScrollPane descSp = createJScrollPane(Constant.messages.getString("alert.label.desc"));
        descSp.setViewportView(alertDescription);
        alertDescription.addKeyListener(new KeyAdapter() {

            // Change tab key to transfer focus to the next element
            @Override
            public void keyPressed(java.awt.event.KeyEvent evt) {
                if (evt.getKeyCode() == KeyEvent.VK_TAB) {
                    alertDescription.transferFocus();
                }
            }
        });
        alertOtherInfo = createZapTextArea();
        JScrollPane otherSp = createJScrollPane(Constant.messages.getString("alert.label.other"));
        otherSp.setViewportView(alertOtherInfo);
        alertOtherInfo.addKeyListener(new KeyAdapter() {

            // Change tab key to transfer focus to the next element
            @Override
            public void keyPressed(java.awt.event.KeyEvent evt) {
                if (evt.getKeyCode() == KeyEvent.VK_TAB) {
                    alertOtherInfo.transferFocus();
                }
            }
        });
        alertSolution = createZapTextArea();
        JScrollPane solutionSp = createJScrollPane(Constant.messages.getString("alert.label.solution"));
        solutionSp.setViewportView(alertSolution);
        alertSolution.addKeyListener(new KeyAdapter() {

            // Change tab key to transfer focus to the next element
            @Override
            public void keyPressed(java.awt.event.KeyEvent evt) {
                if (evt.getKeyCode() == KeyEvent.VK_TAB) {
                    alertSolution.transferFocus();
                }
            }
        });
        alertReference = createZapTextArea();
        JScrollPane referenceSp = createJScrollPane(Constant.messages.getString("alert.label.ref"));
        referenceSp.setViewportView(alertReference);
        alertReference.addKeyListener(new KeyAdapter() {

            // Change tab key to transfer focus to the next element
            @Override
            public void keyPressed(java.awt.event.KeyEvent evt) {
                if (evt.getKeyCode() == KeyEvent.VK_TAB) {
                    alertReference.transferFocus();
                }
            }
        });
        int gbcRow = 0;
        alertDisplay.add(editable ? alertEditName : alertName, LayoutHelper.getGBC(0, gbcRow, 2, 0, DEFAULT_INSETS));
        // Show a blank label instead of the edit button if already editing
        gbcRow++;
        alertDisplay.add(getUrlLabel(), LayoutHelper.getGBC(0, gbcRow, 1, 0, DEFAULT_INSETS));
        alertDisplay.add(alertUrl, LayoutHelper.getGBC(1, gbcRow, 1, 1, DEFAULT_INSETS));
        gbcRow++;
        alertDisplay.add(getRiskLabel(), LayoutHelper.getGBC(0, gbcRow, 1, 0, DEFAULT_INSETS));
        alertDisplay.add(editable ? alertEditRisk : alertRisk, LayoutHelper.getGBC(1, gbcRow, 1, 1, DEFAULT_INSETS));
        gbcRow++;
        alertDisplay.add(getConfidenceLabel(), LayoutHelper.getGBC(0, gbcRow, 1, 0, DEFAULT_INSETS));
        alertDisplay.add(editable ? alertEditConfidence : alertConfidence, LayoutHelper.getGBC(1, gbcRow, 1, 1, DEFAULT_INSETS));
        gbcRow++;
        alertDisplay.add(getParameterLabel(), LayoutHelper.getGBC(0, gbcRow, 1, 0, DEFAULT_INSETS));
        alertDisplay.add(editable ? alertEditParam : alertParam, LayoutHelper.getGBC(1, gbcRow, 1, 1, DEFAULT_INSETS));
        gbcRow++;
        alertDisplay.add(getAttackLabel(), LayoutHelper.getGBC(0, gbcRow, 1, 0, DEFAULT_INSETS));
        alertDisplay.add(editable ? alertEditAttack : alertAttack, LayoutHelper.getGBC(1, gbcRow, 1, 1, DEFAULT_INSETS));
        gbcRow++;
        alertDisplay.add(getEvidenceLabel(), LayoutHelper.getGBC(0, gbcRow, 1, 0, DEFAULT_INSETS));
        alertDisplay.add(editable ? alertEditEvidence : alertEvidence, LayoutHelper.getGBC(1, gbcRow, 1, 1, DEFAULT_INSETS));
        gbcRow++;
        alertDisplay.add(getCweidLabel(), LayoutHelper.getGBC(0, gbcRow, 1, 0, DEFAULT_INSETS));
        alertDisplay.add(editable ? alertEditCweId : alertCweId, LayoutHelper.getGBC(1, gbcRow, 1, 1, DEFAULT_INSETS));
        gbcRow++;
        alertDisplay.add(getWascidLabel(), LayoutHelper.getGBC(0, gbcRow, 1, 0, DEFAULT_INSETS));
        alertDisplay.add(editable ? alertEditWascId : alertWascId, LayoutHelper.getGBC(1, gbcRow, 1, 1, DEFAULT_INSETS));
        gbcRow++;
        if (!editable) {
            alertDisplay.add(getSourceLabel(), LayoutHelper.getGBC(0, gbcRow, 1, 0, DEFAULT_INSETS));
            alertDisplay.add(alertSource, LayoutHelper.getGBC(1, gbcRow, 1, 1, DEFAULT_INSETS));
            gbcRow++;
        }
        alertDisplay.add(descSp, LayoutHelper.getGBC(0, gbcRow, 2, 1.0D, 1.0D, GridBagConstraints.BOTH, DEFAULT_INSETS));
        gbcRow++;
        alertDisplay.add(otherSp, LayoutHelper.getGBC(0, gbcRow, 2, 1.0D, 1.0D, GridBagConstraints.BOTH, DEFAULT_INSETS));
        gbcRow++;
        alertDisplay.add(solutionSp, LayoutHelper.getGBC(0, gbcRow, 2, 1.0D, 1.0D, GridBagConstraints.BOTH, DEFAULT_INSETS));
        gbcRow++;
        alertDisplay.add(referenceSp, LayoutHelper.getGBC(0, gbcRow, 2, 1.0D, 1.0D, GridBagConstraints.BOTH, DEFAULT_INSETS));
        gbcRow++;
        alertDisplay.add(createAlertTagsPanel(), LayoutHelper.getGBC(0, gbcRow, 2, 1.0D, 1.0D, GridBagConstraints.BOTH, DEFAULT_INSETS));
    }
    return alertDisplay;
}
Also used : JScrollPane(javax.swing.JScrollPane) GridBagLayout(java.awt.GridBagLayout) ActionEvent(java.awt.event.ActionEvent) KeyAdapter(java.awt.event.KeyAdapter) JLabel(javax.swing.JLabel) Vulnerability(org.zaproxy.zap.model.Vulnerability) ZapLabel(org.zaproxy.zap.utils.ZapLabel) KeyEvent(java.awt.event.KeyEvent) ScrollableSizeHint(org.jdesktop.swingx.ScrollableSizeHint) ActionListener(java.awt.event.ActionListener) ZapNumberSpinner(org.zaproxy.zap.utils.ZapNumberSpinner) ZapTextField(org.zaproxy.zap.utils.ZapTextField) JSpinner(javax.swing.JSpinner) JXPanel(org.jdesktop.swingx.JXPanel)

Example 4 with ZapTextField

use of org.zaproxy.zap.utils.ZapTextField in project zaproxy by zaproxy.

the class DialogAddUser method getNameTextField.

protected ZapTextField getNameTextField() {
    if (nameTextField == null) {
        nameTextField = new ZapTextField(25);
        nameTextField.getDocument().addDocumentListener(new DocumentListener() {

            @Override
            public void removeUpdate(DocumentEvent e) {
                checkValidAndEnableConfirmButton();
            }

            @Override
            public void insertUpdate(DocumentEvent e) {
                checkValidAndEnableConfirmButton();
            }

            @Override
            public void changedUpdate(DocumentEvent e) {
                checkValidAndEnableConfirmButton();
            }
        });
    }
    return nameTextField;
}
Also used : DocumentListener(javax.swing.event.DocumentListener) ZapTextField(org.zaproxy.zap.utils.ZapTextField) DocumentEvent(javax.swing.event.DocumentEvent)

Example 5 with ZapTextField

use of org.zaproxy.zap.utils.ZapTextField in project zaproxy by zaproxy.

the class PolicyAllCategoryPanel method getPolicyName.

private ZapTextField getPolicyName() {
    if (policyName == null) {
        policyName = new ZapTextField();
        policyName.setText(policy.getName());
    }
    return policyName;
}
Also used : ZapTextField(org.zaproxy.zap.utils.ZapTextField)

Aggregations

ZapTextField (org.zaproxy.zap.utils.ZapTextField)38 ActionEvent (java.awt.event.ActionEvent)9 ActionListener (java.awt.event.ActionListener)9 GridBagLayout (java.awt.GridBagLayout)7 DocumentEvent (javax.swing.event.DocumentEvent)7 DocumentListener (javax.swing.event.DocumentListener)7 JButton (javax.swing.JButton)6 JPanel (javax.swing.JPanel)6 Insets (java.awt.Insets)5 ImageIcon (javax.swing.ImageIcon)4 JLabel (javax.swing.JLabel)4 KeyEvent (java.awt.event.KeyEvent)3 KeyAdapter (java.awt.event.KeyAdapter)2 JScrollPane (javax.swing.JScrollPane)2 SiteNode (org.parosproxy.paros.model.SiteNode)2 Target (org.zaproxy.zap.model.Target)2 KeyListener (java.awt.event.KeyListener)1 File (java.io.File)1 ProviderException (java.security.ProviderException)1 GroupLayout (javax.swing.GroupLayout)1