Bug 251517 [Preferences] Increase visibility for the ListEditor fields or methods
Build ID: M20080911-1700 Steps To Reproduce: I am trying to create a specialized org.eclipse.jface.preference.ListEditor. I want to specialize the 'remove' button so that I can disable it in a case where it we shouldn't allow them to remove the entry. However, currently all methods and fields that provide access to the buttons or event handling are all private, and thus can not be overridden by subclasses. Expected result is that protected access is provided for dealing with selection changes, button presses, and protected access is provided for access to the buttons so we can enable/disable them as needed. More information:
bundles/org.eclipse.jface/src/org/eclipse/jface/preference/ListEditor.java
}
    }
    /**
     * Notifies that the Down button has been pressed.
     */
    private void downPressed() {
        swap(false);
    }
    /**
     * Returns this field editor's button box containing the Add, Remove,
     * Up, and Down button.
     *
     * @param parent the parent control
     * @return the button box
     */
    public Composite getButtonBoxControl(Composite parent) {
        if (buttonBox == null) {
            buttonBox = new Composite(parent, SWT.NULL);
            GridLayout layout = new GridLayout();
            layout.marginWidth = 0;
            buttonBox.setLayout(layout);
            createButtons(buttonBox);
            buttonBox.addDisposeListener(new DisposeListener() {
                public void widgetDisposed(DisposeEvent event) {
                    addButton = null;
                    removeButton = null;
                    upButton = null;
                    downButton = null;
                    buttonBox = null;
                }