diff --git a/src/main/java/plugins/adufour/protocols/gui/block/WorkFlowContainer.java b/src/main/java/plugins/adufour/protocols/gui/block/WorkFlowContainer.java index 3a64436b5ed50a56ced759a9ed9b456443d68b9e..26edb379579715d1c088a970529b367db713cbab 100644 --- a/src/main/java/plugins/adufour/protocols/gui/block/WorkFlowContainer.java +++ b/src/main/java/plugins/adufour/protocols/gui/block/WorkFlowContainer.java @@ -553,7 +553,7 @@ public class WorkFlowContainer extends JLayeredPane implements WorkFlowListener, } MainFrame.pasteSelection(embed, true); - + workFlow.addBlock(embed.getBlockDescriptor()); } @@ -584,6 +584,9 @@ public class WorkFlowContainer extends JLayeredPane implements WorkFlowListener, public BlockPanel getBlockPanel(BlockDescriptor blockInfo) { + if (blockInfo == null) + return null; + if (blockInfo.getBlock() == workFlow) return getParentPanel(); diff --git a/src/main/java/plugins/adufour/protocols/gui/block/WorkFlowPanel.java b/src/main/java/plugins/adufour/protocols/gui/block/WorkFlowPanel.java index 1742785e651d22a5a06727d77bfbe4bf854a4132..1ee20018c9a04e359228556e624f47f00b06db4d 100644 --- a/src/main/java/plugins/adufour/protocols/gui/block/WorkFlowPanel.java +++ b/src/main/java/plugins/adufour/protocols/gui/block/WorkFlowPanel.java @@ -311,6 +311,9 @@ public class WorkFlowPanel extends BlockPanel implements VarVisibilityListener { final BlockPanel ownerPanel = innerFlowPane.getBlockPanel(innerBlock); + if (ownerPanel == null) + return; + exposingLinks.put(variable, new RoundedSquareLine(WorkFlowPanel.this, ownerPanel, variable) { @Override @@ -375,6 +378,9 @@ public class WorkFlowPanel extends BlockPanel implements VarVisibilityListener { final BlockPanel ownerPanel = innerFlowPane.getBlockPanel(innerBlock); + if (ownerPanel == null) + return; + exposingLinks.put(variable, new RoundedSquareLine(ownerPanel, WorkFlowPanel.this, variable) { @Override