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}