@Override
  public JPanel getSettingsPanel() {
    JPanel panel =
        new JPanel(
            new FormLayout(
                "pref, 3dlu, pref",
                "pref, 3dlu, pref, 3dlu, pref, 3dlu, pref, 3dlu, pref, 3dlu, pref, 3dlu, pref"));
    CellConstraints cc = new CellConstraints();

    // better-or-worse-combobox + label
    panel.add(new JLabel(mLocalizer.msg("programsThatAre", "Programs that are")), cc.xy(1, 1));
    mBetterCombo =
        new JComboBox(
            new String[] {
              mLocalizer.msg("betterOrEqual", "better than or equal to"),
              mLocalizer.msg("worseOrEqual", "inferior or equal to")
            });
    if (mBest) {
      mBetterCombo.setSelectedIndex(0);
    } else {
      mBetterCombo.setSelectedIndex(1);
    }
    panel.add(mBetterCombo, cc.xy(3, 1));

    // the rating for the RatingComboBox
    Rating filterRating = new Rating("");
    filterRating.setOverallRating(mAcceptValues[TVRaterFilterAllCategories.OVERALL_INDEX]);
    filterRating.setActionRating(mAcceptValues[TVRaterFilterAllCategories.ACTION_INDEX]);
    filterRating.setFunRating(mAcceptValues[TVRaterFilterAllCategories.FUN_INDEX]);
    filterRating.setEroticRating(mAcceptValues[TVRaterFilterAllCategories.EROTIC_INDEX]);
    filterRating.setTensionRating(mAcceptValues[TVRaterFilterAllCategories.TENSION_INDEX]);
    filterRating.setEntitlementRating(mAcceptValues[TVRaterFilterAllCategories.ENTITLEMENT_INDEX]);

    // overall rating box + label
    panel.add(new JLabel(mLocalizer.msg("overall", "Overall") + ":"), cc.xy(1, 3));
    mOverallRatingBox = new RatingComboBox(filterRating, Rating.OVERALL_RATING_KEY);
    panel.add(mOverallRatingBox, cc.xy(3, 3));

    // action rating box + label
    panel.add(new JLabel(mLocalizer.msg("action", "Action") + ":"), cc.xy(1, 5));
    mActionRatingBox = new RatingComboBox(filterRating, Rating.ACTION_RATING_KEY);
    panel.add(mActionRatingBox, cc.xy(3, 5));

    // fun rating box + label
    panel.add(new JLabel(mLocalizer.msg("fun", "Fun") + ":"), cc.xy(1, 7));
    mFunRatingBox = new RatingComboBox(filterRating, Rating.FUN_RATING_KEY);
    panel.add(mFunRatingBox, cc.xy(3, 7));

    // erotic rating box + label
    panel.add(new JLabel(mLocalizer.msg("erotic", "Erotic") + ":"), cc.xy(1, 9));
    mEroticRatingBox = new RatingComboBox(filterRating, Rating.EROTIC_RATING_KEY);
    panel.add(mEroticRatingBox, cc.xy(3, 9));

    // tension rating box + label
    panel.add(new JLabel(mLocalizer.msg("tension", "Tension") + ":"), cc.xy(1, 11));
    mTensionRatingBox = new RatingComboBox(filterRating, Rating.TENSION_RATING_KEY);
    panel.add(mTensionRatingBox, cc.xy(3, 11));

    // entitlement rating box + label
    panel.add(new JLabel(mLocalizer.msg("entitlement", "Level") + ":"), cc.xy(1, 13));
    mEntitlementRatingBox = new RatingComboBox(filterRating, Rating.ENTITLEMENT_RATING_KEY);
    panel.add(mEntitlementRatingBox, cc.xy(3, 13));

    return panel;
  }