001/**
002 * 
003 */
004package org.jdesktop.swingx.autocomplete;
005
006import javax.swing.event.DocumentEvent;
007import javax.swing.text.Document;
008import javax.swing.text.Element;
009
010/**
011 * @author Karl George Schaefer
012 *
013 */
014final class DelegatingDocumentEvent implements DocumentEvent {
015    private final Document resourcedDocument;
016    private final DocumentEvent sourceEvent;
017    
018    public DelegatingDocumentEvent(Document resourcedDocument, DocumentEvent sourceEvent) {
019        this.resourcedDocument = resourcedDocument;
020        this.sourceEvent = sourceEvent;
021    }
022    
023    /**
024     * {@inheritDoc}
025     */
026    @Override
027    public ElementChange getChange(Element elem) {
028        return sourceEvent.getChange(elem);
029    }
030
031    /**
032     * {@inheritDoc}
033     */
034    @Override
035    public Document getDocument() {
036        return resourcedDocument;
037    }
038
039    /**
040     * {@inheritDoc}
041     */
042    @Override
043    public int getLength() {
044        return sourceEvent.getLength();
045    }
046
047    /**
048     * {@inheritDoc}
049     */
050    @Override
051    public int getOffset() {
052        return sourceEvent.getOffset();
053    }
054
055    /**
056     * {@inheritDoc}
057     */
058    @Override
059    public EventType getType() {
060        return sourceEvent.getType();
061    }
062
063}