org.eclipse.ui.views.properties
Class ResourcePropertySource
java.lang.Object
org.eclipse.ui.views.properties.ResourcePropertySource
-
All Implemented Interfaces:
-
IPropertySource
-
Direct Known Subclasses:
-
FilePropertySource
-
public class ResourcePropertySource
- extends
Object
- implements
IPropertySource
A Resource property source.
Method Summary
|
Object
|
getEditableValue
()
Returns a value for this property source that can be edited in a property
sheet. |
protected
File
|
getFile
(
IResource resource)
Get the java.io.File equivalent of the passed
IFile. |
IPropertyDescriptor[]
|
getPropertyDescriptors
()
Returns the list of property descriptors for this property source. |
Object
|
getPropertyValue
(
Object name)
Returns the value of the property with the given id if it has one. |
boolean
|
isPropertySet
(
Object property)
Returns whether the value of the property with the given id has changed
from its default value. |
void
|
resetPropertyValue
(
Object property)
The ResourcePropertySource implementation of this
IPropertySource method does nothing since all
properties are read-only. |
void
|
setPropertyValue
(
Object name,
Object value)
The ResourcePropertySource implementation of this
IPropertySource method does nothing since all
properties are read-only. |
Methods inherited from class java.lang.
Object
|
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait
|
NOT_LOCAL_TEXT
protected static
String NOT_LOCAL_TEXT
FILE_NOT_FOUND
protected static
String FILE_NOT_FOUND
UNDEFINED_PATH_VARIABLE
protected static
String UNDEFINED_PATH_VARIABLE
FILE_NOT_EXIST_TEXT
protected static
String FILE_NOT_EXIST_TEXT
element
protected
IResource element
errorMessage
protected
String errorMessage
propertyDescriptors
protected static
IPropertyDescriptor[] propertyDescriptors
propertyDescriptorsLinkVariable
protected static
IPropertyDescriptor[] propertyDescriptorsLinkVariable
ResourcePropertySource
public ResourcePropertySource(
IResource res)
- Creates a PropertySource and stores its IResource
-
Parameters:
-
res
- the resource for which this is a property source
getEditableValue
public
Object getEditableValue()
-
Description copied from interface:
IPropertySource
- Returns a value for this property source that can be edited in a property
sheet.
This value is used when this IPropertySource
is appearing
in the property sheet as the value of a property of some other
IPropertySource
This value is passed as the input to a cell editor opening on an
IPropertySource
.
This value is also used when an IPropertySource
is being
used as the value in a setPropertyValue
message. The
reciever of the message would then typically use the editable value to
update the original property source or construct a new instance.
For example an email address which is a property source may have an
editable value which is a string so that it can be edited in a text cell
editor. The email address would also have a constructor or setter that
takes the edited string so that an appropriate instance can be created or
the original instance modified when the edited value is set.
This behavior is important for another reason. When the property sheet is
showing properties for more than one object (multiple selection), a
property sheet entry will display and edit a single value (typically
coming from the first selected object). After a property has been edited
in a cell editor, the same value is set as the property value for all of
the objects. This is fine for primitive types but otherwise all of the
objects end up with a reference to the same value. Thus by creating an
editable value and using it to update the state of the original property
source object, one is able to edit several property source objects at
once (multiple selection).
-
-
Specified by:
-
getEditableValue
in interface
IPropertySource
-
-
Returns:
- a value that can be edited
getPropertyDescriptors
public
IPropertyDescriptor[] getPropertyDescriptors()
-
Description copied from interface:
IPropertySource
- Returns the list of property descriptors for this property source. The
getPropertyValue
and setPropertyValue
methods are used to read and write the actual property values by
specifying the property ids from these property descriptors.
Implementors should cache the descriptors as they will be asked for the
descriptors with any edit/update. Since descriptors provide cell editors,
returning the same descriptors if possible allows for efficient updating.
-
-
Specified by:
-
getPropertyDescriptors
in interface
IPropertySource
-
-
Returns:
- the property descriptors
getPropertyValue
public
Object getPropertyValue(
Object name)
-
Description copied from interface:
IPropertySource
- Returns the value of the property with the given id if it has one.
Returns
null
if the property's value is null
value or if this source does not have the specified property.
-
-
Specified by:
-
getPropertyValue
in interface
IPropertySource
-
-
Parameters:
-
name
- the id of the property being set
-
Returns:
- the value of the property, or
null
-
See Also:
-
IPropertySource.setPropertyValue(java.lang.Object, java.lang.Object)
isPropertySet
public boolean isPropertySet(
Object property)
-
Description copied from interface:
IPropertySource
- Returns whether the value of the property with the given id has changed
from its default value. Returns
false
if this source does
not have the specified property.
If the notion of default value is not meaningful for the specified
property then false
is returned.
-
-
Specified by:
-
isPropertySet
in interface
IPropertySource
-
-
Parameters:
-
property
- the id of the property
-
Returns:
-
true
if the value of the specified property has
changed from its original default value, false
if
the specified property does not have a meaningful default value,
and false
if this source does not have the
specified property -
See Also:
-
IPropertySource2.isPropertyResettable(Object)
,
IPropertySource.resetPropertyValue(Object)
resetPropertyValue
public void resetPropertyValue(
Object property)
- The
ResourcePropertySource
implementation of this
IPropertySource
method does nothing since all
properties are read-only.
-
-
Specified by:
-
resetPropertyValue
in interface
IPropertySource
-
-
Parameters:
-
property
- the id of the property being reset -
See Also:
-
IPropertySource.isPropertySet(Object)
,
IPropertySource2.isPropertyResettable(Object)
setPropertyValue
public void setPropertyValue(
Object name,
Object value)
- The
ResourcePropertySource
implementation of this
IPropertySource
method does nothing since all
properties are read-only.
-
-
Specified by:
-
setPropertyValue
in interface
IPropertySource
-
-
Parameters:
-
name
- the id of the property being set -
value
- the new value for the property; null
is allowed -
See Also:
-
IPropertySource.getPropertyValue(java.lang.Object)
,
IPropertySource.getEditableValue()
getFile
protected
File getFile(
IResource resource)
- Get the java.io.File equivalent of the passed
IFile. If the location does not exist then return
null
-
-
-
Parameters:
-
resource
- the resource to lookup
-
Returns:
- java.io.File or
null
.
Guidelines for using Eclipse APIs.
Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.