/* Ċ Ġ* ĠCopyright Ġ 2 0 1 9 ĠSer ge ĠMer z li ak ov Ċ Ġ* Ċ Ġ* Ġ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 Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġhttps :// 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 Ġorg . ep ist atic . app 3 . controller Ċ Ċ import Ġcom . google . common . event bus . EventBus Ċ import Ġjavafx . f xml . FXML Ċ import Ġjavafx . f xml . FXML Loader Ċ import Ġjavafx . scene . control . Button Ċ import Ġjavafx . scene . layout . Anchor Pane Ċ import Ġjavafx . scene . layout . Pane Ċ import Ġjavafx . stage . Stage Ċ Ċ /** Ċ Ġ* ĠController Ġfor Ġapp 3 / app 3 . f xml . ĠMan ages Ġthe Ġmain ĠUI Ġand Ġall Ġthe Ġother Ġcontrollers Ċ Ġ*/ Ċ class ĠApplication Controller Ġ{ ĊĊĠĠ Ġ@ FXML Ġlateinit Ġvar Ġexit Button : ĠButton ĊĠĠ Ġ@ FXML Ġlateinit Ġvar Ġleft Pane : ĠAnchor Pane ĊĠĠ Ġ@ FXML Ġlateinit Ġvar Ġtop Right Pane : ĠAnchor Pane ĊĠĠ Ġ@ FXML Ġlateinit Ġvar Ġbottom Right Pane : ĠAnchor Pane ĊĊĠĠ Ġ// Ġthis Ġbus Ġis Ġused Ġapplication Ġwide ĊĠĠ Ġprivate Ġval Ġapplication EventBus Ġ= ĠEvent Bus () ĊĠĠ Ġprivate Ġval Ġfile List Controller Ġ= ĠFile List Controller ( application EventBus ) ĊĠĠ Ġprivate Ġval Ġfile Data Controller Ġ= ĠFile Data Controller ( application EventBus ) ĊĠĠ Ġprivate Ġval Ġfile Properties Controller Ġ= ĠFile Properties Controller ( application EventBus ) ĊĊĠĠ Ġ@ FXML ĊĠĠ Ġfun Ġinitialize () Ġ{ ĊĊĠĠĠĠĠ Ġ// Ġload Ġfile Ġlist ĠUI Ġand Ġinsert Ġinto Ġit 's Ġpane Ġin Ġthe Ġapplication ĊĠĠĠĠĠ Ġval Ġfile List Pane Ġ= Ġsetup Controller ("/ app 3 / file List . f xml ", Ġfile List Controller ) ĊĠĠĠĠĠ ĠAnchor Pane . set Top Anchor ( file List Pane , Ġ 0 . 0 ) ĊĠĠĠĠĠ ĠAnchor Pane . set Left Anchor ( file List Pane , Ġ 0 . 0 ) ĊĠĠĠĠĠ ĠAnchor Pane . set Bottom Anchor ( file List Pane , Ġ 2 . 0 ) ĊĠĠĠĠĠ ĠAnchor Pane . set Right Anchor ( file List Pane , Ġ 0 . 0 ) ĊĠĠĠĠĠ Ġleft Pane . children . add ( file List Pane ) ĊĊĠĠĠĠĠ Ġ// Ġload Ġfile Ġproperties ĠUI Ġand Ġinsert Ġinto Ġit 's Ġpane Ġin Ġthe Ġapplication ĊĠĠĠĠĠ Ġval Ġfile Properties Pane Ġ= Ġsetup Controller ("/ app 3 / file Properties . f xml ", Ġfile Properties Controller ) ĊĠĠĠĠĠ ĠAnchor Pane . set Top Anchor ( file Properties Pane , Ġ 0 . 0 ) ĊĠĠĠĠĠ ĠAnchor Pane . set Left Anchor ( file Properties Pane , Ġ 0 . 0 ) ĊĠĠĠĠĠ ĠAnchor Pane . set Bottom Anchor ( file Properties Pane , Ġ 2 . 0 ) ĊĠĠĠĠĠ ĠAnchor Pane . set Right Anchor ( file Properties Pane , Ġ 5 . 0 ) ĊĠĠĠĠĠ Ġtop Right Pane . children . add ( file Properties Pane ) ĊĊĠĠĠĠĠ Ġ// Ġload Ġfile Ġcontent ĠUI Ġand Ġinsert Ġinto Ġit 's Ġpane Ġin Ġthe Ġapplication ĊĠĠĠĠĠ Ġval Ġfile Data Pane Ġ= Ġsetup Controller ("/ app 3 / file Data . f xml ", Ġfile Data Controller ) ĊĠĠĠĠĠ ĠAnchor Pane . set Top Anchor ( file Data Pane , Ġ 0 . 0 ) ĊĠĠĠĠĠ ĠAnchor Pane . set Left Anchor ( file Data Pane , Ġ 0 . 0 ) ĊĠĠĠĠĠ ĠAnchor Pane . set Bottom Anchor ( file Data Pane , Ġ 2 . 0 ) ĊĠĠĠĠĠ ĠAnchor Pane . set Right Anchor ( file Data Pane , Ġ 5 . 0 ) ĊĠĠĠĠĠ Ġbottom Right Pane . children . add ( file Data Pane ) ĊĠĠ Ġ} ĊĊĠĠ Ġ@ FXML ĊĠĠ Ġfun Ġclose Application () Ġ{ ĊĠĠĠĠĠ Ġval Ġstage Ġ= Ġexit Button . scene . window Ġas ĠStage ĊĠĠĠĠĠ Ġstage . close () ĊĠĠ Ġ} ĊĊĠĠ Ġ/** ĊĠĠĠ Ġ* ĠUtility Ġfunction Ġto Ġload ĠF XML Ġand Ġlink Ġit Ġto Ġits Ġcontroller ĊĠĠĠ Ġ*/ ĊĠĠ Ġprivate Ġfun Ġsetup Controller ( f xml Path : ĠString , Ġcontroller : ĠEvent Aware Controller ): ĠP ane Ġ{ ĊĠĠĠĠĠ Ġval Ġloader Ġ= ĠF XML Loader ( java Class . getResource ( f xml Path )) ĊĠĠĠĠĠ Ġloader . set Controller ( controller ) ĊĠĠĠĠĠ Ġreturn Ġloader . load < Pane >() ĊĠĠ Ġ} Ċ }