From 298a23c5e603e25a3776e2f5978a3bf464336108 Mon Sep 17 00:00:00 2001 From: Dennis Hilhorst Date: Mon, 23 Jun 2025 15:33:58 +0200 Subject: [PATCH] [phoebus] expand macros in OpenNodeActionHandler --- .../saveandrestore/actions/OpenNodeActionHandler.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/save-and-restore/app/src/main/java/org/phoebus/applications/saveandrestore/actions/OpenNodeActionHandler.java b/app/save-and-restore/app/src/main/java/org/phoebus/applications/saveandrestore/actions/OpenNodeActionHandler.java index 638e3b77a1..e0a4b18308 100644 --- a/app/save-and-restore/app/src/main/java/org/phoebus/applications/saveandrestore/actions/OpenNodeActionHandler.java +++ b/app/save-and-restore/app/src/main/java/org/phoebus/applications/saveandrestore/actions/OpenNodeActionHandler.java @@ -9,6 +9,7 @@ import org.csstudio.display.builder.model.spi.ActionHandler; import org.csstudio.display.builder.model.spi.ActionInfo; import org.phoebus.applications.saveandrestore.SaveAndRestoreApplication; +import org.phoebus.framework.macros.MacroHandler; import org.phoebus.framework.workbench.ApplicationService; import java.net.URI; @@ -27,8 +28,11 @@ public void handleAction(Widget sourceWidget, ActionInfo actionInfo) { Platform.runLater(() -> { try { + String nodeId = openNodeActionInfo.getNodeId(); + final String expanded = MacroHandler.replace(sourceWidget.getMacrosOrProperties(), nodeId); + ApplicationService.createInstance(SaveAndRestoreApplication.NAME, URI.create("file:/" + - URLEncoder.encode(openNodeActionInfo.getNodeId(), StandardCharsets.UTF_8) + "?app=saveandrestore&action=" + OpenNodeAction.OPEN_SAR_NODE)); + URLEncoder.encode(expanded, StandardCharsets.UTF_8) + "?app=saveandrestore&action=" + OpenNodeAction.OPEN_SAR_NODE)); } catch (Exception e) { throw new RuntimeException(e); }