package Ġnl . h ann ah sten . tex ify idea . settings . sdk Ċ Ċ import Ġcom . intellij . openapi . application . Application Manager Ċ import Ġcom . intellij . openapi . project Roots . Additional Data Configurable Ċ import Ġcom . intellij . openapi . project Roots . Sdk Ċ import Ġcom . intellij . openapi . ui . ComboBox Ċ import Ġcom . intellij . ui . components . JB Label Ċ import Ġjava . awt . Dimension Ċ import Ġjava . awt . Flow Layout Ċ import Ġjavax . swing . J Component Ċ import Ġjavax . swing . JPanel Ċ Ċ /** Ċ Ġ* ĠCustom ized ĠUI Ġfor Ġthe ĠSDK Ġsettings Ġpage Ġof Ġ[ Docker Sdk ]. Ċ Ġ* Ċ Ġ* Ġ@ author ĠThomas Ċ Ġ*/ Ċ class ĠDocker Sdk Configurable Ġ: ĠAdditional Data Configurable Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġsdk : ĠS dk ? Ġ= Ġnull ĊĠĠĠ Ġoverride Ġfun Ġset Sdk ( sdk : ĠS dk ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . sdk Ġ= Ġsdk ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġimage Name : ĠCombo Box < String > ĊĊĠĠĠ Ġoverride Ġfun Ġcreate Component (): ĠJ Component Ġ{ ĊĠĠĠĠĠĠĠ Ġimage Name Ġ= ĠCombo Box ( Docker Sdk . available Images . to Typed Array ()) ĊĠĠĠĠĠĠĠ Ġval Ġselected Ġ= Ġ( sdk ?. sdk Additional Data Ġas ? ĠDocker Sdk Additional Data )?. image Name ĊĠĠĠĠĠĠĠ Ġif Ġ( selected Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimage Name . selected Item Ġ= Ġselected ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimage Name . selectedIndex Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġwidth ĊĠĠĠĠĠĠĠ Ġval Ġlongest String Ġ= ĠDocker Sdk . available Images . max By OrNull Ġ{ Ġit . length Ġ} Ġ?: Ġ" mik tex : latest " ĊĠĠĠĠĠĠĠ Ġval Ġwidth Ġ= Ġimage Name . getFont Metrics ( image Name . font ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. string Width ( longest String ) ĊĠĠĠĠĠĠĠ Ġimage Name . preferred Size Ġ= ĠDimension ( width , Ġimage Name . preferred Size . height ) ĊĊĠĠĠĠĠĠĠ Ġreturn ĠJPanel ( Flow Layout ( Flow Layout . LEFT )). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd ( JB Label (" Docker Ġimage Ġname : Ġ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd ( image Name ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġis Modified (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġsdk ?. sdk Additional Data Ġas ? ĠDocker Sdk Additional Data ĊĠĠĠĠĠĠĠ Ġreturn Ġdata ?. image Name Ġ!= Ġthis . image Name . selected Item Ġas ? ĠString ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġapply () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( sdk Ġ== Ġnull ) Ġreturn ĊĠĠĠĠĠĠĠ Ġval ĠnewData Ġ= ĠDocker Sdk Additional Data ( this . image Name . selected Item Ġas ĠString ) ĊĠĠĠĠĠĠĠ Ġval Ġmodific ator Ġ= Ġsdk !!. sdk Mod ific ator ĊĠĠĠĠĠĠĠ Ġmodific ator . version String Ġ= ĠnewData . image Name ĊĠĠĠĠĠĠĠ Ġmodific ator . sdk Additional Data Ġ= ĠnewData ĊĠĠĠĠĠĠĠ ĠApplication Manager . getApplication (). run Write Action Ġ{ Ġmodific ator . commit Changes () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġreset () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( sdk Ġ== Ġnull ) Ġreturn ĊĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġsdk !!. sdk Additional Data Ġas ? ĠDocker Sdk Additional Data Ġ?: Ġreturn ĊĠĠĠĠĠĠĠ Ġimage Name . selected Item Ġ= Ġdata . image Name Ġ?: Ġreturn ĊĠĠĠ Ġ} Ċ }