code: public BaseListener getNextValidListener(int iMoveMode)
      {
          if (m_nextListener != null)
          {
              if ((m_nextListener.isEnabled()) & (((FieldListener)m_nextListener).respondsToMode(iMoveMode)))
                  return m_nextListener;
              else
                  return ((FieldListener)m_nextListener).getNextValidListener(iMoveMode);
          }
          else
              return null;
      }
docs: Get the next enabled listener on the chain.
  @param iMoveMode The type of move being done (init/read/screen).
  @return The next listener that responds to this type of move (or null if end of chain).