package Ġcom . github . lan ah ra . modifier utils . actions Ċ Ċ import Ġcom . github . lan ah ra . modifier utils . Psi In Selection Element Visitor Ċ import Ġcom . intellij . openapi . action System . An Action Ċ import Ġcom . intellij . openapi . action System . An ActionEvent Ċ import Ġcom . intellij . openapi . action System . Common Data Keys Ċ import Ġcom . intellij . openapi . command . Write Command Action Ċ import Ġcom . intellij . openapi . editor . Caret Ċ import Ġcom . intellij . openapi . editor . Editor Ċ import Ġcom . intellij . psi . Psi Element Ċ import Ġcom . intellij . psi . Psi File Ċ import Ġcom . intellij . psi . Psi Modifier List Ċ import Ġcom . intellij . psi . Psi Modifier List Owner Ċ Ċ abstract Ġclass ĠToggle Element Modifier Action < T Ġ: ĠPsi Element > Ġ: ĠAn Action () Ġ{ ĊĠĠĠ Ġabstract Ġfun Ġmodifier (): ĠString ĊĊĠĠĠ Ġabstract Ġfun Ġvisitor ( caret : ĠCare t ): ĠPsi In Selection Element Visitor < T > ĊĊĠĠĠ Ġoverride Ġfun ĠactionPerformed ( e : ĠAn ActionEvent ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpsi File : ĠPsi File Ġ= Ġe . getData ( Common Data Keys . P SI _ FILE ) Ġ?: Ġreturn ĊĠĠĠĠĠĠĠ Ġval Ġeditor : ĠEditor Ġ= Ġe . getData ( Common Data Keys . EDITOR ) Ġ?: Ġreturn ĊĠĠĠĠĠĠĠ Ġval Ġpsi Modifier List Owners : ĠMutable List < Psi Modifier List Owner > Ġ= Ġmutable ListOf () ĊĊĠĠĠĠĠĠĠ Ġeditor . caret Model . run ForEach Caret Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvisitor Ġ= Ġvisitor ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpsi File . accept ( visitor ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpsi Modifier List Owners . addAll ( visitor . visited Elements . filter Is Instance < Psi Modifier List Owner >()) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠWrite Command Action . run Write Command Action ( e . project ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpsi Modifier List Owners . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmodifier List : ĠPsi Modifier List ? Ġ= Ġit . modifier List ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier List ?. set Modifier Property ( modifier (), Ġ! modifier List . has Modifier Property ( modifier ())) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ