/**
  * This function is called in addBrowseTableColumns() to filter the names displayed
  * by AnswerModelSnippetGeneric.
  *
  * @see \Gems_Tracker_Snippets_AnswerModelSnippetGeneric
  *
  * @param \MUtil_Model_Bridge_TableBridge $bridge
  * @param \MUtil_Model_ModelAbstract $model
  * @param array $currentNames The current names in use (allows chaining)
  * @return array Of the names of labels that should be shown
  */
 public function filterAnswers(\MUtil_Model_Bridge_TableBridge $bridge, \MUtil_Model_ModelAbstract $model, array $currentNames)
 {
     $rows = $bridge->getRows();
     if (!$rows) {
         return $currentNames;
     }
     $keys = array();
     foreach ($rows as $row) {
         // Add the keys that contain values.
         $keys += $this->array_filter($row, $model);
     }
     $results = array_intersect($currentNames, array_keys($keys), array_keys($this->token->getRawAnswers()));
     // \MUtil_Echo::track($results);
     $results = $this->restoreHeaderPositions($model, $results);
     if ($results) {
         return $results;
     }
     return $this->getHeaders($model, $currentNames);
 }