|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
fulmine.ui.RecordViewer
public class RecordViewer
A component that provides a read-only view of a record. All the
IFields of a Record are displayed as a series of key-value
pairs. As fields are added/removed, so too are the key-value pairs in the
panel. Multiple records are displayed in separate tabs.
The viewer itself is an IEventListener so can be used as the listener
for record subscriptions. It is thread safe for handling updates from the
IFulmineContext framework - they are spun off onto the AWT thread for
processing. If the viewer is used to subscribe to multiple records, each
record is shown in a separate tab.
This is intended as a demonstration class for building more sophisticated
record-based UIs based on the IFulmineContext framework.
Note: this does not remove records from the panel when they are destroyed, it simply renders the fields as 'disabled'.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class javax.swing.JPanel |
|---|
JPanel.AccessibleJPanel |
| Nested classes/interfaces inherited from class javax.swing.JComponent |
|---|
JComponent.AccessibleJComponent |
| Nested classes/interfaces inherited from class java.awt.Container |
|---|
Container.AccessibleAWTContainer |
| Nested classes/interfaces inherited from class java.awt.Component |
|---|
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy |
| Field Summary |
|---|
| Fields inherited from class javax.swing.JComponent |
|---|
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW |
| Fields inherited from class java.awt.Component |
|---|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
| Fields inherited from interface java.awt.image.ImageObserver |
|---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
| Constructor Summary | |
|---|---|
RecordViewer()
|
|
| Method Summary | |
|---|---|
void |
addedAsListenerFor(IEventSource source)
The listener receives this when it has been added as a listener to an event source via IEventSource.addListener(IEventListener). |
Class<? extends IEvent>[] |
getEventTypeFilter()
Get the classes of IEvent instances this listener can process. |
void |
removedAsListenerFrom(IEventSource source)
The listener receives this when it has been removed as a listener from an event source via IEventSource.removeListener(IEventListener). |
void |
update(IEvent event)
An update has occurred that this listener is interested in. |
| Methods inherited from class javax.swing.JPanel |
|---|
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public RecordViewer()
| Method Detail |
|---|
public void addedAsListenerFor(IEventSource source)
IEventListenerIEventSource.addListener(IEventListener).
addedAsListenerFor in interface IEventListenersource - the source that this listener will receive events from.public Class<? extends IEvent>[] getEventTypeFilter()
IEventListenerIEvent instances this listener can process.
The IEventListener.update(IEvent) method will only be called with
IEvent instances whose Class is assignment
compatible with any contained in this array.
This is an event filtering mechanism. An IEventSource may
generate many types of IEvent instances but a listener may only
be interested in one type. By specifying the types of events the listener
is interested in using this method, the listener effectively filters out
unwanted events.
If the filter is dynamic then this method must be thread aware.
getEventTypeFilter in interface IEventListenerClass objects that determine the types of
IEvent instances this listener can processpublic void removedAsListenerFrom(IEventSource source)
IEventListenerIEventSource.removeListener(IEventListener).
removedAsListenerFrom in interface IEventListenersource - the source that this listener will no longer receive events
from.public void update(IEvent event)
IEventListenerIEventSource instances are bound to EventProcessor
instances so the same thread will execute this method for events
originating from the same event source. This does not mean that this
method is thread safe; this method may be run by multiple
EventProcessor instances and so should be thread aware as
appropriate.
This method can throw any Exception and processing will not be
interrupted. The EventProcessor will handle the exception.
update in interface IEventListenerevent - the event encapsulating the update.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||