// ĠCopyright Ġ 2 0 0 0 - 2 0 1 8 ĠJetBrains Ġs . r . o . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ package Ġorg . jetbrains . plugins . github . ui Ċ Ċ import Ġcom . intellij . openapi . application . Application Manager Ċ import Ġcom . intellij . openapi . options . Configurable Ċ import Ġcom . intellij . openapi . options . Configurable Base Ċ import Ġcom . intellij . openapi . project . Project Ċ import Ġorg . jetbrains . plugins . github . api . Github ApiRequest Executor Ċ import Ġorg . jetbrains . plugins . github . authentication . accounts .* Ċ import Ġorg . jetbrains . plugins . github . util . Github Settings Ċ import Ġorg . jetbrains . plugins . github . util . Github Util Ċ Ċ class ĠGithub Settings Configurable Ġinternal Ġconstructor ( private Ġval Ġproject : ĠProject , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġsettings : ĠGithub Settings , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġaccount Manager : ĠGithub Account Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġdefault Account Holder : ĠGithub Project Default Account Holder , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġexecutor Factory : ĠGithub ApiRequest Executor . Factory , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġaccount Information Provider : ĠGithub Account Information Provider ) Ġ: ĊĠ ĠConfigur able Base < Github Settings Panel , ĠGithub Settings Configurable . Github Settings Holder >(" settings . github ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠGithub Util . SERVICE _ DISPLAY _ NAME , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" settings . github "), ĊĠ ĠConfigur able . No Margin Ġ{ ĊĊĠ Ġinit Ġ{ ĊĠĠĠ ĠApplication Manager . getApplication (). message Bus ĊĠĠĠĠĠ Ġ. connect ( project ) ĊĠĠĠĠĠ Ġ. subscribe ( Github Account Manager . ACCOUNT _ TOKEN _ CHANGED _ TOPIC , Ġobject Ġ: ĠAccount Token Changed Listener Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġtoken Changed ( account : ĠGithub Account ) Ġ{ ĊĠĠĠĠĠĠĠĠĠ Ġif Ġ(! is Modified ) Ġreset () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġ}) ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġget Settings (): ĠGithub Settings Holder Ġ{ ĊĠĠĠ Ġreturn ĠGithub Settings Holder ( settings , Ġaccount Manager , Ġdefault Account Holder ) ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġcreate Ui (): ĠGithub Settings Panel Ġ{ ĊĠĠĠ Ġreturn ĠGithub Settings Panel ( project , Ġexecutor Factory , Ġaccount Information Provider ) ĊĠ Ġ} ĊĊĠ Ġinner Ġclass ĠGithub Settings Holder Ġinternal Ġconstructor ( val Ġapplication : ĠGithub Settings , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġapplication Accounts : ĠGithub Account Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġproject Account : ĠGithub Project Default Account Holder ) Ċ } Ċ