Lint View Improvements

This changeset makes a bunch of changes to the Lint Window
in Eclipse:

* First, it changes the view from a flat table into a hierarchical
  tree.  For any given type of error, there is one top level tree
  node, and its children are the remaining occurrences of the same
  error.

  This makes it much easier to quickly skim through the different
  issues without having to scroll; if you see an error you want to
  fix, you can expand the node to jump to all the various occurrences.

  The top level labels also include a count in the form of "(2 items)"
  after the error message so you can get a sense of how many warnings
  were found for each type.

* Second, it adds a bunch of new actions to the Lint View toolbar:
  expand, collapse, configure (more on that later), settings, and
  ignore file and ignore project (ignore global was already there).
  It also updates the icons for some of the existing actions; the lint
  toolbar action and window should look a bit better now.

* Third, it adds more columns (such as priority and category) to the
  lint view, and makes the set of visible columns configurable.  You
  can click on the Configure toolbar action to bring up a dialog to
  show which columns are included, and this selection is persisted
  across IDE sessions (and it also persists the column sizes).

  Furthermore, instead of separate file, path and line number columns,
  there is now a new "Location" column, which is shown by default
  instead of the separate file, path and line number columns. This
  column displays combined info for all three: the file name, the line
  number, the parent folder and the project name. This includes all
  the relevant information in a more compact format such that there is
  more room for the error message.

* Fourth, the table now supports sorting: you can click on any column
  header, and the table will be sorted using that column as a
  key. (This is not alphabetical but a logical sort defined for each
  column; for line number and priority it's obviously numerical, but
  for the default column it continues to be a combination of severity,
  priority, issue type etc.)

Change-Id: I42695988780b493ad90aff5aeb5895e0fd8d3998
20 files changed