override fun propertyChange()

in src/org/jetbrains/r/visualization/inlays/table/filters/gui/AbstractFiltersHandler.kt [77:113]


  override fun propertyChange(evt: PropertyChangeEvent) {
    val parserModel = parserModel ?: return
    val target: Class<*>?
    var formatChange = false
    if (IParserModel.IGNORE_CASE_PROPERTY == evt.propertyName) {
      target = null
    } else {
      if (IParserModel.FORMAT_PROPERTY == evt.propertyName) {
        formatChange = true
      }
      else if (IParserModel.COMPARATOR_PROPERTY != evt.propertyName) {
        return
      }
      val cl = evt.newValue
      if (cl is Class<*>) {
        target = cl
      } else {
        return
      }
    }

    enableNotifications(false)
    for (editor in editors.values) {
      if (target == null) {
        editor.isIgnoreCase = parserModel.isIgnoreCase
      }
      else if (editor.modelClass == target) {
        if (formatChange) {
          editor.format = parserModel.getFormat(target)
        } else {
          editor.comparator = parserModel.getComparator(target)
        }
      }
    }

    enableNotifications(true)
  }