Class PropertyDescriptor
- All Implemented Interfaces:
IPropertyDescriptor
- Direct Known Subclasses:
ColorPropertyDescriptor,ComboBoxPropertyDescriptor,TextPropertyDescriptor
The required attributes of property descriptors (id and display name) are passed to the constructor; the optional attributes can be configured using the various set methods (all have reasonable default values):
setDescriptionsetCategorysetLabelProvidersetHelpContexts
Subclasses should reimplement getPropertyEditor to provide a
cell editor for changing the value; otherwise the property will be
effectively read only.
There are several concrete subclasses provided in this package that cover the most common cases:
TextPropertyDescriptor- edits with aTextCellEditorComboBoxPropertyDescriptor- edits with aComboBoxCellEditorColorPropertyDescriptor- edits with aColorCellEditor
-
Constructor Summary
ConstructorsConstructorDescriptionPropertyDescriptor(Object id, String displayName) Creates a new property descriptor with the given id and display name -
Method Summary
Modifier and TypeMethodDescriptioncreatePropertyEditor(Composite parent) ThePropertyDescriptorimplementation of thisIPropertyDescriptormethod returnsnull.protected booleanReturnstrueif this property descriptor is to be always considered incompatible with any other property descriptor.ThePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns the value set by thesetCategorymethod.ThePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns the value set by thesetDescriptionmethod.TheSimplePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns the value supplied on the constructor.String[]TheSimplePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns the value set by thesetFilterFlagsmethod.TheSimplePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns the value set by thesetHelpContextIdmethod.getId()ThePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns the value supplied on the constructor.ThePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns the value set by thesetProvidermethod or, if no value has been set it returns aLabelProviderprotected ICellEditorValidatorReturns the input validator for editing the property.booleanisCompatibleWith(IPropertyDescriptor anotherProperty) TheSimplePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns true if the other property has the same id and category andgetAlwaysIncompatible()returns falsebooleanReturns whether a label provider has been set on the receiver.voidsetAlwaysIncompatible(boolean flag) Sets a flag indicating whether this property descriptor is to be always considered incompatible with any other property descriptor.voidsetCategory(String category) Sets the category for this property descriptor.voidsetDescription(String description) Sets the description for this property descriptor.voidsetFilterFlags(String[] value) Sets the the filter flags for this property descriptor.voidsetHelpContextIds(Object contextIds) Sets the help context id for this property descriptor.voidsetLabelProvider(ILabelProvider provider) Sets the label provider for this property descriptor.voidsetValidator(ICellEditorValidator validator) Sets the input validator for the cell editor for this property descriptor.
-
Constructor Details
-
PropertyDescriptor
Creates a new property descriptor with the given id and display name- Parameters:
id- property iddisplayName- display name
-
-
Method Details
-
createPropertyEditor
ThePropertyDescriptorimplementation of thisIPropertyDescriptormethod returnsnull.Since no cell editor is returned, the property is read only.
- Specified by:
createPropertyEditorin interfaceIPropertyDescriptor- Parameters:
parent- the parent widget for the cell editor- Returns:
- the cell editor for this property, or
nullif this property cannot be edited
-
getAlwaysIncompatible
protected boolean getAlwaysIncompatible()Returnstrueif this property descriptor is to be always considered incompatible with any other property descriptor. This prevents a property from displaying during multiple selection.- Returns:
trueto indicate always incompatible
-
getCategory
ThePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns the value set by thesetCategorymethod. If unset, this method returnsnullindicating the default category.- Specified by:
getCategoryin interfaceIPropertyDescriptor- Returns:
- the category name, or
nullif the default category is to be used - See Also:
-
getDescription
ThePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns the value set by thesetDescriptionmethod. If unset, this method returnsnullindicating no description.- Specified by:
getDescriptionin interfaceIPropertyDescriptor- Returns:
- a brief description, or
nullif none - See Also:
-
getDisplayName
TheSimplePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns the value supplied on the constructor.- Specified by:
getDisplayNamein interfaceIPropertyDescriptor- Returns:
- a displayable name
-
getFilterFlags
TheSimplePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns the value set by thesetFilterFlagsmethod. If unset, this method returnsnull.Valid values for these flags are declared as constants on
IPropertySheetEntry- Specified by:
getFilterFlagsin interfaceIPropertyDescriptor- Returns:
- a list of filter types to which this property belongs, or
nullif none
-
getHelpContextIds
TheSimplePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns the value set by thesetHelpContextIdmethod. If unset, this method returnsnull.- Specified by:
getHelpContextIdsin interfaceIPropertyDescriptor- Returns:
- the help context id for this entry
- See Also:
-
getId
ThePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns the value supplied on the constructor.- Specified by:
getIdin interfaceIPropertyDescriptor- Returns:
- the property id
-
getLabelProvider
ThePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns the value set by thesetProvidermethod or, if no value has been set it returns aLabelProvider- Specified by:
getLabelProviderin interfaceIPropertyDescriptor- Returns:
- the label provider used to display this property
- See Also:
-
getValidator
Returns the input validator for editing the property.- Returns:
- the validator used to verify correct values for this property,
or
null
-
isLabelProviderSet
public boolean isLabelProviderSet()Returns whether a label provider has been set on the receiver.- Returns:
- whether a label provider has been set on the receiver.
- Since:
- 3.0
- See Also:
-
isCompatibleWith
TheSimplePropertyDescriptorimplementation of thisIPropertyDescriptormethod returns true if the other property has the same id and category andgetAlwaysIncompatible()returns false- Specified by:
isCompatibleWithin interfaceIPropertyDescriptor- Parameters:
anotherProperty- the other property descriptor- Returns:
trueif the property descriptors are compatible, andfalseotherwise
-
setAlwaysIncompatible
public void setAlwaysIncompatible(boolean flag) Sets a flag indicating whether this property descriptor is to be always considered incompatible with any other property descriptor. Setting this flag prevents a property from displaying during multiple selection.- Parameters:
flag-trueto indicate always incompatible
-
setCategory
Sets the category for this property descriptor.- Parameters:
category- the category for the descriptor, ornullif none- See Also:
-
setDescription
Sets the description for this property descriptor. The description should be limited to a single line so that it can be displayed in the status line.- Parameters:
description- the description, ornullif none- See Also:
-
setFilterFlags
Sets the the filter flags for this property descriptor. The description should be limited to a single line so that it can be displayed in the status line.Valid values for these flags are declared as constants on
IPropertySheetEntry- Parameters:
value- the filter flags- See Also:
-
setHelpContextIds
Sets the help context id for this property descriptor. NOTE: Help support system API's changed since 2.0 and arrays of contexts are no longer supported.Thus the only valid parameter type for this method is a
Stringrepresenting a context id. The previously valid parameter types are deprecated. The plural name for this method is unfortunate.- Parameters:
contextIds- the help context ids, ornullif none- See Also:
-
setLabelProvider
Sets the label provider for this property descriptor.If no label provider is set an instance of
LabelProviderwill be created as the default when needed.- Parameters:
provider- the label provider for the descriptor, ornullif the default label provider should be used- See Also:
-
setValidator
Sets the input validator for the cell editor for this property descriptor.[Issue: This method should be unnecessary is the cell editor's own validator is used. ]
- Parameters:
validator- the cell input validator, ornullif none
-