Search in sources :

Example 1 with SECRET

use of com.redhat.devtools.intellij.tektoncd.tkn.component.field.Workspace.Kind.SECRET in project intellij-tekton by redhat-developer.

the class WorkspacesStep method addListeners.

private void addListeners(String workspace, JPanel parent, int row) {
    JComboBox cmbWorkspaceTypes = (JComboBox) Arrays.stream(parent.getComponents()).filter(component -> component.getName() != null && component.getName().equals("cmbWorkspaceTypes")).findFirst().get();
    JComboBox cmbWorkspaceTypeValues = (JComboBox) Arrays.stream(parent.getComponents()).filter(component -> component.getName() != null && component.getName().equals("cmbWorkspaceTypeValues")).findFirst().get();
    cmbWorkspaceTypes.addItemListener(itemEvent -> {
        if (itemEvent.getStateChange() == 1) {
            // when cmbWorkspaceTypes combo box value changes, a type (secret, emptyDir, pvcs ..) is chosen and cmbWorkspaceTypeValues combo box is filled with all existing resources of that kind
            hidePVCAndVCTComponents(parent);
            Workspace.Kind kindSelected = cmbWorkspaceTypes.getSelectedItem().equals("") ? null : (Workspace.Kind) cmbWorkspaceTypes.getSelectedItem();
            setCmbWorkspaceTypeValues(workspace, kindSelected, cmbWorkspaceTypeValues, row);
            String resource = getSelectedWorkspaceType(cmbWorkspaceTypeValues);
            updateWorkspaceModel(parent, workspace, kindSelected, resource);
            // reset error graphics if error occurred earlier
            if (isValid(workspace, cmbWorkspaceTypes)) {
                changeErrorTextVisibility(false);
                cmbWorkspaceTypes.setBorder(new JComboBox().getBorder());
            }
            fireStateChanged();
        }
    });
    cmbWorkspaceTypeValues.addItemListener(itemEvent -> {
        if (itemEvent.getStateChange() == 1) {
            changeErrorTextVisibility(false);
            // when wsCB combo box value changes, wsTypesCB combo box is filled with all possible options
            String itemSelected = itemEvent.getItem().toString();
            hidePVCAndVCTComponents(parent);
            if (itemSelected.equals(NEW_VCT_TEXT)) {
                changeNewVCTComponentsVisibility(parent, true);
                updateWorkspaceModel(parent, workspace, PVC, "");
            } else if (itemSelected.equals(NEW_PVC_TEXT)) {
                changeNewPVCComponentsVisibility(parent, true);
                updateWorkspaceModel(parent, workspace, PVC, "");
            } else {
                updateWorkspaceModel(parent, workspace, (Workspace.Kind) cmbWorkspaceTypes.getSelectedItem(), itemEvent.getItem().toString());
            }
            fireStateChanged();
        }
    });
}
Also used : Color(java.awt.Color) ActionToRunModel(com.redhat.devtools.intellij.tektoncd.utils.model.actions.ActionToRunModel) Arrays(java.util.Arrays) KIND_VCT(com.redhat.devtools.intellij.tektoncd.Constants.KIND_VCT) TIMES_PLAIN_14(com.redhat.devtools.intellij.tektoncd.ui.UIConstants.TIMES_PLAIN_14) EditorColorsManager(com.intellij.openapi.editor.colors.EditorColorsManager) MatteBorder(javax.swing.border.MatteBorder) NumberFormatter(javax.swing.text.NumberFormatter) Border(javax.swing.border.Border) RED_BORDER_SHOW_ERROR(com.redhat.devtools.intellij.tektoncd.ui.UIConstants.RED_BORDER_SHOW_ERROR) ROW_DIMENSION(com.redhat.devtools.intellij.tektoncd.ui.UIConstants.ROW_DIMENSION) ColorKey(com.intellij.openapi.editor.colors.ColorKey) Map(java.util.Map) TIMES_PLAIN_10(com.redhat.devtools.intellij.tektoncd.ui.UIConstants.TIMES_PLAIN_10) TIMES_PLAIN_12(com.redhat.devtools.intellij.tektoncd.ui.UIConstants.TIMES_PLAIN_12) JComboBox(javax.swing.JComboBox) BorderLayout(java.awt.BorderLayout) Font(java.awt.Font) BorderFactory(javax.swing.BorderFactory) BasicComboBoxRenderer(javax.swing.plaf.basic.BasicComboBoxRenderer) GridBagConstraints(java.awt.GridBagConstraints) Component(java.awt.Component) Dimension(java.awt.Dimension) List(java.util.List) EmptyBorder(javax.swing.border.EmptyBorder) PVC(com.redhat.devtools.intellij.tektoncd.tkn.component.field.Workspace.Kind.PVC) NotNull(org.jetbrains.annotations.NotNull) GridBagLayout(java.awt.GridBagLayout) DocumentAdapter(com.intellij.ui.DocumentAdapter) CONFIGMAP(com.redhat.devtools.intellij.tektoncd.tkn.component.field.Workspace.Kind.CONFIGMAP) JPanel(javax.swing.JPanel) NO_BORDER(com.redhat.devtools.intellij.tektoncd.ui.UIConstants.NO_BORDER) JTextField(javax.swing.JTextField) SpinnerNumberModel(javax.swing.SpinnerNumberModel) SECRET(com.redhat.devtools.intellij.tektoncd.tkn.component.field.Workspace.Kind.SECRET) HashMap(java.util.HashMap) ROW_DIMENSION_ERROR(com.redhat.devtools.intellij.tektoncd.ui.UIConstants.ROW_DIMENSION_ERROR) ArrayList(java.util.ArrayList) Strings(com.google.common.base.Strings) DocumentEvent(javax.swing.event.DocumentEvent) MARGIN_TOP_35(com.redhat.devtools.intellij.tektoncd.ui.UIConstants.MARGIN_TOP_35) BORDER_LABEL_NAME(com.redhat.devtools.intellij.tektoncd.ui.UIConstants.BORDER_LABEL_NAME) ComboBox(com.intellij.openapi.ui.ComboBox) JComponent(javax.swing.JComponent) EMPTYDIR(com.redhat.devtools.intellij.tektoncd.tkn.component.field.Workspace.Kind.EMPTYDIR) JFormattedTextField(javax.swing.JFormattedTextField) JSpinner(javax.swing.JSpinner) JList(javax.swing.JList) Workspace(com.redhat.devtools.intellij.tektoncd.tkn.component.field.Workspace) ListCellRenderer(javax.swing.ListCellRenderer) JLabel(javax.swing.JLabel) Pair(com.intellij.openapi.util.Pair) JComboBox(javax.swing.JComboBox) Workspace(com.redhat.devtools.intellij.tektoncd.tkn.component.field.Workspace)

Aggregations

Strings (com.google.common.base.Strings)1 ColorKey (com.intellij.openapi.editor.colors.ColorKey)1 EditorColorsManager (com.intellij.openapi.editor.colors.EditorColorsManager)1 ComboBox (com.intellij.openapi.ui.ComboBox)1 Pair (com.intellij.openapi.util.Pair)1 DocumentAdapter (com.intellij.ui.DocumentAdapter)1 KIND_VCT (com.redhat.devtools.intellij.tektoncd.Constants.KIND_VCT)1 Workspace (com.redhat.devtools.intellij.tektoncd.tkn.component.field.Workspace)1 CONFIGMAP (com.redhat.devtools.intellij.tektoncd.tkn.component.field.Workspace.Kind.CONFIGMAP)1 EMPTYDIR (com.redhat.devtools.intellij.tektoncd.tkn.component.field.Workspace.Kind.EMPTYDIR)1 PVC (com.redhat.devtools.intellij.tektoncd.tkn.component.field.Workspace.Kind.PVC)1 SECRET (com.redhat.devtools.intellij.tektoncd.tkn.component.field.Workspace.Kind.SECRET)1 BORDER_LABEL_NAME (com.redhat.devtools.intellij.tektoncd.ui.UIConstants.BORDER_LABEL_NAME)1 MARGIN_TOP_35 (com.redhat.devtools.intellij.tektoncd.ui.UIConstants.MARGIN_TOP_35)1 NO_BORDER (com.redhat.devtools.intellij.tektoncd.ui.UIConstants.NO_BORDER)1 RED_BORDER_SHOW_ERROR (com.redhat.devtools.intellij.tektoncd.ui.UIConstants.RED_BORDER_SHOW_ERROR)1 ROW_DIMENSION (com.redhat.devtools.intellij.tektoncd.ui.UIConstants.ROW_DIMENSION)1 ROW_DIMENSION_ERROR (com.redhat.devtools.intellij.tektoncd.ui.UIConstants.ROW_DIMENSION_ERROR)1 TIMES_PLAIN_10 (com.redhat.devtools.intellij.tektoncd.ui.UIConstants.TIMES_PLAIN_10)1 TIMES_PLAIN_12 (com.redhat.devtools.intellij.tektoncd.ui.UIConstants.TIMES_PLAIN_12)1