/* Ċ Ġ* ĠCopyright Ġ 2 0 1 6 ĠJan ĠHack el Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġj hun ov is . um la uts Ċ Ċ import Ġcom . intellij . ide . util . goto ByName . Default Class Navigation Contributor Ċ import Ġcom . intellij . ide . util . goto ByName . Default File Navigation Contributor Ċ import Ġcom . intellij . ide . util . goto ByName . Default Symbol Navigation Contributor Ċ import Ġcom . intellij . navigation . Choose ByName Contributor Ex Ċ import Ġcom . intellij . navigation . Navigation Item Ċ import Ġcom . intellij . psi . search . Global Search Scope Ċ import Ġcom . intellij . util . Processor Ċ import Ġcom . intellij . util . indexing . Find Symbol Parameters Ċ import Ġcom . intellij . util . indexing . Id Filter Ċ Ċ /** Ċ Ġ* ĠSearch Ġfor Ġvariations Ġof Ġthe Ġclass Ġname Ġpattern ed Ġentered Ġby Ġthe ĠIDEA Ġuser Ġby Ġmapping ĠGerman Ġnative Ġcharacters Ġto Ċ Ġ* Ġtheir ĠASCII - trans l iteration Ġand Ġvice Ġvers a . Ċ Ġ* Ċ Ġ* Ġ@ author Ġ< a Ġhref =" mailto : jh un ov is + idea @ gmail . com "> Jan ĠHack el </ a > Ċ Ġ*/ Ċ open Ġclass ĠTrans l iter ating Navigation Contributor Ċ constructor ( val Ġdelegate : ĠChoose ByName Contributor Ex ) Ġ: ĠChoose ByName Contributor Ex Ġby Ġdelegate Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġger man Trans l iteration Ġ= ĠGerman Trans l iteration () ĊĊĠĠĠ Ġfinal Ġoverride Ġfun Ġprocess Names ( processor : ĠProcessor < String >, Ġscope : ĠGlobal Search Scope , Ġfilter : ĠId Filter ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġdelegate . process Names ({ Ġname Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtrans l iter ated Ġ= Ġtrans l iterate ( name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( name Ġ!= Ġtrans l iter ated ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprocessor . process ( name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprocessor . process ( trans l iter ated ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠ Ġ}, Ġscope , Ġfilter ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfinal Ġoverride Ġfun Ġprocess Elements WithName ( name : ĠString , Ġprocessor : ĠProcessor < Navigation Item >, Ġparameters : ĠFind Symbol Parameters ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcomplete Pattern Ġ= Ġparameters . complete Pattern ĊĠĠĠĠĠĠĠ Ġval Ġtrans l iter ated Pattern Ġ= Ġtrans l iterate ( complete Pattern ) ĊĠĠĠĠĠĠĠ Ġif Ġ( trans l iter ated Pattern Ġ!= Ġcomplete Pattern ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtrans l iter ated Name Ġ= Ġtrans l iterate ( name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdelegate . process Elements WithName ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrans l iter ated Name , Ġprocessor , Ġnew Parameters With ( parameters , Ġtrans l iter ated Pattern , Ġtrans l iter ated Name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġnew Parameters With ( parameters : ĠFind Symbol Parameters , Ġpattern : ĠString , Ġname : ĠString ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFind Symbol Parameters ( pattern , Ġname , Ġparameters . search Scope , Ġparameters . id Filter ) ĊĊĠĠĠ Ġprivate Ġfun Ġtrans l iterate ( symbol : ĠString ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġger man Trans l iteration . trans l iterate ( symbol ) Ċ } Ċ Ċ class ĠTrans l iter ating Class Navigation Contributor Ġ: ĠTrans l iter ating Navigation Contributor ( Default Class Navigation Contributor ()) Ċ class ĠTrans l iter ating File Navigation Contributor Ġ: ĠTrans l iter ating Navigation Contributor ( Default File Navigation Contributor ()) Ċ class ĠTrans l iter ating Symbol Navigation Contributor Ġ: ĠTrans l iter ating Navigation Contributor ( Default Symbol Navigation Contributor ())