Mplab X Programmer selection
It refers to the combination of programmer / target chip:


Red means not supported in MPLAB-X, though third party tools may work with it (such as a pickit2 using pic32prog to program a non-supported PIC32).
Yellow means partially supported or Beta support.
Green means fully supported and tested.


Where you have just one dot it means the whole device support.  Either the whole setup has full support (green), partial or beta support (yellow) or no official support (red).

When there are two dots the setup is split up into two parts.  In the case of hardware programmers the first dot is the debugging support, and the second is the programming support.  For the simulator the first dot refers to core compatibility (CPU and instruction support), and the second to peripheral compatibility (timers, IO ports, etc).

If you hover over an entry in the list it tells you what the support levels are.  For instance, a PICkit2 talking to a PIC18F4455 has two yellow dots and comes up with:


  Debugger - Beta Support, Programmer - Beta Support


The same PICkit2 when set to talk to a PIC32MX795F512L has a single red dot and comes up with:


  Not Supported


Yet the PICkit3, which has two green dots, comes up with:


  Debugger - Production Tested, Programmer- Production Tested


The PM3 only has one green dot though, as there is no debugging in it, so you just get:


  Production Tested