Commit b17c191c authored by Riegel's avatar Riegel
Browse files

Rework MeshView ContextMenu to allow copying of GML-ID

2 merge requests!28Version 3.17.0 Release,!26Add ZIP-archive support
Pipeline #10336 passed with stage
in 1 minute and 43 seconds
Showing with 22 additions and 4 deletions
+22 -4
package de.hft.stuttgart.citydoctor2.gui;
import de.hft.stuttgart.citydoctor2.datastructure.*;
import de.hft.stuttgart.citydoctor2.gui.tree.FeatureNode;
import de.hft.stuttgart.citydoctor2.utils.Localization;
import javafx.scene.input.Clipboard;
import javafx.scene.input.ClipboardContent;
import org.locationtech.proj4j.ProjCoordinate;
import de.hft.stuttgart.citydoctor2.datastructure.Polygon;
import de.hft.stuttgart.citydoctor2.datastructure.Vertex;
import de.hft.stuttgart.citydoctor2.gui.tree.Renderable;
import de.hft.stuttgart.citydoctor2.parser.ParserConfiguration;
import javafx.scene.control.ContextMenu;
......@@ -15,6 +18,8 @@ import javafx.scene.input.MouseButton;
import javafx.scene.input.MouseEvent;
import javafx.stage.Stage;
import static javafx.scene.input.Clipboard.getSystemClipboard;
public class VertexClickHandler implements ClickHandler {
private TreeView<Renderable> errorView;
......@@ -38,8 +43,21 @@ public class VertexClickHandler implements ClickHandler {
errorView.getSelectionModel().clearSelection();
renderer.highlight(p);
} else if (me.getButton() == MouseButton.SECONDARY) {
MenuItem mi = new MenuItem(p.getGmlId().getGmlString());
ContextMenu cMenu = new ContextMenu(mi);
ContextMenu cMenu = new ContextMenu();
MenuItem clipMi = new MenuItem(Localization.getText("MainWindow.copyId"));
clipMi.setOnAction(ea -> {
CityObject parent = p.getParent().getParent();
if (parent instanceof BoundarySurface bs) {
parent = bs.getParent();
}
Clipboard clipboard = getSystemClipboard();
ClipboardContent content = new ClipboardContent();
content.putString(parent.getGmlId().toString());
clipboard.setContent(content);
});
cMenu.getItems().add(clipMi);
cMenu.show(stage, me.getScreenX(), me.getScreenY());
}
}
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment