private void init()

in src/components/src/main/java/org/apache/jmeter/sampler/gui/TestActionGui.java [181:285]


    private void init() { // WARNING: called from ctor so must not be overridden (i.e. must be private or final)
        setLayout(new VerticalLayout(5, VerticalLayout.BOTH, VerticalLayout.TOP));
        setBorder(makeBorder());
        add(makeTitlePanel());

        ButtonGroup actionButtons = new ButtonGroup();
        pauseButton = new JRadioButton(PAUSE_ACTION_LABEL, true);
        pauseButton.addChangeListener(evt -> {
            if (pauseButton.isSelected()) {
                action = TestAction.PAUSE;
                durationField.setEnabled(true);
                targetBox.setEnabled(false);
            }
        });
        stopButton = new JRadioButton(STOP_ACTION_LABEL, false);
        stopButton.addChangeListener(evt -> {
            if (stopButton.isSelected()) {
                action = TestAction.STOP;
                durationField.setEnabled(false);
                targetBox.setEnabled(true);
            }
        });
        stopNowButton = new JRadioButton(STOP_NOW_ACTION_LABEL, false);
        stopNowButton.addChangeListener(evt -> {
            if (stopNowButton.isSelected()) {
                action = TestAction.STOP_NOW;
                durationField.setEnabled(false);
                targetBox.setEnabled(true);
            }
        });

        restartNextThreadLoopButton = new JRadioButton(RESTART_NEXT_THREAD_LOOP_LABEL, false);
        restartNextThreadLoopButton.addChangeListener(evt -> {
            if (restartNextThreadLoopButton.isSelected()) {
                action = TestAction.RESTART_NEXT_LOOP;
                durationField.setEnabled(false);
                targetBox.setSelectedIndex(TestAction.THREAD);
                targetBox.setEnabled(false);
            }
        });

        startNextIterationOfCurrentLoopButton = new JRadioButton(START_NEXT_ITERATION_CURRENT_LOOP_ACTION, false);
        startNextIterationOfCurrentLoopButton.addChangeListener(evt -> {
            if (startNextIterationOfCurrentLoopButton.isSelected()) {
                action = TestAction.START_NEXT_ITERATION_CURRENT_LOOP;
                durationField.setEnabled(false);
                targetBox.setSelectedIndex(TestAction.THREAD);
                targetBox.setEnabled(false);
            }
        });

        breakLoopButton = new JRadioButton(BREAK_CURRENT_LOOP_ACTION, false);
        breakLoopButton.addChangeListener(evt -> {
            if (breakLoopButton.isSelected()) {
                action = TestAction.BREAK_CURRENT_LOOP;
                durationField.setEnabled(false);
                targetBox.setSelectedIndex(TestAction.THREAD);
                targetBox.setEnabled(false);
            }
        });

        // Duration
        durationField = new JLabeledTextField(DURATION_LABEL, 15);
        durationField.setText(""); // $NON-NLS-1$


        actionButtons.add(pauseButton);
        actionButtons.add(stopButton);
        actionButtons.add(stopNowButton);
        actionButtons.add(restartNextThreadLoopButton);
        actionButtons.add(startNextIterationOfCurrentLoopButton);
        actionButtons.add(breakLoopButton);

        // Action
        JPanel actionOnThreadPanel = new JPanel(new GridLayout(3, 2));
        actionOnThreadPanel.setBorder(BorderFactory.createTitledBorder(ACTION_ON_THREAD_LABEL)); //$NON-NLS-1$
        actionOnThreadPanel.add(pauseButton);
        actionOnThreadPanel.add(durationField);
        actionOnThreadPanel.add(restartNextThreadLoopButton);
        actionOnThreadPanel.add(startNextIterationOfCurrentLoopButton);
        actionOnThreadPanel.add(breakLoopButton);


        // Action
        JPanel actionOnTestOrThreadPanel = new JPanel(new GridLayout(2, 2));
        actionOnTestOrThreadPanel.setBorder(BorderFactory.createTitledBorder(ACTION_ON_THREAD_TEST_LABEL)); //$NON-NLS-1$
        actionOnTestOrThreadPanel.add(stopButton);
        actionOnTestOrThreadPanel.add(stopNowButton);
        actionOnTestOrThreadPanel.add(new JLabel(TARGET_LABEL));
        DefaultComboBoxModel<String> targetModel = new DefaultComboBoxModel<>();
        targetModel.addElement(THREAD_TARGET_LABEL);
        targetModel.addElement(TEST_TARGET_LABEL);
        targetBox = new JComboBox<>(targetModel);
        targetBox.addActionListener(evt -> {
            if (((String) targetBox.getSelectedItem()).equals(THREAD_TARGET_LABEL)) {
                target = TestAction.THREAD;
            } else {
                target = TestAction.TEST;
            }
        });
        actionOnTestOrThreadPanel.add(targetBox);

        add(actionOnThreadPanel);
        add(actionOnTestOrThreadPanel);
    }