public abstract class AbstractEncodingFieldEditor extends FieldEditor
IDEEncoding
.
Subclasses may extend, but must call createEncodingGroup
during doFillIntoGrid
.
IDEEncoding
HORIZONTAL_GAP, IS_VALID, VALUE
Modifier | Constructor and Description |
---|---|
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.
|
protected |
AbstractEncodingFieldEditor(String name,
String labelText,
String groupTitle,
Composite parent)
Creates a new encoding field editor with the given preference name, label
and parent.
|
Modifier and Type | Method and Description |
---|---|
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 |
setEnabled(boolean enabled,
Composite parent)
Set whether or not the controls in the field editor
are enabled.
|
void |
setGroupTitle(String groupTitle)
Set the title of the group to groupTitle.
|
void |
setPreferenceStore(IPreferenceStore store)
Sets the preference store used by this field editor.
|
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, setFocus, setLabelText, setPage, setPreferenceName, setPreferencePage, setPresentsDefaultValue, setPropertyChangeListener, showErrorMessage, showMessage, store
protected AbstractEncodingFieldEditor()
protected AbstractEncodingFieldEditor(String name, String labelText, Composite parent)
name
- the name of the preference this field editor works onlabelText
- the label text of the field editorparent
- the parent of the field editor's controlprotected AbstractEncodingFieldEditor(String name, String labelText, String groupTitle, Composite parent)
name
- the name of the preference this field editor works onlabelText
- the label text of the field editorgroupTitle
- the title for the field editor's control. If groupTitle is
null
the control will be unlabelled
(by default a Composite
instead of a Group
.parent
- the parent of the field editor's controlsetGroupTitle(String)
protected void adjustForNumColumns(int numColumns)
FieldEditor
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.
adjustForNumColumns
in class FieldEditor
numColumns
- the number of columnsprotected void doFillIntoGrid(Composite parent, int numColumns)
FieldEditor
Subclasses must implement this method to create the controls for this field editor.
Note this method may be called by the constructor, so it must not access fields on the receiver object because they will not be fully initialized.
doFillIntoGrid
in class FieldEditor
parent
- the composite used as a parent for the basic controls;
the parent's layout must be a GridLayout
numColumns
- the number of columnsprotected void doLoad()
FieldEditor
Subclasses must implement this method to properly initialize the field editor.
doLoad
in class FieldEditor
protected abstract String getStoredValue()
protected void doLoadDefault()
FieldEditor
Subclasses must implement this method to properly initialize the field editor.
doLoadDefault
in class FieldEditor
public int getNumberOfControls()
FieldEditor
getNumberOfControls
in class FieldEditor
public boolean isValid()
FieldEditor
The default implementation of this framework method
returns true
. Subclasses wishing to perform
validation should override both this method and
refreshValidState
.
isValid
in class FieldEditor
true
if the field value is valid,
and false
if invalidFieldEditor.refreshValidState()
protected void refreshValidState()
FieldEditor
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
.
refreshValidState
in class FieldEditor
FieldEditor.isValid()
public void setPreferenceStore(IPreferenceStore store)
FieldEditor
setPreferenceStore
in class FieldEditor
store
- the preference store, or null
if noneFieldEditor.getPreferenceStore()
protected Composite createEncodingGroup(Composite parent, int numColumns)
Subclasses may extend.
parent
- the parent widgetnumColumns
- the number of columns in the parentpublic void setEnabled(boolean enabled, Composite parent)
FieldEditor
setEnabled
in class FieldEditor
enabled
- The enabled state.parent
- The parent of the controls in the group.
Used to create the controls if required.protected String findDefaultEncoding()
protected String defaultButtonText()
protected String getSelectedEncoding()
protected String getDefaultEnc()
protected boolean hasSameEncoding(String encodingSetting)
encodingSetting
- the setting from the page.true
if the resource encoding is the same
as before.public void setGroupTitle(String groupTitle)
null
the control will be
unlabelled (by default a Composite
instead of a Group
.
NOTE this value must be set before
FieldEditor.createControl(Composite)
is called or it will be ignored.groupTitle
- The groupTitle to set.
Copyright (c) 2000, 2014 Eclipse Contributors and others. All rights reserved.Guidelines for using Eclipse APIs.