package Ġcom . int uit . ddb Ċ Ċ import Ġcom . intellij . openapi . file Chooser . FileChooser Descriptor Ċ import Ġcom . intellij . openapi . options . Configurable Ċ import Ġcom . intellij . openapi . project . Project Ċ import Ġcom . intellij . openapi . ui . TextField With Browse Button Ċ import Ġcom . intellij . ui Designer . core . Spacer Ċ import Ġcom . intellij . util . ui . Form Builder Ċ import Ġcom . intellij . util . ui . UI Util Ċ import Ġcom . int uit . ddb . conf . Dock Dock Build Project Settings Ċ import Ġjavax . swing . J Component Ċ import Ġjavax . swing . JTextField Ċ Ċ // ĠDocker ĠMake Ġproject Ġconfig Ċ class ĠDock Dock Build Configurable ( project : ĠProject ?, Ġprivate Ġval Ġsettings : ĠDock Dock Build Project Settings ) Ġ: ĠConfigur able Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġdocker Path Field Ġ= ĠTextField With Browse Button () ĊĠĠĠ Ġprivate Ġval Ġcode Path Field Ġ= ĠTextField With Browse Button () ĊĠĠĠ Ġprivate Ġval Ġmaven Cache Path Field Ġ= ĠTextField With Browse Button () ĊĠĠĠ Ġprivate Ġval Ġadvanced Docker Settings Field Ġ= ĠJTextField () ĊĠĠĠ Ġprivate Ġval Ġdefault Code Path Ġ= ĠgetDefault Code Path ( project !! ) ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġdocker Path Field . add Browse Folder Listener ( PLUGIN _ NAME , Ġ" Path Ġto ĠDocker Ġexecutable ", Ġproject , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFile Chooser Descriptor ( true , Ġfalse , Ġfalse , Ġfalse , Ġfalse , Ġfalse )) ĊĠĠĠĠĠĠĠ Ġcode Path Field . add Browse Folder Listener ( PLUGIN _ NAME , Ġ" Path Ġto Ġcode Ġroot ", Ġproject , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFile Chooser Descriptor ( false , Ġtrue , Ġfalse , Ġfalse , Ġfalse , Ġfalse )) ĊĠĠĠĠĠĠĠ Ġmaven Cache Path Field . add Browse Folder Listener ( PLUGIN _ NAME , Ġ" Path Ġto ĠMaven Ġcache ", Ġproject , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFile Chooser Descriptor ( false , Ġtrue , Ġfalse , Ġfalse , Ġfalse , Ġfalse )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġis Modified (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ( settings . settings ?. docker Path Ġ!= Ġdocker Path Field . text ) Ġ|| ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( settings . settings ?. code Path Ġ!= Ġcode Path Field . text ) Ġ|| ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( settings . settings ?. maven Cache Path Ġ!= Ġmaven Cache Path Field . text ) Ġ|| ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( settings . settings ?. advanced Docker Settings Ġ!= Ġadvanced Docker Settings Field . text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget DisplayName () Ġ= ĠP LU GIN _ NAME ĊĊĠĠĠ Ġoverride Ġfun Ġapply () Ġ{ ĊĠĠĠĠĠĠĠ Ġsettings . settings ?. docker Path Ġ= Ġdocker Path Field . text ĊĠĠĠĠĠĠĠ Ġsettings . settings ?. code Path Ġ= Ġcode Path Field . text ĊĠĠĠĠĠĠĠ Ġsettings . settings ?. maven Cache Path Ġ= Ġmaven Cache Path Field . text ĊĠĠĠĠĠĠĠ Ġsettings . settings ?. advanced Docker Settings Ġ= Ġadvanced Docker Settings Field . text ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcreate Component (): ĠJ Component Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠForm Builder . create Form Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Align Label On Right ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setHorizontal Gap ( UI Util . DEFAULT _ HG AP ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Vertical Gap ( UI Util . DEFAULT _ VG AP ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Labeled Component (" Path Ġto Ġ& Docker Ġexecutable ", Ġdocker Path Field ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setHorizontal Gap ( UI Util . DEFAULT _ HG AP ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Labeled Component (" Path Ġto Ġcode Ġroot ", Ġcode Path Field ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setHorizontal Gap ( UI Util . DEFAULT _ HG AP ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Labeled Component (" Path Ġto ĠMaven Ġcache ", Ġmaven Cache Path Field ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setHorizontal Gap ( UI Util . DEFAULT _ HG AP ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Labeled Component (" Advanced Ġdocker Ġsettings ", Ġadvanced Docker Settings Field ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Tooltip (" Use Ġwith Ġca ution !") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. addComponent Fill Vert ically ( Spacer (), Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. panel ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġreset () Ġ{ ĊĠĠĠĠĠĠĠ Ġdocker Path Field . text Ġ= Ġsettings . settings ?. docker Path Ġ?: ĠgetDefault Docker Path () ĊĠĠĠĠĠĠĠ Ġcode Path Field . text Ġ= Ġsettings . settings ?. code Path Ġ?: Ġdefault Code Path ĊĠĠĠĠĠĠĠ Ġmaven Cache Path Field . text Ġ= Ġsettings . settings ?. maven Cache Path Ġ?: ĠgetDefault M 2 Path () ĊĠĠĠĠĠĠĠ Ġadvanced Docker Settings Field . text Ġ= Ġsettings . settings ?. advanced Docker Settings Ġ?: Ġ"" ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Help Topic () Ġ= Ġnull Ċ }