RtcPlanItemCheckerPopupComponent(RtcPlanItemChecker[] checkers) {
    super();
    RtcPlanItem planItem = null;
    RtcPlanItemProblem.RtcSeverity maxSeverity = null;
    String tip = "";
    for (RtcPlanItemChecker ch : checkers) {
      for (RtcPlanItemProblem p : ch.getProblems()) {
        if (planItem != null && maxSeverity != null) {
          if (RtcPlanItemCheckerUtilities.compareSeverities(maxSeverity, p.getSeverity()) > 0) {
            planItem = p.getPlanItem();
            maxSeverity = p.getSeverity();
          }
        } else {
          planItem = p.getPlanItem();
          maxSeverity = p.getSeverity();
        }

        tip += "<p>" + p.getMessage() + "</p>";
      }
    }
    if (planItem != null) {
      setIcon(getIconFor(planItem, checkers));
    } else {
      setIcon(null);
    }

    setToolTipText("<html>" + tip + "</html>");
  }
 RtcPlanItemCheckerPopupComponent(RtcPlanItem planItem, RtcPlanItemChecker[] checkers) {
   super(getIconFor(planItem, checkers));
   String tip = "";
   for (RtcPlanItemChecker ch : checkers) {
     for (RtcPlanItemProblem p : ch.getProblems()) {
       if (p.getPlanItem().equals(planItem)) {
         tip += "<p>" + p.getMessage() + "</p>";
       }
     }
     setToolTipText("<html>" + tip + "</html>");
   }
 }