org.eclipse.jface.viewers
Class Viewer
java.lang.Object
org.eclipse.jface.viewers.Viewer
-
All Implemented Interfaces:
-
IInputProvider,
IInputSelectionProvider,
ISelectionProvider
-
Direct Known Subclasses:
-
ContentViewer,
TextViewer
-
public abstract class Viewer
- extends
Object
- implements
IInputSelectionProvider
A viewer is a model-based adapter on a widget.
A viewer can be created as an adapter on a pre-existing control (e.g.,
creating a ListViewer
on an existing List
control).
All viewers also provide a convenience constructor for creating the control.
Implementing a concrete viewer typically involves the following steps:
-
create SWT controls for viewer (in constructor) (optional)
-
initialize SWT controls from input (inputChanged)
-
define viewer-specific update methods
-
support selections (
setSelection
, getSelection
)
Field Summary
|
protected static
String
|
WIDGET_DATA_KEY
Unique key for associating element data with widgets. |
Constructor Summary
|
protected
|
Viewer
()
Creates a new viewer. |
Methods inherited from class java.lang.
Object
|
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait
|
WIDGET_DATA_KEY
protected static final
String WIDGET_DATA_KEY
- Unique key for associating element data with widgets.
-
See Also:
-
Widget.setData(String, Object)
,
Constant Field Values
Viewer
protected Viewer()
- Creates a new viewer.
addHelpListener
public void addHelpListener(
HelpListener listener)
- Adds a listener for help requests in this viewer.
Has no effect if an identical listener is already registered.
-
-
-
Parameters:
-
listener
- a help listener
addSelectionChangedListener
public void addSelectionChangedListener(
ISelectionChangedListener listener)
-
Description copied from interface:
ISelectionProvider
- Adds a listener for selection changes in this selection provider.
Has no effect if an identical listener is already registered.
-
-
Specified by:
-
addSelectionChangedListener
in interface
ISelectionProvider
-
-
Parameters:
-
listener
- a selection changed listener
fireHelpRequested
protected void fireHelpRequested(
HelpEvent event)
- Notifies any help listeners that help has been requested.
Only listeners registered at the time this method is called are notified.
-
-
-
Parameters:
-
event
- a help event -
See Also:
-
HelpListener.helpRequested(org.eclipse.swt.events.HelpEvent)
fireSelectionChanged
protected void fireSelectionChanged(
SelectionChangedEvent event)
- Notifies any selection changed listeners that the viewer's selection has changed.
Only listeners registered at the time this method is called are notified.
-
-
-
Parameters:
-
event
- a selection changed event -
See Also:
-
ISelectionChangedListener.selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
getControl
public abstract
Control getControl()
- Returns the primary control associated with this viewer.
-
-
-
Returns:
- the SWT control which displays this viewer's content
getData
public
Object getData(
String key)
- Returns the value of the property with the given name,
or
null
if the property is not found.
The default implementation performs a (linear) search of
an internal table. Overriding this method is generally not
required if the number of different keys is small. If a more
efficient representation of a viewer's properties is required,
override both getData
and setData
.
-
-
-
Parameters:
-
key
- the property name
-
Returns:
- the property value, or
null
if
the property is not found
getInput
public abstract
Object getInput()
-
Description copied from interface:
IInputProvider
- Returns the input.
-
-
Specified by:
-
getInput
in interface
IInputProvider
-
-
Returns:
- the input object
getSelection
public abstract
ISelection getSelection()
-
Description copied from interface:
ISelectionProvider
- Returns the current selection for this provider.
-
-
Specified by:
-
getSelection
in interface
ISelectionProvider
-
-
Returns:
- the current selection
handleHelpRequest
protected void handleHelpRequest(
HelpEvent event)
- Handles a help request from the underlying SWT control.
The default behavior is to fire a help request,
with the event's data modified to hold this viewer.
-
-
-
Parameters:
-
event
- the event
inputChanged
protected void inputChanged(
Object input,
Object oldInput)
- Internal hook method called when the input to this viewer is
initially set or subsequently changed.
The default implementation does nothing. Subclassers may override
this method to do something when a viewer's input is set.
A typical use is populate the viewer.
-
-
-
Parameters:
-
input
- the new input of this viewer, or null
if none -
oldInput
- the old input element or null
if there
was previously no input
refresh
public abstract void refresh()
- Refreshes this viewer completely with information freshly obtained from this
viewer's model.
-
-
removeHelpListener
public void removeHelpListener(
HelpListener listener)
- Removes the given help listener from this viewer.
Has no affect if an identical listener is not registered.
-
-
-
Parameters:
-
listener
- a help listener
removeSelectionChangedListener
public void removeSelectionChangedListener(
ISelectionChangedListener listener)
-
Description copied from interface:
ISelectionProvider
- Removes the given selection change listener from this selection provider.
Has no affect if an identical listener is not registered.
-
-
Specified by:
-
removeSelectionChangedListener
in interface
ISelectionProvider
-
-
Parameters:
-
listener
- a selection changed listener
scrollDown
public
Item scrollDown(int x,
int y)
- Scrolls the viewer's control down by one item from the given
display-relative coordinates. Returns the newly revealed Item,
or
null
if no scrolling occurred or if the viewer
doesn't represent an item-based widget.
-
-
-
Parameters:
-
x
- horizontal coordinate -
y
- vertical coordinate
-
Returns:
- the item scrolled down to
scrollUp
public
Item scrollUp(int x,
int y)
- Scrolls the viewer's control up by one item from the given
display-relative coordinates. Returns the newly revealed Item,
or
null
if no scrolling occurred or if the viewer
doesn't represent an item-based widget.
-
-
-
Parameters:
-
x
- horizontal coordinate -
y
- vertical coordinate
-
Returns:
- the item scrolled up to
setData
public void setData(
String key,
Object value)
- Sets the value of the property with the given name to the
given value, or to
null
if the property is to be
removed. If this viewer has such a property, its value is
replaced; otherwise a new property is added.
The default implementation records properties in an internal
table which is searched linearly. Overriding this method is generally not
required if the number of different keys is small. If a more
efficient representation of a viewer's properties is required,
override both getData
and setData
.
-
-
-
Parameters:
-
key
- the property name -
value
- the property value, or null
if
the property is not found
setInput
public abstract void setInput(
Object input)
- Sets or clears the input for this viewer.
-
-
-
Parameters:
-
input
- the input of this viewer, or null
if none
setSelection
public void setSelection(
ISelection selection)
- The viewer implementation of this
ISelectionProvider
method make the new selection for this viewer without making it visible.
This method is equivalent to setSelection(selection,false)
.
Note that some implementations may not be able to set the selection
without also revealing it, for example (as of 3.3) TreeViewer.
-
-
Specified by:
-
setSelection
in interface
ISelectionProvider
-
-
Parameters:
-
selection
- the new selection
setSelection
public abstract void setSelection(
ISelection selection,
boolean reveal)
- Sets a new selection for this viewer and optionally makes it visible.
Subclasses must implement this method.
-
-
-
Parameters:
-
selection
- the new selection -
reveal
- true
if the selection is to be made
visible, and false
otherwise
Guidelines for using Eclipse APIs.
Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.