001package edu.wpi.first.wpilibj.tables;
002
003/**
004 * A listener that listens to changes in values in a {@link ITable}
005 * 
006 * @author Mitchell
007 *
008 */
009public interface ITableListener {
010    /**
011     * Called when a key-value pair is changed in a {@link ITable}
012     * WARNING: If a new key-value is put in this method value changed will immediatly be called which could lead to recursive code
013     * @param source the table the key-value pair exists in
014     * @param key the key associated with the value that changed
015     * @param value the new value
016     * @param isNew true if the key did not previously exist in the table, otherwise it is false
017     */
018    public void valueChanged(ITable source, String key, Object value, boolean isNew);
019}