|
11 | 11 | import javafx.collections.FXCollections; |
12 | 12 | import javafx.collections.ObservableList; |
13 | 13 | import javafx.fxml.FXMLLoader; |
| 14 | +import javafx.scene.control.ContextMenu; |
| 15 | +import javafx.scene.control.Menu; |
| 16 | +import javafx.scene.control.MenuItem; |
| 17 | +import javafx.scene.input.MouseButton; |
14 | 18 | import lombok.Getter; |
15 | 19 | import lombok.Setter; |
16 | 20 | import lombok.extern.slf4j.Slf4j; |
| 21 | +import org.apache.commons.lang3.StringUtils; |
17 | 22 |
|
| 23 | +import java.io.File; |
18 | 24 | import java.net.URL; |
19 | 25 | import java.util.HashMap; |
20 | 26 | import java.util.Map; |
@@ -62,6 +68,39 @@ private void initView() { |
62 | 68 | } |
63 | 69 |
|
64 | 70 | private void initEvent() { |
| 71 | + receiverConfigListView.setOnMouseClicked(event -> { |
| 72 | + if (event.getButton() == MouseButton.SECONDARY) { |
| 73 | + Menu menu = new Menu("添加"); |
| 74 | + String packageName = "com.easipass.gateway.receiver.bean"; |
| 75 | + ClassLoader loader = Thread.currentThread().getContextClassLoader(); |
| 76 | + String packagePath = packageName.replace(".", "/"); |
| 77 | + URL url = loader.getResource(packagePath); |
| 78 | + for (File childFile : new File(url.getPath()).listFiles()) { |
| 79 | + if (!childFile.getName().contains("$")) { |
| 80 | + MenuItem menuAdd = new MenuItem(StringUtils.removeEnd(childFile.getName(), ".class")); |
| 81 | + menuAdd.setOnAction(event1 -> { |
| 82 | + receiverConfigListData.add(menuAdd.getText()); |
| 83 | + }); |
| 84 | + menu.getItems().add(menuAdd); |
| 85 | + } |
| 86 | + } |
| 87 | + MenuItem menu_Copy = new MenuItem("复制选中行"); |
| 88 | + menu_Copy.setOnAction(event1 -> { |
| 89 | +// Map<String,String> map = dialogTableView.getSelectionModel().getSelectedItem(); |
| 90 | +// Map<String,String> map2 = new HashMap<String,String>(map); |
| 91 | +// dialogTableData.add(dialogTableView.getSelectionModel().getSelectedIndex(), map2); |
| 92 | + }); |
| 93 | + MenuItem menu_Remove = new MenuItem("删除选中行"); |
| 94 | + menu_Remove.setOnAction(event1 -> { |
| 95 | + receiverConfigListData.remove(receiverConfigListView.getSelectionModel().getSelectedItem()); |
| 96 | + }); |
| 97 | + MenuItem menu_RemoveAll = new MenuItem("删除所有"); |
| 98 | + menu_RemoveAll.setOnAction(event1 -> { |
| 99 | + receiverConfigListData.clear(); |
| 100 | + }); |
| 101 | + receiverConfigListView.setContextMenu(new ContextMenu(menu, menu_Copy, menu_Remove, menu_RemoveAll)); |
| 102 | + } |
| 103 | + }); |
65 | 104 | } |
66 | 105 |
|
67 | 106 | private void initService() { |
@@ -93,10 +132,10 @@ public void setData(GatewayConfToolController gatewayConfToolController, TaskCon |
93 | 132 | senderConfigListData.add(senderConfig.getServiceName()); |
94 | 133 | } |
95 | 134 | propertiesTableData.clear(); |
96 | | - taskConfig.getProperties().forEach((s, o) -> { |
| 135 | + taskConfig.getProperties().forEach((key, value) -> { |
97 | 136 | Map<String, String> map = new HashMap<>(); |
98 | | - map.put("key",s); |
99 | | - map.put("value", o.toString()); |
| 137 | + map.put("key", key); |
| 138 | + map.put("value", value.toString()); |
100 | 139 | propertiesTableData.add(map); |
101 | 140 | }); |
102 | 141 | } |
|
0 commit comments