@Override
  public @NotNull OptPane getOptionsPane() {
    return pane(
      tabs(
        tab(JavaI18nBundle.message("inspection.i18n.option.tab.general"),
            checkbox("ignoreForAllButNls", JavaI18nBundle.message("inspection.i18n.option.ignore.nls"))
              .description(JavaI18nBundle.message("inspection.i18n.option.ignore.nls.description")),
            checkbox("reportUnannotatedReferences", JavaI18nBundle.message("inspection.i18n.option.report.unannotated.refs"))
              .description(JavaI18nBundle.message("inspection.i18n.option.report.unannotated.refs.description")),
            expandableString("nonNlsCommentPattern", JavaI18nBundle.message("inspection.i18n.option.suppression.comment"), "\n")
              .description(JavaI18nBundle.message("inspection.i18n.option.suppression.comment.description"))
        ),
        tab(JavaI18nBundle.message("inspection.i18n.option.tab.context"),
            group(JavaI18nBundle.message("inspection.i18n.option.ignore.context"),
                  checkbox("ignoreForAssertStatements", JavaI18nBundle.message("inspection.i18n.option.ignore.context.assert"))
                    .description(exampleDescription("assert s.equals(\"Message\");")),
                  checkbox("ignoreForJUnitAsserts", JavaI18nBundle.message("inspection.i18n.option.ignore.context.junit.assert"))
                    .description(exampleDescription("assertEquals(s, \"Message\");")),
                  checkbox("ignoreAssignedToConstants", JavaI18nBundle.message(
                    "inspection.i18n.option.ignore.context.assigned.to.constants"))
                    .description(exampleDescription("static final ID = \"Message\"")),
                  checkbox("ignoreToString", JavaI18nBundle.message("inspection.i18n.option.ignore.context.tostring"))
                    .description(exampleDescription("""
                      public String toString() {
                        return "MyObject: value = " + value;
                      }""")),
                  checkbox("ignoreForEnumConstants", JavaI18nBundle.message("inspection.i18n.option.ignore.context.enum"))
                    .description(exampleDescription("""
                      enum MyEnum {
                        VALUE("Message");
                        MyEnum(String msg) {}
                      }""")),
                  checkbox("ignoreForExceptionConstructors", JavaI18nBundle.message(
                             "inspection.i18n.option.ignore.context.exception.constructor"),
                     stringList("ignoreForSpecifiedExceptionConstructors", "",
                                new JavaClassValidator().withSuperClass(CommonClassNames.JAVA_LANG_THROWABLE)))
            )
        ),
        tab(JavaI18nBundle.message("inspection.i18n.option.tab.literals"),
            group(JavaI18nBundle.message("inspection.i18n.option.no.report.content"),
                  checkbox("ignoreForClassReferences", JavaI18nBundle.message(
                    "inspection.i18n.option.no.report.content.qualified.class.names")),
                  checkbox("ignoreForPropertyKeyReferences", JavaI18nBundle.message(
                    "inspection.i18n.option.no.report.content.property.keys")),
                  checkbox("ignoreForNonAlpha", JavaI18nBundle.message("inspection.i18n.option.no.report.content.nonalphanumerics")),
                  expandableString("nonNlsLiteralPattern", JavaI18nBundle.message("inspection.i18n.option.no.report.content.string.pattern"),
                                   "\n")
                  )
        )
      )
    );
  }
@Override
  public @NotNull OptPane getOptionsPane()