Eclipse Platform
Release 3.1

org.eclipse.ui.ide.dialogs
Class AbstractEncodingFieldEditor

java.lang.Object
  extended byorg.eclipse.jface.preference.FieldEditor
      extended byorg.eclipse.ui.ide.dialogs.AbstractEncodingFieldEditor
Direct Known Subclasses:
EncodingFieldEditor, ResourceEncodingFieldEditor

public abstract class AbstractEncodingFieldEditor
extends FieldEditor

The abstract superclass of field editors used to set an encoding. Any user entered encodings will be added to the list of encodings available via IDEEncoding.

Subclasses may extend, but must call createEncodingGroup during doFillIntoGrid.

Since:
3.1
See Also:
IDEEncoding

Field Summary
 
Fields inherited from class org.eclipse.jface.preference.FieldEditor
HORIZONTAL_GAP, IS_VALID, VALUE
 
Constructor Summary
protected AbstractEncodingFieldEditor()
          Creates a new encoding field editor with no settings set.
protected AbstractEncodingFieldEditor(String name, String labelText, Composite parent)
          Creates a new encoding field editor with the given preference name, label and parent.
 
Method Summary
protected  void adjustForNumColumns(int numColumns)
          Adjusts the horizontal span of this field editor's basic controls.
protected  Composite createEncodingGroup(Composite parent, int numColumns)
          Creates a composite with all the encoding controls.
protected  String defaultButtonText()
          Returns the text for the default encoding button.
protected  void doFillIntoGrid(Composite parent, int numColumns)
          Fills this field editor's basic controls into the given parent.
protected  void doLoad()
          Initializes this field editor with the preference value from the preference store.
protected  void doLoadDefault()
          Initializes this field editor with the default preference value from the preference store.
protected  String findDefaultEncoding()
          Returns the default encoding for the object being shown.
protected  String getDefaultEnc()
          Returns the default encoding.
 int getNumberOfControls()
          Returns the number of basic controls this field editor consists of.
protected  String getSelectedEncoding()
          Returns the currently selected encoding.
protected abstract  String getStoredValue()
          Returns the value that is currently stored for the encoding.
protected  boolean hasSameEncoding(String encodingSetting)
          Returns whether or not the encoding setting changed.
 boolean isValid()
          Returns whether this field editor contains a valid value.
protected  void refreshValidState()
          Refreshes this field editor's valid state after a value change and fires an IS_VALID property change event if warranted.
 void setPreferenceStore(IPreferenceStore store)
          Sets the preference store used by this field editor.
 
Methods inherited from class org.eclipse.jface.preference.FieldEditor
applyFont, checkParent, clearErrorMessage, clearMessage, convertHorizontalDLUsToPixels, convertVerticalDLUsToPixels, createControl, dispose, doStore, fillIntoGrid, fireStateChanged, fireValueChanged, getFieldEditorFontName, getLabelControl, getLabelControl, getLabelText, getPage, getPreferenceName, getPreferencePage, getPreferenceStore, init, load, loadDefault, presentsDefaultValue, setButtonLayoutData, setEnabled, setFocus, setLabelText, setPage, setPreferenceName, setPreferencePage, setPresentsDefaultValue, setPropertyChangeListener, showErrorMessage, showMessage, store
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractEncodingFieldEditor

protected AbstractEncodingFieldEditor()
Creates a new encoding field editor with no settings set.


AbstractEncodingFieldEditor

protected AbstractEncodingFieldEditor(String name,
                                      String labelText,
                                      Composite parent)
Creates a new encoding field editor with the given preference name, label and parent.

Parameters:
name - the name of the preference this field editor works on
labelText - the label text of the field editor
parent - the parent of the field editor's control
Method Detail

adjustForNumColumns

protected void adjustForNumColumns(int numColumns)
Description copied from class: FieldEditor
Adjusts the horizontal span of this field editor's basic controls.

Subclasses must implement this method to adjust the horizontal span of controls so they appear correct in the given number of columns.

The number of columns will always be equal to or greater than the value returned by this editor's getNumberOfControls method.

Specified by:
adjustForNumColumns in class FieldEditor
Parameters:
numColumns - the number of columns

doFillIntoGrid

protected void doFillIntoGrid(Composite parent,
                              int numColumns)
Description copied from class: FieldEditor
Fills this field editor's basic controls into the given parent.

Subclasses must implement this method to create the controls for this field editor.

Specified by:
doFillIntoGrid in class FieldEditor
Parameters:
parent - the composite used as a parent for the basic controls; the parent's layout must be a GridLayout
numColumns - the number of columns

doLoad

protected void doLoad()
Description copied from class: FieldEditor
Initializes this field editor with the preference value from the preference store.

Subclasses must implement this method to properly initialize the field editor.

Specified by:
doLoad in class FieldEditor

getStoredValue

protected abstract String getStoredValue()
Returns the value that is currently stored for the encoding.

Returns:
the currently stored encoding

doLoadDefault

protected void doLoadDefault()
Description copied from class: FieldEditor
Initializes this field editor with the default preference value from the preference store.

Subclasses must implement this method to properly initialize the field editor.

Specified by:
doLoadDefault in class FieldEditor

getNumberOfControls

public int getNumberOfControls()
Description copied from class: FieldEditor
Returns the number of basic controls this field editor consists of.

Specified by:
getNumberOfControls in class FieldEditor
Returns:
the number of controls

isValid

public boolean isValid()
Description copied from class: FieldEditor
Returns whether this field editor contains a valid value.

The default implementation of this framework method returns true. Subclasses wishing to perform validation should override both this method and refreshValidState.

Overrides:
isValid in class FieldEditor
Returns:
true if the field value is valid, and false if invalid
See Also:
FieldEditor.refreshValidState()

refreshValidState

protected void refreshValidState()
Description copied from class: FieldEditor
Refreshes this field editor's valid state after a value change and fires an IS_VALID property change event if warranted.

The default implementation of this framework method does nothing. Subclasses wishing to perform validation should override both this method and isValid.

Overrides:
refreshValidState in class FieldEditor
See Also:
FieldEditor.isValid()

setPreferenceStore

public void setPreferenceStore(IPreferenceStore store)
Description copied from class: FieldEditor
Sets the preference store used by this field editor.

Overrides:
setPreferenceStore in class FieldEditor
Parameters:
store - the preference store, or null if none
See Also:
FieldEditor.getPreferenceStore()

createEncodingGroup

protected Composite createEncodingGroup(Composite parent,
                                        int numColumns)
Creates a composite with all the encoding controls.

Subclasses may extend.

Parameters:
parent - the parent widget
numColumns - the number of columns in the parent
Returns:
the group control

findDefaultEncoding

protected String findDefaultEncoding()
Returns the default encoding for the object being shown.

Returns:
the default encoding for the object being shown

defaultButtonText

protected String defaultButtonText()
Returns the text for the default encoding button.

Returns:
the text for the default encoding button

getSelectedEncoding

protected String getSelectedEncoding()
Returns the currently selected encoding.

Returns:
the currently selected encoding

getDefaultEnc

protected String getDefaultEnc()
Returns the default encoding.

Returns:
the default encoding

hasSameEncoding

protected boolean hasSameEncoding(String encodingSetting)
Returns whether or not the encoding setting changed.

Parameters:
encodingSetting - the setting from the page.
Returns:
boolean true if the resource encoding is the same as before.

Eclipse Platform
Release 3.1

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2005. All rights reserved.