From 0e70fcaaaee9bf69660566cd94047f9e757e2b5f Mon Sep 17 00:00:00 2001 From: Terence Parr Date: Thu, 24 Apr 2014 18:31:02 -0700 Subject: [PATCH] Synchronized add/rm from editor panel. Fixes #96. --- META-INF/plugin.xml | 16 ++------- .../intellij/plugin/preview/PreviewPanel.java | 35 ++++++++++++------- 2 files changed, 25 insertions(+), 26 deletions(-) diff --git a/META-INF/plugin.xml b/META-INF/plugin.xml index df2f0ab5..b57003fc 100644 --- a/META-INF/plugin.xml +++ b/META-INF/plugin.xml @@ -1,8 +1,8 @@ org.antlr.intellij.plugin ANTLR v4 grammar plugin - 1.2 - ANTLR Project + 1.2.1 + ANTLR Project diff --git a/src/java/org/antlr/intellij/plugin/preview/PreviewPanel.java b/src/java/org/antlr/intellij/plugin/preview/PreviewPanel.java index 5cccb3b1..ae196c3e 100644 --- a/src/java/org/antlr/intellij/plugin/preview/PreviewPanel.java +++ b/src/java/org/antlr/intellij/plugin/preview/PreviewPanel.java @@ -50,6 +50,12 @@ public class PreviewPanel extends JPanel { public static final int TOKEN_INFO_LAYER = HighlighterLayer.SELECTION; // Show token info over errors public static final int ERROR_LAYER = HighlighterLayer.ERROR; + /** switchToGrammar() was seeing an empty slot instead of a previous + * editor or placeHolder. Figured it was an order of operations thing + * and synchronized add/remove ops. Works now w/o error. + */ + public final Object swapEditorComponentLock = new Object(); + public static final JLabel placeHolder = new JLabel(""); public static final String missingStartRuleLabelText = "Start rule: