Project

General

Profile

« Previous | Next » 

Revision 4a1bb0e9

Added by Andreas Kohlbecker almost 7 years ago

#6169 configure the enable state of fields in a fieldGroup individually

View differences:

src/main/java/eu/etaxonomy/cdm/vaadin/view/registration/RegistrationPopupEditor.java
45 45
    @Autowired
46 46
    private SelectFieldFactory selectFieldFactory;
47 47

  
48
    TextField identifierField;
49
    TextField specificIdentifierField;
50

  
48 51
    public RegistrationPopupEditor() {
49 52
        super(new FormLayout(), Registration.class);
50 53
    }
......
59 62
        form.setSpacing(true);
60 63
        form.setMargin(true);
61 64

  
62
        TextField identifierField = new TextField("Identifier");
65
        identifierField = new TextField("Identifier");
63 66
        addField(identifierField, "identifier");
64
        identifierField.setEnabled(false);
65 67

  
66
        TextField specificIdentifierField = new TextField("Specific Identifier");
68
        specificIdentifierField = new TextField("Specific Identifier");
67 69
        addField(specificIdentifierField, "specificIdentifier");
68
        specificIdentifierField.setEnabled(false);
69 70

  
70 71
        ListSelect statusSelect = new ListSelect("Status", Arrays.asList(RegistrationStatus.values()));
71 72
        statusSelect.setNullSelectionAllowed(false);
......
74 75

  
75 76
        ListSelect submitterField = selectFieldFactory.createListSelect("Submitter", User.class);
76 77
        submitterField.setEnabled(false);
78
        submitterField.setWidth(100, Unit.PERCENTAGE);
77 79
        addField(submitterField, "submitter");
78 80

  
79 81
        ListSelect institutionField = selectFieldFactory.createListSelect("Institution", Institution.class);
80 82
        institutionField.setEnabled(false);
83
        institutionField.setWidth(100, Unit.PERCENTAGE);
81 84
        addField(institutionField, "institution");
82 85

  
83 86
        DateField registrationDateField = new DateField("Registration date");
......
86 89

  
87 90
    }
88 91

  
92
    @Override
93
    protected void afterItemDataSourceSet() {
94
        identifierField.setEnabled(false);
95
        specificIdentifierField.setEnabled(false);
96
    }
97

  
89 98
    /**
90 99
     * {@inheritDoc}
91 100
     */
src/main/java/eu/etaxonomy/vaadin/mvp/AbstractPopupEditor.java
400 400

  
401 401
    public void showInEditor(DTO beanToEdit) {
402 402
        fieldGroup.setItemDataSource(beanToEdit);
403
        afterItemDataSourceSet();
404
    }
405

  
406
    /**
407
     * This method is called after setting the item data source whereby the {@link FieldGroup#configureField(Field<?> field)} method will be called.
408
     * In this method all fields are set to default states defined for the fieldGroup.
409
     * <p>
410
     * You can now implement this method if you need to configure the enable state of fields
411
     * individually.
412
     */
413
    protected void afterItemDataSourceSet() {
414

  
403 415
    }
404 416
}

Also available in: Unified diff