BrowsableComponent.java 1.79 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
package com.elphel.vdt.ui.options.component;

import com.elphel.vdt.core.tools.params.Parameter;

public abstract class BrowsableComponent extends GeneralComponent {

    protected BrowseableField locationField;
    
    public BrowsableComponent(Parameter param) {
        super(param);
        locationField = new BrowseableField();                                                                            
    }
    
    public BrowseableField getLocationField() {
        return locationField;
    }
       
    public void setSelection(String value) {
    	locationField.setSelection(value);
    }

    protected String getSelection() {
        String location = locationField.getBrowsedNameField().getText().trim();
        return location;
    }
    
    protected boolean isDisposed() {
        return (locationField == null)
            ||  locationField.isDisposed();
    }
    
    public void setEnabled (boolean enabled) {
        super.setEnabled(enabled);
        locationField.setEnabled(enabled);
    }
    
    public void setVisible (boolean visible) {
        super.setVisible(visible);
        locationField.setVisible(visible);
    }
    
    protected void saveControlState() { 
        locationField.saveControlState();
    }
    
    public void setFocus() {
        locationField.setFocus();
    }

    protected void addListeners() {
        locationField.addModifyListener(modifyListener);
    }

    protected void removeListeners() {
        locationField.removeModifyListener(modifyListener);
    }
    
    protected void switchState(boolean defaulted) {
        locationField.setBackground(defaulted ? colorBackgroundDefault
                                              : colorBackground );     
    }
    
} // class BrowsableComponent