Skip to content

Commit 2112d97

Browse files
committed
Handling to use the same-object (ConnectionInfoVBox UI)
1 parent 5462f57 commit 2112d97

File tree

2 files changed

+29
-12
lines changed

2 files changed

+29
-12
lines changed

src/main/java/root/javafx/Controller/SettingMenuController.java

Lines changed: 25 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -464,23 +464,36 @@ private void createSettingDynamicElements() {
464464
jschConnInfoList = PropertiesUtils.getJschConnectionMap();
465465
alcMap = PropertiesUtils.getAlertLogCommandMap();
466466

467-
// DB 접속정보 UI
468-
ConnectionInfoVBox dbConnVBox = new ConnectionInfoVBox(DBConnectionInfoAnchorPane.class);
469-
dbConnVBox.setMenuTitle("DB 접속정보", FontAwesomeIcon.DATABASE);
470-
dbConnVBox.setId("dbConnVBox");
471-
connInfoVBox.getChildren().add(dbConnVBox);
472-
467+
ConnectionInfoVBox dbConnVBox = null;
468+
if (connInfoVBox.lookup("#dbConnVBox") != null) {
469+
dbConnVBox = (ConnectionInfoVBox) connInfoVBox.lookup("#dbConnVBox");
470+
dbConnVBox.clearConnInfoMap();
471+
} else {
472+
// DB 접속정보 UI
473+
dbConnVBox = new ConnectionInfoVBox(DBConnectionInfoAnchorPane.class);
474+
dbConnVBox.setMenuTitle("DB 접속정보", FontAwesomeIcon.DATABASE);
475+
dbConnVBox.setId("dbConnVBox");
476+
connInfoVBox.getChildren().add(dbConnVBox);
477+
}
478+
473479
for (JdbcConnectionInfo jdbc : jdbcConnInfoList) {
474480
DBConnectionInfoAnchorPane dbConnAP = new DBConnectionInfoAnchorPane();
475481
dbConnAP.setInitialValue(jdbc);
476482
dbConnVBox.addConnectionInfoAP(dbConnAP);
477483
}
478-
479-
// Server 접속정보 UI
480-
ConnectionInfoVBox serverConnVBox = new ConnectionInfoVBox(ServerConnectionInfoAnchorPane.class);
481-
serverConnVBox.setMenuTitle("서버 접속정보", FontAwesomeIcon.SERVER);
482-
serverConnVBox.setId("serverConnVBox");
483-
connInfoVBox.getChildren().add(serverConnVBox);
484+
485+
ConnectionInfoVBox serverConnVBox = null;
486+
if(connInfoVBox.lookup("#serverConnVBox") != null) {
487+
((ConnectionInfoVBox) connInfoVBox.lookup("#serverConnVBox")).clearConnInfoMap();
488+
serverConnVBox = (ConnectionInfoVBox) connInfoVBox.lookup("#serverConnVBox");
489+
serverConnVBox.clearConnInfoMap();
490+
} else {
491+
// Server 접속정보 UI
492+
serverConnVBox = new ConnectionInfoVBox(ServerConnectionInfoAnchorPane.class);
493+
serverConnVBox.setMenuTitle("서버 접속정보", FontAwesomeIcon.SERVER);
494+
serverConnVBox.setId("serverConnVBox");
495+
connInfoVBox.getChildren().add(serverConnVBox);
496+
}
484497

485498
for (JschConnectionInfo jsch : jschConnInfoList) {
486499
ServerConnectionInfoAnchorPane serverConnAP = new ServerConnectionInfoAnchorPane();

src/main/java/root/javafx/CustomView/ConnectionInfoVBox.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,10 @@ public ConnectionInfoVBox(Class<? extends AnchorPane> childAPClazz) {
7878
e.printStackTrace();
7979
}
8080
}
81+
82+
public void clearConnInfoMap() {
83+
this.connInfoAPMap.clear();
84+
}
8185

8286
public void setMenuTitle(String menuTitle, FontAwesomeIcon menuIcon) {
8387
menuTitleLB.setText(menuTitle);

0 commit comments

Comments
 (0)